MCPcopy Create free account
hub / github.com/SAP/ui5-project / getFrameworkLibrariesFromGraph

Function getFrameworkLibrariesFromGraph

lib/graph/helpers/ui5Framework.js:122–146  ·  view source on GitHub ↗
(projectGraph)

Source from the content-addressed store, hash-verified

120 return root || (optional !== true && development !== true);
121 },
122 async getFrameworkLibrariesFromGraph(projectGraph) {
123 const ui5Dependencies = [];
124 const rootProject = projectGraph.getRoot();
125 await projectGraph.traverseBreadthFirst(async ({project}) => {
126 if (project !== rootProject && project.isFrameworkProject()) {
127 // Ignoring UI5 Framework libraries in dependencies
128 return;
129 }
130 // No need to check for specVersion since Specification API is >= 2.0 anyways
131 const frameworkDependencies = project.getFrameworkDependencies();
132 if (!frameworkDependencies.length) {
133 log.verbose(`Project ${project.getName()} has no framework dependencies`);
134 // Possible future enhancement: Fallback to detect OpenUI5 framework dependencies in package.json
135 return;
136 }
137
138 frameworkDependencies.forEach((dependency) => {
139 if (!ui5Dependencies.includes(dependency.name) &&
140 utils.shouldIncludeDependency(dependency, project === rootProject)) {
141 ui5Dependencies.push(dependency.name);
142 }
143 });
144 });
145 return ui5Dependencies;
146 },
147 async declareFrameworkDependenciesInGraph(projectGraph) {
148 const rootProject = projectGraph.getRoot();
149 await projectGraph.traverseBreadthFirst(async ({project}) => {

Callers

nothing calls this directly

Calls 5

getRootMethod · 0.80
traverseBreadthFirstMethod · 0.80
isFrameworkProjectMethod · 0.80
getNameMethod · 0.45

Tested by

no test coverage detected