@o3r/core
Version:
Core of the Otter Framework
33 lines • 1.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.updatePackageJson = updatePackageJson;
const path = require("node:path");
const schematics_1 = require("@o3r/schematics");
const o3rPackageJsonPath = path.resolve(__dirname, '..', '..', '..', 'package.json');
/**
* Update package.json to add additional dependencies
* @param dependenciesSetupConfig
* @param dependenciesToInstall
* @param devDependenciesToInstall
* @param projectName
*/
function updatePackageJson(dependenciesSetupConfig, dependenciesToInstall, devDependenciesToInstall, projectName) {
return (tree, context) => {
const workspaceConfig = (0, schematics_1.getWorkspaceConfig)(tree);
const workspaceProject = (projectName && workspaceConfig?.projects?.[projectName]) || undefined;
const projectDirectory = workspaceProject?.root || '.';
const projectPackageJson = tree.readJson(path.posix.join(projectDirectory, 'package.json'));
dependenciesSetupConfig.dependencies = {
...dependenciesSetupConfig.dependencies,
...(0, schematics_1.getExternalDependenciesInfo)({
dependenciesToInstall,
devDependenciesToInstall,
o3rPackageJsonPath,
projectType: workspaceProject?.projectType,
projectPackageJson
}, context.logger)
};
return tree;
};
}
//# sourceMappingURL=index.js.map