UNPKG

@eggjs/tegg-config

Version:

module config plugin for egg

48 lines 3.74 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ModuleScanner = void 0; const tegg_common_util_1 = require("@eggjs/tegg-common-util"); const path_1 = __importDefault(require("path")); class ModuleScanner { constructor(baseDir, readModuleOptions) { this.baseDir = baseDir; this.readModuleOptions = readModuleOptions; } /** * - load module references from config or scan from baseDir * - load framework module as optional module reference */ loadModuleReferences() { var _a; const moduleReferences = tegg_common_util_1.ModuleConfigUtil.readModuleReference(this.baseDir, this.readModuleOptions || {}); // eslint-disable-next-line @typescript-eslint/no-var-requires const appPkg = require(path_1.default.join(this.baseDir, 'package.json')); const framework = (_a = appPkg.egg) === null || _a === void 0 ? void 0 : _a.framework; if (!framework) { return moduleReferences; } // eslint-disable-next-line @typescript-eslint/no-var-requires const frameworkPkg = require.resolve(`${framework}/package.json`, { paths: [this.baseDir], }); const frameworkDir = path_1.default.dirname(frameworkPkg); const optionalModuleReferences = tegg_common_util_1.ModuleConfigUtil.readModuleReference(frameworkDir, this.readModuleOptions || {}); const result = [ ...moduleReferences, ]; for (const optionalModuleReference of optionalModuleReferences) { if (!result.some(t => t.path === optionalModuleReference.path)) { result.push({ ...optionalModuleReference, optional: true, }); } } return result; } } exports.ModuleScanner = ModuleScanner; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlU2Nhbm5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIk1vZHVsZVNjYW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQXdHO0FBQ3hHLGdEQUF3QjtBQUV4QixNQUFhLGFBQWE7SUFJeEIsWUFBWSxPQUFlLEVBQUUsaUJBQTZDO1FBQ3hFLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9COztRQUNsQixNQUFNLGdCQUFnQixHQUFHLG1DQUFnQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFHLDhEQUE4RDtRQUM5RCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsTUFBTSxTQUFTLEdBQUcsTUFBQSxNQUFNLENBQUMsR0FBRywwQ0FBRSxTQUFTLENBQUM7UUFDeEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2YsT0FBTyxnQkFBZ0IsQ0FBQztRQUMxQixDQUFDO1FBQ0QsOERBQThEO1FBQzlELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxTQUFTLGVBQWUsRUFBRTtZQUNoRSxLQUFLLEVBQUUsQ0FBRSxJQUFJLENBQUMsT0FBTyxDQUFFO1NBQ3hCLENBQUMsQ0FBQztRQUNILE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEQsTUFBTSx3QkFBd0IsR0FBRyxtQ0FBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2xILE1BQU0sTUFBTSxHQUFHO1lBQ2IsR0FBRyxnQkFBZ0I7U0FDcEIsQ0FBQztRQUNGLEtBQUssTUFBTSx1QkFBdUIsSUFBSSx3QkFBd0IsRUFBRSxDQUFDO1lBQy9ELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMvRCxNQUFNLENBQUMsSUFBSSxDQUFDO29CQUNWLEdBQUcsdUJBQXVCO29CQUMxQixRQUFRLEVBQUUsSUFBSTtpQkFDZixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRjtBQXhDRCxzQ0F3Q0MifQ==