UNPKG

@nx/rsbuild

Version:

The Nx Plugin for Rsbuild contains an Nx plugin, executors and utilities that support building applications using Rsbuild.

50 lines (49 loc) 2.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.configurationGenerator = configurationGenerator; const devkit_1 = require("@nx/devkit"); const lib_1 = require("./lib"); const js_1 = require("@nx/js"); const init_1 = require("../init/init"); const versions_1 = require("../../utils/versions"); const path_1 = require("path"); async function configurationGenerator(tree, schema) { const projectGraph = await (0, devkit_1.createProjectGraphAsync)(); const projects = (0, devkit_1.readProjectsConfigurationFromProjectGraph)(projectGraph); let project = projects.projects[schema.project]; if (!project) { project = (0, devkit_1.readProjectConfiguration)(tree, schema.project); if (!project) { throw new Error(`Could not find project '${schema.project}'. Please choose a project that exists in the Nx Workspace.`); } } const options = await (0, lib_1.normalizeOptions)(tree, schema, project); const tasks = []; const jsInitTask = await (0, js_1.initGenerator)(tree, { ...schema, skipFormat: true, tsConfigName: options.projectRoot === '.' ? 'tsconfig.json' : 'tsconfig.base.json', }); tasks.push(jsInitTask); const initTask = await (0, init_1.initGenerator)(tree, { skipFormat: true }); tasks.push(initTask); if (options.skipValidation) { const projectJson = (0, devkit_1.readProjectConfiguration)(tree, project.name); if (projectJson.targets['build']) { delete projectJson.targets['build']; } if (projectJson.targets['serve']) { delete projectJson.targets['serve']; } if (projectJson.targets['dev']) { delete projectJson.targets['dev']; } } tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@rsbuild/core': versions_1.rsbuildVersion })); (0, devkit_1.generateFiles)(tree, (0, path_1.join)(__dirname, 'files'), options.projectRoot, { ...options, tpl: '', }); return (0, devkit_1.runTasksInSerial)(...tasks); } exports.default = configurationGenerator;