nx 22.0.0-canary.20251014-82acc84 → 22.0.0-canary.20251016-849f356

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.
Files changed (71) hide show
  1. package/package.json +11 -11
  2. package/release/changelog-renderer/index.d.ts +5 -0
  3. package/release/changelog-renderer/index.d.ts.map +1 -1
  4. package/release/changelog-renderer/index.js +48 -16
  5. package/src/command-line/init/implementation/angular/index.d.ts.map +1 -1
  6. package/src/command-line/init/implementation/angular/index.js +4 -6
  7. package/src/command-line/migrate/migrate.d.ts.map +1 -1
  8. package/src/command-line/migrate/migrate.js +25 -8
  9. package/src/command-line/release/changelog.d.ts +1 -1
  10. package/src/command-line/release/changelog.d.ts.map +1 -1
  11. package/src/command-line/release/changelog.js +8 -6
  12. package/src/command-line/release/command-object.d.ts +1 -0
  13. package/src/command-line/release/command-object.d.ts.map +1 -1
  14. package/src/command-line/release/command-object.js +5 -0
  15. package/src/command-line/release/config/config.d.ts.map +1 -1
  16. package/src/command-line/release/config/config.js +6 -3
  17. package/src/command-line/release/index.d.ts +14 -2
  18. package/src/command-line/release/index.d.ts.map +1 -1
  19. package/src/command-line/release/index.js +13 -6
  20. package/src/command-line/release/publish.d.ts +1 -1
  21. package/src/command-line/release/publish.d.ts.map +1 -1
  22. package/src/command-line/release/publish.js +6 -3
  23. package/src/command-line/release/release.d.ts +1 -1
  24. package/src/command-line/release/release.d.ts.map +1 -1
  25. package/src/command-line/release/release.js +9 -7
  26. package/src/command-line/release/utils/resolve-changelog-renderer.d.ts +1 -1
  27. package/src/command-line/release/utils/resolve-changelog-renderer.d.ts.map +1 -1
  28. package/src/command-line/release/utils/resolve-changelog-renderer.js +6 -2
  29. package/src/command-line/release/version.d.ts +1 -1
  30. package/src/command-line/release/version.d.ts.map +1 -1
  31. package/src/command-line/release/version.js +6 -4
  32. package/src/config/nx-json.d.ts +10 -4
  33. package/src/config/nx-json.d.ts.map +1 -1
  34. package/src/core/graph/main.js +1 -1
  35. package/src/devkit-internals.d.ts +1 -0
  36. package/src/devkit-internals.d.ts.map +1 -1
  37. package/src/devkit-internals.js +3 -1
  38. package/src/native/nx.wasm32-wasi.wasm +0 -0
  39. package/src/plugins/js/lock-file/lock-file.d.ts.map +1 -1
  40. package/src/plugins/js/lock-file/lock-file.js +1 -1
  41. package/src/plugins/js/lock-file/pnpm-parser.d.ts +1 -1
  42. package/src/plugins/js/lock-file/pnpm-parser.d.ts.map +1 -1
  43. package/src/plugins/js/lock-file/pnpm-parser.js +12 -4
  44. package/src/plugins/js/lock-file/project-graph-pruning.d.ts +2 -2
  45. package/src/plugins/js/lock-file/project-graph-pruning.d.ts.map +1 -1
  46. package/src/plugins/js/lock-file/project-graph-pruning.js +22 -9
  47. package/src/plugins/js/package-json/create-package-json.d.ts.map +1 -1
  48. package/src/plugins/js/package-json/create-package-json.js +17 -5
  49. package/src/utils/catalog/index.d.ts +10 -0
  50. package/src/utils/catalog/index.d.ts.map +1 -0
  51. package/src/utils/catalog/index.js +38 -0
  52. package/src/utils/catalog/manager-factory.d.ts +6 -0
  53. package/src/utils/catalog/manager-factory.d.ts.map +1 -0
  54. package/src/utils/catalog/manager-factory.js +17 -0
  55. package/src/utils/catalog/manager.d.ts +40 -0
  56. package/src/utils/catalog/manager.d.ts.map +1 -0
  57. package/src/utils/catalog/manager.js +2 -0
  58. package/src/utils/catalog/pnpm-manager.d.ts +22 -0
  59. package/src/utils/catalog/pnpm-manager.d.ts.map +1 -0
  60. package/src/utils/catalog/pnpm-manager.js +257 -0
  61. package/src/utils/catalog/types.d.ts +5 -0
  62. package/src/utils/catalog/types.d.ts.map +1 -0
  63. package/src/utils/catalog/types.js +2 -0
  64. package/src/utils/package-json.d.ts +79 -0
  65. package/src/utils/package-json.d.ts.map +1 -1
  66. package/src/utils/package-json.js +81 -2
  67. package/src/utils/package-manager.d.ts.map +1 -1
  68. package/src/utils/package-manager.js +23 -6
  69. package/src/utils/pnpm-workspace.d.ts +9 -0
  70. package/src/utils/pnpm-workspace.d.ts.map +1 -0
  71. package/src/utils/pnpm-workspace.js +2 -0
