@rxap/plugin-utilities
Version:
Provides utility functions for Nx plugins, such as retrieving project dependencies, determining output paths, and interacting with package.json files. It simplifies common tasks within Nx executors and generators. This package helps streamline plugin deve
30 lines • 1.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.readFileFromProjectRoot = readFileFromProjectRoot;
exports.writeFileToProjectRoot = writeFileToProjectRoot;
exports.hasFileInProjectRoot = hasFileInProjectRoot;
const fs_1 = require("fs");
const path_1 = require("path");
const project_1 = require("./project");
function readFileFromProjectRoot(context, fileName, requiredOrDefaultContent = '') {
const projectRoot = (0, project_1.GetProjectRoot)(context);
const filePath = (0, path_1.join)(context.root, projectRoot, fileName);
if (!(0, fs_1.existsSync)(filePath)) {
if (requiredOrDefaultContent === true) {
throw new Error(`The file ${filePath} not exists!`);
}
return requiredOrDefaultContent;
}
return (0, fs_1.readFileSync)(filePath, 'utf-8');
}
function writeFileToProjectRoot(context, fileName, content) {
const projectRoot = (0, project_1.GetProjectRoot)(context);
const filePath = (0, path_1.join)(context.root, projectRoot, fileName);
(0, fs_1.writeFileSync)(filePath, content);
}
function hasFileInProjectRoot(context, fileName) {
const projectRoot = (0, project_1.GetProjectRoot)(context);
const filePath = (0, path_1.join)(context.root, projectRoot, fileName);
return (0, fs_1.existsSync)((0, path_1.join)(projectRoot, filePath));
}
//# sourceMappingURL=project-root-files.js.map