@jnxplus/common
Version:
This library was generated with [Nx](https://nx.dev).
179 lines • 6.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.prettierrcNameOptions = void 0;
exports.generateSimpleProjectName = generateSimpleProjectName;
exports.generateProjectName = generateProjectName;
exports.generateProjectDirectory = generateProjectDirectory;
exports.generateProjectRoot = generateProjectRoot;
exports.parseTags = parseTags;
exports.generateAppClassName = generateAppClassName;
exports.generatePackageName = generatePackageName;
exports.generatePackageDirectory = generatePackageDirectory;
exports.isCustomPortFunction = isCustomPortFunction;
exports.parseProjects = parseProjects;
exports.generateBasePackage = generateBasePackage;
exports.getBuildTargetName = getBuildTargetName;
exports.getBuildImageTargetName = getBuildImageTargetName;
exports.getServeTargetName = getServeTargetName;
exports.getTestTargetName = getTestTargetName;
exports.getIntegrationTestTargetName = getIntegrationTestTargetName;
exports.updateNxJsonConfiguration = updateNxJsonConfiguration;
const devkit_1 = require("@nx/devkit");
const _1 = require(".");
function generateSimpleProjectName(options) {
return (0, devkit_1.names)((0, _1.normalizeName)(options.name)).fileName;
}
function generateProjectName(simpleProjectName, options) {
let projectName;
if (options.simpleName) {
projectName = simpleProjectName;
}
else {
projectName = options.directory
? `${(0, _1.normalizeName)((0, devkit_1.names)(options.directory).fileName)}-${simpleProjectName}`
: simpleProjectName;
}
return projectName;
}
function generateProjectDirectory(simpleProjectName, options) {
const projectDirectory = options.directory
? `${(0, devkit_1.names)(options.directory).fileName}/${simpleProjectName}`
: simpleProjectName;
return projectDirectory;
}
function generateProjectRoot(rootDirectory, projectDirectory) {
return (0, devkit_1.joinPathFragments)(rootDirectory, projectDirectory);
}
function parseTags(tags) {
return tags ? tags.split(',').map((s) => s.trim()) : [];
}
function generateAppClassName(projectName, options) {
let appClassName = '';
if (options.framework === 'micronaut') {
appClassName = (0, devkit_1.names)(projectName).className;
}
else {
appClassName = `${(0, devkit_1.names)(projectName).className}Application`;
}
return appClassName;
}
function generatePackageName(simpleProjectName, options) {
let packageName;
if (options.simplePackageName) {
packageName = `${options.groupId}.${(0, devkit_1.names)(simpleProjectName).className.toLocaleLowerCase()}`.replace(new RegExp(/-/, 'g'), '');
}
else {
packageName = `${options.groupId}.${options.directory
? `${(0, devkit_1.names)(options.directory).fileName.replace(new RegExp(/\//, 'g'), '.')}.${(0, devkit_1.names)(simpleProjectName).className.toLocaleLowerCase()}`
: (0, devkit_1.names)(simpleProjectName).className.toLocaleLowerCase()}`.replace(new RegExp(/-/, 'g'), '');
}
return packageName;
}
function generatePackageDirectory(packageName) {
return packageName.replace(new RegExp(/\./, 'g'), '/');
}
function isCustomPortFunction(options) {
return !!options.port && +options.port !== 8080;
}
function parseProjects(projects) {
return projects ? projects.split(',').map((s) => s.trim()) : [];
}
function generateBasePackage(groupId) {
return groupId.replace(new RegExp(/-/, 'g'), '');
}
// https://prettier.io/docs/en/configuration.html
exports.prettierrcNameOptions = [
'.prettierrc',
'.prettierrc.json',
'.prettierrc.yml',
'.prettierrc.yaml',
'.prettierrc.json5',
'.prettierrc.js',
'.prettierrc.cjs',
'.prettierrc.mjs',
'prettier.config.js',
'prettier.config.cjs',
'prettier.config.mjs',
'.prettierrc.toml',
];
function getBuildTargetName(plugin) {
if (typeof plugin === 'string') {
return 'build';
}
const options = plugin === null || plugin === void 0 ? void 0 : plugin.options;
if (typeof options === 'object' &&
options &&
'buildTargetName' in options &&
typeof options.buildTargetName === 'string') {
return options.buildTargetName;
}
return 'build';
}
function getBuildImageTargetName(plugin) {
if (typeof plugin === 'string') {
return 'build-image';
}
const options = plugin === null || plugin === void 0 ? void 0 : plugin.options;
if (typeof options === 'object' &&
options &&
'buildImageTargetName' in options &&
typeof options.buildImageTargetName === 'string') {
return options.buildImageTargetName;
}
return 'build-image';
}
function getServeTargetName(plugin) {
if (typeof plugin === 'string') {
return 'serve';
}
const options = plugin === null || plugin === void 0 ? void 0 : plugin.options;
if (typeof options === 'object' &&
options &&
'serveTargetName' in options &&
typeof options.serveTargetName === 'string') {
return options.serveTargetName;
}
return 'serve';
}
function getTestTargetName(plugin) {
if (typeof plugin === 'string') {
return 'test';
}
const options = plugin === null || plugin === void 0 ? void 0 : plugin.options;
if (typeof options === 'object' &&
options &&
'testTargetName' in options &&
typeof options.testTargetName === 'string') {
return options.testTargetName;
}
return 'test';
}
function getIntegrationTestTargetName(plugin) {
if (typeof plugin === 'string') {
return 'integration-test';
}
const options = plugin === null || plugin === void 0 ? void 0 : plugin.options;
if (typeof options === 'object' &&
options &&
'integrationTestTargetName' in options &&
typeof options.integrationTestTargetName === 'string') {
return options.integrationTestTargetName;
}
return 'integration-test';
}
function updateNxJsonConfiguration(tree) {
var _a, _b;
const nxJson = (0, devkit_1.readNxJson)(tree);
if (!nxJson) {
throw new Error("Can't read `nx.json` File");
}
if (!nxJson.namedInputs) {
nxJson.namedInputs = {};
}
const defaultFilesSet = (_a = nxJson.namedInputs['default']) !== null && _a !== void 0 ? _a : [];
nxJson.namedInputs['default'] = Array.from(new Set([...defaultFilesSet, '{projectRoot}/**/*']));
const productionFileSet = (_b = nxJson.namedInputs['production']) !== null && _b !== void 0 ? _b : [];
nxJson.namedInputs['production'] = Array.from(new Set([...productionFileSet, 'default', '!{projectRoot}/src/test/**/*']));
(0, devkit_1.updateNxJson)(tree, nxJson);
}
//# sourceMappingURL=generators.js.map