@nx/rsbuild
Version:
57 lines (56 loc) • 2.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.updateDependencies = updateDependencies;
exports.initGenerator = initGenerator;
exports.initGeneratorInternal = initGeneratorInternal;
const devkit_1 = require("@nx/devkit");
const add_plugin_1 = require("@nx/devkit/src/utils/add-plugin");
const plugin_1 = require("../../plugins/plugin");
const versions_1 = require("../../utils/versions");
function updateDependencies(tree, schema) {
return (0, devkit_1.addDependenciesToPackageJson)(tree, {}, {
'@nx/rsbuild': versions_1.nxVersion,
'@rsbuild/core': versions_1.rsbuildVersion,
}, undefined, schema.keepExistingVersions);
}
function initGenerator(tree, schema) {
return initGeneratorInternal(tree, { addPlugin: false, ...schema });
}
async function initGeneratorInternal(tree, schema) {
const nxJson = (0, devkit_1.readNxJson)(tree);
const addPluginDefault = process.env.NX_ADD_PLUGINS !== 'false' &&
nxJson.useInferencePlugins !== false;
schema.addPlugin ??= addPluginDefault;
if (schema.addPlugin) {
await (0, add_plugin_1.addPlugin)(tree, await (0, devkit_1.createProjectGraphAsync)(), '@nx/rsbuild', plugin_1.createNodesV2, {
buildTargetName: ['build', 'rsbuild:build', 'rsbuild-build'],
devTargetName: ['dev', 'rsbuild:dev', 'rsbuild-dev'],
previewTargetName: ['preview', 'rsbuild:preview', 'rsbuild-preview'],
inspectTargetName: ['inspect', 'rsbuild:inspect', 'rsbuild-inspect'],
typecheckTargetName: [
'typecheck',
'rsbuild:typecheck',
'rsbuild-typecheck',
],
buildDepsTargetName: [
'build-deps',
'rsbuild:build-deps',
'rsbuild-build-deps',
],
watchDepsTargetName: [
'watch-deps',
'rsbuild:watch-deps',
'rsbuild-watch-deps',
],
}, schema.updatePackageScripts);
}
const tasks = [];
if (!schema.skipPackageJson) {
tasks.push(updateDependencies(tree, schema));
}
if (!schema.skipFormat) {
await (0, devkit_1.formatFiles)(tree);
}
return (0, devkit_1.runTasksInSerial)(...tasks);
}
exports.default = initGenerator;