@@ -27,4 +27,5 @@ export { registerTsProject } from './plugins/js/utils/register';
27
27
  export { interpolate } from './tasks-runner/utils';
28
28
  export { isCI } from './utils/is-ci';
29
29
  export { isUsingPrettierInTree } from './utils/is-using-prettier';
30
+ export { readYamlFile } from './utils/fileutils';
30
31
  //# sourceMappingURL=devkit-internals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"devkit-internals.d.ts","sourceRoot":"","sources":["../../../../packages/nx/src/devkit-internals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,gDAAgD,EAAE,MAAM,gDAAgD,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EACL,oCAAoC,EACpC,uBAAuB,GACxB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,wBAAwB,EACxB,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,kDAAkD,EAClD,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"devkit-internals.d.ts","sourceRoot":"","sources":["../../../../packages/nx/src/devkit-internals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,gDAAgD,EAAE,MAAM,gDAAgD,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EACL,oCAAoC,EACpC,uBAAuB,GACxB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,wBAAwB,EACxB,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,kDAAkD,EAClD,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isUsingPrettierInTree = exports.isCI = exports.interpolate = exports.registerTsProject = exports.LoadedNxPlugin = exports.retrieveProjectConfigurations = exports.findProjectForPath = exports.createProjectRootMappingsFromProjectConfigurations = exports.hashMultiGlobWithWorkspaceContext = exports.hashWithWorkspaceContext = exports.hashObject = exports.splitByColons = exports.installPackageToTmp = exports.readModulePackageJson = exports.stripIndent = exports.sortObjectByKeys = exports.combineOptionsForExecutor = exports.splitTarget = exports.getIgnoreObjectForTree = exports.findMatchingConfigFiles = exports.readProjectConfigurationsFromRootMap = exports.mergeTargetConfigurations = exports.retrieveProjectConfigurationsWithAngularProjects = exports.calculateDefaultProjectName = exports.readNxJsonFromDisk = exports.parseExecutor = exports.getExecutorInformation = exports.createTempNpmDirectory = void 0;
