UNPKG

@nxext/stencil

Version:

Nx plugin for stenciljs

51 lines 2.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = runExecutor; const tslib_1 = require("tslib"); const cli_1 = require("@stencil/core/cli"); const stencil_runtime_1 = require("../stencil-runtime"); const stencil_parameters_1 = require("../stencil-runtime/stencil-parameters"); const devkit_1 = require("@nx/devkit"); const e2e_testing_1 = require("../stencil-runtime/e2e-testing"); const update_buildable_package_json_dependencies_1 = require("../stencil-runtime/update-buildable-package-json-dependencies"); const internal_1 = require("@nx/js/internal"); function createStencilCompilerOptions(taskCommand, options) { let runOptions = [taskCommand]; runOptions = (0, stencil_parameters_1.parseRunParameters)(runOptions, options); if (options.port) { runOptions.push(`--port ${options.port}`); } if (options.docsReadme) { runOptions.push(`--docs-readme`); } if (options.noOpen) { runOptions.push(`--no-open`); } if (options.maxWorkers) { runOptions.push(`--max-workers ${options.maxWorkers}`); } return (0, cli_1.parseFlags)(runOptions); } function runExecutor(options, context) { return tslib_1.__awaiter(this, void 0, void 0, function* () { const taskCommand = 'build'; const projGraph = yield (0, devkit_1.createProjectGraphAsync)(); const { target, dependencies } = (0, internal_1.calculateProjectDependencies)(projGraph, context.root, context.projectName, context.targetName, context.configurationName); const flags = createStencilCompilerOptions(taskCommand, options); const { strictConfig, pathCollection } = yield (0, stencil_runtime_1.initializeStencilConfig)(taskCommand, options, context, flags); const stencilConfig = yield (0, stencil_runtime_1.prepareConfigAndOutputargetPaths)(strictConfig, pathCollection); (0, update_buildable_package_json_dependencies_1.updateBuildableProjectPackageJsonDependencies)(context.root, context.projectName, context.targetName, context.configurationName, target, dependencies); try { yield (0, stencil_runtime_1.createStencilProcess)(stencilConfig); if (stencilConfig.flags.e2e) { (0, e2e_testing_1.cleanupE2eTesting)(pathCollection); } return { success: true }; } catch (err) { devkit_1.logger.error(err.message); return { success: false, error: err.message }; } }); } //# sourceMappingURL=executor.js.map