@nxrocks/nx-ktor
Version:
Nx plugin to generate, run, package, build (and more) Ktor projects inside your Nx workspace
28 lines • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addGradleApplicationPlugin = addGradleApplicationPlugin;
const devkit_1 = require("@nx/devkit");
const common_jvm_1 = require("@nxrocks/common-jvm");
function addGradleApplicationPlugin(tree, options) {
if (options.buildSystem === 'GRADLE' ||
options.buildSystem === 'GRADLE_KTS') {
devkit_1.logger.debug(`Adding 'application' plugin...`);
(0, common_jvm_1.addGradlePlugin)(tree, options.projectRoot, 'kotlin', 'application', undefined, options.buildSystem === 'GRADLE_KTS');
const application = options.buildSystem === 'GRADLE_KTS'
? (0, common_jvm_1.stripIndent) `
application {
mainClass.set("${options.groupId}.ApplicationKt")
}
`
: (0, common_jvm_1.stripIndent) `
application {
mainClass = '${options.groupId}.ApplicationKt'
}
`;
const ext = options.buildSystem === 'GRADLE_KTS' ? '.kts' : '';
const buildGradlePath = `${options.projectRoot}/build.gradle${ext}`;
const content = tree.read(buildGradlePath, 'utf-8') + '\n' + application;
tree.write(buildGradlePath, content);
}
}
//# sourceMappingURL=add-gradle-application-plugin.js.map