3
+ exports.readYamlFile = exports.isUsingPrettierInTree = exports.isCI = exports.interpolate = exports.registerTsProject = exports.LoadedNxPlugin = exports.retrieveProjectConfigurations = exports.findProjectForPath = exports.createProjectRootMappingsFromProjectConfigurations = exports.hashMultiGlobWithWorkspaceContext = exports.hashWithWorkspaceContext = exports.hashObject = exports.splitByColons = exports.installPackageToTmp = exports.readModulePackageJson = exports.stripIndent = exports.sortObjectByKeys = exports.combineOptionsForExecutor = exports.splitTarget = exports.getIgnoreObjectForTree = exports.findMatchingConfigFiles = exports.readProjectConfigurationsFromRootMap = exports.mergeTargetConfigurations = exports.retrieveProjectConfigurationsWithAngularProjects = exports.calculateDefaultProjectName = exports.readNxJsonFromDisk = exports.parseExecutor = exports.getExecutorInformation = exports.createTempNpmDirectory = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  /**
6
6
  * Note to developers: STOP! These exports are available via requireNx in @nx/devkit.
@@ -59,3 +59,5 @@ var is_ci_1 = require("./utils/is-ci");
59
59
  Object.defineProperty(exports, "isCI", { enumerable: true, get: function () { return is_ci_1.isCI; } });
60
60
  var is_using_prettier_1 = require("./utils/is-using-prettier");
61
61
  Object.defineProperty(exports, "isUsingPrettierInTree", { enumerable: true, get: function () { return is_using_prettier_1.isUsingPrettierInTree; } });
62
+ var fileutils_1 = require("./utils/fileutils");
63
+ Object.defineProperty(exports, "readYamlFile", { enumerable: true, get: function () { return fileutils_1.readYamlFile; } });
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"lock-file.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/lock-file.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EACL,YAAY,EACZ,wBAAwB,EACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AAGzF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,cAAc,EACf,MAAM,gCAAgC,CAAC;AA8BxC,eAAO,MAAM,SAAS,UAMrB,CAAC;AAQF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,oBAAoB,GAC5B,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAqC1C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,yBAAyB,GACjC,yBAAyB,EAAE,CA8B7B;AAED,wBAAgB,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAgBtE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAiBtE;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAgCtE;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,YAAY,EACnB,cAAc,GAAE,cAAoD,GACnE,MAAM,CA8CR"}
1
+ {"version":3,"file":"lock-file.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/lock-file.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EACL,YAAY,EACZ,wBAAwB,EACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AAGzF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,cAAc,EACf,MAAM,gCAAgC,CAAC;AA8BxC,eAAO,MAAM,SAAS,UAMrB,CAAC;AAQF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,oBAAoB,GAC5B,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAqC1C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,yBAAyB,GACjC,yBAAyB,EAAE,CA8B7B;AAED,wBAAgB,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAgBtE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAiBtE;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CAgCtE;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,YAAY,EACnB,cAAc,GAAE,cAAoD,GACnE,MAAM,CAmDR"}
@@ -204,7 +204,7 @@ function createLockFile(packageJson, graph, packageManager = (0, package_manager
204
204
  }
205
205
  if (packageManager === 'pnpm') {
206
206
  const prunedGraph = (0, project_graph_pruning_1.pruneProjectGraph)(graph, packageJson);
207
- return (0, pnpm_parser_1.stringifyPnpmLockfile)(prunedGraph, content, normalizedPackageJson);
207
+ return (0, pnpm_parser_1.stringifyPnpmLockfile)(prunedGraph, content, normalizedPackageJson, workspace_root_1.workspaceRoot);
208
208
  }
209
209
  if (packageManager === 'npm') {
210
210
  const prunedGraph = (0, project_graph_pruning_1.pruneProjectGraph)(graph, packageJson);
@@ -4,5 +4,5 @@ import { ProjectGraph, ProjectGraphExternalNode } from '../../../config/project-
4
4
  import { CreateDependenciesContext } from '../../../project-graph/plugins';
5
5
  export declare function getPnpmLockfileNodes(lockFileContent: string, lockFileHash: string): Record<string, ProjectGraphExternalNode>;
6
6
  export declare function getPnpmLockfileDependencies(lockFileContent: string, lockFileHash: string, ctx: CreateDependenciesContext): RawProjectGraphDependency[];
7
- export declare function stringifyPnpmLockfile(graph: ProjectGraph, rootLockFileContent: string, packageJson: NormalizedPackageJson): string;
7
+ export declare function stringifyPnpmLockfile(graph: ProjectGraph, rootLockFileContent: string, packageJson: NormalizedPackageJson, workspaceRoot: string): string;
8
8
  //# sourceMappingURL=pnpm-parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pnpm-parser.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/pnpm-parser.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,yBAAyB,EAE1B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAEL,YAAY,EACZ,wBAAwB,EACzB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AA0B3E,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAS1C;AAED,wBAAgB,2BAA2B,CACzC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,yBAAyB,+BAU/B;AAkUD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,YAAY,EACnB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,qBAAqB,GACjC,MAAM,CA8BR"}
1
+ {"version":3,"file":"pnpm-parser.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/pnpm-parser.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,yBAAyB,EAE1B,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAEL,YAAY,EACZ,wBAAwB,EACzB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AA2B3E,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAS1C;AAED,wBAAgB,2BAA2B,CACzC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,yBAAyB,+BAU/B;AAkUD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,YAAY,EACnB,mBAAmB,EAAE,MAAM,EAC3B,WAAW,EAAE,qBAAqB,EAClC,aAAa,EAAE,MAAM,GACpB,MAAM,CAqCR"}
@@ -9,6 +9,7 @@ const object_sort_1 = require("../../../utils/object-sort");
9
9
  const project_graph_builder_1 = require("../../../project-graph/project-graph-builder");
10
10
  const project_graph_1 = require("../../../config/project-graph");
11
11
  const file_hasher_1 = require("../../../hasher/file-hasher");
12
+ const catalog_1 = require("../../../utils/catalog");
12
13
  const project_graph_pruning_1 = require("./project-graph-pruning");
13
14
  const path_1 = require("path");
14
15
  const get_workspace_packages_from_graph_1 = require("../utils/get-workspace-packages-from-graph");
@@ -278,10 +279,10 @@ function getDependencies(data, keyMap, isV5, ctx) {
278
279
  function parseBaseVersion(rawVersion, isV5) {
279
280
  return isV5 ? rawVersion.split('_')[0] : rawVersion.split('(')[0];
280
281
  }
281
- function stringifyPnpmLockfile(graph, rootLockFileContent, packageJson) {
282
+ function stringifyPnpmLockfile(graph, rootLockFileContent, packageJson, workspaceRoot) {
282
283
  const data = (0, pnpm_normalizer_1.parseAndNormalizePnpmLockfile)(rootLockFileContent);
283
284
  const { lockfileVersion, packages, importers } = data;
284
- const { snapshot: rootSnapshot, importers: requiredImporters } = mapRootSnapshot(packageJson, importers, packages, graph, +lockfileVersion);
285
+ const { snapshot: rootSnapshot, importers: requiredImporters } = mapRootSnapshot(packageJson, importers, packages, graph, +lockfileVersion, workspaceRoot);
285
286
  const snapshots = mapSnapshots(data.packages, graph.externalNodes, +lockfileVersion);
286
287
  const workspaceDependencyImporters = {};
287
288
  for (const [packageName, importerPath] of Object.entries(requiredImporters)) {
@@ -407,7 +408,7 @@ function versionIsAlias(key, versionExpr, lockfileVersion) {
407
408
  ? key.startsWith(`${packageName}/${version}`)
408
409
  : key.startsWith(`${packageName}@${version}`);
409
410
  }
410
- function mapRootSnapshot(packageJson, rootImporters, packages, graph, lockfileVersion) {
411
+ function mapRootSnapshot(packageJson, rootImporters, packages, graph, lockfileVersion, workspaceRoot) {
411
412
  const workspaceModules = (0, get_workspace_packages_from_graph_1.getWorkspacePackagesFromGraph)(graph);
412
413
  const snapshot = { specifiers: {} };
413
414
  const importers = {};
@@ -419,7 +420,14 @@ function mapRootSnapshot(packageJson, rootImporters, packages, graph, lockfileVe
419
420
  ].forEach((depType) => {
420
421
  if (packageJson[depType]) {
421
422
  Object.keys(packageJson[depType]).forEach((packageName) => {
422
- const version = packageJson[depType][packageName];
423
+ let version = packageJson[depType][packageName];
424
+ const manager = (0, catalog_1.getCatalogManager)(workspaceRoot);
425
+ if (manager?.isCatalogReference(version)) {
426
+ version = manager.resolveCatalogReference(packageName, version, workspaceRoot);
427
+ if (!version) {
428
+ throw new Error(`Could not resolve catalog reference for package ${packageName}@${version}.`);
429
+ }
430
+ }
423
431
  if (workspaceModules.has(packageName)) {
424
432
  for (const [importerPath, importerSnapshot] of Object.entries(rootImporters)) {
425
433
  const workspaceDep = importerSnapshot.dependencies &&
@@ -1,11 +1,11 @@
1
1
  import { ProjectGraph, ProjectGraphExternalNode, ProjectGraphProjectNode } from '../../../config/project-graph';
2
- import { PackageJson } from '../../../utils/package-json';
3
2
  import { ProjectGraphBuilder } from '../../../project-graph/project-graph-builder';
3
+ import { PackageJson } from '../../../utils/package-json';
4
4
  /**
5
5
  * Prune project graph's external nodes and their dependencies
6
6
  * based on the pruned package.json
7
7
  */
