UNPKG

nx-mesh

Version:
72 lines 2.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addProjectConfig = void 0; const devkit_1 = require("@nrwl/devkit"); const add_swc_config_1 = require("@nrwl/js/src/utils/swc/add-swc-config"); const add_swc_dependencies_1 = require("@nrwl/js/src/utils/swc/add-swc-dependencies"); function addProjectConfig(tree, options) { const { codegen, isApp, isLibrary, isSwc, projectDirectory, projectDistDirectory, projectMeshDirectory, projectName, tags, } = options; if (isLibrary && isSwc) { tree.delete(`${options.projectDirectory}/.babelrc`); (0, add_swc_dependencies_1.addSwcDependencies)(tree); (0, add_swc_config_1.addSwcConfig)(tree, projectDirectory); } const project = isLibrary ? (0, devkit_1.readProjectConfiguration)(tree, options.projectName) : { root: projectDirectory, projectType: 'application', sourceRoot: `${projectDirectory}/`, targets: {}, tags, }; const targets = Object.assign({}, project === null || project === void 0 ? void 0 : project.targets); let buildExecutor = 'nx-mesh:build'; if (isApp) { buildExecutor = `${buildExecutor}-gateway`; } if (isLibrary && isSwc) { buildExecutor = `${buildExecutor}-swc`; } let buildOptions = { dir: projectDirectory, main: `${projectDirectory}/src/index.ts`, outputPath: projectDistDirectory, tsConfig: `${projectDirectory}/tsconfig.lib.json`, }; if (isLibrary && codegen) { buildOptions = Object.assign(Object.assign({}, buildOptions), { codegen: { config: `${projectDirectory}/codegen.ts`, } }); } targets['build'] = { executor: buildExecutor, outputs: [projectMeshDirectory, '{options.outputPath}'], options: buildOptions, }; targets['serve'] = { executor: 'nx-mesh:serve', options: { dev: true, dir: projectDirectory, }, }; targets['validate'] = { executor: 'nx-mesh:validate', options: { dir: projectDirectory, }, }; if (project) { project.targets = targets; } if (isApp) { (0, devkit_1.addProjectConfiguration)(tree, projectName, project); } else { (0, devkit_1.updateProjectConfiguration)(tree, projectName, project); } } exports.addProjectConfig = addProjectConfig; exports.default = addProjectConfig; //# sourceMappingURL=add-project-config.js.map