@teambit/dependencies 1.0.173 → 1.0.174

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,13 +1,13 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="38" failures="0" errors="0" skipped="0">
3
- <testsuite name="teambit.dependencies/dependencies@1.0.173" tests="38" failures="0" errors="0" skipped="0">
3
+ <testsuite name="teambit.dependencies/dependencies@1.0.174" tests="38" failures="0" errors="0" skipped="0">
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"/>
6
6
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/chai"/>
7
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
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/cross-spawn" time="0.001"/>
10
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/cross-spawn"/>
11
11
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/dagre"/>
12
12
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/didyoumean"/>
13
13
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/eslint"/>
@@ -35,7 +35,7 @@
35
35
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/socket.io-client"/>
36
36
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/ua-parser-js"/>
37
37
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/url-join"/>
38
- <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/url-parse"/>
38
+ <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/url-parse" time="0.001"/>
39
39
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/webpack"/>
40
40
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/webpack-dev-server"/>
41
41
  <testcase classname="dist/dependencies-loader/package-to-definetly-typed.spec.js" name="should map to @types/webpack-merge"/>
@@ -3252,7 +3252,7 @@
3252
3252
  "componentId": {
3253
3253
  "scope": "teambit.dependencies",
3254
3254
  "name": "dependencies",
3255
- "version": "1.0.173"
3255
+ "version": "1.0.174"
3256
3256
  },
3257
3257
  "taggedModuleExports": []
3258
3258
  }
@@ -19,6 +19,7 @@ import { DebugDependencies, FileType } from './auto-detect-deps';
19
19
  export type AllDependencies = {
20
20
  dependencies: Dependency[];
21
21
  devDependencies: Dependency[];
22
+ peerDependencies: Dependency[];
22
23
  };
23
24
 
