UNPKG

@jnxplus/nx-maven

Version:

[![npm version](https://badge.fury.io/js/@jnxplus%2Fnx-maven.svg)](https://badge.fury.io/js/@jnxplus%2Fnx-maven)

98 lines 4.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createDependencies = void 0; const tslib_1 = require("tslib"); const devkit_1 = require("@nx/devkit"); const graph_utils_1 = require("./graph-utils"); const createDependencies = (opts, context) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { const results = []; const normalizedOpts = (0, graph_utils_1.getNormalizedOptions)(opts); const workspaceData = yield (0, graph_utils_1.getWorkspaceData)(opts); const projects = workspaceData.projects; for (const project of Object.values(projects)) { if (!project.skipProject) { const projectSourceFile = (0, devkit_1.joinPathFragments)(project.projectRoot, 'pom.xml'); if (project.parentProjectArtifactId) { const parentProject = projects[project.parentProjectArtifactId]; if (!parentProject.skipProject) { const newDependency = { source: project.artifactId, target: parentProject.artifactId, sourceFile: projectSourceFile, type: devkit_1.DependencyType.static, }; (0, devkit_1.validateDependency)(newDependency, context); results.push(newDependency); } } if (!normalizedOpts.graphOptions.skipAggregatorProjectLinking) { if (project.aggregatorProjectArtifactId && project.aggregatorProjectArtifactId !== project.parentProjectArtifactId) { const aggregatorProject = projects[project.aggregatorProjectArtifactId]; if (!aggregatorProject.skipProject) { const newDependency = { source: project.artifactId, target: aggregatorProject.artifactId, sourceFile: projectSourceFile, type: devkit_1.DependencyType.static, }; (0, devkit_1.validateDependency)(newDependency, context); results.push(newDependency); } } } const dependencies = getDependencyProjects(project, projects); for (const dependency of dependencies) { if (!dependency.skipProject) { const newDependency = { source: project.artifactId, target: dependency.artifactId, sourceFile: projectSourceFile, type: devkit_1.DependencyType.static, }; (0, devkit_1.validateDependency)(newDependency, context); results.push(newDependency); } } const profileDependencies = getProfileDependencyProjects(project, projects); for (const profileDependency of profileDependencies) { if (!profileDependency.skipProject) { const newDependency = { source: project.artifactId, target: profileDependency.artifactId, sourceFile: projectSourceFile, type: devkit_1.DependencyType.static, }; (0, devkit_1.validateDependency)(newDependency, context); results.push(newDependency); } } const pluginDependencies = getPluginDependencyProjects(project, projects); for (const pluginDependency of pluginDependencies) { if (!pluginDependency.skipProject) { const newDependency = { source: project.artifactId, target: pluginDependency.artifactId, sourceFile: projectSourceFile, type: devkit_1.DependencyType.static, }; (0, devkit_1.validateDependency)(newDependency, context); results.push(newDependency); } } } } return results; }); exports.createDependencies = createDependencies; function getDependencyProjects(project, projects) { return Object.values(projects).filter((p) => project.dependencies.includes(p.artifactId)); } function getProfileDependencyProjects(project, projects) { return Object.values(projects).filter((p) => project.profileDependencies.includes(p.artifactId)); } function getPluginDependencyProjects(project, projects) { return Object.values(projects).filter((p) => project.pluginDependencies.includes(p.artifactId)); } //# sourceMappingURL=create-dependencies.js.map