@nx-dart/nx-dart
Version:
A Nx plugin, that adds support for developing Dart and Flutter packages in a Nx workspace
40 lines • 1.7 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildExplicitPubspecDependencies = void 0;
const devkit_1 = require("@nrwl/devkit");
const pkg = require("../../utils/package");
function buildExplicitPubspecDependencies(graph, filesToProcess, packageNodeResolver) {
const result = [];
for (const [source, files] of Object.entries(filesToProcess)) {
const root = graph.nodes[source].data.root;
const pubspecPath = (0, devkit_1.normalizePath)(pkg.pubspecPath(root));
for (const file of files) {
if (file.file !== pubspecPath) {
continue;
}
const pubspec = pkg.loadPubspec(root);
const allDependencies = [];
const dependencies = pubspec.dependencies;
if (dependencies) {
allDependencies.push(...Object.keys(dependencies));
}
const devDependencies = pubspec.dev_dependencies;
if (devDependencies) {
allDependencies.push(...Object.keys(devDependencies));
}
for (const dependency of allDependencies) {
const targetNode = packageNodeResolver.resolveDependencyNodeName(source, dependency);
if (targetNode) {
result.push({
sourceNodeName: source,
sourceFilePath: file.file,
targetNodeName: targetNode,
});
}
}
}
}
return result;
}
exports.buildExplicitPubspecDependencies = buildExplicitPubspecDependencies;
//# sourceMappingURL=build-explicit-pubspec-dependencies.js.map