UNPKG

useasdemo

Version:

Schematics specific to ecip

70 lines 3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const schematics_1 = require("@angular-devkit/schematics"); const tasks_1 = require("@angular-devkit/schematics/tasks"); const json_1 = require("../utils/json"); const project_1 = require("../utils/project"); let project; function addDependenciesToPackageJson(options) { return (host, context) => { json_1.addPackageToPackageJson(host, [ `@ecip/log@1.0.0-rc.1`, ], 'dependencies'); }; } function installPackages() { return (host, context) => { context.addTask(new tasks_1.NodePackageInstallTask()); return host; }; } function overwriteRoutingModule(options) { return (tree, context) => { // 读取文件内容 console.log(options); const routingModule = tree.get(`${project.sourceRoot}/app/routes/routes-routing.module.ts`); if (routingModule) { return; } const content = routingModule.content.toString().replace('// business替换,请勿删除', `${options.business}\n\t\t\t// business替换,请勿删除`); tree.delete(`${project.sourceRoot}/app/routes/routes-routing.module.ts`); tree.create(`${project.sourceRoot}/app/routes/routes-routing.module.ts`, content); }; } // function overwriteRoutingModule() { // return (tree: Tree, context: SchematicContext) => { // const routesStatus = routeModules(tree, project.sourceRoot); // const routingContent = tree.get(`${project.sourceRoot}/app/routes/routes-routing.module.ts`).content.toString(); // // route-routing.module.ts 里面在loadchildren没有对应的功能模块子路由 // if (routesStatus[routesStatus.length-1] === -1) { // console.log(routesStatus.length-1); // tree.overwrite(`${project.sourceRoot}/app/routes/routes-routing.module.ts`, // routingModuleContent([MODULE_ROUTE_CONTENTS.LOG])); // } else { // if (routingContent.indexOf(MODULE_ROUTE_CONTENTS.LOG.trim()) === -1) { // tree.overwrite(`${project.sourceRoot}/app/routes/routes-routing.module.ts`, // insertContent(routingContent, routesStatus[routesStatus.lastIndexOf(-1) + 1], MODULE_ROUTE_CONTENTS.LOG + '\n\t\t\t')); // } // } // }; // } function addFilesToRoot(options) { return schematics_1.chain([ schematics_1.mergeWith(schematics_1.apply(schematics_1.url('./files'), [ schematics_1.move(`${project.sourceRoot}/app/routes`), ])), ]); } function default_1(options) { return (host, context) => { project = project_1.getProject(host, options.project); return schematics_1.chain([ overwriteRoutingModule(options), addDependenciesToPackageJson(options), addFilesToRoot(options), installPackages(), ])(host, context); }; } exports.default = default_1; //# sourceMappingURL=index.js.map