@rxap/plugin-library
Version:
This package provides generators and executors for managing and maintaining Nx plugin libraries. It includes functionality for generating index exports, fixing dependencies, generating JSON schemas, and more. It helps streamline the development process fo
54 lines • 2.74 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.initProject = initProject;
const tslib_1 = require("tslib");
const workspace_utilities_1 = require("@rxap/workspace-utilities");
const path_1 = require("path");
const init_project_1 = require("../init-buildable/init-project");
const init_project_2 = require("../init-plugin/init-project");
const init_project_3 = require("../init-preset/init-project");
const init_project_4 = require("../init-publishable/init-project");
const init_project_5 = require("../init-schematic/init-project");
const init_project_6 = require("../init-with-migrations/init-project");
const cleanup_1 = require("./cleanup");
const update_project_tags_1 = require("./update-project-tags");
function initProject(tree, projectName, project, options) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
console.log(`init library project: ${projectName}`);
(0, update_project_tags_1.updateProjectTags)(project);
if ((0, workspace_utilities_1.IsBuildable)(tree, project)) {
(0, init_project_1.initProject)(tree, projectName, project, options);
}
if ((0, workspace_utilities_1.IsPublishable)(tree, project)) {
yield (0, init_project_4.initProject)(tree, projectName, project, options);
}
if ((0, workspace_utilities_1.IsPluginProject)(project)) {
(0, init_project_2.initProject)(tree, projectName, project, options);
}
if ((0, workspace_utilities_1.IsPresetProject)(project)) {
(0, init_project_3.initProject)(tree, projectName, project, options);
}
if ((0, workspace_utilities_1.IsSchematicProject)(project)) {
(0, init_project_5.initProject)(tree, projectName, project, options);
}
if ((0, workspace_utilities_1.HasMigrations)(tree, { name: projectName })) {
(0, init_project_6.initProject)(tree, projectName, project, options);
}
(0, workspace_utilities_1.CoerceIgnorePattern)(tree, (0, path_1.join)(project.root, '.eslintignore'), [
'dist',
'coverage',
'node_modules',
]);
if ((0, workspace_utilities_1.isJetbrainsProject)(tree)) {
const excludeFolders = [
(0, path_1.join)(project.root, 'dist'),
(0, path_1.join)(project.root, 'docs'),
(0, path_1.join)(project.root, 'compodoc'),
(0, path_1.join)(project.root, 'coverage'),
];
yield (0, workspace_utilities_1.coerceIdeaExcludeFolders)(tree, excludeFolders);
}
(0, cleanup_1.cleanup)(tree, projectName);
});
}
//# sourceMappingURL=init-project.js.map