@nx-dart/nx-dart
Version:
A Nx plugin, that adds support for developing Dart and Flutter packages in a Nx workspace
31 lines • 1.9 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.processProjectGraph = void 0;
const tslib_1 = require("tslib");
const devkit_1 = require("@nrwl/devkit");
const build_explicit_dart_dependencies_1 = require("./build-graph/build-explicit-dart-dependencies");
const build_explicit_pubspec_dependencies_1 = require("./build-graph/build-explicit-pubspec-dependencies");
const build_external_package_nodes_1 = require("./build-graph/build-external-package-nodes");
const dart_package_node_resolver_1 = require("./dart-package-node-resolver");
function processProjectGraph(graph, context) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const packageNodeResolver = new dart_package_node_resolver_1.DartPackageNodeResolver(graph.nodes);
const builder = new devkit_1.ProjectGraphBuilder(graph);
(0, build_external_package_nodes_1.buildExternalPackageNodes)(packageNodeResolver, builder, context);
buildExplicitDependencies(packageNodeResolver, builder, context);
return builder.getUpdatedProjectGraph();
});
}
exports.processProjectGraph = processProjectGraph;
function buildExplicitDependencies(packageNodeResolver, builder, context) {
buildExplicitDartAndPubspecDependencies(packageNodeResolver, builder.graph, context.filesToProcess).forEach((dependency) => {
builder.addExplicitDependency(dependency.sourceNodeName, dependency.sourceFilePath, dependency.targetNodeName);
});
}
function buildExplicitDartAndPubspecDependencies(packageNodeResolver, graph, filesToProcess) {
return [
...(0, build_explicit_dart_dependencies_1.buildExplicitDartDependencies)(filesToProcess, packageNodeResolver),
...(0, build_explicit_pubspec_dependencies_1.buildExplicitPubspecDependencies)(graph, filesToProcess, packageNodeResolver),
];
}
//# sourceMappingURL=project-graph.js.map