pnpm-catalog-updates 0.5.7 → 0.6.6

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 (224) hide show
  1. package/README.md +70 -634
  2. package/bin/pcu.js +1 -1
  3. package/dist/index.js +9559 -32
  4. package/dist/index.js.map +1 -1
  5. package/package.json +59 -103
  6. package/src/cli/commands/checkCommand.ts +227 -0
  7. package/src/cli/commands/initCommand.ts +394 -0
  8. package/src/cli/commands/securityCommand.ts +569 -0
  9. package/src/cli/commands/updateCommand.ts +245 -0
  10. package/src/cli/formatters/outputFormatter.ts +830 -0
  11. package/src/cli/formatters/progressBar.ts +700 -0
  12. package/src/cli/index.ts +565 -0
  13. package/src/cli/interactive/interactivePrompts.ts +517 -0
  14. package/src/cli/options/globalOptions.ts +380 -0
  15. package/src/cli/options/index.ts +5 -0
  16. package/src/cli/themes/colorTheme.ts +379 -0
  17. package/src/cli/validators/commandValidator.ts +395 -0
  18. package/src/cli/validators/index.ts +5 -0
  19. package/src/index.ts +4 -0
  20. package/LICENSE +0 -21
  21. package/README.ja.md +0 -587
  22. package/README.zh-CN.md +0 -634
  23. package/dist/application/services/CatalogUpdateService.d.ts +0 -209
  24. package/dist/application/services/CatalogUpdateService.d.ts.map +0 -1
  25. package/dist/application/services/CatalogUpdateService.js +0 -839
  26. package/dist/application/services/CatalogUpdateService.js.map +0 -1
  27. package/dist/application/services/WorkspaceService.d.ts +0 -139
  28. package/dist/application/services/WorkspaceService.d.ts.map +0 -1
  29. package/dist/application/services/WorkspaceService.js +0 -340
  30. package/dist/application/services/WorkspaceService.js.map +0 -1
  31. package/dist/cli/commands/CheckCommand.d.ts +0 -40
  32. package/dist/cli/commands/CheckCommand.d.ts.map +0 -1
  33. package/dist/cli/commands/CheckCommand.js +0 -177
  34. package/dist/cli/commands/CheckCommand.js.map +0 -1
  35. package/dist/cli/commands/InitCommand.d.ts +0 -53
  36. package/dist/cli/commands/InitCommand.d.ts.map +0 -1
  37. package/dist/cli/commands/InitCommand.js +0 -338
  38. package/dist/cli/commands/InitCommand.js.map +0 -1
  39. package/dist/cli/commands/SecurityCommand.d.ts +0 -113
  40. package/dist/cli/commands/SecurityCommand.d.ts.map +0 -1
  41. package/dist/cli/commands/SecurityCommand.js +0 -410
  42. package/dist/cli/commands/SecurityCommand.js.map +0 -1
  43. package/dist/cli/commands/UpdateCommand.d.ts +0 -44
  44. package/dist/cli/commands/UpdateCommand.d.ts.map +0 -1
  45. package/dist/cli/commands/UpdateCommand.js +0 -189
  46. package/dist/cli/commands/UpdateCommand.js.map +0 -1
  47. package/dist/cli/formatters/OutputFormatter.d.ts +0 -116
  48. package/dist/cli/formatters/OutputFormatter.d.ts.map +0 -1
  49. package/dist/cli/formatters/OutputFormatter.js +0 -664
  50. package/dist/cli/formatters/OutputFormatter.js.map +0 -1
  51. package/dist/cli/formatters/ProgressBar.d.ts +0 -195
  52. package/dist/cli/formatters/ProgressBar.d.ts.map +0 -1
  53. package/dist/cli/formatters/ProgressBar.js +0 -622
  54. package/dist/cli/formatters/ProgressBar.js.map +0 -1
  55. package/dist/cli/index.d.ts +0 -12
  56. package/dist/cli/index.d.ts.map +0 -1
  57. package/dist/cli/index.js +0 -492
  58. package/dist/cli/index.js.map +0 -1
  59. package/dist/cli/interactive/InteractivePrompts.d.ts +0 -85
  60. package/dist/cli/interactive/InteractivePrompts.d.ts.map +0 -1
  61. package/dist/cli/interactive/InteractivePrompts.js +0 -434
  62. package/dist/cli/interactive/InteractivePrompts.js.map +0 -1
  63. package/dist/cli/options/GlobalOptions.d.ts +0 -117
  64. package/dist/cli/options/GlobalOptions.d.ts.map +0 -1
  65. package/dist/cli/options/GlobalOptions.js +0 -278
  66. package/dist/cli/options/GlobalOptions.js.map +0 -1
  67. package/dist/cli/options/index.d.ts +0 -5
  68. package/dist/cli/options/index.d.ts.map +0 -1
  69. package/dist/cli/options/index.js +0 -5
  70. package/dist/cli/options/index.js.map +0 -1
  71. package/dist/cli/themes/ColorTheme.d.ts +0 -211
  72. package/dist/cli/themes/ColorTheme.d.ts.map +0 -1
  73. package/dist/cli/themes/ColorTheme.js +0 -267
  74. package/dist/cli/themes/ColorTheme.js.map +0 -1
  75. package/dist/cli/validators/CommandValidator.d.ts +0 -60
  76. package/dist/cli/validators/CommandValidator.d.ts.map +0 -1
  77. package/dist/cli/validators/CommandValidator.js +0 -319
  78. package/dist/cli/validators/CommandValidator.js.map +0 -1
  79. package/dist/cli/validators/index.d.ts +0 -5
  80. package/dist/cli/validators/index.d.ts.map +0 -1
  81. package/dist/cli/validators/index.js +0 -5
  82. package/dist/cli/validators/index.js.map +0 -1
  83. package/dist/common/config/Config.d.ts +0 -142
  84. package/dist/common/config/Config.d.ts.map +0 -1
  85. package/dist/common/config/Config.js +0 -382
  86. package/dist/common/config/Config.js.map +0 -1
  87. package/dist/common/config/ConfigLoader.d.ts +0 -49
  88. package/dist/common/config/ConfigLoader.d.ts.map +0 -1
  89. package/dist/common/config/ConfigLoader.js +0 -180
  90. package/dist/common/config/ConfigLoader.js.map +0 -1
  91. package/dist/common/config/PackageFilterConfig.d.ts +0 -56
  92. package/dist/common/config/PackageFilterConfig.d.ts.map +0 -1
  93. package/dist/common/config/PackageFilterConfig.js +0 -94
  94. package/dist/common/config/PackageFilterConfig.js.map +0 -1
  95. package/dist/common/config/index.d.ts +0 -8
  96. package/dist/common/config/index.d.ts.map +0 -1
  97. package/dist/common/config/index.js +0 -8
  98. package/dist/common/config/index.js.map +0 -1
  99. package/dist/common/error-handling/ErrorTracker.d.ts +0 -48
  100. package/dist/common/error-handling/ErrorTracker.d.ts.map +0 -1
  101. package/dist/common/error-handling/ErrorTracker.js +0 -93
  102. package/dist/common/error-handling/ErrorTracker.js.map +0 -1
  103. package/dist/common/error-handling/UserFriendlyErrorHandler.d.ts +0 -74
  104. package/dist/common/error-handling/UserFriendlyErrorHandler.d.ts.map +0 -1
  105. package/dist/common/error-handling/UserFriendlyErrorHandler.js +0 -703
  106. package/dist/common/error-handling/UserFriendlyErrorHandler.js.map +0 -1
  107. package/dist/common/error-handling/index.d.ts +0 -11
  108. package/dist/common/error-handling/index.d.ts.map +0 -1
  109. package/dist/common/error-handling/index.js +0 -9
  110. package/dist/common/error-handling/index.js.map +0 -1
  111. package/dist/common/logger/Logger.d.ts +0 -110
  112. package/dist/common/logger/Logger.d.ts.map +0 -1
  113. package/dist/common/logger/Logger.js +0 -289
  114. package/dist/common/logger/Logger.js.map +0 -1
  115. package/dist/common/logger/index.d.ts +0 -6
  116. package/dist/common/logger/index.d.ts.map +0 -1
  117. package/dist/common/logger/index.js +0 -6
  118. package/dist/common/logger/index.js.map +0 -1
  119. package/dist/common/types/cli.d.ts +0 -265
  120. package/dist/common/types/cli.d.ts.map +0 -1
  121. package/dist/common/types/cli.js +0 -5
  122. package/dist/common/types/cli.js.map +0 -1
  123. package/dist/common/types/core.d.ts +0 -270
  124. package/dist/common/types/core.d.ts.map +0 -1
  125. package/dist/common/types/core.js +0 -32
  126. package/dist/common/types/core.js.map +0 -1
  127. package/dist/common/types/index.d.ts +0 -8
  128. package/dist/common/types/index.d.ts.map +0 -1
  129. package/dist/common/types/index.js +0 -8
  130. package/dist/common/types/index.js.map +0 -1
  131. package/dist/common/utils/VersionChecker.d.ts +0 -54
  132. package/dist/common/utils/VersionChecker.d.ts.map +0 -1
  133. package/dist/common/utils/VersionChecker.js +0 -180
  134. package/dist/common/utils/VersionChecker.js.map +0 -1
  135. package/dist/common/utils/async.d.ts +0 -74
  136. package/dist/common/utils/async.d.ts.map +0 -1
  137. package/dist/common/utils/async.js +0 -228
  138. package/dist/common/utils/async.js.map +0 -1
  139. package/dist/common/utils/format.d.ts +0 -32
  140. package/dist/common/utils/format.d.ts.map +0 -1
  141. package/dist/common/utils/format.js +0 -121
  142. package/dist/common/utils/format.js.map +0 -1
  143. package/dist/common/utils/git.d.ts +0 -44
  144. package/dist/common/utils/git.d.ts.map +0 -1
  145. package/dist/common/utils/git.js +0 -147
  146. package/dist/common/utils/git.js.map +0 -1
  147. package/dist/common/utils/index.d.ts +0 -12
  148. package/dist/common/utils/index.d.ts.map +0 -1
  149. package/dist/common/utils/index.js +0 -12
  150. package/dist/common/utils/index.js.map +0 -1
  151. package/dist/common/utils/string.d.ts +0 -56
  152. package/dist/common/utils/string.d.ts.map +0 -1
  153. package/dist/common/utils/string.js +0 -134
  154. package/dist/common/utils/string.js.map +0 -1
  155. package/dist/common/utils/validation.d.ts +0 -88
  156. package/dist/common/utils/validation.d.ts.map +0 -1
  157. package/dist/common/utils/validation.js +0 -308
  158. package/dist/common/utils/validation.js.map +0 -1
  159. package/dist/domain/entities/Catalog.d.ts +0 -117
  160. package/dist/domain/entities/Catalog.d.ts.map +0 -1
  161. package/dist/domain/entities/Catalog.js +0 -240
  162. package/dist/domain/entities/Catalog.js.map +0 -1
  163. package/dist/domain/entities/Package.d.ts +0 -143
  164. package/dist/domain/entities/Package.d.ts.map +0 -1
  165. package/dist/domain/entities/Package.js +0 -272
  166. package/dist/domain/entities/Package.js.map +0 -1
  167. package/dist/domain/entities/Workspace.d.ts +0 -95
  168. package/dist/domain/entities/Workspace.d.ts.map +0 -1
  169. package/dist/domain/entities/Workspace.js +0 -173
  170. package/dist/domain/entities/Workspace.js.map +0 -1
  171. package/dist/domain/repositories/WorkspaceRepository.d.ts +0 -41
  172. package/dist/domain/repositories/WorkspaceRepository.d.ts.map +0 -1
  173. package/dist/domain/repositories/WorkspaceRepository.js +0 -8
  174. package/dist/domain/repositories/WorkspaceRepository.js.map +0 -1
  175. package/dist/domain/value-objects/CatalogCollection.d.ts +0 -106
  176. package/dist/domain/value-objects/CatalogCollection.d.ts.map +0 -1
  177. package/dist/domain/value-objects/CatalogCollection.js +0 -230
  178. package/dist/domain/value-objects/CatalogCollection.js.map +0 -1
  179. package/dist/domain/value-objects/PackageCollection.d.ts +0 -122
  180. package/dist/domain/value-objects/PackageCollection.d.ts.map +0 -1
  181. package/dist/domain/value-objects/PackageCollection.js +0 -263
  182. package/dist/domain/value-objects/PackageCollection.js.map +0 -1
  183. package/dist/domain/value-objects/Version.d.ts +0 -141
  184. package/dist/domain/value-objects/Version.d.ts.map +0 -1
  185. package/dist/domain/value-objects/Version.js +0 -268
  186. package/dist/domain/value-objects/Version.js.map +0 -1
  187. package/dist/domain/value-objects/WorkspaceConfig.d.ts +0 -144
  188. package/dist/domain/value-objects/WorkspaceConfig.d.ts.map +0 -1
  189. package/dist/domain/value-objects/WorkspaceConfig.js +0 -357
  190. package/dist/domain/value-objects/WorkspaceConfig.js.map +0 -1
  191. package/dist/domain/value-objects/WorkspaceId.d.ts +0 -51
  192. package/dist/domain/value-objects/WorkspaceId.d.ts.map +0 -1
  193. package/dist/domain/value-objects/WorkspaceId.js +0 -104
  194. package/dist/domain/value-objects/WorkspaceId.js.map +0 -1
  195. package/dist/domain/value-objects/WorkspacePath.d.ts +0 -75
  196. package/dist/domain/value-objects/WorkspacePath.d.ts.map +0 -1
  197. package/dist/domain/value-objects/WorkspacePath.js +0 -128
  198. package/dist/domain/value-objects/WorkspacePath.js.map +0 -1
  199. package/dist/index.d.ts +0 -25
  200. package/dist/index.d.ts.map +0 -1
  201. package/dist/infrastructure/cache/Cache.d.ts +0 -161
  202. package/dist/infrastructure/cache/Cache.d.ts.map +0 -1
  203. package/dist/infrastructure/cache/Cache.js +0 -398
  204. package/dist/infrastructure/cache/Cache.js.map +0 -1
  205. package/dist/infrastructure/cache/index.d.ts +0 -6
  206. package/dist/infrastructure/cache/index.d.ts.map +0 -1
  207. package/dist/infrastructure/cache/index.js +0 -6
  208. package/dist/infrastructure/cache/index.js.map +0 -1
  209. package/dist/infrastructure/external-services/NpmRegistryService.d.ts +0 -153
  210. package/dist/infrastructure/external-services/NpmRegistryService.d.ts.map +0 -1
  211. package/dist/infrastructure/external-services/NpmRegistryService.js +0 -511
  212. package/dist/infrastructure/external-services/NpmRegistryService.js.map +0 -1
  213. package/dist/infrastructure/file-system/FileSystemService.d.ts +0 -120
  214. package/dist/infrastructure/file-system/FileSystemService.d.ts.map +0 -1
  215. package/dist/infrastructure/file-system/FileSystemService.js +0 -663
  216. package/dist/infrastructure/file-system/FileSystemService.js.map +0 -1
  217. package/dist/infrastructure/repositories/FileWorkspaceRepository.d.ts +0 -57
  218. package/dist/infrastructure/repositories/FileWorkspaceRepository.d.ts.map +0 -1
  219. package/dist/infrastructure/repositories/FileWorkspaceRepository.js +0 -179
  220. package/dist/infrastructure/repositories/FileWorkspaceRepository.js.map +0 -1
  221. package/dist/infrastructure/utils/NpmrcParser.d.ts +0 -40
  222. package/dist/infrastructure/utils/NpmrcParser.d.ts.map +0 -1
  223. package/dist/infrastructure/utils/NpmrcParser.js +0 -157
  224. package/dist/infrastructure/utils/NpmrcParser.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileSystemService.js","sourceRoot":"","sources":["../../../src/infrastructure/file-system/FileSystemService.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- /**
2
- * File-based Workspace Repository Implementation
3
- *
4
- * Implements WorkspaceRepository interface using the file system.
5
- * Handles loading and saving workspace data from pnpm-workspace.yaml and package.json files.
6
- */
7
- import { WorkspaceRepository } from '../../domain/repositories/WorkspaceRepository.js';
8
- import { Workspace } from '../../domain/entities/Workspace.js';
9
- import { WorkspaceId } from '../../domain/value-objects/WorkspaceId.js';
10
- import { WorkspacePath } from '../../domain/value-objects/WorkspacePath.js';
11
- import { WorkspaceConfig } from '../../domain/value-objects/WorkspaceConfig.js';
12
- import { FileSystemService } from '../file-system/FileSystemService.js';
13
- export declare class FileWorkspaceRepository implements WorkspaceRepository {
14
- private readonly fileSystemService;
15
- constructor(fileSystemService: FileSystemService);
16
- /**
17
- * Find a workspace by its path
18
- */
19
- findByPath(path: WorkspacePath): Promise<Workspace | null>;
20
- /**
21
- * Find a workspace by its ID
22
- */
23
- findById(_id: WorkspaceId): Promise<Workspace | null>;
24
- /**
25
- * Save a workspace
26
- */
27
- save(workspace: Workspace): Promise<void>;
28
- /**
29
- * Load workspace configuration from path
30
- */
31
- loadConfiguration(path: WorkspacePath): Promise<WorkspaceConfig>;
32
- /**
33
- * Save workspace configuration to path
34
- */
35
- saveConfiguration(path: WorkspacePath, config: WorkspaceConfig): Promise<void>;
36
- /**
37
- * Check if a path contains a valid pnpm workspace
38
- */
39
- isValidWorkspace(path: WorkspacePath): Promise<boolean>;
40
- /**
41
- * Discover workspace from current working directory or given path
42
- */
43
- discoverWorkspace(searchPath?: WorkspacePath): Promise<Workspace | null>;
44
- /**
45
- * Load packages from workspace
46
- */
47
- private loadPackages;
48
- /**
49
- * Load catalogs from workspace configuration
50
- */
51
- private loadCatalogs;
52
- /**
53
- * Save packages (update their package.json files)
54
- */
55
- private savePackages;
56
- }
57
- //# sourceMappingURL=FileWorkspaceRepository.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileWorkspaceRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/FileWorkspaceRepository.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE,qBAAa,uBAAwB,YAAW,mBAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAAjB,iBAAiB,EAAE,iBAAiB;IAEjE;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IA0BhE;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAM3D;;OAEG;IACG,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAStE;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IASpF;;OAEG;IACG,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAI7D;;OAEG;IACG,iBAAiB,CAAC,UAAU,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAiB9E;;OAEG;YACW,YAAY;IAwC1B;;OAEG;YACW,YAAY;IAsB1B;;OAEG;YACW,YAAY;CAW3B"}
@@ -1,179 +0,0 @@
1
- /**
2
- * File-based Workspace Repository Implementation
3
- *
4
- * Implements WorkspaceRepository interface using the file system.
5
- * Handles loading and saving workspace data from pnpm-workspace.yaml and package.json files.
6
- */
7
- import path from 'path';
8
- import { Workspace } from '../../domain/entities/Workspace.js';
9
- import { Package } from '../../domain/entities/Package.js';
10
- import { Catalog } from '../../domain/entities/Catalog.js';
11
- import { WorkspaceId } from '../../domain/value-objects/WorkspaceId.js';
12
- import { WorkspacePath } from '../../domain/value-objects/WorkspacePath.js';
13
- import { WorkspaceConfig } from '../../domain/value-objects/WorkspaceConfig.js';
14
- import { CatalogCollection } from '../../domain/value-objects/CatalogCollection.js';
15
- import { PackageCollection } from '../../domain/value-objects/PackageCollection.js';
16
- export class FileWorkspaceRepository {
17
- fileSystemService;
18
- constructor(fileSystemService) {
19
- this.fileSystemService = fileSystemService;
20
- }
21
- /**
22
- * Find a workspace by its path
23
- */
24
- async findByPath(path) {
25
- try {
26
- // Check if the path contains a valid workspace
27
- if (!(await this.isValidWorkspace(path))) {
28
- return null;
29
- }
30
- // Load workspace configuration
31
- const config = await this.loadConfiguration(path);
32
- // Create workspace ID from path
33
- const id = WorkspaceId.fromPath(path.toString());
34
- // Load packages
35
- const packages = await this.loadPackages(path, config);
36
- // Load catalogs
37
- const catalogs = await this.loadCatalogs(config);
38
- return Workspace.create(id, path, config, catalogs, packages);
39
- }
40
- catch (error) {
41
- console.error(`Failed to load workspace from ${path.toString()}:`, error);
42
- return null;
43
- }
44
- }
45
- /**
46
- * Find a workspace by its ID
47
- */
48
- async findById(_id) {
49
- // For file-based implementation, we would need to maintain a mapping
50
- // of IDs to paths. For now, this is not implemented.
51
- throw new Error('Finding workspace by ID is not implemented in file-based repository');
52
- }
53
- /**
54
- * Save a workspace
55
- */
56
- async save(workspace) {
57
- try {
58
- // Save workspace configuration
59
- await this.saveConfiguration(workspace.getPath(), workspace.getConfig());
60
- // Save packages (update their package.json files)
61
- await this.savePackages(workspace.getPackages());
62
- }
63
- catch (error) {
64
- throw new Error(`Failed to save workspace: ${error}`);
65
- }
66
- }
67
- /**
68
- * Load workspace configuration from path
69
- */
70
- async loadConfiguration(path) {
71
- try {
72
- const workspaceData = await this.fileSystemService.readPnpmWorkspaceConfig(path);
73
- return WorkspaceConfig.fromWorkspaceData(workspaceData);
74
- }
75
- catch (error) {
76
- throw new Error(`Failed to load workspace configuration from ${path.toString()}: ${error}`);
77
- }
78
- }
79
- /**
80
- * Save workspace configuration to path
81
- */
82
- async saveConfiguration(path, config) {
83
- try {
84
- const workspaceData = config.toPnpmWorkspaceData();
85
- await this.fileSystemService.writePnpmWorkspaceConfig(path, workspaceData);
86
- }
87
- catch (error) {
88
- throw new Error(`Failed to save workspace configuration to ${path.toString()}: ${error}`);
89
- }
90
- }
91
- /**
92
- * Check if a path contains a valid pnpm workspace
93
- */
94
- async isValidWorkspace(path) {
95
- return await this.fileSystemService.isPnpmWorkspace(path.toString());
96
- }
97
- /**
98
- * Discover workspace from current working directory or given path
99
- */
100
- async discoverWorkspace(searchPath) {
101
- const startPath = searchPath?.toString() || process.cwd();
102
- try {
103
- const workspacePath = await this.fileSystemService.findNearestWorkspace(startPath);
104
- if (!workspacePath) {
105
- return null;
106
- }
107
- return await this.findByPath(WorkspacePath.fromString(workspacePath));
108
- }
109
- catch (error) {
110
- console.error(`Failed to discover workspace from ${startPath}:`, error);
111
- return null;
112
- }
113
- }
114
- /**
115
- * Load packages from workspace
116
- */
117
- async loadPackages(workspacePath, config) {
118
- try {
119
- const packagePatterns = config.getPackagePatterns();
120
- // Find all package.json files matching the patterns
121
- const packageJsonFiles = await this.fileSystemService.findPackageJsonFiles(workspacePath, packagePatterns);
122
- const packages = [];
123
- for (const packageJsonPath of packageJsonFiles) {
124
- try {
125
- const packageDir = path.dirname(packageJsonPath);
126
- const packagePath = WorkspacePath.fromString(packageDir);
127
- // Read package.json
128
- const packageData = await this.fileSystemService.readPackageJson(packagePath);
129
- // Create package
130
- const packageId = `${packageData.name}-${packageDir}`;
131
- const pkg = Package.create(packageId, packageData.name, packagePath, packageData);
132
- packages.push(pkg);
133
- }
134
- catch (error) {
135
- console.warn(`Failed to load package from ${packageJsonPath}:`, error);
136
- // Continue with other packages
137
- }
138
- }
139
- return PackageCollection.fromPackages(packages);
140
- }
141
- catch (error) {
142
- throw new Error(`Failed to load packages: ${error}`);
143
- }
144
- }
145
- /**
146
- * Load catalogs from workspace configuration
147
- */
148
- async loadCatalogs(config) {
149
- try {
150
- const catalogs = [];
151
- const catalogDefinitions = config.getCatalogDefinitions();
152
- for (const [catalogName, catalogDef] of catalogDefinitions) {
153
- const catalogId = `catalog-${catalogName}`;
154
- const catalog = Catalog.create(catalogId, catalogName, catalogDef.getDependencies(), config.getCatalogMode());
155
- catalogs.push(catalog);
156
- }
157
- return CatalogCollection.fromCatalogs(catalogs);
158
- }
159
- catch (error) {
160
- throw new Error(`Failed to load catalogs: ${error}`);
161
- }
162
- }
163
- /**
164
- * Save packages (update their package.json files)
165
- */
166
- async savePackages(packages) {
167
- for (const pkg of packages.getAll()) {
168
- try {
169
- const packageData = pkg.toPackageJsonData();
170
- await this.fileSystemService.writePackageJson(pkg.getPath(), packageData);
171
- }
172
- catch (error) {
173
- console.error(`Failed to save package ${pkg.getName()}:`, error);
174
- // Continue with other packages
175
- }
176
- }
177
- }
178
- }
179
- //# sourceMappingURL=FileWorkspaceRepository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileWorkspaceRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/FileWorkspaceRepository.ts"],"names":[],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- /**
2
- * NPM/PNPM Configuration Parser
3
- *
4
- * Reads and parses .npmrc and .pnpmrc configuration files to extract registry settings
5
- * for different package scopes. Supports both npm and pnpm configuration formats.
6
- */
7
- export interface NpmrcConfig {
8
- registry: string;
9
- scopedRegistries: Map<string, string>;
10
- authTokens: Map<string, string>;
11
- config: Map<string, string>;
12
- }
13
- export declare class NpmrcParser {
14
- private static readonly DEFAULT_REGISTRY;
15
- /**
16
- * Parse .npmrc/.pnpmrc configuration from multiple sources
17
- */
18
- static parse(workingDirectory?: string, includeGlobal?: boolean): NpmrcConfig;
19
- /**
20
- * Parse a single .npmrc file
21
- */
22
- private static parseFile;
23
- /**
24
- * Parse npm configuration from environment variables
25
- */
26
- private static parseEnvironment;
27
- /**
28
- * Get the appropriate registry URL for a package
29
- */
30
- static getRegistryForPackage(packageName: string, config: NpmrcConfig): string;
31
- /**
32
- * Normalize registry URL to ensure it has a trailing slash
33
- */
34
- private static normalizeRegistryUrl;
35
- /**
36
- * Get auth token for a registry
37
- */
38
- static getAuthToken(registryUrl: string, config: NpmrcConfig): string | undefined;
39
- }
40
- //# sourceMappingURL=NpmrcParser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NpmrcParser.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/utils/NpmrcParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,WAAW;IAE1B,QAAQ,EAAE,MAAM,CAAC;IAEjB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAiC;IAEzE;;OAEG;IACH,MAAM,CAAC,KAAK,CACV,gBAAgB,GAAE,MAAsB,EACxC,aAAa,GAAE,OAAc,GAC5B,WAAW;IAiCd;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAiDxB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAwB/B;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM;IAmB9E;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAYnC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;CAQlF"}
@@ -1,157 +0,0 @@
1
- /**
2
- * NPM/PNPM Configuration Parser
3
- *
4
- * Reads and parses .npmrc and .pnpmrc configuration files to extract registry settings
5
- * for different package scopes. Supports both npm and pnpm configuration formats.
6
- */
7
- import { existsSync, readFileSync } from 'fs';
8
- import { join } from 'path';
9
- import { homedir } from 'os';
10
- export class NpmrcParser {
11
- static DEFAULT_REGISTRY = 'https://registry.npmjs.org/';
12
- /**
13
- * Parse .npmrc/.pnpmrc configuration from multiple sources
14
- */
15
- static parse(workingDirectory = process.cwd(), includeGlobal = true) {
16
- const config = {
17
- registry: this.DEFAULT_REGISTRY,
18
- scopedRegistries: new Map(),
19
- authTokens: new Map(),
20
- config: new Map(),
21
- };
22
- // Load config files in order of precedence (later files override earlier)
23
- // Priority: project .pnpmrc > project .npmrc > global .pnpmrc > global .npmrc
24
- const configPaths = [];
25
- // Only include global configs if requested (for production use)
26
- if (includeGlobal) {
27
- configPaths.push(join(homedir(), '.npmrc')); // Global npmrc (lowest priority)
28
- configPaths.push(join(homedir(), '.pnpmrc')); // Global pnpmrc
29
- }
30
- configPaths.push(join(workingDirectory, '.npmrc')); // Project npmrc
31
- configPaths.push(join(workingDirectory, '.pnpmrc')); // Project pnpmrc (highest priority)
32
- for (const configPath of configPaths) {
33
- if (existsSync(configPath)) {
34
- this.parseFile(configPath, config);
35
- }
36
- }
37
- // Also check for environment variables (skip in tests if includeGlobal is false)
38
- this.parseEnvironment(config, includeGlobal);
39
- return config;
40
- }
41
- /**
42
- * Parse a single .npmrc file
43
- */
44
- static parseFile(filepath, config) {
45
- try {
46
- const content = readFileSync(filepath, 'utf-8');
47
- const lines = content.split('\n');
48
- for (const line of lines) {
49
- const trimmedLine = line.trim();
50
- // Skip comments and empty lines
51
- if (!trimmedLine || trimmedLine.startsWith('#') || trimmedLine.startsWith(';')) {
52
- continue;
53
- }
54
- // Parse key=value pairs
55
- const separatorIndex = trimmedLine.indexOf('=');
56
- if (separatorIndex === -1)
57
- continue;
58
- const key = trimmedLine.substring(0, separatorIndex).trim();
59
- const value = trimmedLine.substring(separatorIndex + 1).trim();
60
- // Handle scoped registries (e.g., @mycompany:registry=https://npm.mycompany.com/)
61
- if (key.includes(':registry')) {
62
- const scope = key.replace(':registry', '');
63
- config.scopedRegistries.set(scope, this.normalizeRegistryUrl(value));
64
- }
65
- // Handle default registry
66
- else if (key === 'registry') {
67
- config.registry = this.normalizeRegistryUrl(value);
68
- }
69
- // Handle auth tokens (e.g., //registry.npmjs.org/:_authToken=...)
70
- else if (key.includes(':_authToken') || key.includes('_authToken')) {
71
- // Extract registry URL from the key
72
- const match = key.match(/\/\/(.*?)\/:/);
73
- if (match && match[1]) {
74
- const registryHost = match[1];
75
- config.authTokens.set(registryHost, value);
76
- }
77
- }
78
- // Store other config values
79
- else {
80
- config.config.set(key, value);
81
- }
82
- }
83
- }
84
- catch (error) {
85
- // Silently ignore errors reading npmrc files
86
- console.debug(`Failed to parse npmrc file ${filepath}:`, error);
87
- }
88
- }
89
- /**
90
- * Parse npm configuration from environment variables
91
- */
92
- static parseEnvironment(config, includeEnv = true) {
93
- if (!includeEnv) {
94
- return; // Skip environment parsing in tests
95
- }
96
- // Check for npm_config_registry
97
- if (process.env.npm_config_registry) {
98
- config.registry = this.normalizeRegistryUrl(process.env.npm_config_registry);
99
- }
100
- // Check for scoped registries in environment
101
- for (const [key, value] of Object.entries(process.env)) {
102
- if (key.startsWith('npm_config_') && key.includes('_registry')) {
103
- // Extract scope from environment variable name
104
- // e.g., npm_config_@mycompany_registry -> @mycompany
105
- const match = key.match(/npm_config_(.+)_registry/);
106
- if (match && match[1] && value) {
107
- const scope = match[1].replace(/_/g, '/').replace(/\//, '@');
108
- config.scopedRegistries.set(scope, this.normalizeRegistryUrl(value));
109
- }
110
- }
111
- }
112
- }
113
- /**
114
- * Get the appropriate registry URL for a package
115
- */
116
- static getRegistryForPackage(packageName, config) {
117
- // Check if package has a scope (e.g., @mycompany/package)
118
- if (packageName.startsWith('@')) {
119
- const scopeEnd = packageName.indexOf('/');
120
- if (scopeEnd !== -1) {
121
- const scope = packageName.substring(0, scopeEnd);
122
- // Check if we have a scoped registry for this scope
123
- const scopedRegistry = config.scopedRegistries.get(scope);
124
- if (scopedRegistry) {
125
- return scopedRegistry;
126
- }
127
- }
128
- }
129
- // Fall back to default registry
130
- return config.registry;
131
- }
132
- /**
133
- * Normalize registry URL to ensure it has a trailing slash
134
- */
135
- static normalizeRegistryUrl(url) {
136
- // Remove any quotes that might be in the config
137
- url = url.replace(/^["']|["']$/g, '');
138
- // Ensure trailing slash
139
- if (!url.endsWith('/')) {
140
- url += '/';
141
- }
142
- return url;
143
- }
144
- /**
145
- * Get auth token for a registry
146
- */
147
- static getAuthToken(registryUrl, config) {
148
- try {
149
- const url = new URL(registryUrl);
150
- return config.authTokens.get(url.hostname);
151
- }
152
- catch {
153
- return undefined;
154
- }
155
- }
156
- }
157
- //# sourceMappingURL=NpmrcParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NpmrcParser.js","sourceRoot":"","sources":["../../../src/infrastructure/utils/NpmrcParser.ts"],"names":[],"mappings":"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"}