deep-package-manager
Version:
DEEP Package Manager
48 lines (33 loc) • 1.2 kB
JavaScript
/**
* Created by AlexanderC on 5/22/15.
*
* Bootstrap file loaded by npm as main
*/
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _FileWalker = require('./Helpers/FileWalker');
var _path = require('path');
var _path2 = _interopRequireDefault(_path);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
let walker = new _FileWalker.FileWalker(_FileWalker.FileWalker.RECURSIVE);
let classFiles = walker.walk(__dirname, _FileWalker.FileWalker.skipDotsFilter(file => {
return (/^(.*[\/|\\])?[A-Z][^\/\\]+\.js$/.test(file)
);
})).map(file => file.substr(__dirname.length));
let exp = {};
classFiles.forEach(classFile => {
let matches = classFile.match(/^(?:.*[\/|\\])?([A-Z][^\/\\]+)\.js$/);
let className = matches[1];
let nsParts = classFile.split(_path2.default.sep).filter(part => !!part);
nsParts.pop();
let jsObj = require(_path2.default.join(__dirname, classFile));
if (jsObj.hasOwnProperty(className)) {
let classObj = jsObj[className];
nsParts.push(className);
exp[nsParts.join('_')] = classObj;
}
});
exports.default = exp;
module.exports = exports['default'];