UNPKG

@o3r/schematics

Version:

Schematics module of the Otter framework

46 lines 1.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ngAdd = void 0; const path = require("node:path"); const dependencies_1 = require("@schematics/angular/utility/dependencies"); const public_api_1 = require("../../src/public_api"); /** * Add Otter schematics to an Angular Project * @param options schematics options */ function ngAddFn(options) { const schematicsDependencies = ['@angular-devkit/architect', '@angular-devkit/schematics', '@angular-devkit/core', '@schematics/angular', 'globby']; return (_, context) => { const packageJsonPath = path.resolve(__dirname, '..', '..', 'package.json'); const dependencies = Object.entries((0, public_api_1.getExternalDependenciesVersionRange)(schematicsDependencies, packageJsonPath, context.logger)).reduce((acc, [dep, range]) => { acc[dep] = { inManifest: [{ range, types: [dependencies_1.NodeDependencyType.Dev] }] }; return acc; }, {}); Object.entries((0, public_api_1.getExternalDependenciesVersionRange)(schematicsDependencies, packageJsonPath, context.logger)) .forEach(([dep, range]) => { dependencies[dep] = { inManifest: [{ range, types: [dependencies_1.NodeDependencyType.Dev] }] }; }); return (0, public_api_1.setupDependencies)({ projectName: options.projectName, dependencies, skipInstall: false }); }; } /** * Add Otter schematics to an Angular Project * @param options */ const ngAdd = (options) => (0, public_api_1.createOtterSchematic)(ngAddFn)(options); exports.ngAdd = ngAdd; //# sourceMappingURL=index.js.map