UNPKG

babel-plugin-lodash

Version:
53 lines (39 loc) 1.42 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = config; var _lodash = require('lodash'); var _lodash2 = _interopRequireDefault(_lodash); 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]; var _ref$cwd = _ref.cwd; var cwd = _ref$cwd === undefined ? process.cwd() : _ref$cwd; var _ref$id = _ref.id; var id = _ref$id === undefined ? defaultIds : _ref$id; if (oldCwd !== cwd) { oldCwd = cwd; modules.clear(); } _lodash2.default.each(_lodash2.default.castArray(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: ids, modules: modules }; }; module.exports = exports['default'];