8
- export declare function pruneProjectGraph(graph: ProjectGraph, prunedPackageJson: PackageJson): ProjectGraph;
8
+ export declare function pruneProjectGraph(graph: ProjectGraph, prunedPackageJson: PackageJson, workspaceRootPath?: string): ProjectGraph;
9
9
  export declare function findNodeMatchingVersion(graph: ProjectGraph, packageName: string, versionExpr: string): ProjectGraphExternalNode;
10
10
  export declare function addNodesAndDependencies(graph: ProjectGraph, packageJsonDeps: Record<string, string>, workspacePackages: Map<string, ProjectGraphProjectNode>, builder: ProjectGraphBuilder): void;
11
11
  export declare function rehoistNodes(graph: ProjectGraph, packageJsonDeps: Record<string, string>, builder: ProjectGraphBuilder): void;
@@ -1 +1 @@
1
- {"version":3,"file":"project-graph-pruning.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/project-graph-pruning.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAInF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,YAAY,EACnB,iBAAiB,EAAE,WAAW,GAC7B,YAAY,CA0Bd;AAmDD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,4BAsBpB;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,EACvD,OAAO,EAAE,mBAAmB,QAgB7B;AA+BD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,OAAO,EAAE,mBAAmB,QAiD7B"}
1
+ {"version":3,"file":"project-graph-pruning.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/lock-file/project-graph-pruning.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAI1D;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,YAAY,EACnB,iBAAiB,EAAE,WAAW,EAC9B,iBAAiB,GAAE,MAAsB,GACxC,YAAY,CA2Bd;AA0ED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,4BAsBpB;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,EACvD,OAAO,EAAE,mBAAmB,QAgB7B;AA+BD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,OAAO,EAAE,mBAAmB,QAiD7B"}
@@ -5,17 +5,19 @@ exports.findNodeMatchingVersion = findNodeMatchingVersion;
5
5
  exports.addNodesAndDependencies = addNodesAndDependencies;
