@teambit/dependencies 1.0.133 → 1.0.134

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,42 +1,42 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites>
3
- <testsuite name="teambit.dependencies/dependencies@1.0.133" timestamp="2024-01-12T03:41:14.454Z" tests="37" failures="0" errors="0" skipped="0">
4
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/testing-library__jest-dom" time="0.185"/>
5
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/chai" time="0.001"/>
6
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mocha"/>
7
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/classnames" time="0.001"/>
3
+ <testsuite name="teambit.dependencies/dependencies@1.0.134" timestamp="2024-01-13T03:37:21.889Z" tests="37" failures="0" errors="0" skipped="0">
4
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/testing-library__jest-dom" time="0.107"/>
5
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/chai"/>
6
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mocha" time="0.001"/>
7
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/classnames"/>
8
8
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/cors" time="0.001"/>
9
9
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/cross-spawn"/>
10
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/dagre" time="0.001"/>
10
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/dagre"/>
11
11
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/didyoumean"/>
12
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/eslint" time="0.001"/>
12
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/eslint"/>
13
13
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/express" time="0.001"/>
14
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/find-cache-dir" time="0.001"/>
15
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/find-root"/>
14
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/find-cache-dir"/>
15
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/find-root" time="0.001"/>
16
16
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/history"/>
17
17
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/http-proxy-agent"/>
18
18
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash"/>
19
19
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash.compact" time="0.001"/>
20
20
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash.flatten"/>
21
21
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash.head"/>
22
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash.pick" time="0.001"/>
23
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mdx-js__react"/>
22
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/lodash.pick"/>
23
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mdx-js__react" time="0.001"/>
24
24
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/memoizee"/>
25
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mime" time="0.001"/>
25
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mime"/>
26
26
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/mousetrap"/>
27
27
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/node"/>
28
28
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/puppeteer"/>
29
29
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react"/>
30
30
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react-dom"/>
31
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react-router-dom" time="0.001"/>
31
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react-router-dom"/>
32
32
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react-tabs"/>
33
33
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/react-tooltip"/>
34
34
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/socket.io-client"/>
35
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/ua-parser-js"/>
35
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/ua-parser-js" time="0.001"/>
36
36
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/url-join"/>
37
37
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/url-parse"/>
38
38
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/webpack"/>
39
- <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/webpack-dev-server"/>
39
+ <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/webpack-dev-server" time="0.044"/>
40
40
  <testcase classname="package-to-definetly-typed.spec.js" name="should map to @types/webpack-merge"/>
41
41
  </testsuite>
42
42
  </testsuites>
@@ -487,7 +487,7 @@ export class ApplyOverrides {
487
487
  }
488
488
 
489
489
  private async applyAutoDetectedPeersFromEnvOnEnvItSelf(): Promise<void> {
490
- const envPolicy = await this.depsResolver.getEnvPolicyFromEnvLegacyId(this.component.id, this.component.files);
490
+ const envPolicy = await this.depsResolver.getEnvPolicyFromEnvId(this.component.id, this.component.files);
491
491
  if (!envPolicy) return;
492
492
  const envPolicyManifest = envPolicy.selfPolicy.toVersionManifest();
493
493
 
@@ -516,7 +516,7 @@ class ApplyOverrides {
516
516
  });
517
517
  }
