@jnxplus/nx-gradle
Version:
[](https://badge.fury.io/js/@jnxplus%2Fnx-gradle)
43 lines • 2.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = default_1;
exports.updateGitIgnore = updateGitIgnore;
const tslib_1 = require("tslib");
const devkit_1 = require("@nx/devkit");
const path = require("path");
const utils_1 = require("../../utils");
function normalizeOptions(tree, options) {
const gradleRootDirectory = (0, utils_1.getGradleRootDirectory)();
return Object.assign(Object.assign({}, options), { gradleRootDirectory });
}
function addFiles(tree, options) {
const templateOptions = Object.assign(Object.assign({}, options), { offsetFromRoot: (0, devkit_1.offsetFromRoot)(tree.root), template: '' });
(0, devkit_1.generateFiles)(tree, path.join(__dirname, '..', 'init', 'files', 'gradle', 'wrapper'), options.gradleRootDirectory, templateOptions);
}
function default_1(tree, options) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const normalizedOptions = normalizeOptions(tree, options);
addFiles(tree, normalizedOptions);
if (!options.skipGitignore) {
updateGitIgnore(tree);
}
tree.changePermissions((0, devkit_1.joinPathFragments)(normalizedOptions.gradleRootDirectory, 'gradlew'), '755');
tree.changePermissions((0, devkit_1.joinPathFragments)(normalizedOptions.gradleRootDirectory, 'gradlew.bat'), '755');
if (!options.skipFormat) {
yield (0, devkit_1.formatFiles)(tree);
}
});
}
function updateGitIgnore(tree) {
const filePath = '.gitignore';
const contents = tree.read(filePath, 'utf-8') || '';
let gradleIgnore = '';
const gradleIgnore1 = '\n\n# Gradle Wrapper';
const gradleIgnore2 = '\ngradle/';
const gradleIgnore3 = '\ngradlew';
const gradleIgnore4 = '\ngradlew.bat';
gradleIgnore = gradleIgnore1 + gradleIgnore2 + gradleIgnore3 + gradleIgnore4;
const newContents = contents.concat(gradleIgnore);
tree.write(filePath, newContents);
}
//# sourceMappingURL=generator.js.map