@teambit/dependencies 0.0.14 → 0.0.15

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.
@@ -136,28 +136,25 @@ class DependenciesMain {
136
136
  const currentDepResolverConfig = await this.workspace.getSpecificComponentConfig(compId, _dependencyResolver().DependencyResolverAspect.id);
137
137
  const newDepResolverConfig = (0, _lodash().cloneDeep)(currentDepResolverConfig || {});
138
138
  const removedPackagesWithNulls = await (0, _pMapSeries().default)(packages, async pkg => {
139
- var _newDepResolverConfig, _newDepResolverConfig2;
139
+ var _dependency$getPackag, _newDepResolverConfig, _newDepResolverConfig2;
140
140
 
141
141
  const [name, version] = this.splitPkgToNameAndVer(pkg);
142
- const ignoreVersion = !version;
143
- const pkgToFind = ignoreVersion ? pkg : name;
144
- const dependency = depList.findDependency(pkgToFind, {
145
- ignoreVersion
146
- });
142
+ const dependency = depList.findByPkgNameOrCompId(name, version);
147
143
  if (!dependency) return null;
148
144
 
149
145
  const depField = _dependencyResolver().KEY_NAME_BY_LIFECYCLE_TYPE[dependency.lifecycle];
150
146
 
151
- const existsInSpecificConfig = (_newDepResolverConfig = newDepResolverConfig.policy) === null || _newDepResolverConfig === void 0 ? void 0 : (_newDepResolverConfig2 = _newDepResolverConfig[depField]) === null || _newDepResolverConfig2 === void 0 ? void 0 : _newDepResolverConfig2[name];
147
+ const depName = ((_dependency$getPackag = dependency.getPackageName) === null || _dependency$getPackag === void 0 ? void 0 : _dependency$getPackag.call(dependency)) || dependency.id;
148
+ const existsInSpecificConfig = (_newDepResolverConfig = newDepResolverConfig.policy) === null || _newDepResolverConfig === void 0 ? void 0 : (_newDepResolverConfig2 = _newDepResolverConfig[depField]) === null || _newDepResolverConfig2 === void 0 ? void 0 : _newDepResolverConfig2[depName];
152
149
 
153
150
  if (existsInSpecificConfig) {
154
151
  if (existsInSpecificConfig === '-') return null;
155
- delete newDepResolverConfig.policy[depField][name];
152
+ delete newDepResolverConfig.policy[depField][depName];
156
153
  } else {
157
- (0, _lodash().set)(newDepResolverConfig, ['policy', depField, name], '-');
154
+ (0, _lodash().set)(newDepResolverConfig, ['policy', depField, depName], '-');
158
155
  }
159
156
 
160
- return `${dependency.id}@${dependency.version}`;
157
+ return `${depName}@${dependency.version}`;
161
158
  });
162
159
  const removedPackages = (0, _lodash().compact)(removedPackagesWithNulls);
163
160
  if (!removedPackages.length) return null;
@@ -1 +1 @@
1
- {"version":3,"names":["DependenciesMain","constructor","workspace","dependencyResolver","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","peer","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","config","policy","compId","addSpecificComponentConfig","DependencyResolverAspect","id","bitMap","write","changedComps","toStringWithoutVersion","addedPackages","removeDependency","results","component","get","depList","getDependencies","currentDepResolverConfig","getSpecificComponentConfig","newDepResolverConfig","cloneDeep","removedPackagesWithNulls","pMapSeries","splitPkgToNameAndVer","ignoreVersion","pkgToFind","dependency","findDependency","depField","KEY_NAME_BY_LIFECYCLE_TYPE","lifecycle","existsInSpecificConfig","set","removedPackages","compact","length","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","packageSplit","split","startsWith","provider","cli","depsResolver","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesDebugCmd","DependenciesSetCmd","register","CLIAspect","WorkspaceAspect","MainRuntime","DependenciesAspect","addRuntime"],"sources":["dependencies.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ComponentID } from '@teambit/component-id';\nimport {\n DependencyResolverAspect,\n DependencyResolverMain,\n KEY_NAME_BY_LIFECYCLE_TYPE,\n} from '@teambit/dependency-resolver';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { cloneDeep, compact, set } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport {\n DependenciesCmd,\n DependenciesDebugCmd,\n DependenciesGetCmd,\n DependenciesRemoveCmd,\n DependenciesSetCmd,\n SetDependenciesFlags,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\n\nexport class DependenciesMain {\n constructor(private workspace: Workspace, private dependencyResolver: DependencyResolverMain) {}\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 packagesObj[name] = version;\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, true);\n })\n );\n\n await this.workspace.bitMap.write();\n\n return {\n changedComps: compIds.map((compId) => compId.toStringWithoutVersion()),\n addedPackages: packagesObj,\n };\n }\n\n async removeDependency(componentPattern: string, packages: string[]): Promise<RemoveDependencyResult[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const results = await Promise.all(\n compIds.map(async (compId) => {\n const component = await this.workspace.get(compId);\n const depList = await this.dependencyResolver.getDependencies(component);\n const currentDepResolverConfig = await this.workspace.getSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id\n );\n const newDepResolverConfig = cloneDeep(currentDepResolverConfig || {});\n const removedPackagesWithNulls = await pMapSeries(packages, async (pkg) => {\n const [name, version] = this.splitPkgToNameAndVer(pkg);\n const ignoreVersion = !version;\n const pkgToFind = ignoreVersion ? pkg : name;\n const dependency = depList.findDependency(pkgToFind, { ignoreVersion });\n if (!dependency) return null;\n const depField = KEY_NAME_BY_LIFECYCLE_TYPE[dependency.lifecycle];\n const existsInSpecificConfig = newDepResolverConfig.policy?.[depField]?.[name];\n if (existsInSpecificConfig) {\n if (existsInSpecificConfig === '-') return null;\n delete newDepResolverConfig.policy[depField][name];\n } else {\n set(newDepResolverConfig, ['policy', depField, name], '-');\n }\n return `${dependency.id}@${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 );\n await this.workspace.bitMap.write();\n\n return compact(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];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver]: [CLIMain, Workspace, DependencyResolverMain]) {\n const depsMain = new DependenciesMain(workspace, depsResolver);\n const depsCmd = new DependenciesCmd();\n depsCmd.commands = [\n new DependenciesGetCmd(),\n new DependenciesRemoveCmd(depsMain),\n new DependenciesDebugCmd(),\n new DependenciesSetCmd(depsMain),\n ];\n cli.register(depsCmd);\n\n return depsMain;\n }\n}\n\nDependenciesAspect.addRuntime(DependenciesMain);\n\nexport default DependenciesMain;\n"],"mappings":"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"}
1
+ {"version":3,"names":["DependenciesMain","constructor","workspace","dependencyResolver","setDependency","componentPattern","packages","options","compIds","idsByPattern","getDepField","dev","peer","packagesObj","Promise","all","map","pkg","name","version","getPackageNameAndVerResolved","config","policy","compId","addSpecificComponentConfig","DependencyResolverAspect","id","bitMap","write","changedComps","toStringWithoutVersion","addedPackages","removeDependency","results","component","get","depList","getDependencies","currentDepResolverConfig","getSpecificComponentConfig","newDepResolverConfig","cloneDeep","removedPackagesWithNulls","pMapSeries","splitPkgToNameAndVer","dependency","findByPkgNameOrCompId","depField","KEY_NAME_BY_LIFECYCLE_TYPE","lifecycle","depName","getPackageName","existsInSpecificConfig","set","removedPackages","compact","length","resolveLatest","pkgName","versionResolver","getVersionResolver","resolved","resolveRemoteVersion","rootDir","Error","versionResolved","packageSplit","split","startsWith","provider","cli","depsResolver","depsMain","depsCmd","DependenciesCmd","commands","DependenciesGetCmd","DependenciesRemoveCmd","DependenciesDebugCmd","DependenciesSetCmd","register","CLIAspect","WorkspaceAspect","MainRuntime","DependenciesAspect","addRuntime"],"sources":["dependencies.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { ComponentID } from '@teambit/component-id';\nimport {\n DependencyResolverAspect,\n DependencyResolverMain,\n KEY_NAME_BY_LIFECYCLE_TYPE,\n} from '@teambit/dependency-resolver';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { cloneDeep, compact, set } from 'lodash';\nimport pMapSeries from 'p-map-series';\nimport {\n DependenciesCmd,\n DependenciesDebugCmd,\n DependenciesGetCmd,\n DependenciesRemoveCmd,\n DependenciesSetCmd,\n SetDependenciesFlags,\n} from './dependencies-cmd';\nimport { DependenciesAspect } from './dependencies.aspect';\n\nexport type RemoveDependencyResult = { id: ComponentID; removedPackages: string[] };\n\nexport class DependenciesMain {\n constructor(private workspace: Workspace, private dependencyResolver: DependencyResolverMain) {}\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 packagesObj[name] = version;\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, true);\n })\n );\n\n await this.workspace.bitMap.write();\n\n return {\n changedComps: compIds.map((compId) => compId.toStringWithoutVersion()),\n addedPackages: packagesObj,\n };\n }\n\n async removeDependency(componentPattern: string, packages: string[]): Promise<RemoveDependencyResult[]> {\n const compIds = await this.workspace.idsByPattern(componentPattern);\n const results = await Promise.all(\n compIds.map(async (compId) => {\n const component = await this.workspace.get(compId);\n const depList = await this.dependencyResolver.getDependencies(component);\n const currentDepResolverConfig = await this.workspace.getSpecificComponentConfig(\n compId,\n DependencyResolverAspect.id\n );\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 depField = KEY_NAME_BY_LIFECYCLE_TYPE[dependency.lifecycle];\n const depName = dependency.getPackageName?.() || dependency.id;\n const existsInSpecificConfig = newDepResolverConfig.policy?.[depField]?.[depName];\n if (existsInSpecificConfig) {\n if (existsInSpecificConfig === '-') return null;\n delete newDepResolverConfig.policy[depField][depName];\n } else {\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 );\n await this.workspace.bitMap.write();\n\n return compact(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];\n\n static runtime = MainRuntime;\n\n static async provider([cli, workspace, depsResolver]: [CLIMain, Workspace, DependencyResolverMain]) {\n const depsMain = new DependenciesMain(workspace, depsResolver);\n const depsCmd = new DependenciesCmd();\n depsCmd.commands = [\n new DependenciesGetCmd(),\n new DependenciesRemoveCmd(depsMain),\n new DependenciesDebugCmd(),\n new DependenciesSetCmd(depsMain),\n ];\n cli.register(depsCmd);\n\n return depsMain;\n }\n}\n\nDependenciesAspect.addRuntime(DependenciesMain);\n\nexport default DependenciesMain;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/dependencies",
3
- "version": "0.0.14",
3
+ "version": "0.0.15",
4
4
  "homepage": "https://bit.dev/teambit/dependencies/dependencies",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "dependencies",
9
- "version": "0.0.14"
9
+ "version": "0.0.15"
10
10
  },
11
11
  "dependencies": {
12
12
  "archy": "1.0.0",
@@ -16,10 +16,10 @@
16
16
  "@babel/runtime": "7.12.18",
17
17
  "core-js": "^3.0.0",
18
18
  "@teambit/harmony": "0.3.3",
19
- "@teambit/cli": "0.0.549",
19
+ "@teambit/cli": "0.0.550",
20
20
  "@teambit/component-id": "0.0.405",
21
- "@teambit/dependency-resolver": "0.0.821",
22
- "@teambit/workspace": "0.0.821"
21
+ "@teambit/dependency-resolver": "0.0.822",
22
+ "@teambit/workspace": "0.0.822"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/lodash": "4.14.165",
@@ -31,7 +31,7 @@
31
31
  "@types/node": "12.20.4"
32
32
  },
33
33
  "peerDependencies": {
34
- "@teambit/legacy": "1.0.332",
34
+ "@teambit/legacy": "1.0.333",
35
35
  "react-dom": "^16.8.0 || ^17.0.0",
36
36
  "react": "^16.8.0 || ^17.0.0"
37
37
  },