UNPKG

@nxworker/workspace

Version:

Nx plugin providing generators for managing workspace files, including the move-file generator for safely moving files between projects while updating all imports

56 lines (55 loc) 2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { default: function() { return _default; }, initGenerator: function() { return initGenerator; } }); const _devkit = require("@nx/devkit"); /** * Gets the installed version of a package from package.json */ function getInstalledPackageVersion(tree, packageName) { const packageJson = (0, _devkit.readJson)(tree, 'package.json'); return packageJson.devDependencies?.[packageName] || packageJson.dependencies?.[packageName] || null; } async function initGenerator(tree, options) { const tasks = []; // Determine the version to use for @nx/devkit and @nx/workspace // Use NX_VERSION from @nx/devkit or fallback to the installed nx package version let nxVersion = _devkit.NX_VERSION; if (!nxVersion) { const installedNxVersion = getInstalledPackageVersion(tree, 'nx'); if (!installedNxVersion) { throw new Error('Could not determine Nx version. Please ensure nx is installed in your workspace.'); } nxVersion = installedNxVersion; } // Add dependencies to package.json // addDependenciesToPackageJson is a no-op if packages are already installed // We pass keepExistingVersions: true to prevent version mismatches if (!options.skipPackageJson) { const installTask = (0, _devkit.addDependenciesToPackageJson)(tree, {}, { '@nx/devkit': nxVersion, '@nx/workspace': nxVersion }, undefined, true); tasks.push(installTask); } // Format files unless skipFormat is true if (!options.skipFormat) { await (0, _devkit.formatFiles)(tree); } return (0, _devkit.runTasksInSerial)(...tasks); } const _default = initGenerator; //# sourceMappingURL=generator.js.map