getWorkspaceDependencies static method
Map<String, WorkspacePackage>
getWorkspaceDependencies({
- required Map<
String, WorkspacePackage> allWorkspacePackages, - required WorkspacePackage package,
- required Map<
String, WorkspacePackage> included,
Recursively gets all workspace dependencies of a package, without duplicates.
Implementation
static Map<String, WorkspacePackage> getWorkspaceDependencies({
required final Map<String, WorkspacePackage> allWorkspacePackages,
required final WorkspacePackage package,
required final Map<String, WorkspacePackage> included,
}) {
for (final packageDependency in package.pubspec.dependencies.entries) {
final workspaceDependency = allWorkspacePackages[packageDependency.key];
if (workspaceDependency != null) {
if (!included.containsKey(packageDependency.key)) {
included[packageDependency.key] = workspaceDependency;
getWorkspaceDependencies(
allWorkspacePackages: allWorkspacePackages,
package: workspaceDependency,
included: included,
);
}
}
}
return included;
}