@teambit/dependencies 1.0.506 → 1.0.507

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,10 +1,10 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="141" failures="0" errors="0" skipped="31">
3
- <testsuite name="teambit.dependencies/dependencies@1.0.506" tests="141" failures="0" errors="0" skipped="31">
3
+ <testsuite name="teambit.dependencies/dependencies@1.0.507" tests="141" failures="0" errors="0" skipped="31">
4
4
  <testcase classname="dist/dependencies.spec.js" name="should add the snap prefix" time="0.001"/>
5
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/testing-library__jest-dom" time="0.001"/>
5
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/testing-library__jest-dom" time="0.002"/>
6
6
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/chai"/>
7
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/mocha" time="0.001"/>
7
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/mocha"/>
8
8
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/classnames"/>
9
9
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/cors"/>
10
10
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/cross-spawn"/>
@@ -18,7 +18,7 @@
18
18
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash"/>
19
19
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash.compact"/>
20
20
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash.flatten"/>
21
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash.head" time="0.001"/>
21
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash.head"/>
22
22
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/lodash.pick"/>
23
23
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/mdx-js__react"/>
24
24
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/memoizee"/>
@@ -30,7 +30,7 @@
30
30
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/react-dom"/>
31
31
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/react-router-dom"/>
32
32
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/react-tabs"/>
33
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/react-tooltip"/>
33
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/react-tooltip" time="0.001"/>
34
34
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/socket.io-client"/>
35
35
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/ua-parser-js"/>
36
36
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/url-join"/>
@@ -40,7 +40,7 @@
40
40
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/webpack-merge"/>
41
41
  <testcase classname="dist/files-dependency-builder/build-tree.spec.js" name="when no files are passed should return an empty tree" time="0.001"/>
42
42
  <testcase classname="dist/files-dependency-builder/build-tree.spec.js" name="when unsupported files are passed should return them with no dependencies" time="0.001"/>
43
- <testcase classname="dist/files-dependency-builder/build-tree.spec.js" name="when supported and unsupported files are passed should return them all" time="0.005"/>
43
+ <testcase classname="dist/files-dependency-builder/build-tree.spec.js" name="when supported and unsupported files are passed should return them all" time="0.075"/>
44
44
  <testcase classname="dist/files-dependency-builder/build-tree.spec.js" name="when a js file has parsing error it should add the file to the tree with the error instance">
45
45
  <skipped/>
46
46
  </testcase>
@@ -67,53 +67,53 @@
67
67
  <skipped/>
68
68
  </testcase>
