UNPKG

@objectivity/angular-schematic-utils

Version:
40 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.importAndExportModule = exports.addModuleToCoreModule = exports.coreModuleExists = exports.getCoreModulePath = void 0; const schematics_1 = require("@angular-devkit/schematics"); const schematics_utilities_1 = require("schematics-utilities"); function getCoreModulePath(host, workspaceProject) { const projectPath = schematics_utilities_1.buildDefaultPath(workspaceProject); const coreModulePath = `${projectPath}/core/core.module.ts`; if (host.exists(coreModulePath)) { return coreModulePath; } return undefined; } exports.getCoreModulePath = getCoreModulePath; function coreModuleExists(host, workspaceProject) { return !!getCoreModulePath(host, workspaceProject); } exports.coreModuleExists = coreModuleExists; function addModuleToCoreModule(host, moduleName, src, workspaceProject) { const coreModulePath = getCoreModulePath(host, workspaceProject); importAndExportModule(host, moduleName, src, coreModulePath); } exports.addModuleToCoreModule = addModuleToCoreModule; function importAndExportModule(host, moduleName, src, coreModulePath) { if (!coreModulePath) { throw new schematics_1.SchematicsException(`Module not found: ${coreModulePath}`); } const moduleSource = schematics_utilities_1.getSourceFile(host, coreModulePath); let changes = [ ...schematics_utilities_1.addImportToModule(moduleSource, coreModulePath, moduleName, src), ...schematics_utilities_1.addSymbolToNgModuleMetadata(moduleSource, coreModulePath, 'exports', moduleName) ]; const recorder = host.beginUpdate(coreModulePath); changes.forEach(change => { recorder.insertLeft(change.pos, change.toAdd); }); host.commitUpdate(recorder); } exports.importAndExportModule = importAndExportModule; //# sourceMappingURL=core-module.js.map