UNPKG

@nxext/stencil

Version:

Nx plugin for stenciljs

45 lines (43 loc) 2.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.outputtargetGenerator = outputtargetGenerator; const tslib_1 = require("tslib"); const devkit_1 = require("@nx/devkit"); const utillities_1 = require("../../utils/utillities"); const generator_1 = require("./add-angular/generator"); const generator_2 = require("./add-react/generator"); const generator_3 = require("./add-vue/generator"); const ts_solution_setup_1 = require("@nx/js/src/utils/typescript/ts-solution-setup"); function outputtargetGenerator(host, options) { return tslib_1.__awaiter(this, void 0, void 0, function* () { (0, ts_solution_setup_1.assertNotUsingTsSolutionSetup)(host, '@nxext/stencil', 'add-outputtarget'); const projectConfig = (0, devkit_1.readProjectConfiguration)(host, options.projectName); const tasks = []; if ((0, utillities_1.isBuildableStencilProject)(projectConfig)) { if (options.outputType === 'angular') { tasks.push(yield (0, generator_1.addAngularGenerator)(host, options)); } if (options.outputType === 'react') { tasks.push(yield (0, generator_2.addReactGenerator)(host, options)); } if (options.outputType === 'vue') { tasks.push(yield (0, generator_3.default)(host, options)); } if (!options.skipFormat) { yield (0, devkit_1.formatFiles)(host); } } else { devkit_1.logger.info((0, devkit_1.stripIndents) ` Please use a buildable library for custom outputtargets You could make this library buildable with: nx generate @nxext/stencil:make-lib-buildable ${options.projectName} or ng generate @nxext/stencil:make-lib-buildable ${options.projectName} `); } return (0, devkit_1.runTasksInSerial)(...tasks); }); } exports.default = outputtargetGenerator; //# sourceMappingURL=add-outputtarget.js.map