@nx/react-native
Version:
31 lines (30 loc) • 1.21 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = update;
const devkit_1 = require("@nx/devkit");
const node_fs_1 = require("node:fs");
/**
* Remove ensure-symlink target.
* It is going to be supported by react-native version 0.73 by default.
*/
async function update(tree) {
const projects = (0, devkit_1.getProjects)(tree);
for (const [projectName, config] of projects.entries()) {
if (config.targets?.['ensure-symlink']?.executor ===
'@nx/react-native:ensure-symlink') {
removeTargets(config.targets, 'ensure-symlink');
(0, devkit_1.updateProjectConfiguration)(tree, projectName, config);
(0, node_fs_1.rmSync)(`${config.root}/node_modules`, { recursive: true, force: true });
}
}
}
function removeTargets(targets, targetNameToRemove) {
for (const targetName in targets) {
if (targetName === targetNameToRemove) {
delete targets[targetName];
}
if (targets[targetName]?.dependsOn?.length) {
targets[targetName].dependsOn = targets[targetName].dependsOn.filter((dependsOn) => dependsOn !== targetNameToRemove);
}
}
}
;