24
25
  export type AllPackagesDependencies = {
@@ -60,6 +61,7 @@ export class ApplyOverrides {
60
61
  this.allDependencies = {
61
62
  dependencies: [],
62
63
  devDependencies: [],
64
+ peerDependencies: [],
63
65
  };
64
66
  this.allPackagesDependencies = {
65
67
  packageDependencies: {},
@@ -203,12 +205,11 @@ export class ApplyOverrides {
203
205
  }
204
206
 
205
207
  private _getComponentIdToAdd(
206
- field: string,
207
- dependency: string
208
- ): { componentId?: ComponentID; packageName?: string } | undefined {
209
- if (field === 'peerDependencies') return undefined;
208
+ dependency: string,
209
+ versionRange: string
210
+ ): { componentId?: ComponentID; packageName?: string; versionRange: string } {
210
211
  const packageData = this._resolvePackageData(dependency);
211
- return { componentId: packageData?.componentId, packageName: packageData?.name };
212
+ return { componentId: packageData?.componentId, packageName: packageData?.name, versionRange };
212
213
  }
213
214
 
214
215
  getDependenciesToAddManually(
@@ -223,7 +224,7 @@ export class ApplyOverrides {
223
224
  if (!overrides[depField]) return;
224
225
  Object.keys(overrides[depField]).forEach((dependency) => {
225
226
  const dependencyValue = overrides[depField][dependency];
226
- const componentData = this._getComponentIdToAdd(depField, dependency);
227
+ const componentData = this._getComponentIdToAdd(dependency, dependencyValue);
227
228
  if (componentData?.componentId) {
228
229
  const dependencyExist = existingDependencies[depField].find((d) =>
229
230
  d.id.isEqualWithoutVersion(componentData.componentId)
@@ -259,7 +260,9 @@ export class ApplyOverrides {
259
260
  DEPENDENCIES_FIELDS.forEach((depField) => {
260
261
  if (components[depField] && components[depField].length) {
261
262
  components[depField].forEach((depData) =>
262
- this.allDependencies[depField].push(new Dependency(depData.componentId, [], depData.packageName))
263
+ this.allDependencies[depField].push(
264
+ new Dependency(depData.componentId, [], depData.packageName, depData.versionRange)
265
+ )
263
266
  );
264
267
  }
265
268
  if (packages[depField] && !isEmpty(packages[depField])) {
@@ -278,6 +281,12 @@ export class ApplyOverrides {
278
281
  delete this.allPackagesDependencies.packageDependencies[peerName];
279
282
  }
280
283
  }
284
+ if (components.peerDependencies) {
285
+ const componentPeers = new Set(components.peerDependencies.map(({ packageName }) => packageName));
286
+ this.allDependencies.dependencies = this.allDependencies.dependencies.filter(
287
+ (dep) => !dep.packageName || !componentPeers.has(dep.packageName)
288
+ );
289
+ }
281
290
  }
282
291
 
283
292
  /**
@@ -353,7 +362,7 @@ export class ApplyOverrides {
353
362
  if (!wsPolicy) return;
354
363
  const wsPeer = wsPolicy.peerDependencies || {};
355
364
  const wsRegular = wsPolicy.dependencies || {};
356
- const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};
365
+ const peerPackageDeps = this.allPackagesDependencies.peerPackageDependencies || {};
357
366
  // we are not iterate component deps since they are resolved from what actually installed
358
367
  // the policy used for installation only in that case
359
368
  ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach((field) => {
@@ -362,14 +371,31 @@ export class ApplyOverrides {
362
371
  const regularVersionFromWsPolicy = wsRegular[pkgName];
363
372
  if (peerVersionFromWsPolicy) {
364
373
  delete this.allPackagesDependencies[field][pkgName];
365
- peerDeps[pkgName] = peerVersionFromWsPolicy;
374
+ peerPackageDeps[pkgName] = peerVersionFromWsPolicy;
366
375
  } else if (regularVersionFromWsPolicy) {
367
376
  delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];
368
377
  this.allPackagesDependencies[field][pkgName] = regularVersionFromWsPolicy;
369
378
  }
370
379
  });
371
380
  });
372
- this.allPackagesDependencies.peerPackageDependencies = peerDeps;
381
+ this.allPackagesDependencies.peerPackageDependencies = peerPackageDeps;
382
+
383
+ const peerDeps = this.allDependencies.peerDependencies ?? [];
384
+ ['dependencies', 'devDependencies'].forEach((field) => {
385
+ for (const dep of this.allDependencies[field]) {
386
+ const pkgName = dep.packageName;
387
+ const peerVersionFromWsPolicy = wsPeer[pkgName];
388
+ const regularVersionFromWsPolicy = wsRegular[pkgName];
389
+ if (peerVersionFromWsPolicy) {
390
+ dep.versionRange = peerVersionFromWsPolicy;
391
+ peerDeps.push(dep);
392
+ } else if (regularVersionFromWsPolicy) {
393
+ dep.versionRange = regularVersionFromWsPolicy;
394
+ }
395
+ }
396
+ this.allDependencies[field] = this.allDependencies[field].filter(({ packageName }) => !wsPeer[packageName]);
397
+ });
398
+ this.allDependencies.peerDependencies = peerDeps;
373
399
  }
374
400
 
375
401
  /**
@@ -419,6 +445,10 @@ export class ApplyOverrides {
419
445
  return dep.packageName === pkgName;
420
446
  });
421
447
 
448
+ const existsInCompsPeerDeps = this.allDependencies.peerDependencies.find((dep) => {
449
+ return dep.packageName === pkgName;
450
+ });
451
+
422
452
  if (
423
453
  // We are checking originAllPackagesDependencies instead of allPackagesDependencies
424
454
  // as it might be already removed from allPackagesDependencies at this point if it was set with
@@ -429,6 +459,7 @@ export class ApplyOverrides {
429
459
  !this.originAllPackagesDependencies.peerPackageDependencies[pkgName] &&
430
460
  !existsInCompsDeps &&
431
461
  !existsInCompsDevDeps &&
462
+ !existsInCompsPeerDeps &&
432
463
  // Check if it was orignally exists in the component
433
464
  // as we might have a policy which looks like this:
434
465
  // "components": {
@@ -479,7 +510,16 @@ export class ApplyOverrides {
479
510
  pkgVal !== MANUALLY_REMOVE_DEPENDENCY &&
480
511
  ((!existsInCompsDeps && !existsInCompsDevDeps) || field === 'peerDependencies')
481
512
  ) {
482
- this.allPackagesDependencies[key][pkgName] = pkgVal;
513
+ if ((existsInCompsDeps || existsInCompsDevDeps) && field === 'peerDependencies') {
514
+ const comp = (existsInCompsDeps ?? existsInCompsDevDeps) as Dependency;
515
+ comp.versionRange = pkgVal;
516
+ this.allDependencies.peerDependencies.push(comp);
517
+ } else {
518
+ this.allPackagesDependencies[key][pkgName] = pkgVal;
519
+ }
520
+ if (existsInCompsPeerDeps) {
521
+ existsInCompsPeerDeps.versionRange = pkgVal;
522
+ }
483
523
  }
484
524
  });
485
525
  });
@@ -24,7 +24,7 @@ import {
24
24
  } from '@teambit/legacy/dist/consumer/component/dependencies/files-dependency-builder/types/dependency-tree-type';
25
25
  import { DevFilesMain } from '@teambit/dev-files';
26
26
  import { Workspace } from '@teambit/workspace';
27
- import { AspectLoaderMain, getCoreAspectPackageName } from '@teambit/aspect-loader';
27
+ import { AspectLoaderMain } from '@teambit/aspect-loader';
28
28
  import { ResolvedPackageData } from '@teambit/legacy/dist/utils/packages';
29
29
  import { DependencyDetector } from '@teambit/legacy/dist/consumer/component/dependencies/files-dependency-builder/detector-hook';
30
30
  import { packageToDefinetlyTyped } from './package-to-definetly-typed';
@@ -81,6 +81,7 @@ export class AutoDetectDeps {
81
81
  this.allDependencies = {
82
82
  dependencies: [],
83
83
  devDependencies: [],
84
+ peerDependencies: [],
84
85
  };
85
86
  this.allPackagesDependencies = {
86
87
  packageDependencies: {},
@@ -506,18 +507,6 @@ export class AutoDetectDeps {
506
507
  } else this.issues.getOrCreate(IssuesClasses.ResolveErrors).data[originFile] = error.message;
507
508
  }
508
509
 
509
- private getCoreAspectsPackagesAndIds(): Record<string, string> {
510
- const allCoreAspectsIds = this.aspectLoader.getCoreAspectIds();
511
- const coreAspectsPackagesAndIds = {};
512
-
513
- allCoreAspectsIds.forEach((id) => {
514
- const packageName = getCoreAspectPackageName(id);
515
- coreAspectsPackagesAndIds[packageName] = id;
516
- });
517
-
518
- return coreAspectsPackagesAndIds;
519
- }
520
-
521
510
  /**
522
511
  * when a user uses core-extensions these core-extensions should not be dependencies.
523
512
  * here, we filter them out from all places they could entered as dependencies.
@@ -525,7 +514,7 @@ export class AutoDetectDeps {
525
514
  * which case we recognizes that the current originFile is a core-extension and avoid filtering.
526
515
  */
527
516
  private processCoreAspects(originFile: PathLinuxRelative) {
528
- const coreAspects = this.getCoreAspectsPackagesAndIds();
517
+ const coreAspects = this.aspectLoader.getCoreAspectsPackagesAndIds();
529
518
 
530
519
  // const scopes = coreAspects.map((id) => {
531
520
  // const id = id.split()
@@ -25,6 +25,7 @@ export class DependenciesData {
25
25
  allDependencies: {
26
26
  dependencies: allDependencies.dependencies.map((dep) => dep.serialize()),
27
27
  devDependencies: allDependencies.devDependencies.map((dep) => dep.serialize()),
28
+ peerDependencies: allDependencies.peerDependencies.map((dep) => dep.serialize()),
28
29
  },
29
30
  // for backward compatibility. version < 1.5.1 expected this to be saved in the fs cache.
30
31
  overridesDependencies: {
@@ -39,8 +40,11 @@ export class DependenciesData {
39
40
  const dataParsed = JSON.parse(data);
40
41
  const dependencies = dataParsed.allDependencies.dependencies.map((dep) => Dependency.deserialize(dep));
41
42
  const devDependencies = dataParsed.allDependencies.devDependencies.map((dep) => Dependency.deserialize(dep));
43
+ const peerDependencies = (dataParsed.allDependencies.peerDependencies ?? []).map((dep) =>
44
+ Dependency.deserialize(dep)
45
+ );
42
46
  const issuesList = IssuesList.deserialize(dataParsed.issues);
43
- const allDependencies = { dependencies, devDependencies };
47
+ const allDependencies = { dependencies, devDependencies, peerDependencies };
44
48
  const coreAspects = dataParsed.coreAspects;
45
49
  return new DependenciesData(allDependencies, dataParsed.allPackagesDependencies, issuesList, coreAspects);
46
50
  }
@@ -138,6 +138,7 @@ export class DependenciesLoader {
138
138
  ) {
139
139
  this.component.setDependencies(dependenciesData.allDependencies.dependencies);
140
140
  this.component.setDevDependencies(dependenciesData.allDependencies.devDependencies);
141
+ this.component.setPeerDependencies(dependenciesData.allDependencies.peerDependencies);
141
142
  this.component.packageDependencies = dependenciesData.allPackagesDependencies.packageDependencies ?? {};
142
143
  this.component.devPackageDependencies = dependenciesData.allPackagesDependencies.devPackageDependencies ?? {};
143
144
  this.component.peerPackageDependencies = dependenciesData.allPackagesDependencies.peerPackageDependencies ?? {};
@@ -12,7 +12,7 @@ import Dependency from '@teambit/legacy/dist/consumer/component/dependencies/dep
12
12
  import OverridesDependencies from './overrides-dependencies';
13
13
  import { DebugComponentsDependency, getValidVersion } from './auto-detect-deps';
14
14
 
15
- type DepType = 'dependencies' | 'devDependencies';
15
+ type DepType = 'dependencies' | 'devDependencies' | 'peerDependencies';
16
16
 
17
17
  export function updateDependenciesVersions(
18
18
  depsResolver: DependencyResolverMain,
@@ -28,6 +28,7 @@ export function updateDependenciesVersions(
28
28
 
29
29
  updateDependencies(component.dependencies, 'dependencies');
30
30
  updateDependencies(component.devDependencies, 'devDependencies');
31
+ updateDependencies(component.peerDependencies, 'peerDependencies');
31
32
  if (updateExtensionsVersions) {
32
33
  updateExtensions(component.extensions);
33
34
  }
@@ -11,6 +11,7 @@ import { DebugDependencies } from './auto-detect-deps';
11
11
  export type AllDependencies = {
12
12
  dependencies: Dependency[];
13
13
  devDependencies: Dependency[];
14
+ peerDependencies: Dependency[];
14
15
  };
15
16
  export type AllPackagesDependencies = {
16
17
  packageDependencies: Record<string, string>;
@@ -108,7 +108,8 @@ class ApplyOverrides {
108
108
  this.componentFromModel = this.component.componentFromModel;
109
109
  this.allDependencies = {
110
110
  dependencies: [],
111
- devDependencies: []
111
+ devDependencies: [],
112
+ peerDependencies: []
112
113
  };
113
114
  this.allPackagesDependencies = {
114
115
  packageDependencies: {},
@@ -222,12 +223,12 @@ class ApplyOverrides {
222
223
  const packageObject = (0, _packages().resolvePackageData)(basePath, modulePath);
223
224
  return packageObject;
224
225
  }
225
- _getComponentIdToAdd(field, dependency) {
226
- if (field === 'peerDependencies') return undefined;
226
+ _getComponentIdToAdd(dependency, versionRange) {
227
227
  const packageData = this._resolvePackageData(dependency);
228
228
  return {
229
229
  componentId: packageData?.componentId,
230
- packageName: packageData?.name
230
+ packageName: packageData?.name,
231
+ versionRange
231
232
  };
232
233
  }
233
234
  getDependenciesToAddManually(packageJson, existingDependencies) {
@@ -239,7 +240,7 @@ class ApplyOverrides {
239
240
  if (!overrides[depField]) return;
240
241
  Object.keys(overrides[depField]).forEach(dependency => {
241
242
  const dependencyValue = overrides[depField][dependency];
242
- const componentData = this._getComponentIdToAdd(depField, dependency);
243
+ const componentData = this._getComponentIdToAdd(dependency, dependencyValue);
243
244
  if (componentData?.componentId) {
244
245
  const dependencyExist = existingDependencies[depField].find(d => d.id.isEqualWithoutVersion(componentData.componentId));
245
246
  if (!dependencyExist) {
@@ -272,7 +273,7 @@ class ApplyOverrides {
272
273
  } = dependencies;
273
274
  _constants().DEPENDENCIES_FIELDS.forEach(depField => {
274
275
  if (components[depField] && components[depField].length) {
275
- components[depField].forEach(depData => this.allDependencies[depField].push(new (_dependencies().Dependency)(depData.componentId, [], depData.packageName)));
276
+ components[depField].forEach(depData => this.allDependencies[depField].push(new (_dependencies().Dependency)(depData.componentId, [], depData.packageName, depData.versionRange)));
276
277
  }
277
278
  if (packages[depField] && !(0, _lodash().isEmpty)(packages[depField])) {
278
279
  Object.assign(this.allPackagesDependencies[this._pkgFieldMapping(depField)], packages[depField]);
@@ -290,6 +291,12 @@ class ApplyOverrides {
290
291
  delete this.allPackagesDependencies.packageDependencies[peerName];
291
292
  }
292
293
  }
294
+ if (components.peerDependencies) {
295
+ const componentPeers = new Set(components.peerDependencies.map(({
296
+ packageName
297
+ }) => packageName));
298
+ this.allDependencies.dependencies = this.allDependencies.dependencies.filter(dep => !dep.packageName || !componentPeers.has(dep.packageName));
299
+ }
293
300
  }
294
301
 
295
302
  /**
@@ -356,7 +363,7 @@ class ApplyOverrides {
356
363
  if (!wsPolicy) return;
357
364
  const wsPeer = wsPolicy.peerDependencies || {};
358
365
  const wsRegular = wsPolicy.dependencies || {};
359
- const peerDeps = this.allPackagesDependencies.peerPackageDependencies || {};
366
+ const peerPackageDeps = this.allPackagesDependencies.peerPackageDependencies || {};
360
367
  // we are not iterate component deps since they are resolved from what actually installed
361
368
  // the policy used for installation only in that case
362
369
  ['packageDependencies', 'devPackageDependencies', 'peerPackageDependencies'].forEach(field => {
@@ -365,14 +372,32 @@ class ApplyOverrides {
365
372
  const regularVersionFromWsPolicy = wsRegular[pkgName];
366
373
  if (peerVersionFromWsPolicy) {
367
374
  delete this.allPackagesDependencies[field][pkgName];
368
- peerDeps[pkgName] = peerVersionFromWsPolicy;
375
+ peerPackageDeps[pkgName] = peerVersionFromWsPolicy;
369
376
  } else if (regularVersionFromWsPolicy) {
370
377
  delete this.allPackagesDependencies.peerPackageDependencies?.[pkgName];
371
378
  this.allPackagesDependencies[field][pkgName] = regularVersionFromWsPolicy;
372
379
  }
373
380
  });
374
381
  });
375
- this.allPackagesDependencies.peerPackageDependencies = peerDeps;
382
+ this.allPackagesDependencies.peerPackageDependencies = peerPackageDeps;
383
+ const peerDeps = this.allDependencies.peerDependencies ?? [];
384
+ ['dependencies', 'devDependencies'].forEach(field => {
385
+ for (const dep of this.allDependencies[field]) {
386
+ const pkgName = dep.packageName;
387
+ const peerVersionFromWsPolicy = wsPeer[pkgName];
388
+ const regularVersionFromWsPolicy = wsRegular[pkgName];
389
+ if (peerVersionFromWsPolicy) {
390
+ dep.versionRange = peerVersionFromWsPolicy;
391
+ peerDeps.push(dep);
392
+ } else if (regularVersionFromWsPolicy) {
393
+ dep.versionRange = regularVersionFromWsPolicy;
394
+ }
395
+ }
396
+ this.allDependencies[field] = this.allDependencies[field].filter(({
397
+ packageName
398
+ }) => !wsPeer[packageName]);
399
+ });
400
+ this.allDependencies.peerDependencies = peerDeps;
376
401
  }
377
402
 
378
403
  /**
@@ -415,12 +440,15 @@ class ApplyOverrides {
415
440
  const existsInCompsDevDeps = this.allDependencies.devDependencies.find(dep => {
416
441
  return dep.packageName === pkgName;
417
442
  });
443
+ const existsInCompsPeerDeps = this.allDependencies.peerDependencies.find(dep => {
444
+ return dep.packageName === pkgName;
445
+ });
418
446
  if (
419
447
  // We are checking originAllPackagesDependencies instead of allPackagesDependencies
420
448
  // as it might be already removed from allPackagesDependencies at this point if it was set with
421
449
  // "-" in runtime/dev
422
450
  // in such case we still want to apply it here
423
- !this.originAllPackagesDependencies.packageDependencies[pkgName] && !this.originAllPackagesDependencies.devPackageDependencies[pkgName] && !this.originAllPackagesDependencies.peerPackageDependencies[pkgName] && !existsInCompsDeps && !existsInCompsDevDeps &&
451
+ !this.originAllPackagesDependencies.packageDependencies[pkgName] && !this.originAllPackagesDependencies.devPackageDependencies[pkgName] && !this.originAllPackagesDependencies.peerPackageDependencies[pkgName] && !existsInCompsDeps && !existsInCompsDevDeps && !existsInCompsPeerDeps &&
424
452
  // Check if it was orignally exists in the component
425
453
  // as we might have a policy which looks like this:
426
454
  // "components": {
@@ -461,7 +489,16 @@ class ApplyOverrides {
461
489
  // also the version here might have a range (^ or ~ for example) so we can't
462
490
  // just put it as is, as it is not valid for component deps to have range
463
491
  if (pkgVal !== _constants().MANUALLY_REMOVE_DEPENDENCY && (!existsInCompsDeps && !existsInCompsDevDeps || field === 'peerDependencies')) {
464
- this.allPackagesDependencies[key][pkgName] = pkgVal;
492
+ if ((existsInCompsDeps || existsInCompsDevDeps) && field === 'peerDependencies') {
493
+ const comp = existsInCompsDeps ?? existsInCompsDevDeps;
494
+ comp.versionRange = pkgVal;
495
+ this.allDependencies.peerDependencies.push(comp);
496
+ } else {
497
+ this.allPackagesDependencies[key][pkgName] = pkgVal;
498
+ }
499
+ if (existsInCompsPeerDeps) {
500
+ existsInCompsPeerDeps.versionRange = pkgVal;
501
+ }
465
502
  }
466
503
  });
467
504
  });