518
518
  async applyAutoDetectedPeersFromEnvOnEnvItSelf() {
519
- const envPolicy = await this.depsResolver.getEnvPolicyFromEnvLegacyId(this.component.id, this.component.files);
519
+ const envPolicy = await this.depsResolver.getEnvPolicyFromEnvId(this.component.id, this.component.files);
520
520
  if (!envPolicy) return;
521
521
  const envPolicyManifest = envPolicy.selfPolicy.toVersionManifest();
522
522
  if (!envPolicyManifest || !Object.keys(envPolicyManifest).length) {
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","_interopRequireDefault","require","_componentId","_lodash","_componentIssues","_constants","_packageJsonFile","_packages","_dependencies","_overridesDependencies","_dependenciesData","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","DepsKeysToAllPackagesDepsKeys","dependencies","devDependencies","peerDependencies","ApplyOverrides","constructor","component","depsResolver","workspace","componentId","componentFromModel","allDependencies","allPackagesDependencies","packageDependencies","devPackageDependencies","peerPackageDependencies","processedFiles","issues","setLegacyInsideHarmonyIssue","overridesDependencies","OverridesDependencies","debugDependenciesData","components","consumer","getDependenciesData","populateDependencies","dependenciesData","DependenciesData","coreAspects","autoDetectOverrides","loadAutoDetectOverrides","removeIgnoredComponentsByOverrides","cloneAllPackagesDependencies","removeIgnoredPackagesByOverrides","removeDevAndEnvDepsIfTheyAlsoRegulars","applyPeersFromComponentModel","applyPackageJson","applyWorkspacePolicy","makeLegacyAsPeer","applyAutoDetectOverridesOnComponent","manuallyAddDependencies","applyAutoDetectedPeersFromEnvOnEnvItSelf","_uniq2","shouldBeIncluded","dep","fileType","shouldIgnorePackage","packageName","filter","isTestFile","missingIssue","getIssueByName","missingData","forEach","m","missingPackages","pkg","isDevFile","length","delete","IssuesClasses","MissingPackagesDependenciesOnFs","getAutoDetectOverrides","extensions","id","files","originAllPackagesDependencies","cloneDeep","pkgVersion","pkgName","shouldIgnorePackageByType","shouldBeIncludedDev","_pickBy2","_resolvePackageData","undefined","componentMap","rootDir","consumerPath","getPath","basePath","path","join","modulePath","resolvePackagePath","packageObject","resolvePackageData","_getComponentIdToAdd","field","dependency","packageData","name","getDependenciesToAddManually","packageJson","existingDependencies","overrides","packages","DEPENDENCIES_FIELDS","depField","keys","dependencyValue","componentData","dependencyExist","find","d","isEqualWithoutVersion","_addManuallyAddedDep","toString","push","addedPkg","_manuallyAddPackage","assign","missingPackageDependencies","_getPackageJson","depData","Dependency","_isEmpty2","_pkgFieldMapping","peerName","getNotRegularPackages","_difference2","_keys2","_pick2","componentDepsIds","ComponentIdList","map","c","has","getPeerDependencies","_getPackageJsonFromComponentModel","projectPeerDependencies","peerPackages","shouldIgnorePeerPackage","includes","pkgJsonPeer","pkgJsonRegularDeps","peerDeps","_forEachObjIndexed2","_pkgVal","peerVersionFromPkgJson","regularVersionFromPkgJson","wsPolicy","getWorkspacePolicyManifest","wsPeer","wsRegular","peerVersionFromWsPolicy","regularVersionFromWsPolicy","version","isNaN","originallyExists","uniq","flat","pkgVal","existsInCompsDeps","existsInCompsDevDeps","MANUALLY_REMOVE_DEPENDENCY","envPolicy","getEnvPolicyFromEnvLegacyId","envPolicyManifest","selfPolicy","toVersionManifest","deps","peerVersionFromEnvPolicy","packageJsonObject","PackageJsonFile","createFromComponent","isLegacy","getOrCreate","LegacyInsideHarmony","Error","exports"],"sources":["apply-overrides.ts"],"sourcesContent":["import R from 'ramda';\nimport path from 'path';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { cloneDeep, uniq } from 'lodash';\nimport { IssuesList, IssuesClasses, MissingPackagesData } from '@teambit/component-issues';\nimport { DEPENDENCIES_FIELDS, MANUALLY_REMOVE_DEPENDENCY } from '@teambit/legacy/dist/constants';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';\nimport { ResolvedPackageData, resolvePackageData, resolvePackagePath } from '@teambit/legacy/dist/utils/packages';\nimport { PathLinux } from '@teambit/legacy/dist/utils/path';\nimport { Workspace } from '@teambit/workspace';\nimport { Dependency } from '@teambit/legacy/dist/consumer/component/dependencies';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport Consumer from '@teambit/legacy/dist/consumer/consumer';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport OverridesDependencies from './overrides-dependencies';\nimport { DependenciesData } from './dependencies-data';\nimport { DebugDependencies, FileType } from './auto-detect-deps';\n\nexport type AllDependencies = {\n dependencies: Dependency[];\n devDependencies: Dependency[];\n};\n\nexport type AllPackagesDependencies = {\n packageDependencies: Record<string, string>;\n devPackageDependencies: Record<string, string>;\n peerPackageDependencies: Record<string, string>;\n};\n\nconst DepsKeysToAllPackagesDepsKeys = {\n dependencies: 'packageDependencies',\n devDependencies: 'devPackageDependencies',\n peerDependencies: 'peerPackageDependencies',\n};\n\nexport class ApplyOverrides {\n componentId: ComponentID;\n componentFromModel: Component;\n allDependencies: AllDependencies;\n allPackagesDependencies: AllPackagesDependencies;\n /**\n * This will store a copy of the package deps before removal\n * in order to apply auto detected rules that are running after the removal\n */\n originAllPackagesDependencies: AllPackagesDependencies;\n issues: IssuesList;\n coreAspects: string[] = [];\n processedFiles: string[];\n overridesDependencies: OverridesDependencies;\n debugDependenciesData: DebugDependencies;\n autoDetectOverrides: Record<string, any> | undefined;\n constructor(\n private component: Component,\n private depsResolver: DependencyResolverMain,\n private workspace?: Workspace\n ) {\n this.componentId = component.componentId;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n this.componentFromModel = this.component.componentFromModel;\n this.allDependencies = {\n dependencies: [],\n devDependencies: [],\n };\n this.allPackagesDependencies = {\n packageDependencies: {},\n devPackageDependencies: {},\n peerPackageDependencies: {},\n };\n this.processedFiles = [];\n this.issues = component.issues;\n this.setLegacyInsideHarmonyIssue();\n this.overridesDependencies = new OverridesDependencies(component);\n this.debugDependenciesData = { components: [] };\n }\n\n get consumer(): Consumer | undefined {\n return this.workspace?.consumer;\n }\n\n async getDependenciesData(): Promise<{\n dependenciesData: DependenciesData;\n overridesDependencies: OverridesDependencies;\n autoDetectOverrides?: Record<string, any>;\n }> {\n await this.populateDependencies();\n const dependenciesData = new DependenciesData(\n this.allDependencies,\n this.allPackagesDependencies,\n this.issues,\n this.coreAspects\n );\n return {\n dependenciesData,\n overridesDependencies: this.overridesDependencies,\n autoDetectOverrides: this.autoDetectOverrides,\n };\n }\n\n /**\n * Given the tree of file dependencies from the driver, find the components of these files.\n * Each dependency file has a path, use bit.map to search for the component name by that path.\n * If the component is found, add it to \"this.allDependencies.dependencies\". Otherwise, add it to \"this.issues.untrackedDependencies\".\n *\n * For the found components, add their sourceRelativePath and destinationRelativePath, they are being used for\n * generating links upon import:\n * sourceRelativePath - location of the link file.\n * destinationRelativePath - destination written inside the link file.\n *\n * When a dependency is found in a regular (implementation) file, it goes to `dependencies`. If\n * it found on a test file, it goes to `devDependencies`.\n * Similarly, when a package is found in a regular file, it goes to `packageDependencies`. When\n * if found in a test file, it goes to `devPackageDependencies`.\n * An exception for the above is when a package is required in a regular or test file but is also\n * mentioned in the `package.json` file as a peerDependency, in that case, the package is added\n * to `peerPackageDependencies` and removed from other places. Unless this package is overridden\n * and marked as ignored in the consumer or component config file.\n */\n private async populateDependencies() {\n await this.loadAutoDetectOverrides();\n this.removeIgnoredComponentsByOverrides();\n this.cloneAllPackagesDependencies();\n this.removeIgnoredPackagesByOverrides();\n this.removeDevAndEnvDepsIfTheyAlsoRegulars();\n this.applyPeersFromComponentModel();\n this.applyPackageJson();\n this.applyWorkspacePolicy();\n this.makeLegacyAsPeer();\n await this.applyAutoDetectOverridesOnComponent();\n this.manuallyAddDependencies();\n // Doing this here (after manuallyAddDependencies) because usually the env of the env is adding dependencies as peer of the env\n // which will make this not work if it come before\n // example:\n // custom react has peers with react 16.4.0.\n // the custom react uses the \"teambit.envs/env\" env, which will add react ^17.0.0 to every component that uses it\n // we want to make sure that the custom react is using 16.4.0 not 17.\n await this.applyAutoDetectedPeersFromEnvOnEnvItSelf();\n this.coreAspects = R.uniq(this.coreAspects);\n }\n\n private removeIgnoredComponentsByOverrides() {\n const shouldBeIncluded = (dep: Dependency, fileType: FileType) =>\n !this.overridesDependencies.shouldIgnorePackage(dep.packageName as string, fileType);\n this.allDependencies.dependencies = this.allDependencies.dependencies.filter((dep) =>\n shouldBeIncluded(dep, { isTestFile: false })\n );\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter((dep) =>\n shouldBeIncluded(dep, { isTestFile: true })\n );\n\n const missingIssue = this.issues.getIssueByName('MissingPackagesDependenciesOnFs');\n if (!missingIssue) return;\n const missingData = missingIssue.data as MissingPackagesData[];\n missingData.forEach((m) => {\n m.missingPackages = m.missingPackages.filter(\n (pkg) => !this.overridesDependencies.shouldIgnorePackage(pkg, { isTestFile: m.isDevFile })\n );\n });\n missingIssue.data = missingData.filter((m) => m.missingPackages.length);\n if (!missingIssue.data.length) this.issues.delete(IssuesClasses.MissingPackagesDependenciesOnFs);\n }\n\n private async loadAutoDetectOverrides() {\n this.autoDetectOverrides = await this.workspace?.getAutoDetectOverrides(\n this.component.extensions,\n this.component.id,\n this.component.files\n );\n }\n\n private cloneAllPackagesDependencies() {\n this.originAllPackagesDependencies = cloneDeep(this.allPackagesDependencies);\n }\n\n private removeIgnoredPackagesByOverrides() {\n const shouldBeIncluded = (pkgVersion, pkgName) =>\n !this.overridesDependencies.shouldIgnorePackageByType(pkgName, 'dependencies');\n const shouldBeIncludedDev = (pkgVersion, pkgName) =>\n !this.overridesDependencies.shouldIgnorePackageByType(pkgName, 'devDependencies');\n\n this.allPackagesDependencies.packageDependencies = R.pickBy(\n shouldBeIncluded,\n this.allPackagesDependencies.packageDependencies\n );\n this.allPackagesDependencies.devPackageDependencies = R.pickBy(\n shouldBeIncludedDev,\n this.allPackagesDependencies.devPackageDependencies\n );\n }\n\n // TODO: maybe cache those results??\n private _resolvePackageData(packageName: string): ResolvedPackageData | undefined {\n const consumer = this.consumer;\n if (!consumer) return undefined;\n // if consumer is defined, then it has componentMap prop.\n const componentMap = this.component.componentMap as ComponentMap;\n const rootDir: PathLinux | null | undefined = componentMap.rootDir as string;\n const consumerPath = consumer.getPath();\n const basePath = rootDir ? path.join(consumerPath, rootDir) : consumerPath;\n const modulePath = resolvePackagePath(packageName, basePath, consumerPath);\n if (!modulePath) return undefined; // e.g. it's author and wasn't exported yet, so there's no node_modules of that component\n const packageObject = resolvePackageData(basePath, modulePath);\n return packageObject;\n }\n\n private _getComponentIdToAdd(\n field: string,\n dependency: string\n ): { componentId?: ComponentID; packageName?: string } | undefined {\n if (field === 'peerDependencies') return undefined;\n const packageData = this._resolvePackageData(dependency);\n return { componentId: packageData?.componentId, packageName: packageData?.name };\n }\n\n getDependenciesToAddManually(\n packageJson: Record<string, any> | null | undefined,\n existingDependencies: AllDependencies\n ): { components: Record<string, any>; packages: Record<string, any> } | undefined {\n const overrides = this.overridesDependencies.getDependenciesToAddManually();\n if (!overrides) return undefined;\n const components = {};\n const packages = {};\n DEPENDENCIES_FIELDS.forEach((depField) => {\n if (!overrides[depField]) return;\n Object.keys(overrides[depField]).forEach((dependency) => {\n const dependencyValue = overrides[depField][dependency];\n const componentData = this._getComponentIdToAdd(depField, dependency);\n if (componentData?.componentId) {\n const dependencyExist = existingDependencies[depField].find((d) =>\n d.id.isEqualWithoutVersion(componentData.componentId)\n );\n if (!dependencyExist) {\n this.overridesDependencies._addManuallyAddedDep(depField, componentData.componentId.toString());\n components[depField] ? components[depField].push(componentData) : (components[depField] = [componentData]);\n }\n return;\n }\n const addedPkg = this.overridesDependencies._manuallyAddPackage(\n depField,\n dependency,\n dependencyValue,\n packageJson\n );\n if (addedPkg) {\n packages[depField] = Object.assign(packages[depField] || {}, addedPkg);\n if (componentData && !componentData.packageName) {\n this.overridesDependencies.missingPackageDependencies.push(dependency);\n }\n }\n });\n });\n return { components, packages };\n }\n\n private manuallyAddDependencies() {\n const packageJson = this._getPackageJson();\n const dependencies = this.getDependenciesToAddManually(packageJson, this.allDependencies);\n if (!dependencies) return;\n const { components, packages } = dependencies;\n DEPENDENCIES_FIELDS.forEach((depField) => {\n if (components[depField] && components[depField].length) {\n components[depField].forEach((depData) =>\n this.allDependencies[depField].push(new Dependency(depData.componentId, [], depData.packageName))\n );\n }\n if (packages[depField] && !R.isEmpty(packages[depField])) {\n Object.assign(this.allPackagesDependencies[this._pkgFieldMapping(depField)], packages[depField]);\n }\n });\n // The automatic dependency detector considers all found dependencies to be runtime dependencies.\n // But this breaks proper installation of injected subdependencies that are resolved from workspace components.\n if (this.allPackagesDependencies.packageDependencies && packages.peerDependencies) {\n for (const peerName of Object.keys(packages.peerDependencies)) {\n delete this.allPackagesDependencies.packageDependencies[peerName];\n }\n }\n if (this.allPackagesDependencies.packageDependencies && packages.peerPackageDependencies) {\n for (const peerName of Object.keys(packages.peerPackageDependencies)) {\n delete this.allPackagesDependencies.packageDependencies[peerName];\n }\n }\n }\n\n /**\n * Remove the dependencies which appear both in dev and regular deps from the dev\n * Because if a dependency is both dev dependency and regular dependency it should be treated as regular one\n * Apply for both packages and components dependencies\n */\n private removeDevAndEnvDepsIfTheyAlsoRegulars() {\n // remove dev and env packages that are also regular packages\n const getNotRegularPackages = (packages) =>\n R.difference(R.keys(packages), R.keys(this.allPackagesDependencies.packageDependencies));\n this.allPackagesDependencies.devPackageDependencies = R.pick(\n getNotRegularPackages(this.allPackagesDependencies.devPackageDependencies),\n this.allPackagesDependencies.devPackageDependencies\n );\n // remove dev dependencies that are also regular dependencies\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const componentDepsIds = new ComponentIdList(...this.allDependencies.dependencies.map((c) => c.id));\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter(\n (d) => !componentDepsIds.has(d.id)\n );\n }\n\n private applyPeersFromComponentModel(): void {\n const getPeerDependencies = (): Record<string, any> => {\n const packageJson = this._getPackageJsonFromComponentModel();\n if (packageJson && packageJson.peerDependencies) return packageJson.peerDependencies;\n return {};\n };\n const projectPeerDependencies = getPeerDependencies();\n const peerPackages = {};\n if (R.isEmpty(projectPeerDependencies)) return;\n\n // check whether the peer-dependencies was actually require in the code. if so, remove it from\n // the packages/dev-packages and add it as a peer-package.\n // if it was not required in the code, don't add it to the peerPackages\n Object.keys(projectPeerDependencies).forEach((pkg) => {\n if (this.overridesDependencies.shouldIgnorePeerPackage(pkg)) return;\n ['packageDependencies', 'devPackageDependencies'].forEach((field) => {\n if (Object.keys(this.allPackagesDependencies[field]).includes(pkg)) {\n delete this.allPackagesDependencies[field][pkg];\n peerPackages[pkg] = projectPeerDependencies[pkg];\n }\n });\n });\n this.allPackagesDependencies.peerPackageDependencies = peerPackages;\n }\n\n private applyPackageJson(): void {\n const packageJson = this._getPackageJson();\n if (!packageJson) return;\n const pkgJsonPeer = packageJson.peerDependencies || {};\n const pkgJsonRegularDeps = packageJson.dependencies || {};\n const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromPkgJson = pkgJsonPeer[pkgName];\n const regularVersionFromPkgJson = pkgJsonRegularDeps[pkgName];\n if (peerVersionFromPkgJson) {\n delete this.allPackagesDependencies[field][pkgName];\n peerDeps[pkgName] = peerVersionFromPkgJson;\n } else if (regularVersionFromPkgJson) {\n delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];\n this.allPackagesDependencies[field][pkgName] = regularVersionFromPkgJson;\n }\n }, this.allPackagesDependencies[field]);\n });\n this.allPackagesDependencies.peerPackageDependencies = peerDeps;\n }\n\n private applyWorkspacePolicy(): void {\n const wsPolicy = this.depsResolver.getWorkspacePolicyManifest();\n if (!wsPolicy) return;\n const wsPeer = wsPolicy.peerDependencies || {};\n const wsRegular = wsPolicy.dependencies || {};\n const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};\n // we are not iterate component deps since they are resolved from what actually installed\n // the policy used for installation only in that case\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromWsPolicy = wsPeer[pkgName];\n const regularVersionFromWsPolicy = wsRegular[pkgName];\n if (peerVersionFromWsPolicy) {\n delete this.allPackagesDependencies[field][pkgName];\n peerDeps[pkgName] = peerVersionFromWsPolicy;\n } else if (regularVersionFromWsPolicy) {\n delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];\n this.allPackagesDependencies[field][pkgName] = regularVersionFromWsPolicy;\n }\n }, this.allPackagesDependencies[field]);\n });\n this.allPackagesDependencies.peerPackageDependencies = peerDeps;\n }\n\n /**\n * It removes the @teambit/legacy dependency from the dependencies/devDeps and adds it as a peer dependency with ^.\n */\n private makeLegacyAsPeer(): void {\n let version;\n if (this.allPackagesDependencies.packageDependencies['@teambit/legacy']) {\n version = this.allPackagesDependencies.packageDependencies['@teambit/legacy'];\n delete this.allPackagesDependencies.packageDependencies['@teambit/legacy'];\n }\n if (this.allPackagesDependencies.devPackageDependencies['@teambit/legacy']) {\n if (!version) version = this.allPackagesDependencies.devPackageDependencies['@teambit/legacy'];\n delete this.allPackagesDependencies.devPackageDependencies['@teambit/legacy'];\n }\n if (version) {\n if (!Number.isNaN(version[0])) version = `^${version}`;\n this.allPackagesDependencies.peerPackageDependencies['@teambit/legacy'] = version;\n }\n }\n\n private async applyAutoDetectOverridesOnComponent(): Promise<void> {\n const autoDetectOverrides = this.autoDetectOverrides;\n\n if (!autoDetectOverrides || !Object.keys(autoDetectOverrides).length) {\n return;\n }\n\n const originallyExists: string[] = [];\n let missingPackages: string[] = [];\n // We want to also add missing packages to the peer list as we know to resolve the version from the env anyway\n const missingData = this.issues.getIssueByName('MissingPackagesDependenciesOnFs')?.data as\n | MissingPackagesData[]\n | undefined;\n if (missingData) {\n missingPackages = uniq(missingData.map((d) => d.missingPackages).flat());\n }\n ['dependencies', 'devDependencies', 'peerDependencies'].forEach((field) => {\n R.forEachObjIndexed((pkgVal, pkgName) => {\n if (this.overridesDependencies.shouldIgnorePeerPackage(pkgName)) return;\n // Validate it was auto detected, we only affect stuff that were detected\n const existsInCompsDeps = this.allDependencies.dependencies.find((dep) => {\n return dep.packageName === pkgName;\n });\n\n const existsInCompsDevDeps = this.allDependencies.devDependencies.find((dep) => {\n return dep.packageName === pkgName;\n });\n\n if (\n // We are checking originAllPackagesDependencies instead of allPackagesDependencies\n // as it might be already removed from allPackagesDependencies at this point if it was set with\n // \"-\" in runtime/dev\n // in such case we still want to apply it here\n !this.originAllPackagesDependencies.packageDependencies[pkgName] &&\n !this.originAllPackagesDependencies.devPackageDependencies[pkgName] &&\n !this.originAllPackagesDependencies.peerPackageDependencies[pkgName] &&\n !existsInCompsDeps &&\n !existsInCompsDevDeps &&\n // Check if it was orignally exists in the component\n // as we might have a policy which looks like this:\n // \"components\": {\n // \"dependencies\": {\n // \"my-dep\": \"-\"\n // },\n // \"devDependencies\": {\n // \"my-dep\": \"1.0.0\"\n // },\n // }\n // in that case we might remove it before getting to the devDeps then we will think that it wasn't required in the component\n // which is incorrect\n !originallyExists.includes(pkgName) &&\n !missingPackages.includes(pkgName)\n ) {\n return;\n }\n originallyExists.push(pkgName);\n const key = DepsKeysToAllPackagesDepsKeys[field];\n\n delete this.allPackagesDependencies[key][pkgName];\n // When changing peer dependency we want it to be stronger than the other types\n if (field === 'peerDependencies') {\n delete this.allPackagesDependencies.devPackageDependencies[pkgName];\n delete this.allPackagesDependencies.packageDependencies[pkgName];\n if (existsInCompsDeps) {\n this.allDependencies.dependencies = this.allDependencies.dependencies.filter(\n (dep) => dep.packageName !== pkgName\n );\n }\n if (existsInCompsDevDeps) {\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter(\n (dep) => dep.packageName !== pkgName\n );\n }\n }\n // delete this.allPackagesDependencies.packageDependencies[pkgName];\n // delete this.allPackagesDependencies.devPackageDependencies[pkgName];\n // delete this.allPackagesDependencies.peerPackageDependencies[pkgName];\n\n // If it exists in comps deps / comp dev deps, we don't want to add it to the allPackagesDependencies\n // as it will make the same dep both a dev and runtime dep\n // since we are here only for auto detected deps, it means we already resolved the version correctly\n // so we don't need to really modify the version\n // also the version here might have a range (^ or ~ for example) so we can't\n // just put it as is, as it is not valid for component deps to have range\n if (\n pkgVal !== MANUALLY_REMOVE_DEPENDENCY &&\n ((!existsInCompsDeps && !existsInCompsDevDeps) || field === 'peerDependencies')\n ) {\n this.allPackagesDependencies[key][pkgName] = pkgVal;\n }\n }, autoDetectOverrides[field]);\n });\n }\n\n private async applyAutoDetectedPeersFromEnvOnEnvItSelf(): Promise<void> {\n const envPolicy = await this.depsResolver.getEnvPolicyFromEnvLegacyId(this.component.id, this.component.files);\n if (!envPolicy) return;\n const envPolicyManifest = envPolicy.selfPolicy.toVersionManifest();\n\n if (!envPolicyManifest || !Object.keys(envPolicyManifest).length) {\n return;\n }\n const deps = this.allPackagesDependencies.packageDependencies || {};\n // we are not iterate component deps since they are resolved from what actually installed\n // the policy used for installation only in that case\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromEnvPolicy = envPolicyManifest[pkgName];\n if (peerVersionFromEnvPolicy) {\n delete this.allPackagesDependencies[field][pkgName];\n }\n }, this.allPackagesDependencies[field]);\n });\n Object.assign(deps, envPolicyManifest);\n // TODO: handle component deps once we support peers between components\n this.allPackagesDependencies.packageDependencies = deps;\n }\n\n /**\n * returns `package.json` of the component when it's imported, or `package.json` of the workspace\n * when it's authored.\n */\n private _getPackageJson(): Record<string, any> | undefined {\n return this.consumer?.packageJson.packageJsonObject;\n }\n\n private _getPackageJsonFromComponentModel(): Record<string, any> | undefined {\n if (this.componentFromModel && this.component.componentMap) {\n // a component is imported but the package.json file is missing or never written\n // read the values from the model\n const packageJson = PackageJsonFile.createFromComponent(\n this.component.componentMap.rootDir,\n this.componentFromModel\n );\n return packageJson.packageJsonObject;\n }\n return undefined;\n }\n\n private setLegacyInsideHarmonyIssue() {\n if (this.componentFromModel && this.componentFromModel.isLegacy) {\n this.issues.getOrCreate(IssuesClasses.LegacyInsideHarmony).data = true;\n }\n }\n\n private _pkgFieldMapping(field: string) {\n switch (field) {\n case 'dependencies':\n return 'packageDependencies';\n case 'devDependencies':\n return 'devPackageDependencies';\n case 'peerDependencies':\n return 'peerPackageDependencies';\n default:\n throw new Error(`${field} is not recognized`);\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_path","data","_interopRequireDefault","require","_componentId","_lodash","_componentIssues","_constants","_packageJsonFile","_packages","_dependencies","_overridesDependencies","_dependenciesData","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","DepsKeysToAllPackagesDepsKeys","dependencies","devDependencies","peerDependencies","ApplyOverrides","constructor","component","depsResolver","workspace","componentId","componentFromModel","allDependencies","allPackagesDependencies","packageDependencies","devPackageDependencies","peerPackageDependencies","processedFiles","issues","setLegacyInsideHarmonyIssue","overridesDependencies","OverridesDependencies","debugDependenciesData","components","consumer","getDependenciesData","populateDependencies","dependenciesData","DependenciesData","coreAspects","autoDetectOverrides","loadAutoDetectOverrides","removeIgnoredComponentsByOverrides","cloneAllPackagesDependencies","removeIgnoredPackagesByOverrides","removeDevAndEnvDepsIfTheyAlsoRegulars","applyPeersFromComponentModel","applyPackageJson","applyWorkspacePolicy","makeLegacyAsPeer","applyAutoDetectOverridesOnComponent","manuallyAddDependencies","applyAutoDetectedPeersFromEnvOnEnvItSelf","_uniq2","shouldBeIncluded","dep","fileType","shouldIgnorePackage","packageName","filter","isTestFile","missingIssue","getIssueByName","missingData","forEach","m","missingPackages","pkg","isDevFile","length","delete","IssuesClasses","MissingPackagesDependenciesOnFs","getAutoDetectOverrides","extensions","id","files","originAllPackagesDependencies","cloneDeep","pkgVersion","pkgName","shouldIgnorePackageByType","shouldBeIncludedDev","_pickBy2","_resolvePackageData","undefined","componentMap","rootDir","consumerPath","getPath","basePath","path","join","modulePath","resolvePackagePath","packageObject","resolvePackageData","_getComponentIdToAdd","field","dependency","packageData","name","getDependenciesToAddManually","packageJson","existingDependencies","overrides","packages","DEPENDENCIES_FIELDS","depField","keys","dependencyValue","componentData","dependencyExist","find","d","isEqualWithoutVersion","_addManuallyAddedDep","toString","push","addedPkg","_manuallyAddPackage","assign","missingPackageDependencies","_getPackageJson","depData","Dependency","_isEmpty2","_pkgFieldMapping","peerName","getNotRegularPackages","_difference2","_keys2","_pick2","componentDepsIds","ComponentIdList","map","c","has","getPeerDependencies","_getPackageJsonFromComponentModel","projectPeerDependencies","peerPackages","shouldIgnorePeerPackage","includes","pkgJsonPeer","pkgJsonRegularDeps","peerDeps","_forEachObjIndexed2","_pkgVal","peerVersionFromPkgJson","regularVersionFromPkgJson","wsPolicy","getWorkspacePolicyManifest","wsPeer","wsRegular","peerVersionFromWsPolicy","regularVersionFromWsPolicy","version","isNaN","originallyExists","uniq","flat","pkgVal","existsInCompsDeps","existsInCompsDevDeps","MANUALLY_REMOVE_DEPENDENCY","envPolicy","getEnvPolicyFromEnvId","envPolicyManifest","selfPolicy","toVersionManifest","deps","peerVersionFromEnvPolicy","packageJsonObject","PackageJsonFile","createFromComponent","isLegacy","getOrCreate","LegacyInsideHarmony","Error","exports"],"sources":["apply-overrides.ts"],"sourcesContent":["import R from 'ramda';\nimport path from 'path';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { cloneDeep, uniq } from 'lodash';\nimport { IssuesList, IssuesClasses, MissingPackagesData } from '@teambit/component-issues';\nimport { DEPENDENCIES_FIELDS, MANUALLY_REMOVE_DEPENDENCY } from '@teambit/legacy/dist/constants';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport PackageJsonFile from '@teambit/legacy/dist/consumer/component/package-json-file';\nimport { ResolvedPackageData, resolvePackageData, resolvePackagePath } from '@teambit/legacy/dist/utils/packages';\nimport { PathLinux } from '@teambit/legacy/dist/utils/path';\nimport { Workspace } from '@teambit/workspace';\nimport { Dependency } from '@teambit/legacy/dist/consumer/component/dependencies';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport Consumer from '@teambit/legacy/dist/consumer/consumer';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport OverridesDependencies from './overrides-dependencies';\nimport { DependenciesData } from './dependencies-data';\nimport { DebugDependencies, FileType } from './auto-detect-deps';\n\nexport type AllDependencies = {\n dependencies: Dependency[];\n devDependencies: Dependency[];\n};\n\nexport type AllPackagesDependencies = {\n packageDependencies: Record<string, string>;\n devPackageDependencies: Record<string, string>;\n peerPackageDependencies: Record<string, string>;\n};\n\nconst DepsKeysToAllPackagesDepsKeys = {\n dependencies: 'packageDependencies',\n devDependencies: 'devPackageDependencies',\n peerDependencies: 'peerPackageDependencies',\n};\n\nexport class ApplyOverrides {\n componentId: ComponentID;\n componentFromModel: Component;\n allDependencies: AllDependencies;\n allPackagesDependencies: AllPackagesDependencies;\n /**\n * This will store a copy of the package deps before removal\n * in order to apply auto detected rules that are running after the removal\n */\n originAllPackagesDependencies: AllPackagesDependencies;\n issues: IssuesList;\n coreAspects: string[] = [];\n processedFiles: string[];\n overridesDependencies: OverridesDependencies;\n debugDependenciesData: DebugDependencies;\n autoDetectOverrides: Record<string, any> | undefined;\n constructor(\n private component: Component,\n private depsResolver: DependencyResolverMain,\n private workspace?: Workspace\n ) {\n this.componentId = component.componentId;\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n this.componentFromModel = this.component.componentFromModel;\n this.allDependencies = {\n dependencies: [],\n devDependencies: [],\n };\n this.allPackagesDependencies = {\n packageDependencies: {},\n devPackageDependencies: {},\n peerPackageDependencies: {},\n };\n this.processedFiles = [];\n this.issues = component.issues;\n this.setLegacyInsideHarmonyIssue();\n this.overridesDependencies = new OverridesDependencies(component);\n this.debugDependenciesData = { components: [] };\n }\n\n get consumer(): Consumer | undefined {\n return this.workspace?.consumer;\n }\n\n async getDependenciesData(): Promise<{\n dependenciesData: DependenciesData;\n overridesDependencies: OverridesDependencies;\n autoDetectOverrides?: Record<string, any>;\n }> {\n await this.populateDependencies();\n const dependenciesData = new DependenciesData(\n this.allDependencies,\n this.allPackagesDependencies,\n this.issues,\n this.coreAspects\n );\n return {\n dependenciesData,\n overridesDependencies: this.overridesDependencies,\n autoDetectOverrides: this.autoDetectOverrides,\n };\n }\n\n /**\n * Given the tree of file dependencies from the driver, find the components of these files.\n * Each dependency file has a path, use bit.map to search for the component name by that path.\n * If the component is found, add it to \"this.allDependencies.dependencies\". Otherwise, add it to \"this.issues.untrackedDependencies\".\n *\n * For the found components, add their sourceRelativePath and destinationRelativePath, they are being used for\n * generating links upon import:\n * sourceRelativePath - location of the link file.\n * destinationRelativePath - destination written inside the link file.\n *\n * When a dependency is found in a regular (implementation) file, it goes to `dependencies`. If\n * it found on a test file, it goes to `devDependencies`.\n * Similarly, when a package is found in a regular file, it goes to `packageDependencies`. When\n * if found in a test file, it goes to `devPackageDependencies`.\n * An exception for the above is when a package is required in a regular or test file but is also\n * mentioned in the `package.json` file as a peerDependency, in that case, the package is added\n * to `peerPackageDependencies` and removed from other places. Unless this package is overridden\n * and marked as ignored in the consumer or component config file.\n */\n private async populateDependencies() {\n await this.loadAutoDetectOverrides();\n this.removeIgnoredComponentsByOverrides();\n this.cloneAllPackagesDependencies();\n this.removeIgnoredPackagesByOverrides();\n this.removeDevAndEnvDepsIfTheyAlsoRegulars();\n this.applyPeersFromComponentModel();\n this.applyPackageJson();\n this.applyWorkspacePolicy();\n this.makeLegacyAsPeer();\n await this.applyAutoDetectOverridesOnComponent();\n this.manuallyAddDependencies();\n // Doing this here (after manuallyAddDependencies) because usually the env of the env is adding dependencies as peer of the env\n // which will make this not work if it come before\n // example:\n // custom react has peers with react 16.4.0.\n // the custom react uses the \"teambit.envs/env\" env, which will add react ^17.0.0 to every component that uses it\n // we want to make sure that the custom react is using 16.4.0 not 17.\n await this.applyAutoDetectedPeersFromEnvOnEnvItSelf();\n this.coreAspects = R.uniq(this.coreAspects);\n }\n\n private removeIgnoredComponentsByOverrides() {\n const shouldBeIncluded = (dep: Dependency, fileType: FileType) =>\n !this.overridesDependencies.shouldIgnorePackage(dep.packageName as string, fileType);\n this.allDependencies.dependencies = this.allDependencies.dependencies.filter((dep) =>\n shouldBeIncluded(dep, { isTestFile: false })\n );\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter((dep) =>\n shouldBeIncluded(dep, { isTestFile: true })\n );\n\n const missingIssue = this.issues.getIssueByName('MissingPackagesDependenciesOnFs');\n if (!missingIssue) return;\n const missingData = missingIssue.data as MissingPackagesData[];\n missingData.forEach((m) => {\n m.missingPackages = m.missingPackages.filter(\n (pkg) => !this.overridesDependencies.shouldIgnorePackage(pkg, { isTestFile: m.isDevFile })\n );\n });\n missingIssue.data = missingData.filter((m) => m.missingPackages.length);\n if (!missingIssue.data.length) this.issues.delete(IssuesClasses.MissingPackagesDependenciesOnFs);\n }\n\n private async loadAutoDetectOverrides() {\n this.autoDetectOverrides = await this.workspace?.getAutoDetectOverrides(\n this.component.extensions,\n this.component.id,\n this.component.files\n );\n }\n\n private cloneAllPackagesDependencies() {\n this.originAllPackagesDependencies = cloneDeep(this.allPackagesDependencies);\n }\n\n private removeIgnoredPackagesByOverrides() {\n const shouldBeIncluded = (pkgVersion, pkgName) =>\n !this.overridesDependencies.shouldIgnorePackageByType(pkgName, 'dependencies');\n const shouldBeIncludedDev = (pkgVersion, pkgName) =>\n !this.overridesDependencies.shouldIgnorePackageByType(pkgName, 'devDependencies');\n\n this.allPackagesDependencies.packageDependencies = R.pickBy(\n shouldBeIncluded,\n this.allPackagesDependencies.packageDependencies\n );\n this.allPackagesDependencies.devPackageDependencies = R.pickBy(\n shouldBeIncludedDev,\n this.allPackagesDependencies.devPackageDependencies\n );\n }\n\n // TODO: maybe cache those results??\n private _resolvePackageData(packageName: string): ResolvedPackageData | undefined {\n const consumer = this.consumer;\n if (!consumer) return undefined;\n // if consumer is defined, then it has componentMap prop.\n const componentMap = this.component.componentMap as ComponentMap;\n const rootDir: PathLinux | null | undefined = componentMap.rootDir as string;\n const consumerPath = consumer.getPath();\n const basePath = rootDir ? path.join(consumerPath, rootDir) : consumerPath;\n const modulePath = resolvePackagePath(packageName, basePath, consumerPath);\n if (!modulePath) return undefined; // e.g. it's author and wasn't exported yet, so there's no node_modules of that component\n const packageObject = resolvePackageData(basePath, modulePath);\n return packageObject;\n }\n\n private _getComponentIdToAdd(\n field: string,\n dependency: string\n ): { componentId?: ComponentID; packageName?: string } | undefined {\n if (field === 'peerDependencies') return undefined;\n const packageData = this._resolvePackageData(dependency);\n return { componentId: packageData?.componentId, packageName: packageData?.name };\n }\n\n getDependenciesToAddManually(\n packageJson: Record<string, any> | null | undefined,\n existingDependencies: AllDependencies\n ): { components: Record<string, any>; packages: Record<string, any> } | undefined {\n const overrides = this.overridesDependencies.getDependenciesToAddManually();\n if (!overrides) return undefined;\n const components = {};\n const packages = {};\n DEPENDENCIES_FIELDS.forEach((depField) => {\n if (!overrides[depField]) return;\n Object.keys(overrides[depField]).forEach((dependency) => {\n const dependencyValue = overrides[depField][dependency];\n const componentData = this._getComponentIdToAdd(depField, dependency);\n if (componentData?.componentId) {\n const dependencyExist = existingDependencies[depField].find((d) =>\n d.id.isEqualWithoutVersion(componentData.componentId)\n );\n if (!dependencyExist) {\n this.overridesDependencies._addManuallyAddedDep(depField, componentData.componentId.toString());\n components[depField] ? components[depField].push(componentData) : (components[depField] = [componentData]);\n }\n return;\n }\n const addedPkg = this.overridesDependencies._manuallyAddPackage(\n depField,\n dependency,\n dependencyValue,\n packageJson\n );\n if (addedPkg) {\n packages[depField] = Object.assign(packages[depField] || {}, addedPkg);\n if (componentData && !componentData.packageName) {\n this.overridesDependencies.missingPackageDependencies.push(dependency);\n }\n }\n });\n });\n return { components, packages };\n }\n\n private manuallyAddDependencies() {\n const packageJson = this._getPackageJson();\n const dependencies = this.getDependenciesToAddManually(packageJson, this.allDependencies);\n if (!dependencies) return;\n const { components, packages } = dependencies;\n DEPENDENCIES_FIELDS.forEach((depField) => {\n if (components[depField] && components[depField].length) {\n components[depField].forEach((depData) =>\n this.allDependencies[depField].push(new Dependency(depData.componentId, [], depData.packageName))\n );\n }\n if (packages[depField] && !R.isEmpty(packages[depField])) {\n Object.assign(this.allPackagesDependencies[this._pkgFieldMapping(depField)], packages[depField]);\n }\n });\n // The automatic dependency detector considers all found dependencies to be runtime dependencies.\n // But this breaks proper installation of injected subdependencies that are resolved from workspace components.\n if (this.allPackagesDependencies.packageDependencies && packages.peerDependencies) {\n for (const peerName of Object.keys(packages.peerDependencies)) {\n delete this.allPackagesDependencies.packageDependencies[peerName];\n }\n }\n if (this.allPackagesDependencies.packageDependencies && packages.peerPackageDependencies) {\n for (const peerName of Object.keys(packages.peerPackageDependencies)) {\n delete this.allPackagesDependencies.packageDependencies[peerName];\n }\n }\n }\n\n /**\n * Remove the dependencies which appear both in dev and regular deps from the dev\n * Because if a dependency is both dev dependency and regular dependency it should be treated as regular one\n * Apply for both packages and components dependencies\n */\n private removeDevAndEnvDepsIfTheyAlsoRegulars() {\n // remove dev and env packages that are also regular packages\n const getNotRegularPackages = (packages) =>\n R.difference(R.keys(packages), R.keys(this.allPackagesDependencies.packageDependencies));\n this.allPackagesDependencies.devPackageDependencies = R.pick(\n getNotRegularPackages(this.allPackagesDependencies.devPackageDependencies),\n this.allPackagesDependencies.devPackageDependencies\n );\n // remove dev dependencies that are also regular dependencies\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const componentDepsIds = new ComponentIdList(...this.allDependencies.dependencies.map((c) => c.id));\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter(\n (d) => !componentDepsIds.has(d.id)\n );\n }\n\n private applyPeersFromComponentModel(): void {\n const getPeerDependencies = (): Record<string, any> => {\n const packageJson = this._getPackageJsonFromComponentModel();\n if (packageJson && packageJson.peerDependencies) return packageJson.peerDependencies;\n return {};\n };\n const projectPeerDependencies = getPeerDependencies();\n const peerPackages = {};\n if (R.isEmpty(projectPeerDependencies)) return;\n\n // check whether the peer-dependencies was actually require in the code. if so, remove it from\n // the packages/dev-packages and add it as a peer-package.\n // if it was not required in the code, don't add it to the peerPackages\n Object.keys(projectPeerDependencies).forEach((pkg) => {\n if (this.overridesDependencies.shouldIgnorePeerPackage(pkg)) return;\n ['packageDependencies', 'devPackageDependencies'].forEach((field) => {\n if (Object.keys(this.allPackagesDependencies[field]).includes(pkg)) {\n delete this.allPackagesDependencies[field][pkg];\n peerPackages[pkg] = projectPeerDependencies[pkg];\n }\n });\n });\n this.allPackagesDependencies.peerPackageDependencies = peerPackages;\n }\n\n private applyPackageJson(): void {\n const packageJson = this._getPackageJson();\n if (!packageJson) return;\n const pkgJsonPeer = packageJson.peerDependencies || {};\n const pkgJsonRegularDeps = packageJson.dependencies || {};\n const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromPkgJson = pkgJsonPeer[pkgName];\n const regularVersionFromPkgJson = pkgJsonRegularDeps[pkgName];\n if (peerVersionFromPkgJson) {\n delete this.allPackagesDependencies[field][pkgName];\n peerDeps[pkgName] = peerVersionFromPkgJson;\n } else if (regularVersionFromPkgJson) {\n delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];\n this.allPackagesDependencies[field][pkgName] = regularVersionFromPkgJson;\n }\n }, this.allPackagesDependencies[field]);\n });\n this.allPackagesDependencies.peerPackageDependencies = peerDeps;\n }\n\n private applyWorkspacePolicy(): void {\n const wsPolicy = this.depsResolver.getWorkspacePolicyManifest();\n if (!wsPolicy) return;\n const wsPeer = wsPolicy.peerDependencies || {};\n const wsRegular = wsPolicy.dependencies || {};\n const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};\n // we are not iterate component deps since they are resolved from what actually installed\n // the policy used for installation only in that case\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromWsPolicy = wsPeer[pkgName];\n const regularVersionFromWsPolicy = wsRegular[pkgName];\n if (peerVersionFromWsPolicy) {\n delete this.allPackagesDependencies[field][pkgName];\n peerDeps[pkgName] = peerVersionFromWsPolicy;\n } else if (regularVersionFromWsPolicy) {\n delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];\n this.allPackagesDependencies[field][pkgName] = regularVersionFromWsPolicy;\n }\n }, this.allPackagesDependencies[field]);\n });\n this.allPackagesDependencies.peerPackageDependencies = peerDeps;\n }\n\n /**\n * It removes the @teambit/legacy dependency from the dependencies/devDeps and adds it as a peer dependency with ^.\n */\n private makeLegacyAsPeer(): void {\n let version;\n if (this.allPackagesDependencies.packageDependencies['@teambit/legacy']) {\n version = this.allPackagesDependencies.packageDependencies['@teambit/legacy'];\n delete this.allPackagesDependencies.packageDependencies['@teambit/legacy'];\n }\n if (this.allPackagesDependencies.devPackageDependencies['@teambit/legacy']) {\n if (!version) version = this.allPackagesDependencies.devPackageDependencies['@teambit/legacy'];\n delete this.allPackagesDependencies.devPackageDependencies['@teambit/legacy'];\n }\n if (version) {\n if (!Number.isNaN(version[0])) version = `^${version}`;\n this.allPackagesDependencies.peerPackageDependencies['@teambit/legacy'] = version;\n }\n }\n\n private async applyAutoDetectOverridesOnComponent(): Promise<void> {\n const autoDetectOverrides = this.autoDetectOverrides;\n\n if (!autoDetectOverrides || !Object.keys(autoDetectOverrides).length) {\n return;\n }\n\n const originallyExists: string[] = [];\n let missingPackages: string[] = [];\n // We want to also add missing packages to the peer list as we know to resolve the version from the env anyway\n const missingData = this.issues.getIssueByName('MissingPackagesDependenciesOnFs')?.data as\n | MissingPackagesData[]\n | undefined;\n if (missingData) {\n missingPackages = uniq(missingData.map((d) => d.missingPackages).flat());\n }\n ['dependencies', 'devDependencies', 'peerDependencies'].forEach((field) => {\n R.forEachObjIndexed((pkgVal, pkgName) => {\n if (this.overridesDependencies.shouldIgnorePeerPackage(pkgName)) return;\n // Validate it was auto detected, we only affect stuff that were detected\n const existsInCompsDeps = this.allDependencies.dependencies.find((dep) => {\n return dep.packageName === pkgName;\n });\n\n const existsInCompsDevDeps = this.allDependencies.devDependencies.find((dep) => {\n return dep.packageName === pkgName;\n });\n\n if (\n // We are checking originAllPackagesDependencies instead of allPackagesDependencies\n // as it might be already removed from allPackagesDependencies at this point if it was set with\n // \"-\" in runtime/dev\n // in such case we still want to apply it here\n !this.originAllPackagesDependencies.packageDependencies[pkgName] &&\n !this.originAllPackagesDependencies.devPackageDependencies[pkgName] &&\n !this.originAllPackagesDependencies.peerPackageDependencies[pkgName] &&\n !existsInCompsDeps &&\n !existsInCompsDevDeps &&\n // Check if it was orignally exists in the component\n // as we might have a policy which looks like this:\n // \"components\": {\n // \"dependencies\": {\n // \"my-dep\": \"-\"\n // },\n // \"devDependencies\": {\n // \"my-dep\": \"1.0.0\"\n // },\n // }\n // in that case we might remove it before getting to the devDeps then we will think that it wasn't required in the component\n // which is incorrect\n !originallyExists.includes(pkgName) &&\n !missingPackages.includes(pkgName)\n ) {\n return;\n }\n originallyExists.push(pkgName);\n const key = DepsKeysToAllPackagesDepsKeys[field];\n\n delete this.allPackagesDependencies[key][pkgName];\n // When changing peer dependency we want it to be stronger than the other types\n if (field === 'peerDependencies') {\n delete this.allPackagesDependencies.devPackageDependencies[pkgName];\n delete this.allPackagesDependencies.packageDependencies[pkgName];\n if (existsInCompsDeps) {\n this.allDependencies.dependencies = this.allDependencies.dependencies.filter(\n (dep) => dep.packageName !== pkgName\n );\n }\n if (existsInCompsDevDeps) {\n this.allDependencies.devDependencies = this.allDependencies.devDependencies.filter(\n (dep) => dep.packageName !== pkgName\n );\n }\n }\n // delete this.allPackagesDependencies.packageDependencies[pkgName];\n // delete this.allPackagesDependencies.devPackageDependencies[pkgName];\n // delete this.allPackagesDependencies.peerPackageDependencies[pkgName];\n\n // If it exists in comps deps / comp dev deps, we don't want to add it to the allPackagesDependencies\n // as it will make the same dep both a dev and runtime dep\n // since we are here only for auto detected deps, it means we already resolved the version correctly\n // so we don't need to really modify the version\n // also the version here might have a range (^ or ~ for example) so we can't\n // just put it as is, as it is not valid for component deps to have range\n if (\n pkgVal !== MANUALLY_REMOVE_DEPENDENCY &&\n ((!existsInCompsDeps && !existsInCompsDevDeps) || field === 'peerDependencies')\n ) {\n this.allPackagesDependencies[key][pkgName] = pkgVal;\n }\n }, autoDetectOverrides[field]);\n });\n }\n\n private async applyAutoDetectedPeersFromEnvOnEnvItSelf(): Promise<void> {\n const envPolicy = await this.depsResolver.getEnvPolicyFromEnvId(this.component.id, this.component.files);\n if (!envPolicy) return;\n const envPolicyManifest = envPolicy.selfPolicy.toVersionManifest();\n\n if (!envPolicyManifest || !Object.keys(envPolicyManifest).length) {\n return;\n }\n const deps = this.allPackagesDependencies.packageDependencies || {};\n // we are not iterate component deps since they are resolved from what actually installed\n // the policy used for installation only in that case\n ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {\n R.forEachObjIndexed((_pkgVal, pkgName) => {\n const peerVersionFromEnvPolicy = envPolicyManifest[pkgName];\n if (peerVersionFromEnvPolicy) {\n delete this.allPackagesDependencies[field][pkgName];\n }\n }, this.allPackagesDependencies[field]);\n });\n Object.assign(deps, envPolicyManifest);\n // TODO: handle component deps once we support peers between components\n this.allPackagesDependencies.packageDependencies = deps;\n }\n\n /**\n * returns `package.json` of the component when it's imported, or `package.json` of the workspace\n * when it's authored.\n */\n private _getPackageJson(): Record<string, any> | undefined {\n return this.consumer?.packageJson.packageJsonObject;\n }\n\n private _getPackageJsonFromComponentModel(): Record<string, any> | undefined {\n if (this.componentFromModel && this.component.componentMap) {\n // a component is imported but the package.json file is missing or never written\n // read the values from the model\n const packageJson = PackageJsonFile.createFromComponent(\n this.component.componentMap.rootDir,\n this.componentFromModel\n );\n return packageJson.packageJsonObject;\n }\n return undefined;\n }\n\n private setLegacyInsideHarmonyIssue() {\n if (this.componentFromModel && this.componentFromModel.isLegacy) {\n this.issues.getOrCreate(IssuesClasses.LegacyInsideHarmony).data = true;\n }\n }\n\n private _pkgFieldMapping(field: string) {\n switch (field) {\n case 'dependencies':\n return 'packageDependencies';\n case 'devDependencies':\n return 'devPackageDependencies';\n case 'peerDependencies':\n return 'peerPackageDependencies';\n default:\n throw new Error(`${field} is not recognized`);\n }\n }\n}\n"],"mappings":"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"}
@@ -151,7 +151,7 @@ class DependenciesMain {
151
151
  const compIds = await this.workspace.idsByPattern(componentPattern);
152
152
  const results = await (0, _pMapSeries().default)(compIds, async compId => {
153
153
  const component = await this.workspace.get(compId);
154
- const depList = await this.dependencyResolver.getDependencies(component);
154
+ const depList = this.dependencyResolver.getDependencies(component);
155
155
  const getCurrentConfig = async () => {
156
156
  const currentConfigFromWorkspace = await this.workspace.getSpecificComponentConfig(compId, _dependencyResolver().DependencyResolverAspect.id);
157
157
  if (currentConfigFromWorkspace) return currentConfigFromWorkspace;
@@ -258,7 +258,7 @@ class DependenciesMain {
258
258
  manuallyAddedDependencies,
259
259
  manuallyRemovedDependencies
260
260
  } = dependenciesData.overridesDependencies;
261
- const results = await this.dependencyResolver.getDependencies(component);
261
+ const results = this.dependencyResolver.getDependencies(component);
262
262
  const sources = results.map(dep => ({
263
263
  id: dep.id,
264
264
  source: dep.source
@@ -283,7 +283,7 @@ class DependenciesMain {
283
283
  let lastVersion = '';
284
284
  await (0, _pMapSeries().default)(log, async logItem => {
285
285
  const component = await this.workspace.get(id.changeVersion(logItem.tag || logItem.hash));
286
- const depList = await this.dependencyResolver.getDependencies(component);
286
+ const depList = this.dependencyResolver.getDependencies(component);
287
287
  const dependency = depList.findByPkgNameOrCompId(depName);
288
288
  if (dependency && dependency.version === lastVersion) {
289
289
  return;
@@ -327,7 +327,7 @@ class DependenciesMain {
327
327
  const allComps = await this.workspace.list();
328
328
  const results = {};
329
329
  await Promise.all(allComps.map(async comp => {
330
- const depList = await this.dependencyResolver.getDependencies(comp);
330
+ const depList = this.dependencyResolver.getDependencies(comp);
331
331
  const dependency = depList.findByPkgNameOrCompId(name, version);
332
332
  if (dependency) {
333
333
  results[comp.id.toString()] = dependency.version;
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_moment","_interopRequireDefault","_dependencyResolver","_workspace","_interopRequireWildcard","_lodash","_pMapSeries","_componentLoader","_scopeGraph","_devFiles","_aspectLoader","_dependenciesLoader","_dependenciesCmd","_dependencies","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","DependenciesMain","constructor","workspace","dependencyResolver","devFiles","aspectLoader","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","peer","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","optional","config","policy","compId","addSpecificComponentConfig","DependencyResolverAspect","id","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","changedComps","toStringWithoutVersion","addedPackages","removeDependency","removeOnlyIfExists","results","pMapSeries","component","depList","getDependencies","getCurrentConfig","currentConfigFromWorkspace","getSpecificComponentConfig","extFromScope","getExtensionsFromScopeAndSpecific","toConfigObject","currentDepResolverConfig","newDepResolverConfig","cloneDeep","removedPackagesWithNulls","splitPkgToNameAndVer","dependency","findByPkgNameOrCompId","depName","getPackageName","getLifeCycle","lifecycle","depField","KEY_NAME_BY_LIFECYCLE_TYPE","existsInSpecificConfig","removedPackages","compact","reset","eject","OutsideWorkspaceError","resolveComponentId","consumer","scopeGraph","DependencyGraph","buildGraphFromScope","scope","scopeDependencyGraph","workspaceGraph","buildGraphFromWorkspace","workspaceDependencyGraph","loadDependencies","opts","dependenciesLoader","DependenciesLoader","load","loadDependenciesFromScope","dependenciesData","loadFromScope","debugDependencies","consumerComponent","state","_consumer","cacheResolvedDependencies","useDependenciesCache","missingPackageDependencies","manuallyAddedDependencies","manuallyRemovedDependencies","overridesDependencies","sources","dep","source","debugDependenciesData","coreAspects","blame","compName","log","getLogs","blameResults","lastVersion","logItem","changeVersion","tag","hash","snap","author","username","date","moment","Date","parseInt","format","message","usageDeep","isComponentId","getPackageManager","findUsages","lockfileDir","path","depth","undefined","usage","allComps","list","comp","toString","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","packageSplit","split","startsWith","provider","cli","depsResolver","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesUnsetCmd","DependenciesDebugCmd","DependenciesSetCmd","DependenciesResetCmd","DependenciesEjectCmd","DependenciesBlameCmd","DependenciesUsageCmd","whyCmd","WhyCmd","register","ComponentLoader","loadDeps","bind","exports","CLIAspect","WorkspaceAspect","DevFilesAspect","AspectLoaderAspect","MainRuntime","includes","DependenciesAspect","addRuntime","_default"],"sources":["dependencies.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport moment from 'moment';\nimport { ComponentID } from '@teambit/component-id';\nimport {\n DependencyResolverAspect,\n DependencyResolverMain,\n KEY_NAME_BY_LIFECYCLE_TYPE,\n} from '@teambit/dependency-resolver';\nimport WorkspaceAspect, { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { cloneDeep, compact, set } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport ComponentLoader, { DependencyLoaderOpts } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport DependencyGraph from '@teambit/legacy/dist/scope/graph/scope-graph';\nimport DevFilesAspect, { DevFilesMain } from '@teambit/dev-files';\nimport AspectLoaderAspect, { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { DependenciesLoader } from './dependencies-loader/dependencies-loader';\nimport { DependenciesData, OverridesDependenciesData } from './dependencies-loader/dependencies-data';\nimport {\n DependenciesBlameCmd,\n DependenciesCmd,\n DependenciesDebugCmd,\n DependenciesEjectCmd,\n DependenciesGetCmd,\n DependenciesRemoveCmd,\n DependenciesResetCmd,\n DependenciesSetCmd,\n DependenciesUnsetCmd,\n DependenciesUsageCmd,\n RemoveDependenciesFlags,\n SetDependenciesFlags,\n WhyCmd,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\nimport { DebugDependencies } from './dependencies-loader/auto-detect-deps';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\n\nexport type DependenciesResultsDebug = DebugDependencies &\n OverridesDependenciesData & { coreAspects: string[]; sources: { id: string; source: string }[] };\n\nexport type DependenciesResults = {\n scopeGraph: DependencyGraph;\n workspaceGraph: DependencyGraph;\n id: ComponentID;\n};\n\nexport type BlameResult = {\n snap: string;\n tag?: string;\n author: string;\n date: string;\n message: string;\n version: string;\n};\n\nexport class DependenciesMain {\n constructor(\n private workspace: Workspace,\n private dependencyResolver: DependencyResolverMain,\n private devFiles: DevFilesMain,\n private aspectLoader: AspectLoaderMain\n ) {}\n\n async setDependency(\n componentPattern: string,\n packages: string[],\n options: SetDependenciesFlags\n ): Promise<{ changedComps: string[]; addedPackages: Record<string, string> }> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const getDepField = () => {\n if (options.dev) return 'devDependencies';\n if (options.peer) return 'peerDependencies';\n return 'dependencies';\n };\n const packagesObj = {};\n await Promise.all(\n packages.map(async (pkg) => {\n const [name, version] = await this.getPackageNameAndVerResolved(pkg);\n if (options.optional) {\n packagesObj[name] = { optional: true, version };\n } else {\n packagesObj[name] = version;\n }\n })\n );\n const config = {\n policy: {\n [getDepField()]: packagesObj,\n },\n };\n await Promise.all(\n compIds.map(async (compId) => {\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n })\n );\n\n await this.workspace.bitMap.write(`deps-set (${componentPattern})`);\n\n return {\n changedComps: compIds.map((compId) => compId.toStringWithoutVersion()),\n addedPackages: packagesObj,\n };\n }\n\n async removeDependency(\n componentPattern: string,\n packages: string[],\n options: RemoveDependenciesFlags = {},\n removeOnlyIfExists = false // unset\n ): Promise<RemoveDependencyResult[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const results = await pMapSeries(compIds, async (compId) => {\n const component = await this.workspace.get(compId);\n const depList = await this.dependencyResolver.getDependencies(component);\n const getCurrentConfig = async () => {\n const currentConfigFromWorkspace = await this.workspace.getSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id\n );\n if (currentConfigFromWorkspace) return currentConfigFromWorkspace;\n const extFromScope = await this.workspace.getExtensionsFromScopeAndSpecific(compId);\n return extFromScope?.toConfigObject()[DependencyResolverAspect.id];\n };\n const currentDepResolverConfig = await getCurrentConfig();\n const newDepResolverConfig = cloneDeep(currentDepResolverConfig || {});\n const removedPackagesWithNulls = await pMapSeries(packages, async (pkg) => {\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const dependency = depList.findByPkgNameOrCompId(name, version);\n if (!dependency) return null;\n const depName = dependency.getPackageName?.() || dependency.id;\n const getLifeCycle = () => {\n if (options.dev) return 'dev';\n if (options.peer) return 'peer';\n return dependency.lifecycle;\n };\n const depField = KEY_NAME_BY_LIFECYCLE_TYPE[getLifeCycle()];\n const existsInSpecificConfig = newDepResolverConfig.policy?.[depField]?.[depName];\n if (existsInSpecificConfig) {\n if (existsInSpecificConfig === '-') return null;\n delete newDepResolverConfig.policy[depField][depName];\n } else {\n if (removeOnlyIfExists) return null;\n set(newDepResolverConfig, ['policy', depField, depName], '-');\n }\n return `${depName}@${dependency.version}`;\n });\n const removedPackages = compact(removedPackagesWithNulls);\n if (!removedPackages.length) return null;\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, newDepResolverConfig);\n return { id: compId, removedPackages };\n });\n await this.workspace.bitMap.write(`deps-remove (${componentPattern})`);\n\n return compact(results);\n }\n\n async reset(componentPattern: string): Promise<ComponentID[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n await pMapSeries(compIds, async (compId) => {\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, { policy: {} });\n });\n await this.workspace.bitMap.write(`deps-reset (${componentPattern})`);\n\n return compIds;\n }\n\n async eject(componentPattern: string): Promise<ComponentID[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n await pMapSeries(compIds, async (compId) => {\n await this.workspace.addSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id,\n {},\n {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n }\n );\n });\n await this.workspace.bitMap.write(`deps-eject (${componentPattern})`);\n\n return compIds;\n }\n\n async getDependencies(id: string): Promise<DependenciesResults> {\n // @todo: supports this on bare-scope.\n if (!this.workspace) throw new OutsideWorkspaceError();\n const compId = await this.workspace.resolveComponentId(id);\n const consumer = this.workspace.consumer;\n const scopeGraph = await DependencyGraph.buildGraphFromScope(consumer.scope);\n const scopeDependencyGraph = new DependencyGraph(scopeGraph);\n\n const workspaceGraph = await DependencyGraph.buildGraphFromWorkspace(consumer, true);\n const workspaceDependencyGraph = new DependencyGraph(workspaceGraph);\n\n return { scopeGraph: scopeDependencyGraph, workspaceGraph: workspaceDependencyGraph, id: compId };\n }\n\n async loadDependencies(component: ConsumerComponent, opts: DependencyLoaderOpts) {\n const dependenciesLoader = new DependenciesLoader(\n component,\n this.dependencyResolver,\n this.devFiles,\n this.aspectLoader\n );\n return dependenciesLoader.load(this.workspace, opts);\n }\n\n /**\n * load dependencies without the need for the workspace.\n * the \"auto-detect\" are passed here as \"dependenciesData\". the \"overrides\", such as dependencies from the env,\n * are calculated here.\n * eventually all these dependencies are added to the ConsumerComponent object.\n */\n async loadDependenciesFromScope(component: ConsumerComponent, dependenciesData: Partial<DependenciesData>) {\n const dependenciesLoader = new DependenciesLoader(\n component,\n this.dependencyResolver,\n this.devFiles,\n this.aspectLoader\n );\n return dependenciesLoader.loadFromScope(dependenciesData);\n }\n\n async debugDependencies(id: string): Promise<DependenciesResultsDebug> {\n // @todo: supports this on bare-scope.\n if (!this.workspace) throw new OutsideWorkspaceError();\n const compId = await this.workspace.resolveComponentId(id);\n const component = await this.workspace.get(compId);\n const consumerComponent = component.state._consumer as ConsumerComponent;\n\n const dependenciesData = await this.loadDependencies(consumerComponent, {\n cacheResolvedDependencies: {},\n useDependenciesCache: false,\n });\n\n const { missingPackageDependencies, manuallyAddedDependencies, manuallyRemovedDependencies } =\n dependenciesData.overridesDependencies;\n\n const results = await this.dependencyResolver.getDependencies(component);\n const sources = results.map((dep) => ({ id: dep.id, source: dep.source }));\n\n return {\n ...dependenciesData.debugDependenciesData,\n manuallyRemovedDependencies,\n manuallyAddedDependencies,\n missingPackageDependencies,\n coreAspects: dependenciesData.dependenciesData.coreAspects,\n sources,\n };\n }\n\n /**\n * helps determine what snap/tag changed a specific dependency.\n * the results are sorted from the oldest to newest.\n */\n async blame(compName: string, depName: string) {\n const id = await this.workspace.resolveComponentId(compName);\n const log = await this.workspace.scope.getLogs(id);\n const blameResults: BlameResult[] = [];\n let lastVersion = '';\n await pMapSeries(log, async (logItem) => {\n const component = await this.workspace.get(id.changeVersion(logItem.tag || logItem.hash));\n const depList = await this.dependencyResolver.getDependencies(component);\n const dependency = depList.findByPkgNameOrCompId(depName);\n if (dependency && dependency.version === lastVersion) {\n return;\n }\n let version: string;\n if (!dependency) {\n if (!lastVersion) return;\n version = '<REMOVED>';\n } else {\n version = dependency.version;\n }\n if (!dependency || dependency.version === lastVersion) return;\n lastVersion = dependency.version;\n blameResults.push({\n snap: logItem.hash,\n tag: logItem.tag,\n author: logItem.username || '<N/A>',\n date: logItem.date ? moment(new Date(parseInt(logItem.date))).format('YYYY-MM-DD HH:mm:ss') : '<N/A>',\n message: logItem.message,\n version,\n });\n });\n return blameResults;\n }\n\n async usageDeep(depName: string, opts?: { depth?: number }): Promise<string | undefined> {\n if (!isComponentId(depName)) {\n return this.dependencyResolver.getPackageManager()?.findUsages?.(depName, {\n lockfileDir: this.workspace.path,\n depth: opts?.depth,\n });\n }\n return undefined;\n }\n\n /**\n * @param depName either component-id-string or package-name (of the component or not component)\n * @returns a map of component-id-string to the version of the dependency\n */\n async usage(depName: string): Promise<{ [compIdStr: string]: string }> {\n const [name, version] = this.splitPkgToNameAndVer(depName);\n const allComps = await this.workspace.list();\n const results = {};\n await Promise.all(\n allComps.map(async (comp) => {\n const depList = await this.dependencyResolver.getDependencies(comp);\n const dependency = depList.findByPkgNameOrCompId(name, version);\n if (dependency) {\n results[comp.id.toString()] = dependency.version;\n }\n })\n );\n return results;\n }\n\n private async getPackageNameAndVerResolved(pkg: string): Promise<[string, string]> {\n const resolveLatest = async (pkgName: string) => {\n const versionResolver = await this.dependencyResolver.getVersionResolver({});\n const resolved = await versionResolver.resolveRemoteVersion(pkgName, { rootDir: '' });\n if (!resolved.version) throw new Error(`unable to resolve version for ${pkgName}`);\n return resolved.version;\n };\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const versionResolved = !version || version === 'latest' ? await resolveLatest(name) : version;\n return [name, versionResolved];\n }\n\n private splitPkgToNameAndVer(pkg: string): [string, string | undefined] {\n const packageSplit = pkg.split('@');\n if (pkg.startsWith('@')) {\n // scoped package\n if (packageSplit.length > 3) throw new Error(`invalid package \"${pkg}\" syntax, expected \"package[@version]\"`);\n return [`@${packageSplit[1]}`, packageSplit[2]];\n }\n if (packageSplit.length > 2) throw new Error(`invalid package \"${pkg}\" syntax, expected \"package[@version]\"`);\n return [packageSplit[0], packageSplit[1]];\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, DependencyResolverAspect, DevFilesAspect, AspectLoaderAspect];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver, devFiles, aspectLoader]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n DevFilesMain,\n AspectLoaderMain\n ]) {\n const depsMain = new DependenciesMain(workspace, depsResolver, devFiles, aspectLoader);\n const depsCmd = new DependenciesCmd();\n depsCmd.commands = [\n new DependenciesGetCmd(depsMain),\n new DependenciesRemoveCmd(depsMain),\n new DependenciesUnsetCmd(depsMain),\n new DependenciesDebugCmd(depsMain),\n new DependenciesSetCmd(depsMain),\n new DependenciesResetCmd(depsMain),\n new DependenciesEjectCmd(depsMain),\n new DependenciesBlameCmd(depsMain),\n new DependenciesUsageCmd(depsMain),\n ];\n const whyCmd = new WhyCmd(depsMain);\n cli.register(depsCmd, whyCmd);\n\n ComponentLoader.loadDeps = depsMain.loadDependencies.bind(depsMain);\n\n return depsMain;\n }\n}\n\nfunction isComponentId(depName: string) {\n return depName.includes('/') && depName[0] !== '@';\n}\n\nDependenciesAspect.addRuntime(DependenciesMain);\n\nexport default DependenciesMain;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_cli","data","require","_moment","_interopRequireDefault","_dependencyResolver","_workspace","_interopRequireWildcard","_lodash","_pMapSeries","_componentLoader","_scopeGraph","_devFiles","_aspectLoader","_dependenciesLoader","_dependenciesCmd","_dependencies","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","DependenciesMain","constructor","workspace","dependencyResolver","devFiles","aspectLoader","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","peer","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","optional","config","policy","compId","addSpecificComponentConfig","DependencyResolverAspect","id","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","changedComps","toStringWithoutVersion","addedPackages","removeDependency","removeOnlyIfExists","results","pMapSeries","component","depList","getDependencies","getCurrentConfig","currentConfigFromWorkspace","getSpecificComponentConfig","extFromScope","getExtensionsFromScopeAndSpecific","toConfigObject","currentDepResolverConfig","newDepResolverConfig","cloneDeep","removedPackagesWithNulls","splitPkgToNameAndVer","dependency","findByPkgNameOrCompId","depName","getPackageName","getLifeCycle","lifecycle","depField","KEY_NAME_BY_LIFECYCLE_TYPE","existsInSpecificConfig","removedPackages","compact","reset","eject","OutsideWorkspaceError","resolveComponentId","consumer","scopeGraph","DependencyGraph","buildGraphFromScope","scope","scopeDependencyGraph","workspaceGraph","buildGraphFromWorkspace","workspaceDependencyGraph","loadDependencies","opts","dependenciesLoader","DependenciesLoader","load","loadDependenciesFromScope","dependenciesData","loadFromScope","debugDependencies","consumerComponent","state","_consumer","cacheResolvedDependencies","useDependenciesCache","missingPackageDependencies","manuallyAddedDependencies","manuallyRemovedDependencies","overridesDependencies","sources","dep","source","debugDependenciesData","coreAspects","blame","compName","log","getLogs","blameResults","lastVersion","logItem","changeVersion","tag","hash","snap","author","username","date","moment","Date","parseInt","format","message","usageDeep","isComponentId","getPackageManager","findUsages","lockfileDir","path","depth","undefined","usage","allComps","list","comp","toString","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","packageSplit","split","startsWith","provider","cli","depsResolver","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesUnsetCmd","DependenciesDebugCmd","DependenciesSetCmd","DependenciesResetCmd","DependenciesEjectCmd","DependenciesBlameCmd","DependenciesUsageCmd","whyCmd","WhyCmd","register","ComponentLoader","loadDeps","bind","exports","CLIAspect","WorkspaceAspect","DevFilesAspect","AspectLoaderAspect","MainRuntime","includes","DependenciesAspect","addRuntime","_default"],"sources":["dependencies.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport moment from 'moment';\nimport { ComponentID } from '@teambit/component-id';\nimport {\n DependencyResolverAspect,\n DependencyResolverMain,\n KEY_NAME_BY_LIFECYCLE_TYPE,\n} from '@teambit/dependency-resolver';\nimport WorkspaceAspect, { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { cloneDeep, compact, set } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport ComponentLoader, { DependencyLoaderOpts } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport DependencyGraph from '@teambit/legacy/dist/scope/graph/scope-graph';\nimport DevFilesAspect, { DevFilesMain } from '@teambit/dev-files';\nimport AspectLoaderAspect, { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { DependenciesLoader } from './dependencies-loader/dependencies-loader';\nimport { DependenciesData, OverridesDependenciesData } from './dependencies-loader/dependencies-data';\nimport {\n DependenciesBlameCmd,\n DependenciesCmd,\n DependenciesDebugCmd,\n DependenciesEjectCmd,\n DependenciesGetCmd,\n DependenciesRemoveCmd,\n DependenciesResetCmd,\n DependenciesSetCmd,\n DependenciesUnsetCmd,\n DependenciesUsageCmd,\n RemoveDependenciesFlags,\n SetDependenciesFlags,\n WhyCmd,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\nimport { DebugDependencies } from './dependencies-loader/auto-detect-deps';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\n\nexport type DependenciesResultsDebug = DebugDependencies &\n OverridesDependenciesData & { coreAspects: string[]; sources: { id: string; source: string }[] };\n\nexport type DependenciesResults = {\n scopeGraph: DependencyGraph;\n workspaceGraph: DependencyGraph;\n id: ComponentID;\n};\n\nexport type BlameResult = {\n snap: string;\n tag?: string;\n author: string;\n date: string;\n message: string;\n version: string;\n};\n\nexport class DependenciesMain {\n constructor(\n private workspace: Workspace,\n private dependencyResolver: DependencyResolverMain,\n private devFiles: DevFilesMain,\n private aspectLoader: AspectLoaderMain\n ) {}\n\n async setDependency(\n componentPattern: string,\n packages: string[],\n options: SetDependenciesFlags\n ): Promise<{ changedComps: string[]; addedPackages: Record<string, string> }> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const getDepField = () => {\n if (options.dev) return 'devDependencies';\n if (options.peer) return 'peerDependencies';\n return 'dependencies';\n };\n const packagesObj = {};\n await Promise.all(\n packages.map(async (pkg) => {\n const [name, version] = await this.getPackageNameAndVerResolved(pkg);\n if (options.optional) {\n packagesObj[name] = { optional: true, version };\n } else {\n packagesObj[name] = version;\n }\n })\n );\n const config = {\n policy: {\n [getDepField()]: packagesObj,\n },\n };\n await Promise.all(\n compIds.map(async (compId) => {\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n })\n );\n\n await this.workspace.bitMap.write(`deps-set (${componentPattern})`);\n\n return {\n changedComps: compIds.map((compId) => compId.toStringWithoutVersion()),\n addedPackages: packagesObj,\n };\n }\n\n async removeDependency(\n componentPattern: string,\n packages: string[],\n options: RemoveDependenciesFlags = {},\n removeOnlyIfExists = false // unset\n ): Promise<RemoveDependencyResult[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const results = await pMapSeries(compIds, async (compId) => {\n const component = await this.workspace.get(compId);\n const depList = this.dependencyResolver.getDependencies(component);\n const getCurrentConfig = async () => {\n const currentConfigFromWorkspace = await this.workspace.getSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id\n );\n if (currentConfigFromWorkspace) return currentConfigFromWorkspace;\n const extFromScope = await this.workspace.getExtensionsFromScopeAndSpecific(compId);\n return extFromScope?.toConfigObject()[DependencyResolverAspect.id];\n };\n const currentDepResolverConfig = await getCurrentConfig();\n const newDepResolverConfig = cloneDeep(currentDepResolverConfig || {});\n const removedPackagesWithNulls = await pMapSeries(packages, async (pkg) => {\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const dependency = depList.findByPkgNameOrCompId(name, version);\n if (!dependency) return null;\n const depName = dependency.getPackageName?.() || dependency.id;\n const getLifeCycle = () => {\n if (options.dev) return 'dev';\n if (options.peer) return 'peer';\n return dependency.lifecycle;\n };\n const depField = KEY_NAME_BY_LIFECYCLE_TYPE[getLifeCycle()];\n const existsInSpecificConfig = newDepResolverConfig.policy?.[depField]?.[depName];\n if (existsInSpecificConfig) {\n if (existsInSpecificConfig === '-') return null;\n delete newDepResolverConfig.policy[depField][depName];\n } else {\n if (removeOnlyIfExists) return null;\n set(newDepResolverConfig, ['policy', depField, depName], '-');\n }\n return `${depName}@${dependency.version}`;\n });\n const removedPackages = compact(removedPackagesWithNulls);\n if (!removedPackages.length) return null;\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, newDepResolverConfig);\n return { id: compId, removedPackages };\n });\n await this.workspace.bitMap.write(`deps-remove (${componentPattern})`);\n\n return compact(results);\n }\n\n async reset(componentPattern: string): Promise<ComponentID[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n await pMapSeries(compIds, async (compId) => {\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, { policy: {} });\n });\n await this.workspace.bitMap.write(`deps-reset (${componentPattern})`);\n\n return compIds;\n }\n\n async eject(componentPattern: string): Promise<ComponentID[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n await pMapSeries(compIds, async (compId) => {\n await this.workspace.addSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id,\n {},\n {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n }\n );\n });\n await this.workspace.bitMap.write(`deps-eject (${componentPattern})`);\n\n return compIds;\n }\n\n async getDependencies(id: string): Promise<DependenciesResults> {\n // @todo: supports this on bare-scope.\n if (!this.workspace) throw new OutsideWorkspaceError();\n const compId = await this.workspace.resolveComponentId(id);\n const consumer = this.workspace.consumer;\n const scopeGraph = await DependencyGraph.buildGraphFromScope(consumer.scope);\n const scopeDependencyGraph = new DependencyGraph(scopeGraph);\n\n const workspaceGraph = await DependencyGraph.buildGraphFromWorkspace(consumer, true);\n const workspaceDependencyGraph = new DependencyGraph(workspaceGraph);\n\n return { scopeGraph: scopeDependencyGraph, workspaceGraph: workspaceDependencyGraph, id: compId };\n }\n\n async loadDependencies(component: ConsumerComponent, opts: DependencyLoaderOpts) {\n const dependenciesLoader = new DependenciesLoader(\n component,\n this.dependencyResolver,\n this.devFiles,\n this.aspectLoader\n );\n return dependenciesLoader.load(this.workspace, opts);\n }\n\n /**\n * load dependencies without the need for the workspace.\n * the \"auto-detect\" are passed here as \"dependenciesData\". the \"overrides\", such as dependencies from the env,\n * are calculated here.\n * eventually all these dependencies are added to the ConsumerComponent object.\n */\n async loadDependenciesFromScope(component: ConsumerComponent, dependenciesData: Partial<DependenciesData>) {\n const dependenciesLoader = new DependenciesLoader(\n component,\n this.dependencyResolver,\n this.devFiles,\n this.aspectLoader\n );\n return dependenciesLoader.loadFromScope(dependenciesData);\n }\n\n async debugDependencies(id: string): Promise<DependenciesResultsDebug> {\n // @todo: supports this on bare-scope.\n if (!this.workspace) throw new OutsideWorkspaceError();\n const compId = await this.workspace.resolveComponentId(id);\n const component = await this.workspace.get(compId);\n const consumerComponent = component.state._consumer as ConsumerComponent;\n\n const dependenciesData = await this.loadDependencies(consumerComponent, {\n cacheResolvedDependencies: {},\n useDependenciesCache: false,\n });\n\n const { missingPackageDependencies, manuallyAddedDependencies, manuallyRemovedDependencies } =\n dependenciesData.overridesDependencies;\n\n const results = this.dependencyResolver.getDependencies(component);\n const sources = results.map((dep) => ({ id: dep.id, source: dep.source }));\n\n return {\n ...dependenciesData.debugDependenciesData,\n manuallyRemovedDependencies,\n manuallyAddedDependencies,\n missingPackageDependencies,\n coreAspects: dependenciesData.dependenciesData.coreAspects,\n sources,\n };\n }\n\n /**\n * helps determine what snap/tag changed a specific dependency.\n * the results are sorted from the oldest to newest.\n */\n async blame(compName: string, depName: string) {\n const id = await this.workspace.resolveComponentId(compName);\n const log = await this.workspace.scope.getLogs(id);\n const blameResults: BlameResult[] = [];\n let lastVersion = '';\n await pMapSeries(log, async (logItem) => {\n const component = await this.workspace.get(id.changeVersion(logItem.tag || logItem.hash));\n const depList = this.dependencyResolver.getDependencies(component);\n const dependency = depList.findByPkgNameOrCompId(depName);\n if (dependency && dependency.version === lastVersion) {\n return;\n }\n let version: string;\n if (!dependency) {\n if (!lastVersion) return;\n version = '<REMOVED>';\n } else {\n version = dependency.version;\n }\n if (!dependency || dependency.version === lastVersion) return;\n lastVersion = dependency.version;\n blameResults.push({\n snap: logItem.hash,\n tag: logItem.tag,\n author: logItem.username || '<N/A>',\n date: logItem.date ? moment(new Date(parseInt(logItem.date))).format('YYYY-MM-DD HH:mm:ss') : '<N/A>',\n message: logItem.message,\n version,\n });\n });\n return blameResults;\n }\n\n async usageDeep(depName: string, opts?: { depth?: number }): Promise<string | undefined> {\n if (!isComponentId(depName)) {\n return this.dependencyResolver.getPackageManager()?.findUsages?.(depName, {\n lockfileDir: this.workspace.path,\n depth: opts?.depth,\n });\n }\n return undefined;\n }\n\n /**\n * @param depName either component-id-string or package-name (of the component or not component)\n * @returns a map of component-id-string to the version of the dependency\n */\n async usage(depName: string): Promise<{ [compIdStr: string]: string }> {\n const [name, version] = this.splitPkgToNameAndVer(depName);\n const allComps = await this.workspace.list();\n const results = {};\n await Promise.all(\n allComps.map(async (comp) => {\n const depList = this.dependencyResolver.getDependencies(comp);\n const dependency = depList.findByPkgNameOrCompId(name, version);\n if (dependency) {\n results[comp.id.toString()] = dependency.version;\n }\n })\n );\n return results;\n }\n\n private async getPackageNameAndVerResolved(pkg: string): Promise<[string, string]> {\n const resolveLatest = async (pkgName: string) => {\n const versionResolver = await this.dependencyResolver.getVersionResolver({});\n const resolved = await versionResolver.resolveRemoteVersion(pkgName, { rootDir: '' });\n if (!resolved.version) throw new Error(`unable to resolve version for ${pkgName}`);\n return resolved.version;\n };\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const versionResolved = !version || version === 'latest' ? await resolveLatest(name) : version;\n return [name, versionResolved];\n }\n\n private splitPkgToNameAndVer(pkg: string): [string, string | undefined] {\n const packageSplit = pkg.split('@');\n if (pkg.startsWith('@')) {\n // scoped package\n if (packageSplit.length > 3) throw new Error(`invalid package \"${pkg}\" syntax, expected \"package[@version]\"`);\n return [`@${packageSplit[1]}`, packageSplit[2]];\n }\n if (packageSplit.length > 2) throw new Error(`invalid package \"${pkg}\" syntax, expected \"package[@version]\"`);\n return [packageSplit[0], packageSplit[1]];\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, DependencyResolverAspect, DevFilesAspect, AspectLoaderAspect];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver, devFiles, aspectLoader]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n DevFilesMain,\n AspectLoaderMain\n ]) {\n const depsMain = new DependenciesMain(workspace, depsResolver, devFiles, aspectLoader);\n const depsCmd = new DependenciesCmd();\n depsCmd.commands = [\n new DependenciesGetCmd(depsMain),\n new DependenciesRemoveCmd(depsMain),\n new DependenciesUnsetCmd(depsMain),\n new DependenciesDebugCmd(depsMain),\n new DependenciesSetCmd(depsMain),\n new DependenciesResetCmd(depsMain),\n new DependenciesEjectCmd(depsMain),\n new DependenciesBlameCmd(depsMain),\n new DependenciesUsageCmd(depsMain),\n ];\n const whyCmd = new WhyCmd(depsMain);\n cli.register(depsCmd, whyCmd);\n\n ComponentLoader.loadDeps = depsMain.loadDependencies.bind(depsMain);\n\n return depsMain;\n }\n}\n\nfunction isComponentId(depName: string) {\n return depName.includes('/') && depName[0] !== '@';\n}\n\nDependenciesAspect.addRuntime(DependenciesMain);\n\nexport default DependenciesMain;\n"],"mappings":";;;;;;AAAA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,oBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,mBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAK,WAAA;EAAA,MAAAL,IAAA,GAAAM,uBAAA,CAAAL,OAAA;EAAAI,UAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,YAAA;EAAA,MAAAR,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAO,WAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAS,iBAAA;EAAA,MAAAT,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAQ,gBAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,YAAA;EAAA,MAAAV,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAS,WAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAW,UAAA;EAAA,MAAAX,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAU,SAAA,YAAAA,CAAA;IAAA,OAAAX,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAY,cAAA;EAAA,MAAAZ,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAW,aAAA,YAAAA,CAAA;IAAA,OAAAZ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAa,oBAAA;EAAA,MAAAb,IAAA,GAAAC,OAAA;EAAAY,mBAAA,YAAAA,CAAA;IAAA,OAAAb,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAc,iBAAA;EAAA,MAAAd,IAAA,GAAAC,OAAA;EAAAa,gBAAA,YAAAA,CAAA;IAAA,OAAAd,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAeA,SAAAe,cAAA;EAAA,MAAAf,IAAA,GAAAC,OAAA;EAAAc,aAAA,YAAAA,CAAA;IAAA,OAAAf,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2D,SAAAgB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAX,wBAAAW,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAtB,uBAAAkC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,QAAArB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAW,IAAA,CAAAtB,CAAA,OAAAW,MAAA,CAAAY,qBAAA,QAAAC,CAAA,GAAAb,MAAA,CAAAY,qBAAA,CAAAvB,CAAA,GAAAE,CAAA,KAAAsB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAvB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAwB,UAAA,OAAAvB,CAAA,CAAAwB,IAAA,CAAAC,KAAA,CAAAzB,CAAA,EAAAqB,CAAA,YAAArB,CAAA;AAAA,SAAA0B,cAAA7B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA4B,SAAA,CAAAC,MAAA,EAAA7B,CAAA,UAAAC,CAAA,WAAA2B,SAAA,CAAA5B,CAAA,IAAA4B,SAAA,CAAA5B,CAAA,QAAAA,CAAA,OAAAmB,OAAA,CAAAV,MAAA,CAAAR,CAAA,OAAA6B,OAAA,WAAA9B,CAAA,IAAA+B,eAAA,CAAAjC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAuB,yBAAA,GAAAvB,MAAA,CAAAwB,gBAAA,CAAAnC,CAAA,EAAAW,MAAA,CAAAuB,yBAAA,CAAA/B,CAAA,KAAAkB,OAAA,CAAAV,MAAA,CAAAR,CAAA,GAAA6B,OAAA,WAAA9B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAAA,SAAAiC,gBAAAb,GAAA,EAAAgB,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAT,MAAA,CAAAC,cAAA,CAAAQ,GAAA,EAAAgB,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAX,UAAA,QAAAa,YAAA,QAAAC,QAAA,oBAAApB,GAAA,CAAAgB,GAAA,IAAAC,KAAA,WAAAjB,GAAA;AAAA,SAAAkB,eAAAnC,CAAA,QAAAe,CAAA,GAAAuB,YAAA,CAAAtC,CAAA,uCAAAe,CAAA,GAAAA,CAAA,GAAAwB,MAAA,CAAAxB,CAAA;AAAA,SAAAuB,aAAAtC,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAH,CAAA,GAAAG,CAAA,CAAAwC,MAAA,CAAAC,WAAA,kBAAA5C,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAd,CAAA,EAAAD,CAAA,uCAAAgB,CAAA,SAAAA,CAAA,YAAA2B,SAAA,yEAAA3C,CAAA,GAAAwC,MAAA,GAAAI,MAAA,EAAA3C,CAAA;AAuBpD,MAAM4C,gBAAgB,CAAC;EAC5BC,WAAWA,CACDC,SAAoB,EACpBC,kBAA0C,EAC1CC,QAAsB,EACtBC,YAA8B,EACtC;IAAA,KAJQH,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,kBAA0C,GAA1CA,kBAA0C;IAAA,KAC1CC,QAAsB,GAAtBA,QAAsB;IAAA,KACtBC,YAA8B,GAA9BA,YAA8B;EACrC;EAEH,MAAMC,aAAaA,CACjBC,gBAAwB,EACxBC,QAAkB,EAClBC,OAA6B,EAC+C;IAC5E,MAAMC,OAAO,GAAG,MAAM,IAAI,CAACR,SAAS,CAACS,YAAY,CAACJ,gBAAgB,CAAC;IACnE,MAAMK,WAAW,GAAGA,CAAA,KAAM;MACxB,IAAIH,OAAO,CAACI,GAAG,EAAE,OAAO,iBAAiB;MACzC,IAAIJ,OAAO,CAACK,IAAI,EAAE,OAAO,kBAAkB;MAC3C,OAAO,cAAc;IACvB,CAAC;IACD,MAAMC,WAAW,GAAG,CAAC,CAAC;IACtB,MAAMC,OAAO,CAACC,GAAG,CACfT,QAAQ,CAACU,GAAG,CAAC,MAAOC,GAAG,IAAK;MAC1B,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,MAAM,IAAI,CAACC,4BAA4B,CAACH,GAAG,CAAC;MACpE,IAAIV,OAAO,CAACc,QAAQ,EAAE;QACpBR,WAAW,CAACK,IAAI,CAAC,GAAG;UAAEG,QAAQ,EAAE,IAAI;UAAEF;QAAQ,CAAC;MACjD,CAAC,MAAM;QACLN,WAAW,CAACK,IAAI,CAAC,GAAGC,OAAO;MAC7B;IACF,CAAC,CACH,CAAC;IACD,MAAMG,MAAM,GAAG;MACbC,MAAM,EAAE;QACN,CAACb,WAAW,CAAC,CAAC,GAAGG;MACnB;IACF,CAAC;IACD,MAAMC,OAAO,CAACC,GAAG,CACfP,OAAO,CAACQ,GAAG,CAAC,MAAOQ,MAAM,IAAK;MAC5B,MAAM,IAAI,CAACxB,SAAS,CAACyB,0BAA0B,CAACD,MAAM,EAAEE,8CAAwB,CAACC,EAAE,EAAEL,MAAM,EAAE;QAC3FM,uBAAuB,EAAE,IAAI;QAC7BC,uBAAuB,EAAE;MAC3B,CAAC,CAAC;IACJ,CAAC,CACH,CAAC;IAED,MAAM,IAAI,CAAC7B,SAAS,CAAC8B,MAAM,CAACC,KAAK,CAAE,aAAY1B,gBAAiB,GAAE,CAAC;IAEnE,OAAO;MACL2B,YAAY,EAAExB,OAAO,CAACQ,GAAG,CAAEQ,MAAM,IAAKA,MAAM,CAACS,sBAAsB,CAAC,CAAC,CAAC;MACtEC,aAAa,EAAErB;IACjB,CAAC;EACH;EAEA,MAAMsB,gBAAgBA,CACpB9B,gBAAwB,EACxBC,QAAkB,EAClBC,OAAgC,GAAG,CAAC,CAAC,EACrC6B,kBAAkB,GAAG,KAAK,CAAC;EAAA,EACQ;IACnC,MAAM5B,OAAO,GAAG,MAAM,IAAI,CAACR,SAAS,CAACS,YAAY,CAACJ,gBAAgB,CAAC;IACnE,MAAMgC,OAAO,GAAG,MAAM,IAAAC,qBAAU,EAAC9B,OAAO,EAAE,MAAOgB,MAAM,IAAK;MAC1D,MAAMe,SAAS,GAAG,MAAM,IAAI,CAACvC,SAAS,CAAC1C,GAAG,CAACkE,MAAM,CAAC;MAClD,MAAMgB,OAAO,GAAG,IAAI,CAACvC,kBAAkB,CAACwC,eAAe,CAACF,SAAS,CAAC;MAClE,MAAMG,gBAAgB,GAAG,MAAAA,CAAA,KAAY;QACnC,MAAMC,0BAA0B,GAAG,MAAM,IAAI,CAAC3C,SAAS,CAAC4C,0BAA0B,CAChFpB,MAAM,EACNE,8CAAwB,CAACC,EAC3B,CAAC;QACD,IAAIgB,0BAA0B,EAAE,OAAOA,0BAA0B;QACjE,MAAME,YAAY,GAAG,MAAM,IAAI,CAAC7C,SAAS,CAAC8C,iCAAiC,CAACtB,MAAM,CAAC;QACnF,OAAOqB,YAAY,EAAEE,cAAc,CAAC,CAAC,CAACrB,8CAAwB,CAACC,EAAE,CAAC;MACpE,CAAC;MACD,MAAMqB,wBAAwB,GAAG,MAAMN,gBAAgB,CAAC,CAAC;MACzD,MAAMO,oBAAoB,GAAG,IAAAC,mBAAS,EAACF,wBAAwB,IAAI,CAAC,CAAC,CAAC;MACtE,MAAMG,wBAAwB,GAAG,MAAM,IAAAb,qBAAU,EAAChC,QAAQ,EAAE,MAAOW,GAAG,IAAK;QACzE,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAI,CAACiC,oBAAoB,CAACnC,GAAG,CAAC;QACtD,MAAMoC,UAAU,GAAGb,OAAO,CAACc,qBAAqB,CAACpC,IAAI,EAAEC,OAAO,CAAC;QAC/D,IAAI,CAACkC,UAAU,EAAE,OAAO,IAAI;QAC5B,MAAME,OAAO,GAAGF,UAAU,CAACG,cAAc,GAAG,CAAC,IAAIH,UAAU,CAAC1B,EAAE;QAC9D,MAAM8B,YAAY,GAAGA,CAAA,KAAM;UACzB,IAAIlD,OAAO,CAACI,GAAG,EAAE,OAAO,KAAK;UAC7B,IAAIJ,OAAO,CAACK,IAAI,EAAE,OAAO,MAAM;UAC/B,OAAOyC,UAAU,CAACK,SAAS;QAC7B,CAAC;QACD,MAAMC,QAAQ,GAAGC,gDAA0B,CAACH,YAAY,CAAC,CAAC,CAAC;QAC3D,MAAMI,sBAAsB,GAAGZ,oBAAoB,CAAC1B,MAAM,GAAGoC,QAAQ,CAAC,GAAGJ,OAAO,CAAC;QACjF,IAAIM,sBAAsB,EAAE;UAC1B,IAAIA,sBAAsB,KAAK,GAAG,EAAE,OAAO,IAAI;UAC/C,OAAOZ,oBAAoB,CAAC1B,MAAM,CAACoC,QAAQ,CAAC,CAACJ,OAAO,CAAC;QACvD,CAAC,MAAM;UACL,IAAInB,kBAAkB,EAAE,OAAO,IAAI;UACnC,IAAAlE,aAAG,EAAC+E,oBAAoB,EAAE,CAAC,QAAQ,EAAEU,QAAQ,EAAEJ,OAAO,CAAC,EAAE,GAAG,CAAC;QAC/D;QACA,OAAQ,GAAEA,OAAQ,IAAGF,UAAU,CAAClC,OAAQ,EAAC;MAC3C,CAAC,CAAC;MACF,MAAM2C,eAAe,GAAG,IAAAC,iBAAO,EAACZ,wBAAwB,CAAC;MACzD,IAAI,CAACW,eAAe,CAAChF,MAAM,EAAE,OAAO,IAAI;MACxC,MAAM,IAAI,CAACkB,SAAS,CAACyB,0BAA0B,CAACD,MAAM,EAAEE,8CAAwB,CAACC,EAAE,EAAEsB,oBAAoB,CAAC;MAC1G,OAAO;QAAEtB,EAAE,EAAEH,MAAM;QAAEsC;MAAgB,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,IAAI,CAAC9D,SAAS,CAAC8B,MAAM,CAACC,KAAK,CAAE,gBAAe1B,gBAAiB,GAAE,CAAC;IAEtE,OAAO,IAAA0D,iBAAO,EAAC1B,OAAO,CAAC;EACzB;EAEA,MAAM2B,KAAKA,CAAC3D,gBAAwB,EAA0B;IAC5D,MAAMG,OAAO,GAAG,MAAM,IAAI,CAACR,SAAS,CAACS,YAAY,CAACJ,gBAAgB,CAAC;IACnE,MAAM,IAAAiC,qBAAU,EAAC9B,OAAO,EAAE,MAAOgB,MAAM,IAAK;MAC1C,MAAM,IAAI,CAACxB,SAAS,CAACyB,0BAA0B,CAACD,MAAM,EAAEE,8CAAwB,CAACC,EAAE,EAAE;QAAEJ,MAAM,EAAE,CAAC;MAAE,CAAC,CAAC;IACtG,CAAC,CAAC;IACF,MAAM,IAAI,CAACvB,SAAS,CAAC8B,MAAM,CAACC,KAAK,CAAE,eAAc1B,gBAAiB,GAAE,CAAC;IAErE,OAAOG,OAAO;EAChB;EAEA,MAAMyD,KAAKA,CAAC5D,gBAAwB,EAA0B;IAC5D,MAAMG,OAAO,GAAG,MAAM,IAAI,CAACR,SAAS,CAACS,YAAY,CAACJ,gBAAgB,CAAC;IACnE,MAAM,IAAAiC,qBAAU,EAAC9B,OAAO,EAAE,MAAOgB,MAAM,IAAK;MAC1C,MAAM,IAAI,CAACxB,SAAS,CAACyB,0BAA0B,CAC7CD,MAAM,EACNE,8CAAwB,CAACC,EAAE,EAC3B,CAAC,CAAC,EACF;QACEC,uBAAuB,EAAE,IAAI;QAC7BC,uBAAuB,EAAE;MAC3B,CACF,CAAC;IACH,CAAC,CAAC;IACF,MAAM,IAAI,CAAC7B,SAAS,CAAC8B,MAAM,CAACC,KAAK,CAAE,eAAc1B,gBAAiB,GAAE,CAAC;IAErE,OAAOG,OAAO;EAChB;EAEA,MAAMiC,eAAeA,CAACd,EAAU,EAAgC;IAC9D;IACA,IAAI,CAAC,IAAI,CAAC3B,SAAS,EAAE,MAAM,KAAIkE,kCAAqB,EAAC,CAAC;IACtD,MAAM1C,MAAM,GAAG,MAAM,IAAI,CAACxB,SAAS,CAACmE,kBAAkB,CAACxC,EAAE,CAAC;IAC1D,MAAMyC,QAAQ,GAAG,IAAI,CAACpE,SAAS,CAACoE,QAAQ;IACxC,MAAMC,UAAU,GAAG,MAAMC,qBAAe,CAACC,mBAAmB,CAACH,QAAQ,CAACI,KAAK,CAAC;IAC5E,MAAMC,oBAAoB,GAAG,KAAIH,qBAAe,EAACD,UAAU,CAAC;IAE5D,MAAMK,cAAc,GAAG,MAAMJ,qBAAe,CAACK,uBAAuB,CAACP,QAAQ,EAAE,IAAI,CAAC;IACpF,MAAMQ,wBAAwB,GAAG,KAAIN,qBAAe,EAACI,cAAc,CAAC;IAEpE,OAAO;MAAEL,UAAU,EAAEI,oBAAoB;MAAEC,cAAc,EAAEE,wBAAwB;MAAEjD,EAAE,EAAEH;IAAO,CAAC;EACnG;EAEA,MAAMqD,gBAAgBA,CAACtC,SAA4B,EAAEuC,IAA0B,EAAE;IAC/E,MAAMC,kBAAkB,GAAG,KAAIC,wCAAkB,EAC/CzC,SAAS,EACT,IAAI,CAACtC,kBAAkB,EACvB,IAAI,CAACC,QAAQ,EACb,IAAI,CAACC,YACP,CAAC;IACD,OAAO4E,kBAAkB,CAACE,IAAI,CAAC,IAAI,CAACjF,SAAS,EAAE8E,IAAI,CAAC;EACtD;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,MAAMI,yBAAyBA,CAAC3C,SAA4B,EAAE4C,gBAA2C,EAAE;IACzG,MAAMJ,kBAAkB,GAAG,KAAIC,wCAAkB,EAC/CzC,SAAS,EACT,IAAI,CAACtC,kBAAkB,EACvB,IAAI,CAACC,QAAQ,EACb,IAAI,CAACC,YACP,CAAC;IACD,OAAO4E,kBAAkB,CAACK,aAAa,CAACD,gBAAgB,CAAC;EAC3D;EAEA,MAAME,iBAAiBA,CAAC1D,EAAU,EAAqC;IACrE;IACA,IAAI,CAAC,IAAI,CAAC3B,SAAS,EAAE,MAAM,KAAIkE,kCAAqB,EAAC,CAAC;IACtD,MAAM1C,MAAM,GAAG,MAAM,IAAI,CAACxB,SAAS,CAACmE,kBAAkB,CAACxC,EAAE,CAAC;IAC1D,MAAMY,SAAS,GAAG,MAAM,IAAI,CAACvC,SAAS,CAAC1C,GAAG,CAACkE,MAAM,CAAC;IAClD,MAAM8D,iBAAiB,GAAG/C,SAAS,CAACgD,KAAK,CAACC,SAA8B;IAExE,MAAML,gBAAgB,GAAG,MAAM,IAAI,CAACN,gBAAgB,CAACS,iBAAiB,EAAE;MACtEG,yBAAyB,EAAE,CAAC,CAAC;MAC7BC,oBAAoB,EAAE;IACxB,CAAC,CAAC;IAEF,MAAM;MAAEC,0BAA0B;MAAEC,yBAAyB;MAAEC;IAA4B,CAAC,GAC1FV,gBAAgB,CAACW,qBAAqB;IAExC,MAAMzD,OAAO,GAAG,IAAI,CAACpC,kBAAkB,CAACwC,eAAe,CAACF,SAAS,CAAC;IAClE,MAAMwD,OAAO,GAAG1D,OAAO,CAACrB,GAAG,CAAEgF,GAAG,KAAM;MAAErE,EAAE,EAAEqE,GAAG,CAACrE,EAAE;MAAEsE,MAAM,EAAED,GAAG,CAACC;IAAO,CAAC,CAAC,CAAC;IAE1E,OAAArH,aAAA,CAAAA,aAAA,KACKuG,gBAAgB,CAACe,qBAAqB;MACzCL,2BAA2B;MAC3BD,yBAAyB;MACzBD,0BAA0B;MAC1BQ,WAAW,EAAEhB,gBAAgB,CAACA,gBAAgB,CAACgB,WAAW;MAC1DJ;IAAO;EAEX;;EAEA;AACF;AACA;AACA;EACE,MAAMK,KAAKA,CAACC,QAAgB,EAAE9C,OAAe,EAAE;IAC7C,MAAM5B,EAAE,GAAG,MAAM,IAAI,CAAC3B,SAAS,CAACmE,kBAAkB,CAACkC,QAAQ,CAAC;IAC5D,MAAMC,GAAG,GAAG,MAAM,IAAI,CAACtG,SAAS,CAACwE,KAAK,CAAC+B,OAAO,CAAC5E,EAAE,CAAC;IAClD,MAAM6E,YAA2B,GAAG,EAAE;IACtC,IAAIC,WAAW,GAAG,EAAE;IACpB,MAAM,IAAAnE,qBAAU,EAACgE,GAAG,EAAE,MAAOI,OAAO,IAAK;MACvC,MAAMnE,SAAS,GAAG,MAAM,IAAI,CAACvC,SAAS,CAAC1C,GAAG,CAACqE,EAAE,CAACgF,aAAa,CAACD,OAAO,CAACE,GAAG,IAAIF,OAAO,CAACG,IAAI,CAAC,CAAC;MACzF,MAAMrE,OAAO,GAAG,IAAI,CAACvC,kBAAkB,CAACwC,eAAe,CAACF,SAAS,CAAC;MAClE,MAAMc,UAAU,GAAGb,OAAO,CAACc,qBAAqB,CAACC,OAAO,CAAC;MACzD,IAAIF,UAAU,IAAIA,UAAU,CAAClC,OAAO,KAAKsF,WAAW,EAAE;QACpD;MACF;MACA,IAAItF,OAAe;MACnB,IAAI,CAACkC,UAAU,EAAE;QACf,IAAI,CAACoD,WAAW,EAAE;QAClBtF,OAAO,GAAG,WAAW;MACvB,CAAC,MAAM;QACLA,OAAO,GAAGkC,UAAU,CAAClC,OAAO;MAC9B;MACA,IAAI,CAACkC,UAAU,IAAIA,UAAU,CAAClC,OAAO,KAAKsF,WAAW,EAAE;MACvDA,WAAW,GAAGpD,UAAU,CAAClC,OAAO;MAChCqF,YAAY,CAAC9H,IAAI,CAAC;QAChBoI,IAAI,EAAEJ,OAAO,CAACG,IAAI;QAClBD,GAAG,EAAEF,OAAO,CAACE,GAAG;QAChBG,MAAM,EAAEL,OAAO,CAACM,QAAQ,IAAI,OAAO;QACnCC,IAAI,EAAEP,OAAO,CAACO,IAAI,GAAG,IAAAC,iBAAM,EAAC,IAAIC,IAAI,CAACC,QAAQ,CAACV,OAAO,CAACO,IAAI,CAAC,CAAC,CAAC,CAACI,MAAM,CAAC,qBAAqB,CAAC,GAAG,OAAO;QACrGC,OAAO,EAAEZ,OAAO,CAACY,OAAO;QACxBnG;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,OAAOqF,YAAY;EACrB;EAEA,MAAMe,SAASA,CAAChE,OAAe,EAAEuB,IAAyB,EAA+B;IACvF,IAAI,CAAC0C,aAAa,CAACjE,OAAO,CAAC,EAAE;MAC3B,OAAO,IAAI,CAACtD,kBAAkB,CAACwH,iBAAiB,CAAC,CAAC,EAAEC,UAAU,GAAGnE,OAAO,EAAE;QACxEoE,WAAW,EAAE,IAAI,CAAC3H,SAAS,CAAC4H,IAAI;QAChCC,KAAK,EAAE/C,IAAI,EAAE+C;MACf,CAAC,CAAC;IACJ;IACA,OAAOC,SAAS;EAClB;;EAEA;AACF;AACA;AACA;EACE,MAAMC,KAAKA,CAACxE,OAAe,EAA4C;IACrE,MAAM,CAACrC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAI,CAACiC,oBAAoB,CAACG,OAAO,CAAC;IAC1D,MAAMyE,QAAQ,GAAG,MAAM,IAAI,CAAChI,SAAS,CAACiI,IAAI,CAAC,CAAC;IAC5C,MAAM5F,OAAO,GAAG,CAAC,CAAC;IAClB,MAAMvB,OAAO,CAACC,GAAG,CACfiH,QAAQ,CAAChH,GAAG,CAAC,MAAOkH,IAAI,IAAK;MAC3B,MAAM1F,OAAO,GAAG,IAAI,CAACvC,kBAAkB,CAACwC,eAAe,CAACyF,IAAI,CAAC;MAC7D,MAAM7E,UAAU,GAAGb,OAAO,CAACc,qBAAqB,CAACpC,IAAI,EAAEC,OAAO,CAAC;MAC/D,IAAIkC,UAAU,EAAE;QACdhB,OAAO,CAAC6F,IAAI,CAACvG,EAAE,CAACwG,QAAQ,CAAC,CAAC,CAAC,GAAG9E,UAAU,CAAClC,OAAO;MAClD;IACF,CAAC,CACH,CAAC;IACD,OAAOkB,OAAO;EAChB;EAEA,MAAcjB,4BAA4BA,CAACH,GAAW,EAA6B;IACjF,MAAMmH,aAAa,GAAG,MAAOC,OAAe,IAAK;MAC/C,MAAMC,eAAe,GAAG,MAAM,IAAI,CAACrI,kBAAkB,CAACsI,kBAAkB,CAAC,CAAC,CAAC,CAAC;MAC5E,MAAMC,QAAQ,GAAG,MAAMF,eAAe,CAACG,oBAAoB,CAACJ,OAAO,EAAE;QAAEK,OAAO,EAAE;MAAG,CAAC,CAAC;MACrF,IAAI,CAACF,QAAQ,CAACrH,OAAO,EAAE,MAAM,IAAIwH,KAAK,CAAE,iCAAgCN,OAAQ,EAAC,CAAC;MAClF,OAAOG,QAAQ,CAACrH,OAAO;IACzB,CAAC;IACD,MAAM,CAACD,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAI,CAACiC,oBAAoB,CAACnC,GAAG,CAAC;IACtD,MAAM2H,eAAe,GAAG,CAACzH,OAAO,IAAIA,OAAO,KAAK,QAAQ,GAAG,MAAMiH,aAAa,CAAClH,IAAI,CAAC,GAAGC,OAAO;IAC9F,OAAO,CAACD,IAAI,EAAE0H,eAAe,CAAC;EAChC;EAEQxF,oBAAoBA,CAACnC,GAAW,EAAgC;IACtE,MAAM4H,YAAY,GAAG5H,GAAG,CAAC6H,KAAK,CAAC,GAAG,CAAC;IACnC,IAAI7H,GAAG,CAAC8H,UAAU,CAAC,GAAG,CAAC,EAAE;MACvB;MACA,IAAIF,YAAY,CAAC/J,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI6J,KAAK,CAAE,oBAAmB1H,GAAI,wCAAuC,CAAC;MAC7G,OAAO,CAAE,IAAG4H,YAAY,CAAC,CAAC,CAAE,EAAC,EAAEA,YAAY,CAAC,CAAC,CAAC,CAAC;IACjD;IACA,IAAIA,YAAY,CAAC/J,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI6J,KAAK,CAAE,oBAAmB1H,GAAI,wCAAuC,CAAC;IAC7G,OAAO,CAAC4H,YAAY,CAAC,CAAC,CAAC,EAAEA,YAAY,CAAC,CAAC,CAAC,CAAC;EAC3C;EAOA,aAAaG,QAAQA,CAAC,CAACC,GAAG,EAAEjJ,SAAS,EAAEkJ,YAAY,EAAEhJ,QAAQ,EAAEC,YAAY,CAM1E,EAAE;IACD,MAAMgJ,QAAQ,GAAG,IAAIrJ,gBAAgB,CAACE,SAAS,EAAEkJ,YAAY,EAAEhJ,QAAQ,EAAEC,YAAY,CAAC;IACtF,MAAMiJ,OAAO,GAAG,KAAIC,kCAAe,EAAC,CAAC;IACrCD,OAAO,CAACE,QAAQ,GAAG,CACjB,KAAIC,qCAAkB,EAACJ,QAAQ,CAAC,EAChC,KAAIK,wCAAqB,EAACL,QAAQ,CAAC,EACnC,KAAIM,uCAAoB,EAACN,QAAQ,CAAC,EAClC,KAAIO,uCAAoB,EAACP,QAAQ,CAAC,EAClC,KAAIQ,qCAAkB,EAACR,QAAQ,CAAC,EAChC,KAAIS,uCAAoB,EAACT,QAAQ,CAAC,EAClC,KAAIU,uCAAoB,EAACV,QAAQ,CAAC,EAClC,KAAIW,uCAAoB,EAACX,QAAQ,CAAC,EAClC,KAAIY,uCAAoB,EAACZ,QAAQ,CAAC,CACnC;IACD,MAAMa,MAAM,GAAG,KAAIC,yBAAM,EAACd,QAAQ,CAAC;IACnCF,GAAG,CAACiB,QAAQ,CAACd,OAAO,EAAEY,MAAM,CAAC;IAE7BG,0BAAe,CAACC,QAAQ,GAAGjB,QAAQ,CAACtE,gBAAgB,CAACwF,IAAI,CAAClB,QAAQ,CAAC;IAEnE,OAAOA,QAAQ;EACjB;AACF;AAACmB,OAAA,CAAAxK,gBAAA,GAAAA,gBAAA;AAAAd,eAAA,CAlUYc,gBAAgB,WAkSZ,EAAE;AAAAd,eAAA,CAlSNc,gBAAgB,kBAmSL,CAACyK,gBAAS,EAAEC,oBAAe,EAAE9I,8CAAwB,EAAE+I,mBAAc,EAAEC,uBAAkB,CAAC;AAAA1L,eAAA,CAnSrGc,gBAAgB,aAqSV6K,kBAAW;AA+B9B,SAASnD,aAAaA,CAACjE,OAAe,EAAE;EACtC,OAAOA,OAAO,CAACqH,QAAQ,CAAC,GAAG,CAAC,IAAIrH,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG;AACpD;AAEAsH,kCAAkB,CAACC,UAAU,CAAChL,gBAAgB,CAAC;AAAC,IAAAiL,QAAA,GAAAT,OAAA,CAAAlN,OAAA,GAEjC0C,gBAAgB"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/dependencies",
3
- "version": "1.0.133",
3
+ "version": "1.0.134",
4
4
  "homepage": "https://bit.cloud/teambit/dependencies/dependencies",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "dependencies",
9
- "version": "1.0.133"
9
+ "version": "1.0.134"
10
10
  },
11
11
  "dependencies": {
12
12
  "archy": "1.0.0",
@@ -22,10 +22,10 @@
22
22
  "@teambit/component-id": "1.2.0",
23
23
  "@teambit/component-version": "1.0.3",
24
24
  "@teambit/cli": "0.0.848",
25
- "@teambit/aspect-loader": "1.0.133",
26
- "@teambit/dependency-resolver": "1.0.133",
27
- "@teambit/dev-files": "1.0.133",
28
- "@teambit/workspace": "1.0.133",
25
+ "@teambit/aspect-loader": "1.0.134",
26
+ "@teambit/dependency-resolver": "1.0.134",
27
+ "@teambit/dev-files": "1.0.134",
28
+ "@teambit/workspace": "1.0.134",
29
29
  "@teambit/component-issues": "0.0.140"
30
30
  },
31
31
  "devDependencies": {