6
6
  exports.rehoistNodes = rehoistNodes;
7
7
  const semver_1 = require("semver");
8
- const project_graph_builder_1 = require("../../../project-graph/project-graph-builder");
9
8
  const operators_1 = require("../../../project-graph/operators");
9
+ const project_graph_builder_1 = require("../../../project-graph/project-graph-builder");
10
+ const catalog_1 = require("../../../utils/catalog");
11
+ const workspace_root_1 = require("../../../utils/workspace-root");
10
12
  const get_workspace_packages_from_graph_1 = require("../utils/get-workspace-packages-from-graph");
11
13
  /**
12
14
  * Prune project graph's external nodes and their dependencies
13
15
  * based on the pruned package.json
14
16
  */
15
- function pruneProjectGraph(graph, prunedPackageJson) {
17
+ function pruneProjectGraph(graph, prunedPackageJson, workspaceRootPath = workspace_root_1.workspaceRoot) {
16
18
  const builder = new project_graph_builder_1.ProjectGraphBuilder();
17
19
  const workspacePackages = (0, get_workspace_packages_from_graph_1.getWorkspacePackagesFromGraph)(graph);
18
- const combinedDependencies = normalizeDependencies(prunedPackageJson, graph, workspacePackages);
20
+ const combinedDependencies = normalizeDependencies(prunedPackageJson, graph, workspacePackages, workspaceRootPath);
19
21
  addNodesAndDependencies(graph, combinedDependencies, workspacePackages, builder);
20
22
  for (const project of workspacePackages.values()) {
21
23
  const node = graph.nodes[project.name];
@@ -28,7 +30,7 @@ function pruneProjectGraph(graph, prunedPackageJson) {
28
30
  }
29
31
  // ensure that dependency ranges from package.json (e.g. ^1.0.0)
30
32
  // are replaced with the actual version based on the available nodes (e.g. 1.0.1)
31
- function normalizeDependencies(packageJson, graph, workspacePackages) {
33
+ function normalizeDependencies(packageJson, graph, workspacePackages, workspaceRootPath) {
32
34
  const { dependencies, devDependencies, optionalDependencies, peerDependencies, } = packageJson;
33
35
  const combinedDependencies = {
34
36
  ...dependencies,
@@ -37,24 +39,35 @@ function normalizeDependencies(packageJson, graph, workspacePackages) {
37
39
  ...peerDependencies,
38
40
  };
39
41
  Object.entries(combinedDependencies).forEach(([packageName, versionRange]) => {
40
- if (graph.externalNodes[`npm:${packageName}@${versionRange}`]) {
42
+ let resolvedVersionRange = versionRange;
43
+ const manager = (0, catalog_1.getCatalogManager)(workspaceRootPath);
44
+ if (manager?.isCatalogReference(versionRange)) {
45
+ const resolvedVersionRange = manager.resolveCatalogReference(packageName, versionRange, workspaceRootPath);
46
+ if (!resolvedVersionRange) {
47
+ throw new Error(`Could not resolve catalog reference for ${packageName}@${versionRange}.`);
48
+ }
49
+ }
50
+ if (graph.externalNodes[`npm:${packageName}@${resolvedVersionRange}`]) {
51
+ combinedDependencies[packageName] = resolvedVersionRange;
41
52
  return;
42
53
  }
43
54
  if (graph.externalNodes[`npm:${packageName}`] &&
44
- graph.externalNodes[`npm:${packageName}`].data.version === versionRange) {
55
+ graph.externalNodes[`npm:${packageName}`].data.version ===
56
+ resolvedVersionRange) {
57
+ combinedDependencies[packageName] = resolvedVersionRange;
45
58
  return;
46
59
  }
47
60
  // otherwise we need to find the correct version
48
- const node = findNodeMatchingVersion(graph, packageName, versionRange);
61
+ const node = findNodeMatchingVersion(graph, packageName, resolvedVersionRange);
49
62
  if (node) {
50
63
  combinedDependencies[packageName] = node.data.version;
51
64
  }
52
65
  else if (workspacePackages.has(packageName)) {
53
66
  // workspace module, leave as is
54
- combinedDependencies[packageName] = versionRange;
67
+ combinedDependencies[packageName] = resolvedVersionRange;
55
68
  }
56
69
  else {
57
- throw new Error(`Pruned lock file creation failed. The following package was not found in the root lock file: ${packageName}@${versionRange}`);
70
+ throw new Error(`Pruned lock file creation failed. The following package was not found in the root lock file: ${packageName}@${resolvedVersionRange}`);
58
71
  }
59
72
  });
60
73
  return combinedDependencies;
@@ -1 +1 @@
1
- {"version":3,"file":"create-package-json.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/package-json/create-package-json.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EACd,YAAY,EACZ,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAY1D,UAAU,OAAO;IACf,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACtE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,EACN,OAAO,GAAE,cAAqB,GAC7B,WAAW,CA0Lb;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,uBAAuB,EACpC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,WAAW,EAC5B,OAAO,EAAE;IACP,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,EACD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CA8CT"}
1
+ {"version":3,"file":"create-package-json.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/plugins/js/package-json/create-package-json.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EACd,YAAY,EACZ,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,WAAW,EACZ,MAAM,6BAA6B,CAAC;AAYrC,UAAU,OAAO;IACf,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACtE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,EACN,OAAO,GAAE,cAAqB,GAC7B,WAAW,CA6Mb;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,uBAAuB,EACpC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,WAAW,EAC5B,OAAO,EAAE;IACP,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,EACD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CA8CT"}
@@ -5,6 +5,7 @@ exports.findProjectsNpmDependencies = findProjectsNpmDependencies;
5
5
  const fileutils_1 = require("../../../utils/fileutils");
6
6
  const object_sort_1 = require("../../../utils/object-sort");
7
7
  const project_graph_1 = require("../../../config/project-graph");
8
+ const package_json_1 = require("../../../utils/package-json");
8
9
  const fs_1 = require("fs");
9
10
  const workspace_root_1 = require("../../../utils/workspace-root");
10
11
  const configuration_1 = require("../../../config/configuration");
@@ -21,7 +22,8 @@ const output_1 = require("../../../utils/output");
21
22
  function createPackageJson(projectName, graph, options = {}, fileMap = null) {
22
23
  const projectNode = graph.nodes[projectName];
23
24
  const isLibrary = projectNode.type === 'lib';
24
- const rootPackageJson = (0, fileutils_1.readJsonFile)((0, path_1.join)(options.root ?? workspace_root_1.workspaceRoot, 'package.json'));
25
+ const root = options.root ?? workspace_root_1.workspaceRoot;
26
+ const rootPackageJson = (0, fileutils_1.readJsonFile)((0, path_1.join)(root, 'package.json'));
25
27
  const npmDeps = findProjectsNpmDependencies(projectNode, graph, options.target, rootPackageJson, {
26
28
  helperDependencies: options.helperDependencies,
27
29
  isProduction: options.isProduction,
@@ -31,7 +33,7 @@ function createPackageJson(projectName, graph, options = {}, fileMap = null) {
31
33
  name: projectName,
32
34
  version: '0.0.1',
33
35
  };
34
- const projectPackageJsonPath = (0, path_1.join)(options.root ?? workspace_root_1.workspaceRoot, projectNode.data.root, 'package.json');
36
+ const projectPackageJsonPath = (0, path_1.join)(root, projectNode.data.root, 'package.json');
35
37
  if ((0, fs_1.existsSync)(projectPackageJsonPath)) {
36
38
  try {
37
39
  packageJson = (0, fileutils_1.readJsonFile)(projectPackageJsonPath);
@@ -55,9 +57,19 @@ function createPackageJson(projectName, graph, options = {}, fileMap = null) {
55
57
  catch (e) { }
56
58
  }
57
59
  const getVersion = (packageName, version, section) => {
58
- return (packageJson[section][packageName] ||
59
- (isLibrary && rootPackageJson[section]?.[packageName]) ||
60
- version);
60
+ // Try project package.json first (single section)
61
+ const projectVersion = (0, package_json_1.getDependencyVersionFromPackageJson)(packageName, root, packageJson, [section]);
62
+ if (projectVersion) {
63
+ return projectVersion;
64
+ }
65
+ // For libraries, fall back to root package.json (single section)
66
+ if (isLibrary) {
67
+ const rootVersion = (0, package_json_1.getDependencyVersionFromPackageJson)(packageName, root, rootPackageJson, [section]);
68
+ if (rootVersion) {
69
+ return rootVersion;
70
+ }
71
+ }
72
+ return version;
61
73
  };
62
74
  Object.entries(npmDeps.dependencies).forEach(([packageName, version]) => {
63
75
  if (rootPackageJson.devDependencies?.[packageName] &&
@@ -0,0 +1,10 @@
1
+ import type { Tree } from '../../generators/tree';
2
+ import type { CatalogManager } from './manager';
3
+ import { getCatalogManager } from './manager-factory';
4
+ export { getCatalogManager };
5
+ /**
6
+ * Detects which packages in a package.json use catalog references
7
+ * Returns Map of package name -> catalog name (undefined for default catalog)
8
+ */
9
+ export declare function getCatalogDependenciesFromPackageJson(tree: Tree, packageJsonPath: string, manager: CatalogManager): Map<string, string | undefined>;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/utils/catalog/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;GAGG;AACH,wBAAgB,qCAAqC,CACnD,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,cAAc,GACtB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CA+BjC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCatalogManager = void 0;
4
+ exports.getCatalogDependenciesFromPackageJson = getCatalogDependenciesFromPackageJson;
5
+ const json_1 = require("../../generators/utils/json");
6
+ const manager_factory_1 = require("./manager-factory");
7
+ Object.defineProperty(exports, "getCatalogManager", { enumerable: true, get: function () { return manager_factory_1.getCatalogManager; } });
8
+ /**
9
+ * Detects which packages in a package.json use catalog references
10
+ * Returns Map of package name -> catalog name (undefined for default catalog)
11
+ */
12
+ function getCatalogDependenciesFromPackageJson(tree, packageJsonPath, manager) {
13
+ const catalogDeps = new Map();
14
+ if (!tree.exists(packageJsonPath)) {
15
+ return catalogDeps;
16
+ }
17
+ try {
18
+ const packageJson = (0, json_1.readJson)(tree, packageJsonPath);
19
+ const allDependencies = {
20
+ ...packageJson.dependencies,
21
+ ...packageJson.devDependencies,
22
+ ...packageJson.peerDependencies,
23
+ ...packageJson.optionalDependencies,
24
+ };
25
+ for (const [packageName, version] of Object.entries(allDependencies || {})) {
26
+ if (manager.isCatalogReference(version)) {
27
+ const catalogRef = manager.parseCatalogReference(version);
28
+ if (catalogRef) {
29
+ catalogDeps.set(packageName, catalogRef.catalogName);
30
+ }
31
+ }
32
+ }
33
+ }
34
+ catch (error) {
35
+ // If we can't read the package.json, return empty map
36
+ }
37
+ return catalogDeps;
38
+ }
@@ -0,0 +1,6 @@
1
+ import type { CatalogManager } from './manager';
2
+ /**
3
+ * Factory function to get the appropriate catalog manager based on the package manager
4
+ */
5
+ export declare function getCatalogManager(workspaceRoot: string): CatalogManager | null;
6
+ //# sourceMappingURL=manager-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager-factory.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/utils/catalog/manager-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGhD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,MAAM,GACpB,cAAc,GAAG,IAAI,CASvB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCatalogManager = getCatalogManager;
4
+ const package_manager_1 = require("../package-manager");
5
+ const pnpm_manager_1 = require("./pnpm-manager");
6
+ /**
7
+ * Factory function to get the appropriate catalog manager based on the package manager
8
+ */
9
+ function getCatalogManager(workspaceRoot) {
10
+ const packageManager = (0, package_manager_1.detectPackageManager)(workspaceRoot);
11
+ switch (packageManager) {
12
+ case 'pnpm':
13
+ return new pnpm_manager_1.PnpmCatalogManager();
14
+ default:
15
+ return null;
16
+ }
17
+ }
@@ -0,0 +1,40 @@
1
+ import type { Tree } from '../../generators/tree';
2
+ import type { PnpmWorkspaceYaml } from '../pnpm-workspace';
3
+ import type { CatalogReference } from './types';
4
+ /**
5
+ * Interface for catalog managers that handle package manager-specific catalog implementations.
6
+ */
7
+ export interface CatalogManager {
8
+ readonly name: string;
9
+ isCatalogReference(version: string): boolean;
10
+ parseCatalogReference(version: string): CatalogReference | null;
11
+ /**
12
+ * Get catalog definitions from the workspace.
13
+ */
14
+ getCatalogDefinitions(workspaceRoot: string): PnpmWorkspaceYaml | null;
15
+ getCatalogDefinitions(tree: Tree): PnpmWorkspaceYaml | null;
16
+ /**
17
+ * Resolve a catalog reference to an actual version.
18
+ */
19
+ resolveCatalogReference(workspaceRoot: string, packageName: string, version: string): string | null;
20
+ resolveCatalogReference(tree: Tree, packageName: string, version: string): string | null;
21
+ /**
22
+ * Check that a catalog reference is valid.
23
+ */
24
+ validateCatalogReference(workspaceRoot: string, packageName: string, version: string): void;
25
+ validateCatalogReference(tree: Tree, packageName: string, version: string): void;
26
+ /**
27
+ * Updates catalog definitions for specified packages in their respective catalogs.
28
+ */
29
+ updateCatalogVersions(tree: Tree, updates: Array<{
30
+ packageName: string;
31
+ version: string;
32
+ catalogName?: string;
33
+ }>): void;
34
+ updateCatalogVersions(workspaceRoot: string, updates: Array<{
35
+ packageName: string;
36
+ version: string;
37
+ catalogName?: string;
38
+ }>): void;
39
+ }
40
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/utils/catalog/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAE7C,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAAC;IAEhE;;OAEG;IACH,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACvE,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAE5D;;OAEG;IACH,uBAAuB,CACrB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAAC;IACjB,uBAAuB,CACrB,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAAC;IAEjB;;OAEG;IACH,wBAAwB,CACtB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,IAAI,CAAC;IACR,wBAAwB,CACtB,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,IAAI,CAAC;IAER;;OAEG;IACH,qBAAqB,CACnB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,GACD,IAAI,CAAC;IACR,qBAAqB,CACnB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,GACD,IAAI,CAAC;CACT"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,22 @@
1
+ import type { Tree } from '../../generators/tree';
2
+ import type { PnpmWorkspaceYaml } from '../pnpm-workspace';
3
+ import type { CatalogManager } from './manager';
4
+ import type { CatalogReference } from './types';
5
+ /**
6
+ * PNPM-specific catalog manager implementation
7
+ */
8
+ export declare class PnpmCatalogManager implements CatalogManager {
9
+ readonly name = "pnpm";
10
+ readonly catalogProtocol = "catalog:";
11
+ isCatalogReference(version: string): boolean;
12
+ parseCatalogReference(version: string): CatalogReference | null;
13
+ getCatalogDefinitions(treeOrRoot: Tree | string): PnpmWorkspaceYaml | null;
14
+ resolveCatalogReference(treeOrRoot: Tree | string, packageName: string, version: string): string | null;
15
+ validateCatalogReference(treeOrRoot: Tree | string, packageName: string, version: string): void;
16
+ updateCatalogVersions(treeOrRoot: Tree | string, updates: Array<{
17
+ packageName: string;
18
+ version: string;
19
+ catalogName?: string;
20
+ }>): void;
21
+ }
22
+ //# sourceMappingURL=pnpm-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pnpm-manager.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/utils/catalog/pnpm-manager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;GAEG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,eAAe,cAAc;IAEtC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI5C,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAe/D,qBAAqB,CAAC,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAe1E,uBAAuB,CACrB,UAAU,EAAE,IAAI,GAAG,MAAM,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI;IAuBhB,wBAAwB,CACtB,UAAU,EAAE,IAAI,GAAG,MAAM,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,IAAI;IA0HP,qBAAqB,CACnB,UAAU,EAAE,IAAI,GAAG,MAAM,EACzB,OAAO,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,GACD,IAAI;CAgFR"}