forked from enviPath/enviPy
57 lines
1.5 KiB
JavaScript
57 lines
1.5 KiB
JavaScript
'use strict';
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
|
|
var _castArray2 = require('lodash/castArray');
|
|
|
|
var _castArray3 = _interopRequireDefault(_castArray2);
|
|
|
|
var _each2 = require('lodash/each');
|
|
|
|
var _each3 = _interopRequireDefault(_each2);
|
|
|
|
exports.default = config;
|
|
|
|
var _MapCache = require('./MapCache');
|
|
|
|
var _MapCache2 = _interopRequireDefault(_MapCache);
|
|
|
|
var _ModuleCache = require('./ModuleCache');
|
|
|
|
var _ModuleCache2 = _interopRequireDefault(_ModuleCache);
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
var defaultIds = ['lodash', 'lodash-es', 'lodash-compat'];
|
|
|
|
var oldCwd = void 0;
|
|
var ids = [];
|
|
var modules = new _MapCache2.default();
|
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
function config() {
|
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
_ref$cwd = _ref.cwd,
|
|
cwd = _ref$cwd === undefined ? process.cwd() : _ref$cwd,
|
|
_ref$id = _ref.id,
|
|
id = _ref$id === undefined ? defaultIds : _ref$id;
|
|
|
|
if (oldCwd !== cwd) {
|
|
oldCwd = cwd;
|
|
modules.clear();
|
|
}
|
|
(0, _each3.default)((0, _castArray3.default)(id), function (id) {
|
|
if (!modules.get(id)) {
|
|
var moduleRoot = _ModuleCache2.default.resolve(id, cwd);
|
|
if (moduleRoot) {
|
|
ids.push(id);
|
|
modules.set(id, new _ModuleCache2.default(moduleRoot));
|
|
}
|
|
}
|
|
});
|
|
return { ids, modules };
|
|
};
|
|
module.exports = exports['default']; |