@nxrocks/nx-ktor
Version:
Nx plugin to generate, run, package, build (and more) Ktor projects inside your Nx workspace
32 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = update;
const devkit_1 = require("@nx/devkit");
const index_1 = require("../../index");
const common_jvm_1 = require("@nxrocks/common-jvm");
async function update(tree) {
const targetExecutors = [`${index_1.NX_KTOR_PKG}:run`, `${index_1.NX_KTOR_PKG}:serve`];
(0, common_jvm_1.updateProjectConfigurationIf)(tree, (project) => project.projectType === 'application', (project) => {
for (const target of Object.values(project.targets ?? {})) {
if (target.executor && targetExecutors.includes(target.executor)) {
target.dependsOn ??= [];
if (!target.dependsOn.includes('^install')) {
target.dependsOn.push('^install');
}
}
}
});
// update options from nx.json target defaults
(0, common_jvm_1.updateNxJsonIf)(tree, (nxJson) => !!nxJson.targetDefaults, (nxJson) => {
for (const [targetOrExecutor, targetConfig] of Object.entries(nxJson.targetDefaults)) {
if (targetExecutors.includes(targetOrExecutor)) {
targetConfig.dependsOn ??= [];
if (!targetConfig.dependsOn.includes('^install')) {
targetConfig.dependsOn.push('^install');
}
}
}
});
await (0, devkit_1.formatFiles)(tree);
}
//# sourceMappingURL=make-serve-target-depends-on-dependency-install.js.map