This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community. Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it. https://www.freifunk-altdorf.de
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

80 lines
2.0 KiB

'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _path;
function _load_path() {
return _path = _interopRequireDefault(require('path'));
}
var _micromatch;
function _load_micromatch() {
return _micromatch = _interopRequireDefault(require('micromatch'));
}
var _constants;
function _load_constants() {
return _constants = _interopRequireDefault(require('./constants'));
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
class HasteFS {
constructor(files) {
this._files = files;
}
getModuleName(file) {
return this._files[file] && this._files[file][(_constants || _load_constants()).default.ID] || null;
}
getDependencies(file) {
return this._files[file] && this._files[file][(_constants || _load_constants()).default.DEPENDENCIES] || null;
}
exists(file) {
return !!this._files[file];
}
getAllFiles() {
return Object.keys(this._files);
}
matchFiles(pattern) {
if (!(pattern instanceof RegExp)) {
pattern = new RegExp(pattern);
}
const files = [];
for (const file in this._files) {
if (pattern.test(file)) {
files.push(file);
}
}
return files;
}
matchFilesWithGlob(globs, root) {
const files = new Set();
for (const file in this._files) {
const filePath = root ? (_path || _load_path()).default.relative(root, file) : file;
if ((0, (_micromatch || _load_micromatch()).default)([filePath], globs).length) {
files.add(file);
}
}
return files;
}
}
exports.default = HasteFS; /**
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*
*/