69
69
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an empty object for a non-existent filename" time="0.001"/>
70
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="handles nested tree structures" time="0.004"/>
71
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not include files that are not real (#13)" time="0.001"/>
72
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not choke on cyclic dependencies" time="0.083"/>
70
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="handles nested tree structures" time="0.006"/>
71
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not include files that are not real (#13)" time="0.002"/>
72
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not choke on cyclic dependencies" time="0.004"/>
73
73
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="excludes Nodejs core modules by default" time="0.001"/>
74
74
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns a list of absolutely pathed files"/>
75
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="passes it through to precinct" time="0.039"/>
75
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="passes it through to precinct" time="0.047"/>
76
76
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="stores the invalid partials" time="0.001"/>
77
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not store anything" time="0.002"/>
78
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="stores the invalid ones" time="0.002"/>
77
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not store anything" time="0.001"/>
78
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="stores the invalid ones" time="0.001"/>
79
79
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should include the non-existent partial per file" time="0.002"/>
80
80
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="throws if the filename is missing"/>
81
81
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="throws if the root is missing"/>
82
82
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="throws if a supplied filter is not a function"/>
83
83
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not throw on the legacy `root` option"/>
84
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not throw" time="0.001"/>
84
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="does not throw"/>
85
85
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns no dependencies"/>
86
86
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns the precomputed list of a cached entry point"/>
87
87
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.001"/>
88
88
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.002"/>
89
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves files that have jsx" time="0.002"/>
89
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves files that have jsx" time="0.001"/>
90
90
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves files with a jsx extension" time="0.001"/>
91
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves files that have es7"/>
91
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves files that have es7" time="0.001"/>
92
92
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.006"/>
93
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file"/>
94
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.003"/>
95
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.016"/>
93
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.001"/>
94
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.004"/>
95
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="returns an object form of the dependency tree for a file" time="0.017"/>
96
96
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="resolves unaliased modules">
97
97
  <skipped/>
98
98
  </testcase>
99
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="uses the filter to determine if a file should be included in the results" time="0.003"/>
99
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="uses the filter to determine if a file should be included in the results" time="0.002"/>
100
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="includes the lazy dependency" time="0.001"/>
100
101
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="includes the lazy dependency" time="0.001"/>
101
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="includes the lazy dependency"/>
102
102
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="includes the dynamic import" time="0.001"/>
103
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should include it as a dependency and not throw an error" time="0.001"/>
103
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should include it as a dependency and not throw an error"/>
104
104
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="it includes the module entry as dependency">
105
105
  <skipped/>
106
106
  </testcase>
107
107
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="retains the detective config in the clone" time="0.001"/>
108
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not override the cache with wrong packages" time="0.002"/>
108
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not override the cache with wrong packages" time="0.003"/>
109
109
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not crash with &quot;RangeError: Maximum call stack size exceeded&quot; error" time="0.001"/>
110
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not show missing dependencies" time="0.001"/>
110
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not show missing dependencies"/>
111
111
  <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not show missing dependencies when importing from https" time="0.001"/>
112
- <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not show missing dependencies when importing from http" time="0.001"/>
113
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses a generic resolve for unsupported file extensions" time="0.001"/>
114
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="reuses the ast when trying to determine the module type"/>
112
+ <testcase classname="dist/files-dependency-builder/dependency-tree/index.spec.js" name="should not show missing dependencies when importing from http"/>
113
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses a generic resolve for unsupported file extensions" time="0.002"/>
114
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="reuses the ast when trying to determine the module type" time="0.001"/>
115
115
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves the dependency successfully"/>
116
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses the filename to look for the module type"/>
116
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses the filename to look for the module type" time="0.001"/>
117
117
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="assumes commonjs for es6 modules with no requirejs/webpack config">
118
118
  <skipped/>
119
119
  </testcase>
@@ -122,21 +122,21 @@
122
122
  <skipped/>
123
123
  </testcase>
124
124
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="returns an empty string for an unresolved module" time="0.001"/>
125
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="adds the directory to the require resolution paths" time="0.001"/>
126
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a relative dependency about the filename"/>
127
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a .. dependency to its parent directory's index.js file"/>
125
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="adds the directory to the require resolution paths" time="0.002"/>
126
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a relative dependency about the filename" time="0.001"/>
127
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a .. dependency to its parent directory's index.js file" time="0.001"/>
128
128
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a dependency within a directory outside of the given file">
129
129
  <skipped/>
130
130
  </testcase>
131
131
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a node module with module entry in package.json">
132
132
  <skipped/>
133
133
  </testcase>
134
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a nested module"/>
135
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves to the index.js file of a directory"/>
134
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves a nested module" time="0.001"/>
135
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves to the index.js file of a directory" time="0.001"/>
136
136
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves implicit .jsx requires"/>
137
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves implicit .scss requires"/>
138
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves implicit .json requires" time="0.001"/>
139
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves an import" time="0.001"/>
137
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves implicit .scss requires" time="0.001"/>
138
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves implicit .json requires"/>
139
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves an import"/>
140
140
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="returns an empty result" time="0.001"/>
141
141
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses the sass resolver for .scss files"/>
142
142
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses the sass resolver for .sass files"/>
@@ -144,9 +144,9 @@
144
144
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves extensionless dependencies"/>
145
145
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves dependencies with a less extension"/>
146
146
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="resolves dependencies with a css extension"/>
147
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses a generic resolve for unsupported file extensions" time="0.001"/>
147
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="uses a generic resolve for unsupported file extensions"/>
148
148
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="supports passing env detectors"/>
149
- <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="registers a custom resolver for a given extension" time="0.001"/>
149
+ <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="registers a custom resolver for a given extension" time="0.002"/>
150
150
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="allows does not break default resolvers" time="0.001"/>
151
151
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="can be called multiple times" time="0.001"/>
152
152
  <testcase classname="dist/files-dependency-builder/filing-cabinet/index.spec.js" name="does not add redundant extensions to supportedFileExtensions"/>
@@ -193,7 +193,7 @@
193
193
  <skipped/>
194
194
  </testcase>
195
195
  <testcase classname="dist/files-dependency-builder/precinct/index.spec.js" name="throws if the file cannot be found" time="0.001"/>
196
- <testcase classname="dist/files-dependency-builder/precinct/index.spec.js" name="filters out core modules if options.includeCore is false" time="0.001"/>
196
+ <testcase classname="dist/files-dependency-builder/precinct/index.spec.js" name="filters out core modules if options.includeCore is false" time="0.002"/>
197
197
  <testcase classname="dist/files-dependency-builder/precinct/index.spec.js" name="does not filter out core modules by default">
198
198
  <skipped/>
199
199
  </testcase>
@@ -4708,7 +4708,7 @@
4708
4708
  "componentId": {
4709
4709
  "scope": "teambit.dependencies",
4710
4710
  "name": "dependencies",
4711
- "version": "1.0.506"
4711
+ "version": "1.0.507"
4712
4712
  },
4713
4713
  "taggedModuleExports": []
4714
4714
  }
@@ -425,7 +425,7 @@ class DependenciesMain {
425
425
  const depsMain = new DependenciesMain(workspace, scope, depsResolver, devFiles, aspectLoader, graph, logger);
426
426
  const depsCmd = new (_dependenciesCmd().DependenciesCmd)();
427
427
  depsCmd.commands = [new (_dependenciesCmd().DependenciesGetCmd)(depsMain), new (_dependenciesCmd().DependenciesRemoveCmd)(depsMain), new (_dependenciesCmd().DependenciesUnsetCmd)(depsMain), new (_dependenciesCmd().DependenciesDebugCmd)(depsMain), new (_dependenciesCmd().DependenciesSetCmd)(depsMain), new (_dependenciesCmd().DependenciesResetCmd)(depsMain), new (_dependenciesCmd().DependenciesEjectCmd)(depsMain), new (_dependenciesCmd().DependenciesBlameCmd)(depsMain), new (_dependenciesCmd().DependenciesUsageCmd)(depsMain)];
428
- cli.register(depsCmd, new (_dependenciesCmd().WhyCmd)(depsMain), new (_dependenciesCmd().SetPeerCmd)(depsMain), new (_dependenciesCmd().UnsetPeerCmd)(depsMain), new (_dependentsCmd().DependentsCmd)());
428
+ cli.register(depsCmd, new (_dependenciesCmd().WhyCmd)(depsMain), new (_dependenciesCmd().SetPeerCmd)(depsMain), new (_dependenciesCmd().UnsetPeerCmd)(depsMain), new (_dependentsCmd().DependentsCmd)(workspace));
429
429
  _legacy().ComponentLoader.loadDeps = depsMain.loadDependencies.bind(depsMain);
430
430
  return depsMain;
431
431
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_moment","_interopRequireDefault","_dependencyResolver","_workspace","_lodash","_pMapSeries","_legacy","_devFiles","_graph","_aspectLoader","_componentPackageVersion","_scope","_dependenciesLoader","_dependenciesCmd","_dependencies","_dependentsCmd","_logger","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DependenciesMain","constructor","workspace","scope","dependencyResolver","devFiles","aspectLoader","graph","logger","setPeer","componentId","range","compId","resolveComponentId","config","peer","defaultPeerRange","addSpecificComponentConfig","DependencyResolverAspect","id","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","unsetPeer","getAspectConfigForComponent","addComponentConfig","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","optional","policy","changedComps","toStringWithoutVersion","addedPackages","removeDependency","removeOnlyIfExists","getLifeCycle","results","pMapSeries","component","get","missingPackages","uniq","state","issues","getIssueByName","d","flat","depList","getDependencies","getCurrentConfig","currentConfigFromWorkspace","getSpecificComponentConfig","extFromScope","getExtensionsFromScopeAndSpecific","toConfigObject","currentDepResolverConfig","newDepResolverConfig","cloneDeep","depField","KEY_NAME_BY_LIFECYCLE_TYPE","removedPackagesWithNulls","splitPkgToNameAndVer","dependency","findByPkgNameOrCompId","includes","set","depName","getPackageName","existsInSpecificConfig","removedPackages","compact","reset","eject","factory","comp","compIdWithVer","getGraphIds","host","loadDependencies","opts","dependenciesLoader","DependenciesLoader","load","loadDependenciesFromScope","dependenciesData","loadFromScope","debugDependencies","OutsideWorkspaceError","consumerComponent","_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","toString","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","snapToSemver","packageSplit","split","startsWith","provider","cli","depsResolver","loggerMain","createLogger","DependenciesAspect","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesUnsetCmd","DependenciesDebugCmd","DependenciesSetCmd","DependenciesResetCmd","DependenciesEjectCmd","DependenciesBlameCmd","DependenciesUsageCmd","register","WhyCmd","SetPeerCmd","UnsetPeerCmd","DependentsCmd","ComponentLoader","loadDeps","bind","exports","CLIAspect","WorkspaceAspect","DevFilesAspect","AspectLoaderAspect","ScopeAspect","GraphAspect","LoggerAspect","MainRuntime","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, uniq } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport { ConsumerComponent, ComponentLoader, DependencyLoaderOpts } from '@teambit/legacy.consumer-component';\nimport { DevFilesAspect, DevFilesMain } from '@teambit/dev-files';\nimport { GraphAspect, ComponentIdGraph, GraphMain } from '@teambit/graph';\nimport { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\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 SetPeerCmd,\n UnsetPeerCmd,\n WhyCmd,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\nimport { DebugDependencies } from './dependencies-loader/auto-detect-deps';\nimport { DependentsCmd } from './dependents-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\nexport type SetDependenciesResult = { changedComps: string[]; addedPackages: Record<string, string> };\nexport type DependenciesResultsDebug = DebugDependencies &\n OverridesDependenciesData & { coreAspects: string[]; sources: { id: string; source: string }[] };\n\nexport type DependenciesResults = {\n graph: ComponentIdGraph;\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 scope: ScopeMain,\n private dependencyResolver: DependencyResolverMain,\n private devFiles: DevFilesMain,\n private aspectLoader: AspectLoaderMain,\n private graph: GraphMain,\n private logger: Logger\n ) {}\n\n async setPeer(componentId: string, range?: string): Promise<void> {\n const compId = await this.workspace.resolveComponentId(componentId);\n const config = { peer: true, defaultPeerRange: range };\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n\n await this.workspace.bitMap.write(`set-peer (${componentId})`);\n }\n\n async unsetPeer(componentId: string): Promise<void> {\n const compId = await this.workspace.resolveComponentId(componentId);\n // const config = { peer: true, defaultPeerRange: range };\n const config = await this.workspace.getAspectConfigForComponent(compId, DependencyResolverAspect.id);\n if (config) {\n if ('peer' in config) {\n delete config.peer;\n }\n if ('defaultPeerRange' in config) {\n delete config.defaultPeerRange;\n }\n }\n this.workspace.bitMap.addComponentConfig(compId, DependencyResolverAspect.id, config);\n\n await this.workspace.bitMap.write(`unset-peer (${componentId})`);\n }\n\n async setDependency(\n componentPattern: string,\n packages: string[],\n options: SetDependenciesFlags = {}\n ): Promise<SetDependenciesResult> {\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 getLifeCycle = () => {\n if (options.dev) return 'dev';\n if (options.peer) return 'peer';\n return 'runtime';\n };\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 missingPackages = uniq(\n component.state.issues\n .getIssueByName('MissingPackagesDependenciesOnFs')\n ?.data.map((d) => d.missingPackages)\n .flat() || []\n );\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 depField = KEY_NAME_BY_LIFECYCLE_TYPE[getLifeCycle()];\n const removedPackagesWithNulls = await pMapSeries(packages, async (pkg) => {\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const dependency = depList.findByPkgNameOrCompId(name, version, getLifeCycle());\n if (!dependency) {\n if (!missingPackages.includes(name)) return null;\n if (removeOnlyIfExists) return null;\n set(newDepResolverConfig, ['policy', depField, name], '-');\n return `${name}@${version || 'latest'}`;\n }\n const depName = dependency.getPackageName?.() || dependency.id;\n\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, scope?: boolean): Promise<DependenciesResults> {\n const factory = this.workspace && !scope ? this.workspace : this.scope;\n const compId = await (this.workspace || this.scope).resolveComponentId(id);\n const comp = await (this.workspace || this.scope).get(compId);\n const compIdWithVer = comp.id;\n const graph = await this.graph.getGraphIds([compIdWithVer], { host: factory as any });\n\n return { graph, id: compIdWithVer };\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 this.logger\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 this.logger\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 (!this.workspace) throw new OutsideWorkspaceError();\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 if (!this.workspace) throw new OutsideWorkspaceError();\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, snapToSemver(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 = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n DevFilesAspect,\n AspectLoaderAspect,\n ScopeAspect,\n GraphAspect,\n LoggerAspect,\n ];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver, devFiles, aspectLoader, scope, graph, loggerMain]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n DevFilesMain,\n AspectLoaderMain,\n ScopeMain,\n GraphMain,\n LoggerMain,\n ]) {\n const logger = loggerMain.createLogger(DependenciesAspect.id);\n const depsMain = new DependenciesMain(workspace, scope, depsResolver, devFiles, aspectLoader, graph, logger);\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 cli.register(\n depsCmd,\n new WhyCmd(depsMain),\n new SetPeerCmd(depsMain),\n new UnsetPeerCmd(depsMain),\n new DependentsCmd()\n );\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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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_moment","_interopRequireDefault","_dependencyResolver","_workspace","_lodash","_pMapSeries","_legacy","_devFiles","_graph","_aspectLoader","_componentPackageVersion","_scope","_dependenciesLoader","_dependenciesCmd","_dependencies","_dependentsCmd","_logger","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DependenciesMain","constructor","workspace","scope","dependencyResolver","devFiles","aspectLoader","graph","logger","setPeer","componentId","range","compId","resolveComponentId","config","peer","defaultPeerRange","addSpecificComponentConfig","DependencyResolverAspect","id","shouldMergeWithExisting","shouldMergeWithPrevious","bitMap","write","unsetPeer","getAspectConfigForComponent","addComponentConfig","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","optional","policy","changedComps","toStringWithoutVersion","addedPackages","removeDependency","removeOnlyIfExists","getLifeCycle","results","pMapSeries","component","get","missingPackages","uniq","state","issues","getIssueByName","d","flat","depList","getDependencies","getCurrentConfig","currentConfigFromWorkspace","getSpecificComponentConfig","extFromScope","getExtensionsFromScopeAndSpecific","toConfigObject","currentDepResolverConfig","newDepResolverConfig","cloneDeep","depField","KEY_NAME_BY_LIFECYCLE_TYPE","removedPackagesWithNulls","splitPkgToNameAndVer","dependency","findByPkgNameOrCompId","includes","set","depName","getPackageName","existsInSpecificConfig","removedPackages","compact","reset","eject","factory","comp","compIdWithVer","getGraphIds","host","loadDependencies","opts","dependenciesLoader","DependenciesLoader","load","loadDependenciesFromScope","dependenciesData","loadFromScope","debugDependencies","OutsideWorkspaceError","consumerComponent","_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","toString","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","snapToSemver","packageSplit","split","startsWith","provider","cli","depsResolver","loggerMain","createLogger","DependenciesAspect","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesUnsetCmd","DependenciesDebugCmd","DependenciesSetCmd","DependenciesResetCmd","DependenciesEjectCmd","DependenciesBlameCmd","DependenciesUsageCmd","register","WhyCmd","SetPeerCmd","UnsetPeerCmd","DependentsCmd","ComponentLoader","loadDeps","bind","exports","CLIAspect","WorkspaceAspect","DevFilesAspect","AspectLoaderAspect","ScopeAspect","GraphAspect","LoggerAspect","MainRuntime","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, uniq } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport { ConsumerComponent, ComponentLoader, DependencyLoaderOpts } from '@teambit/legacy.consumer-component';\nimport { DevFilesAspect, DevFilesMain } from '@teambit/dev-files';\nimport { GraphAspect, ComponentIdGraph, GraphMain } from '@teambit/graph';\nimport { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\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 SetPeerCmd,\n UnsetPeerCmd,\n WhyCmd,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\nimport { DebugDependencies } from './dependencies-loader/auto-detect-deps';\nimport { DependentsCmd } from './dependents-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\nexport type SetDependenciesResult = { changedComps: string[]; addedPackages: Record<string, string> };\nexport type DependenciesResultsDebug = DebugDependencies &\n OverridesDependenciesData & { coreAspects: string[]; sources: { id: string; source: string }[] };\n\nexport type DependenciesResults = {\n graph: ComponentIdGraph;\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 scope: ScopeMain,\n private dependencyResolver: DependencyResolverMain,\n private devFiles: DevFilesMain,\n private aspectLoader: AspectLoaderMain,\n private graph: GraphMain,\n private logger: Logger\n ) {}\n\n async setPeer(componentId: string, range?: string): Promise<void> {\n const compId = await this.workspace.resolveComponentId(componentId);\n const config = { peer: true, defaultPeerRange: range };\n await this.workspace.addSpecificComponentConfig(compId, DependencyResolverAspect.id, config, {\n shouldMergeWithExisting: true,\n shouldMergeWithPrevious: true,\n });\n\n await this.workspace.bitMap.write(`set-peer (${componentId})`);\n }\n\n async unsetPeer(componentId: string): Promise<void> {\n const compId = await this.workspace.resolveComponentId(componentId);\n // const config = { peer: true, defaultPeerRange: range };\n const config = await this.workspace.getAspectConfigForComponent(compId, DependencyResolverAspect.id);\n if (config) {\n if ('peer' in config) {\n delete config.peer;\n }\n if ('defaultPeerRange' in config) {\n delete config.defaultPeerRange;\n }\n }\n this.workspace.bitMap.addComponentConfig(compId, DependencyResolverAspect.id, config);\n\n await this.workspace.bitMap.write(`unset-peer (${componentId})`);\n }\n\n async setDependency(\n componentPattern: string,\n packages: string[],\n options: SetDependenciesFlags = {}\n ): Promise<SetDependenciesResult> {\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 getLifeCycle = () => {\n if (options.dev) return 'dev';\n if (options.peer) return 'peer';\n return 'runtime';\n };\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 missingPackages = uniq(\n component.state.issues\n .getIssueByName('MissingPackagesDependenciesOnFs')\n ?.data.map((d) => d.missingPackages)\n .flat() || []\n );\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 depField = KEY_NAME_BY_LIFECYCLE_TYPE[getLifeCycle()];\n const removedPackagesWithNulls = await pMapSeries(packages, async (pkg) => {\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const dependency = depList.findByPkgNameOrCompId(name, version, getLifeCycle());\n if (!dependency) {\n if (!missingPackages.includes(name)) return null;\n if (removeOnlyIfExists) return null;\n set(newDepResolverConfig, ['policy', depField, name], '-');\n return `${name}@${version || 'latest'}`;\n }\n const depName = dependency.getPackageName?.() || dependency.id;\n\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, scope?: boolean): Promise<DependenciesResults> {\n const factory = this.workspace && !scope ? this.workspace : this.scope;\n const compId = await (this.workspace || this.scope).resolveComponentId(id);\n const comp = await (this.workspace || this.scope).get(compId);\n const compIdWithVer = comp.id;\n const graph = await this.graph.getGraphIds([compIdWithVer], { host: factory as any });\n\n return { graph, id: compIdWithVer };\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 this.logger\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 this.logger\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 (!this.workspace) throw new OutsideWorkspaceError();\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 if (!this.workspace) throw new OutsideWorkspaceError();\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, snapToSemver(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 = [\n CLIAspect,\n WorkspaceAspect,\n DependencyResolverAspect,\n DevFilesAspect,\n AspectLoaderAspect,\n ScopeAspect,\n GraphAspect,\n LoggerAspect,\n ];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver, devFiles, aspectLoader, scope, graph, loggerMain]: [\n CLIMain,\n Workspace,\n DependencyResolverMain,\n DevFilesMain,\n AspectLoaderMain,\n ScopeMain,\n GraphMain,\n LoggerMain,\n ]) {\n const logger = loggerMain.createLogger(DependenciesAspect.id);\n const depsMain = new DependenciesMain(workspace, scope, depsResolver, devFiles, aspectLoader, graph, logger);\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 cli.register(\n depsCmd,\n new WhyCmd(depsMain),\n new SetPeerCmd(depsMain),\n new UnsetPeerCmd(depsMain),\n new DependentsCmd(workspace)\n );\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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","ignoreList":[]}
@@ -1,5 +1,7 @@
1
1
  import { Command, CommandOptions } from '@teambit/cli';
2
+ import { Workspace } from '@teambit/workspace';
2
3
  export declare class DependentsCmd implements Command {
4
+ private workspace;
3
5
  name: string;
4
6
  helpUrl: string;
5
7
  arguments: {
@@ -10,6 +12,7 @@ export declare class DependentsCmd implements Command {
10
12
  group: string;
11
13
  alias: string;
12
14
  options: CommandOptions;
15
+ constructor(workspace: Workspace);
13
16
  report([id]: [string]): Promise<string>;
14
17
  json([id]: [string]): Promise<{
15
18
  scopeDependents: any[];
@@ -32,7 +32,8 @@ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object
32
32
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
33
33
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
34
34
  class DependentsCmd {
35
- constructor() {
35
+ constructor(workspace) {
36
+ this.workspace = workspace;
36
37
  _defineProperty(this, "name", 'dependents <component-name>');
37
38
  _defineProperty(this, "helpUrl", 'reference/dependencies/inspecting-dependencies#review-dependents');
38
39
  _defineProperty(this, "arguments", [{
@@ -45,7 +46,7 @@ class DependentsCmd {
45
46
  _defineProperty(this, "options", [['j', 'json', 'return the dependents in JSON format']]);
46
47
  }
47
48
  async report([id]) {
48
- const results = await (0, _dependents().dependents)(id);
49
+ const results = await (0, _dependents().dependents)(id, this.workspace);
49
50
  if (!results.scopeDependents.length && !results.workspaceDependents.length) {
50
51
  return `no dependents found for ${results.id.toString()}.
51
52
  try running "bit cat-component ${results.id.toStringWithoutVersion()}" to see whether the component/version exists locally`;
@@ -59,7 +60,7 @@ ${_chalk().default.bold('Dependents originated from scope')}
59
60
  ${scopeTable || '<none>'}`;
60
61
  }
61
62
  async json([id]) {
62
- const results = await (0, _dependents().dependents)(id);
63
+ const results = await (0, _dependents().dependents)(id, this.workspace);
63
64
  const depInfoToString = depInfo => {
64
65
  return _objectSpread(_objectSpread({}, depInfo), {}, {
65
66
  id: depInfo.id.toString()
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_dependents","_template","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DependentsCmd","constructor","name","description","report","id","results","dependents","scopeDependents","workspaceDependents","toString","toStringWithoutVersion","scopeTable","generateDependentsInfoTable","workspaceTable","chalk","bold","json","depInfoToString","depInfo","map","exports"],"sources":["dependents-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { dependents, DependentsResults } from './dependents';\nimport { generateDependentsInfoTable } from './template';\n\nexport class DependentsCmd implements Command {\n name = 'dependents <component-name>';\n helpUrl = 'reference/dependencies/inspecting-dependencies#review-dependents';\n arguments = [\n {\n name: 'component-name',\n description: 'component name or component id',\n },\n ];\n description = 'show dependents of the given component';\n group = 'info';\n alias = '';\n options = [['j', 'json', 'return the dependents in JSON format']] as CommandOptions;\n\n async report([id]: [string]) {\n const results: DependentsResults = await dependents(id);\n if (!results.scopeDependents.length && !results.workspaceDependents.length) {\n return `no dependents found for ${results.id.toString()}.\ntry running \"bit cat-component ${results.id.toStringWithoutVersion()}\" to see whether the component/version exists locally`;\n }\n const scopeTable = generateDependentsInfoTable(results.scopeDependents, results.id);\n const workspaceTable = generateDependentsInfoTable(results.workspaceDependents, results.id);\n return `${chalk.bold('Dependents originated from workspace')}\n${workspaceTable || '<none>'}\n\n${chalk.bold('Dependents originated from scope')}\n${scopeTable || '<none>'}`;\n }\n\n async json([id]: [string]) {\n const results: DependentsResults = await dependents(id);\n const depInfoToString = (depInfo) => {\n return {\n ...depInfo,\n id: depInfo.id.toString(),\n };\n };\n return {\n scopeDependents: results.scopeDependents.map(depInfoToString),\n workspaceDependents: results.workspaceDependents.map(depInfoToString),\n id: results.id.toString(),\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_dependents","_template","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DependentsCmd","constructor","workspace","name","description","report","id","results","dependents","scopeDependents","workspaceDependents","toString","toStringWithoutVersion","scopeTable","generateDependentsInfoTable","workspaceTable","chalk","bold","json","depInfoToString","depInfo","map","exports"],"sources":["dependents-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { dependents, DependentsResults } from './dependents';\nimport { generateDependentsInfoTable } from './template';\nimport { Workspace } from '@teambit/workspace';\n\nexport class DependentsCmd implements Command {\n name = 'dependents <component-name>';\n helpUrl = 'reference/dependencies/inspecting-dependencies#review-dependents';\n arguments = [\n {\n name: 'component-name',\n description: 'component name or component id',\n },\n ];\n description = 'show dependents of the given component';\n group = 'info';\n alias = '';\n options = [['j', 'json', 'return the dependents in JSON format']] as CommandOptions;\n\n constructor(private workspace: Workspace) {}\n\n async report([id]: [string]) {\n const results: DependentsResults = await dependents(id, this.workspace);\n if (!results.scopeDependents.length && !results.workspaceDependents.length) {\n return `no dependents found for ${results.id.toString()}.\ntry running \"bit cat-component ${results.id.toStringWithoutVersion()}\" to see whether the component/version exists locally`;\n }\n const scopeTable = generateDependentsInfoTable(results.scopeDependents, results.id);\n const workspaceTable = generateDependentsInfoTable(results.workspaceDependents, results.id);\n return `${chalk.bold('Dependents originated from workspace')}\n${workspaceTable || '<none>'}\n\n${chalk.bold('Dependents originated from scope')}\n${scopeTable || '<none>'}`;\n }\n\n async json([id]: [string]) {\n const results: DependentsResults = await dependents(id, this.workspace);\n const depInfoToString = (depInfo) => {\n return {\n ...depInfo,\n id: depInfo.id.toString(),\n };\n };\n return {\n scopeDependents: results.scopeDependents.map(depInfoToString),\n workspaceDependents: results.workspaceDependents.map(depInfoToString),\n id: results.id.toString(),\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,9 @@
1
1
  import { ComponentID } from '@teambit/component-id';
2
2
  import { DependenciesInfo } from '@teambit/legacy.dependency-graph';
3
+ import { Workspace } from '@teambit/workspace';
3
4
  export type DependentsResults = {
4
5
  scopeDependents: DependenciesInfo[];
5
6
  workspaceDependents: DependenciesInfo[];
6
7
  id: ComponentID;
7
8
  };
8
- export declare function dependents(id: string): Promise<DependentsResults>;
9
+ export declare function dependents(id: string, workspace: Workspace): Promise<DependentsResults>;
@@ -4,13 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.dependents = dependents;
7
- function _componentId() {
8
- const data = require("@teambit/component-id");
9
- _componentId = function () {
10
- return data;
11
- };
12
- return data;
13
- }
14
7
  function _bitError() {
15
8
  const data = require("@teambit/bit-error");
16
9
  _bitError = function () {
@@ -19,28 +12,19 @@ function _bitError() {
19
12
  return data;
20
13
  }
21
14
  function _legacy() {
22
- const data = require("@teambit/legacy.consumer");
23
- _legacy = function () {
24
- return data;
25
- };
26
- return data;
27
- }
28
- function _legacy2() {
29
15
  const data = require("@teambit/legacy.dependency-graph");
30
- _legacy2 = function () {
16
+ _legacy = function () {
31
17
  return data;
32
18
  };
33
19
  return data;
34
20
  }
35
- async function dependents(id) {
36
- const consumer = await (0, _legacy().loadConsumerIfExist)();
37
- if (!consumer) throw new (_legacy().ConsumerNotFound)(); // @todo: supports this on bare-scope.
38
- throwForNewComponent(id, consumer);
39
- const bitId = consumer.getParsedIdIfExist(id) || _componentId().ComponentID.fromString(id);
40
- const scopeDependencyGraph = await _legacy2().DependencyGraph.loadLatest(consumer.scope);
21
+ async function dependents(id, workspace) {
22
+ throwForNewComponent(id, workspace);
23
+ const bitId = await workspace.resolveComponentId(id);
24
+ const scopeDependencyGraph = await _legacy().DependencyGraph.loadLatest(workspace.consumer.scope);
41
25
  const scopeDependents = scopeDependencyGraph.getDependentsInfo(bitId);
42
- const workspaceGraph = await _legacy2().DependencyGraph.buildGraphFromWorkspace(consumer, true);
43
- const workspaceDependencyGraph = new (_legacy2().DependencyGraph)(workspaceGraph);
26
+ const workspaceGraph = await _legacy().DependencyGraph.buildGraphFromWorkspace(workspace, true);
27
+ const workspaceDependencyGraph = new (_legacy().DependencyGraph)(workspaceGraph);
44
28
  const workspaceDependents = workspaceDependencyGraph.getDependentsInfo(bitId);
45
29
  return {
46
30
  scopeDependents,
@@ -48,8 +32,8 @@ async function dependents(id) {
48
32
  id: bitId
49
33
  };
50
34
  }
51
- function throwForNewComponent(id, consumer) {
52
- const bitId = consumer.bitMap.getExistingBitId(id, false);
35
+ function throwForNewComponent(id, workspace) {
36
+ const bitId = workspace.consumer.bitMap.getExistingBitId(id, false);
53
37
  if (!bitId) return;
54
38
  if (!bitId._legacy.hasScope()) {
55
39
  throw new (_bitError().BitError)(`${id} is a new component, there is no data about it in the scope`);
@@ -1 +1 @@
1
- {"version":3,"names":["_componentId","data","require","_bitError","_legacy","_legacy2","dependents","id","consumer","loadConsumerIfExist","ConsumerNotFound","throwForNewComponent","bitId","getParsedIdIfExist","ComponentID","fromString","scopeDependencyGraph","DependencyGraph","loadLatest","scope","scopeDependents","getDependentsInfo","workspaceGraph","buildGraphFromWorkspace","workspaceDependencyGraph","workspaceDependents","bitMap","getExistingBitId","hasScope","BitError"],"sources":["dependents.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { ConsumerNotFound, loadConsumerIfExist, Consumer } from '@teambit/legacy.consumer';\nimport { DependencyGraph, DependenciesInfo } from '@teambit/legacy.dependency-graph';\n\nexport type DependentsResults = {\n scopeDependents: DependenciesInfo[];\n workspaceDependents: DependenciesInfo[];\n id: ComponentID;\n};\n\nexport async function dependents(id: string): Promise<DependentsResults> {\n const consumer = await loadConsumerIfExist();\n if (!consumer) throw new ConsumerNotFound(); // @todo: supports this on bare-scope.\n throwForNewComponent(id, consumer);\n const bitId = consumer.getParsedIdIfExist(id) || ComponentID.fromString(id);\n const scopeDependencyGraph = await DependencyGraph.loadLatest(consumer.scope);\n const scopeDependents = scopeDependencyGraph.getDependentsInfo(bitId);\n const workspaceGraph = await DependencyGraph.buildGraphFromWorkspace(consumer, true);\n const workspaceDependencyGraph = new DependencyGraph(workspaceGraph);\n const workspaceDependents = workspaceDependencyGraph.getDependentsInfo(bitId);\n return { scopeDependents, workspaceDependents, id: bitId };\n}\n\nfunction throwForNewComponent(id: string, consumer: Consumer) {\n const bitId = consumer.bitMap.getExistingBitId(id, false);\n if (!bitId) return;\n if (!bitId._legacy.hasScope()) {\n throw new BitError(`${id} is a new component, there is no data about it in the scope`);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,UAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,QAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,OAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAQO,eAAeK,UAAUA,CAACC,EAAU,EAA8B;EACvE,MAAMC,QAAQ,GAAG,MAAM,IAAAC,6BAAmB,EAAC,CAAC;EAC5C,IAAI,CAACD,QAAQ,EAAE,MAAM,KAAIE,0BAAgB,EAAC,CAAC,CAAC,CAAC;EAC7CC,oBAAoB,CAACJ,EAAE,EAAEC,QAAQ,CAAC;EAClC,MAAMI,KAAK,GAAGJ,QAAQ,CAACK,kBAAkB,CAACN,EAAE,CAAC,IAAIO,0BAAW,CAACC,UAAU,CAACR,EAAE,CAAC;EAC3E,MAAMS,oBAAoB,GAAG,MAAMC,0BAAe,CAACC,UAAU,CAACV,QAAQ,CAACW,KAAK,CAAC;EAC7E,MAAMC,eAAe,GAAGJ,oBAAoB,CAACK,iBAAiB,CAACT,KAAK,CAAC;EACrE,MAAMU,cAAc,GAAG,MAAML,0BAAe,CAACM,uBAAuB,CAACf,QAAQ,EAAE,IAAI,CAAC;EACpF,MAAMgB,wBAAwB,GAAG,KAAIP,0BAAe,EAACK,cAAc,CAAC;EACpE,MAAMG,mBAAmB,GAAGD,wBAAwB,CAACH,iBAAiB,CAACT,KAAK,CAAC;EAC7E,OAAO;IAAEQ,eAAe;IAAEK,mBAAmB;IAAElB,EAAE,EAAEK;EAAM,CAAC;AAC5D;AAEA,SAASD,oBAAoBA,CAACJ,EAAU,EAAEC,QAAkB,EAAE;EAC5D,MAAMI,KAAK,GAAGJ,QAAQ,CAACkB,MAAM,CAACC,gBAAgB,CAACpB,EAAE,EAAE,KAAK,CAAC;EACzD,IAAI,CAACK,KAAK,EAAE;EACZ,IAAI,CAACA,KAAK,CAACR,OAAO,CAACwB,QAAQ,CAAC,CAAC,EAAE;IAC7B,MAAM,KAAIC,oBAAQ,EAAC,GAAGtB,EAAE,6DAA6D,CAAC;EACxF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","_legacy","dependents","id","workspace","throwForNewComponent","bitId","resolveComponentId","scopeDependencyGraph","DependencyGraph","loadLatest","consumer","scope","scopeDependents","getDependentsInfo","workspaceGraph","buildGraphFromWorkspace","workspaceDependencyGraph","workspaceDependents","bitMap","getExistingBitId","hasScope","BitError"],"sources":["dependents.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { DependencyGraph, DependenciesInfo } from '@teambit/legacy.dependency-graph';\nimport { Workspace } from '@teambit/workspace';\n\nexport type DependentsResults = {\n scopeDependents: DependenciesInfo[];\n workspaceDependents: DependenciesInfo[];\n id: ComponentID;\n};\n\nexport async function dependents(id: string, workspace: Workspace): Promise<DependentsResults> {\n throwForNewComponent(id, workspace);\n const bitId = await workspace.resolveComponentId(id);\n const scopeDependencyGraph = await DependencyGraph.loadLatest(workspace.consumer.scope);\n const scopeDependents = scopeDependencyGraph.getDependentsInfo(bitId);\n const workspaceGraph = await DependencyGraph.buildGraphFromWorkspace(workspace, true);\n const workspaceDependencyGraph = new DependencyGraph(workspaceGraph);\n const workspaceDependents = workspaceDependencyGraph.getDependentsInfo(bitId);\n return { scopeDependents, workspaceDependents, id: bitId };\n}\n\nfunction throwForNewComponent(id: string, workspace: Workspace) {\n const bitId = workspace.consumer.bitMap.getExistingBitId(id, false);\n if (!bitId) return;\n if (!bitId._legacy.hasScope()) {\n throw new BitError(`${id} is a new component, there is no data about it in the scope`);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AASO,eAAeG,UAAUA,CAACC,EAAU,EAAEC,SAAoB,EAA8B;EAC7FC,oBAAoB,CAACF,EAAE,EAAEC,SAAS,CAAC;EACnC,MAAME,KAAK,GAAG,MAAMF,SAAS,CAACG,kBAAkB,CAACJ,EAAE,CAAC;EACpD,MAAMK,oBAAoB,GAAG,MAAMC,yBAAe,CAACC,UAAU,CAACN,SAAS,CAACO,QAAQ,CAACC,KAAK,CAAC;EACvF,MAAMC,eAAe,GAAGL,oBAAoB,CAACM,iBAAiB,CAACR,KAAK,CAAC;EACrE,MAAMS,cAAc,GAAG,MAAMN,yBAAe,CAACO,uBAAuB,CAACZ,SAAS,EAAE,IAAI,CAAC;EACrF,MAAMa,wBAAwB,GAAG,KAAIR,yBAAe,EAACM,cAAc,CAAC;EACpE,MAAMG,mBAAmB,GAAGD,wBAAwB,CAACH,iBAAiB,CAACR,KAAK,CAAC;EAC7E,OAAO;IAAEO,eAAe;IAAEK,mBAAmB;IAAEf,EAAE,EAAEG;EAAM,CAAC;AAC5D;AAEA,SAASD,oBAAoBA,CAACF,EAAU,EAAEC,SAAoB,EAAE;EAC9D,MAAME,KAAK,GAAGF,SAAS,CAACO,QAAQ,CAACQ,MAAM,CAACC,gBAAgB,CAACjB,EAAE,EAAE,KAAK,CAAC;EACnE,IAAI,CAACG,KAAK,EAAE;EACZ,IAAI,CAACA,KAAK,CAACL,OAAO,CAACoB,QAAQ,CAAC,CAAC,EAAE;IAC7B,MAAM,KAAIC,oBAAQ,EAAC,GAAGnB,EAAE,6DAA6D,CAAC;EACxF;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/dependencies",
3
- "version": "1.0.506",
3
+ "version": "1.0.507",
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.506"
9
+ "version": "1.0.507"
10
10
  },
11
11
  "dependencies": {
12
12
  "archy": "1.0.0",
@@ -38,28 +38,28 @@
38
38
  "@teambit/styling.deps-detectors.detective-sass": "0.0.9",
39
39
  "@teambit/styling.deps-detectors.detective-scss": "0.0.9",
40
40
  "@teambit/typescript.deps-detectors.detective-typescript": "0.0.8",
41
- "@teambit/cli": "0.0.1083",
42
- "@teambit/graph": "1.0.506",
41
+ "@teambit/cli": "0.0.1084",
42
+ "@teambit/graph": "1.0.507",
43
43
  "@teambit/legacy.constants": "0.0.4",
44
- "@teambit/aspect-loader": "1.0.506",
44
+ "@teambit/aspect-loader": "1.0.507",
45
45
  "@teambit/component-package-version": "0.0.434",
46
- "@teambit/dependency-resolver": "1.0.506",
47
- "@teambit/dev-files": "1.0.506",
48
- "@teambit/legacy.consumer-component": "0.0.14",
49
- "@teambit/logger": "0.0.1176",
50
- "@teambit/scope": "1.0.506",
51
- "@teambit/workspace": "1.0.506",
52
- "@teambit/legacy.consumer": "0.0.13",
53
- "@teambit/legacy.dependency-graph": "0.0.16",
54
- "@teambit/component.sources": "0.0.65",
46
+ "@teambit/dependency-resolver": "1.0.507",
47
+ "@teambit/dev-files": "1.0.507",
48
+ "@teambit/legacy.consumer-component": "0.0.15",
49
+ "@teambit/logger": "0.0.1177",
50
+ "@teambit/scope": "1.0.507",
51
+ "@teambit/workspace": "1.0.507",
52
+ "@teambit/legacy.dependency-graph": "0.0.17",
53
+ "@teambit/component.sources": "0.0.66",
55
54
  "@teambit/legacy.utils": "0.0.12",
56
55
  "@teambit/toolbox.path.path": "0.0.5",
57
56
  "@teambit/component-issues": "0.0.152",
58
- "@teambit/legacy.bit-map": "0.0.70",
59
- "@teambit/legacy.consumer-config": "0.0.13",
57
+ "@teambit/legacy.bit-map": "0.0.71",
58
+ "@teambit/legacy.consumer-config": "0.0.14",
59
+ "@teambit/legacy.consumer": "0.0.14",
60
60
  "@teambit/legacy.logger": "0.0.6",
61
61
  "@teambit/toolbox.fs.extension-getter": "0.0.2",
62
- "@teambit/legacy.extension-data": "0.0.15",
62
+ "@teambit/legacy.extension-data": "0.0.16",
63
63
  "@teambit/toolbox.fs.last-modified": "0.0.2"
64
64
  },
65
65
  "devDependencies": {
@@ -73,9 +73,9 @@
73
73
  "@types/mocha": "9.1.0",
74
74
  "@teambit/defender.fs.global-bit-temp-dir": "0.0.1",
75
75
  "@teambit/harmony.envs.core-aspect-env": "0.0.63",
76
- "@teambit/component.testing.mock-components": "0.0.273",
77
- "@teambit/harmony.testing.load-aspect": "0.0.268",
78
- "@teambit/workspace.testing.mock-workspace": "0.0.40"
76
+ "@teambit/component.testing.mock-components": "0.0.274",
77
+ "@teambit/harmony.testing.load-aspect": "0.0.269",
78
+ "@teambit/workspace.testing.mock-workspace": "0.0.41"
79
79
  },
80
80
  "peerDependencies": {
81
81
  "@types/chai": "4.3.19"