@depup/angular__cli 21.2.1-depup.1

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 (364) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +36 -0
  3. package/bin/bootstrap.js +33 -0
  4. package/bin/ng.js +71 -0
  5. package/bin/package.json +3 -0
  6. package/changes.json +30 -0
  7. package/lib/cli/index.d.ts +11 -0
  8. package/lib/cli/index.js +109 -0
  9. package/lib/cli/index.js.map +1 -0
  10. package/lib/code-examples.db +0 -0
  11. package/lib/config/schema.json +6150 -0
  12. package/lib/config/workspace-schema.d.ts +1025 -0
  13. package/lib/config/workspace-schema.js +133 -0
  14. package/lib/config/workspace-schema.js.map +1 -0
  15. package/lib/init.d.ts +8 -0
  16. package/lib/init.js +162 -0
  17. package/lib/init.js.map +1 -0
  18. package/package.json +103 -0
  19. package/src/analytics/analytics-collector.d.ts +35 -0
  20. package/src/analytics/analytics-collector.js +195 -0
  21. package/src/analytics/analytics-collector.js.map +1 -0
  22. package/src/analytics/analytics-parameters.d.ts +101 -0
  23. package/src/analytics/analytics-parameters.js +107 -0
  24. package/src/analytics/analytics-parameters.js.map +1 -0
  25. package/src/analytics/analytics.d.ts +27 -0
  26. package/src/analytics/analytics.js +183 -0
  27. package/src/analytics/analytics.js.map +1 -0
  28. package/src/command-builder/architect-base-command-module.d.ts +30 -0
  29. package/src/command-builder/architect-base-command-module.js +244 -0
  30. package/src/command-builder/architect-base-command-module.js.map +1 -0
  31. package/src/command-builder/architect-command-module.d.ts +28 -0
  32. package/src/command-builder/architect-command-module.js +218 -0
  33. package/src/command-builder/architect-command-module.js.map +1 -0
  34. package/src/command-builder/command-module.d.ts +73 -0
  35. package/src/command-builder/command-module.js +245 -0
  36. package/src/command-builder/command-module.js.map +1 -0
  37. package/src/command-builder/command-runner.d.ts +9 -0
  38. package/src/command-builder/command-runner.js +195 -0
  39. package/src/command-builder/command-runner.js.map +1 -0
  40. package/src/command-builder/definitions.d.ts +41 -0
  41. package/src/command-builder/definitions.js +20 -0
  42. package/src/command-builder/definitions.js.map +1 -0
  43. package/src/command-builder/schematics-command-module.d.ts +41 -0
  44. package/src/command-builder/schematics-command-module.js +408 -0
  45. package/src/command-builder/schematics-command-module.js.map +1 -0
  46. package/src/command-builder/utilities/command.d.ts +13 -0
  47. package/src/command-builder/utilities/command.js +39 -0
  48. package/src/command-builder/utilities/command.js.map +1 -0
  49. package/src/command-builder/utilities/json-help.d.ts +37 -0
  50. package/src/command-builder/utilities/json-help.js +92 -0
  51. package/src/command-builder/utilities/json-help.js.map +1 -0
  52. package/src/command-builder/utilities/json-schema.d.ts +64 -0
  53. package/src/command-builder/utilities/json-schema.js +349 -0
  54. package/src/command-builder/utilities/json-schema.js.map +1 -0
  55. package/src/command-builder/utilities/normalize-options-middleware.d.ts +18 -0
  56. package/src/command-builder/utilities/normalize-options-middleware.js +37 -0
  57. package/src/command-builder/utilities/normalize-options-middleware.js.map +1 -0
  58. package/src/command-builder/utilities/schematic-engine-host.d.ts +15 -0
  59. package/src/command-builder/utilities/schematic-engine-host.js +179 -0
  60. package/src/command-builder/utilities/schematic-engine-host.js.map +1 -0
  61. package/src/command-builder/utilities/schematic-workflow.d.ts +14 -0
  62. package/src/command-builder/utilities/schematic-workflow.js +70 -0
  63. package/src/command-builder/utilities/schematic-workflow.js.map +1 -0
  64. package/src/commands/add/cli.d.ts +38 -0
  65. package/src/commands/add/cli.js +623 -0
  66. package/src/commands/add/cli.js.map +1 -0
  67. package/src/commands/add/long-description.md +7 -0
  68. package/src/commands/analytics/cli.d.ts +16 -0
  69. package/src/commands/analytics/cli.js +34 -0
  70. package/src/commands/analytics/cli.js.map +1 -0
  71. package/src/commands/analytics/info/cli.d.ts +16 -0
  72. package/src/commands/analytics/info/cli.js +25 -0
  73. package/src/commands/analytics/info/cli.js.map +1 -0
  74. package/src/commands/analytics/long-description.md +20 -0
  75. package/src/commands/analytics/settings/cli.d.ts +35 -0
  76. package/src/commands/analytics/settings/cli.js +54 -0
  77. package/src/commands/analytics/settings/cli.js.map +1 -0
  78. package/src/commands/build/cli.d.ts +16 -0
  79. package/src/commands/build/cli.js +21 -0
  80. package/src/commands/build/cli.js.map +1 -0
  81. package/src/commands/build/long-description.md +18 -0
  82. package/src/commands/cache/clean/cli.d.ts +17 -0
  83. package/src/commands/cache/clean/cli.js +32 -0
  84. package/src/commands/cache/clean/cli.js.map +1 -0
  85. package/src/commands/cache/cli.d.ts +17 -0
  86. package/src/commands/cache/cli.js +36 -0
  87. package/src/commands/cache/cli.js.map +1 -0
  88. package/src/commands/cache/info/cli.d.ts +20 -0
  89. package/src/commands/cache/info/cli.js +139 -0
  90. package/src/commands/cache/info/cli.js.map +1 -0
  91. package/src/commands/cache/long-description.md +53 -0
  92. package/src/commands/cache/settings/cli.d.ts +27 -0
  93. package/src/commands/cache/settings/cli.js +41 -0
  94. package/src/commands/cache/settings/cli.js.map +1 -0
  95. package/src/commands/cache/utilities.d.ts +11 -0
  96. package/src/commands/cache/utilities.js +47 -0
  97. package/src/commands/cache/utilities.js.map +1 -0
  98. package/src/commands/command-config.d.ts +17 -0
  99. package/src/commands/command-config.js +116 -0
  100. package/src/commands/command-config.js.map +1 -0
  101. package/src/commands/completion/cli.d.ts +16 -0
  102. package/src/commands/completion/cli.js +61 -0
  103. package/src/commands/completion/cli.js.map +1 -0
  104. package/src/commands/completion/long-description.md +67 -0
  105. package/src/commands/config/cli.d.ts +24 -0
  106. package/src/commands/config/cli.js +150 -0
  107. package/src/commands/config/cli.js.map +1 -0
  108. package/src/commands/config/long-description.md +13 -0
  109. package/src/commands/deploy/cli.d.ts +17 -0
  110. package/src/commands/deploy/cli.js +38 -0
  111. package/src/commands/deploy/cli.js.map +1 -0
  112. package/src/commands/deploy/long-description.md +22 -0
  113. package/src/commands/e2e/cli.d.ts +18 -0
  114. package/src/commands/e2e/cli.js +42 -0
  115. package/src/commands/e2e/cli.js.map +1 -0
  116. package/src/commands/extract-i18n/cli.d.ts +17 -0
  117. package/src/commands/extract-i18n/cli.js +48 -0
  118. package/src/commands/extract-i18n/cli.js.map +1 -0
  119. package/src/commands/generate/cli.d.ts +47 -0
  120. package/src/commands/generate/cli.js +189 -0
  121. package/src/commands/generate/cli.js.map +1 -0
  122. package/src/commands/lint/cli.d.ts +17 -0
  123. package/src/commands/lint/cli.js +25 -0
  124. package/src/commands/lint/cli.js.map +1 -0
  125. package/src/commands/lint/long-description.md +20 -0
  126. package/src/commands/make-this-awesome/cli.d.ts +17 -0
  127. package/src/commands/make-this-awesome/cli.js +36 -0
  128. package/src/commands/make-this-awesome/cli.js.map +1 -0
  129. package/src/commands/mcp/cli.d.ts +20 -0
  130. package/src/commands/mcp/cli.js +74 -0
  131. package/src/commands/mcp/cli.js.map +1 -0
  132. package/src/commands/mcp/constants.d.ts +10 -0
  133. package/src/commands/mcp/constants.js +16 -0
  134. package/src/commands/mcp/constants.js.map +1 -0
  135. package/src/commands/mcp/devserver.d.ts +85 -0
  136. package/src/commands/mcp/devserver.js +112 -0
  137. package/src/commands/mcp/devserver.js.map +1 -0
  138. package/src/commands/mcp/host.d.ts +97 -0
  139. package/src/commands/mcp/host.js +118 -0
  140. package/src/commands/mcp/host.js.map +1 -0
  141. package/src/commands/mcp/mcp-server.d.ts +192 -0
  142. package/src/commands/mcp/mcp-server.js +155 -0
  143. package/src/commands/mcp/mcp-server.js.map +1 -0
  144. package/src/commands/mcp/resources/ai-tutor.md +824 -0
  145. package/src/commands/mcp/resources/best-practices.md +54 -0
  146. package/src/commands/mcp/resources/instructions.d.ts +9 -0
  147. package/src/commands/mcp/resources/instructions.js +26 -0
  148. package/src/commands/mcp/resources/instructions.js.map +1 -0
  149. package/src/commands/mcp/shared-options.d.ts +12 -0
  150. package/src/commands/mcp/shared-options.js +22 -0
  151. package/src/commands/mcp/shared-options.js.map +1 -0
  152. package/src/commands/mcp/tools/ai-tutor.d.ts +12 -0
  153. package/src/commands/mcp/tools/ai-tutor.js +59 -0
  154. package/src/commands/mcp/tools/ai-tutor.js.map +1 -0
  155. package/src/commands/mcp/tools/best-practices.d.ts +13 -0
  156. package/src/commands/mcp/tools/best-practices.js +187 -0
  157. package/src/commands/mcp/tools/best-practices.js.map +1 -0
  158. package/src/commands/mcp/tools/build.d.ts +37 -0
  159. package/src/commands/mcp/tools/build.js +89 -0
  160. package/src/commands/mcp/tools/build.js.map +1 -0
  161. package/src/commands/mcp/tools/devserver/devserver-start.d.ts +31 -0
  162. package/src/commands/mcp/tools/devserver/devserver-start.js +91 -0
  163. package/src/commands/mcp/tools/devserver/devserver-start.js.map +1 -0
  164. package/src/commands/mcp/tools/devserver/devserver-stop.d.ts +31 -0
  165. package/src/commands/mcp/tools/devserver/devserver-stop.js +68 -0
  166. package/src/commands/mcp/tools/devserver/devserver-stop.js.map +1 -0
  167. package/src/commands/mcp/tools/devserver/devserver-wait-for-build.d.ts +41 -0
  168. package/src/commands/mcp/tools/devserver/devserver-wait-for-build.js +104 -0
  169. package/src/commands/mcp/tools/devserver/devserver-wait-for-build.js.map +1 -0
  170. package/src/commands/mcp/tools/doc-search.d.ts +21 -0
  171. package/src/commands/mcp/tools/doc-search.js +324 -0
  172. package/src/commands/mcp/tools/doc-search.js.map +1 -0
  173. package/src/commands/mcp/tools/e2e.d.ts +44 -0
  174. package/src/commands/mcp/tools/e2e.js +87 -0
  175. package/src/commands/mcp/tools/e2e.js.map +1 -0
  176. package/src/commands/mcp/tools/examples/database-discovery.d.ts +34 -0
  177. package/src/commands/mcp/tools/examples/database-discovery.js +87 -0
  178. package/src/commands/mcp/tools/examples/database-discovery.js.map +1 -0
  179. package/src/commands/mcp/tools/examples/database.d.ts +35 -0
  180. package/src/commands/mcp/tools/examples/database.js +125 -0
  181. package/src/commands/mcp/tools/examples/database.js.map +1 -0
  182. package/src/commands/mcp/tools/examples/index.d.ts +26 -0
  183. package/src/commands/mcp/tools/examples/index.js +149 -0
  184. package/src/commands/mcp/tools/examples/index.js.map +1 -0
  185. package/src/commands/mcp/tools/examples/query-escaper.d.ts +20 -0
  186. package/src/commands/mcp/tools/examples/query-escaper.js +68 -0
  187. package/src/commands/mcp/tools/examples/query-escaper.js.map +1 -0
  188. package/src/commands/mcp/tools/examples/runtime-database.d.ts +10 -0
  189. package/src/commands/mcp/tools/examples/runtime-database.js +192 -0
  190. package/src/commands/mcp/tools/examples/runtime-database.js.map +1 -0
  191. package/src/commands/mcp/tools/examples/schemas.d.ts +29 -0
  192. package/src/commands/mcp/tools/examples/schemas.js +101 -0
  193. package/src/commands/mcp/tools/examples/schemas.js.map +1 -0
  194. package/src/commands/mcp/tools/examples/utils.d.ts +14 -0
  195. package/src/commands/mcp/tools/examples/utils.js +31 -0
  196. package/src/commands/mcp/tools/examples/utils.js.map +1 -0
  197. package/src/commands/mcp/tools/modernize.d.ts +43 -0
  198. package/src/commands/mcp/tools/modernize.js +165 -0
  199. package/src/commands/mcp/tools/modernize.js.map +1 -0
  200. package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.d.ts +17 -0
  201. package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.js +62 -0
  202. package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.js.map +1 -0
  203. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.d.ts +12 -0
  204. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.js +73 -0
  205. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.js.map +1 -0
  206. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.d.ts +11 -0
  207. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.js +60 -0
  208. package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.js.map +1 -0
  209. package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.d.ts +15 -0
  210. package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.js +238 -0
  211. package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.js.map +1 -0
  212. package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.d.ts +10 -0
  213. package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.js +20 -0
  214. package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.js.map +1 -0
  215. package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.d.ts +35 -0
  216. package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.js +136 -0
  217. package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.js.map +1 -0
  218. package/src/commands/mcp/tools/onpush-zoneless-migration/types.d.ts +13 -0
  219. package/src/commands/mcp/tools/onpush-zoneless-migration/types.js +10 -0
  220. package/src/commands/mcp/tools/onpush-zoneless-migration/types.js.map +1 -0
  221. package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.d.ts +16 -0
  222. package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.js +224 -0
  223. package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.js.map +1 -0
  224. package/src/commands/mcp/tools/projects.d.ts +47 -0
  225. package/src/commands/mcp/tools/projects.js +523 -0
  226. package/src/commands/mcp/tools/projects.js.map +1 -0
  227. package/src/commands/mcp/tools/test.d.ts +35 -0
  228. package/src/commands/mcp/tools/test.js +79 -0
  229. package/src/commands/mcp/tools/test.js.map +1 -0
  230. package/src/commands/mcp/tools/tool-registry.d.ts +39 -0
  231. package/src/commands/mcp/tools/tool-registry.js +35 -0
  232. package/src/commands/mcp/tools/tool-registry.js.map +1 -0
  233. package/src/commands/mcp/utils.d.ts +25 -0
  234. package/src/commands/mcp/utils.js +44 -0
  235. package/src/commands/mcp/utils.js.map +1 -0
  236. package/src/commands/mcp/workspace-utils.d.ts +53 -0
  237. package/src/commands/mcp/workspace-utils.js +138 -0
  238. package/src/commands/mcp/workspace-utils.js.map +1 -0
  239. package/src/commands/new/cli.d.ts +27 -0
  240. package/src/commands/new/cli.js +76 -0
  241. package/src/commands/new/cli.js.map +1 -0
  242. package/src/commands/new/long-description.md +15 -0
  243. package/src/commands/run/cli.d.ts +25 -0
  244. package/src/commands/run/cli.js +89 -0
  245. package/src/commands/run/cli.js.map +1 -0
  246. package/src/commands/run/long-description.md +10 -0
  247. package/src/commands/serve/cli.d.ts +16 -0
  248. package/src/commands/serve/cli.js +20 -0
  249. package/src/commands/serve/cli.js.map +1 -0
  250. package/src/commands/test/cli.d.ts +16 -0
  251. package/src/commands/test/cli.js +21 -0
  252. package/src/commands/test/cli.js.map +1 -0
  253. package/src/commands/test/long-description.md +2 -0
  254. package/src/commands/update/cli.d.ts +34 -0
  255. package/src/commands/update/cli.js +531 -0
  256. package/src/commands/update/cli.js.map +1 -0
  257. package/src/commands/update/long-description.md +22 -0
  258. package/src/commands/update/schematic/collection.json +9 -0
  259. package/src/commands/update/schematic/index.d.ts +11 -0
  260. package/src/commands/update/schematic/index.js +715 -0
  261. package/src/commands/update/schematic/index.js.map +1 -0
  262. package/src/commands/update/schematic/schema.d.ts +51 -0
  263. package/src/commands/update/schematic/schema.js +16 -0
  264. package/src/commands/update/schematic/schema.js.map +1 -0
  265. package/src/commands/update/schematic/schema.json +64 -0
  266. package/src/commands/update/utilities/cli-version.d.ts +48 -0
  267. package/src/commands/update/utilities/cli-version.js +196 -0
  268. package/src/commands/update/utilities/cli-version.js.map +1 -0
  269. package/src/commands/update/utilities/constants.d.ts +12 -0
  270. package/src/commands/update/utilities/constants.js +16 -0
  271. package/src/commands/update/utilities/constants.js.map +1 -0
  272. package/src/commands/update/utilities/git.d.ts +36 -0
  273. package/src/commands/update/utilities/git.js +148 -0
  274. package/src/commands/update/utilities/git.js.map +1 -0
  275. package/src/commands/update/utilities/migration.d.ts +32 -0
  276. package/src/commands/update/utilities/migration.js +267 -0
  277. package/src/commands/update/utilities/migration.js.map +1 -0
  278. package/src/commands/version/cli.d.ts +36 -0
  279. package/src/commands/version/cli.js +117 -0
  280. package/src/commands/version/cli.js.map +1 -0
  281. package/src/commands/version/version-info.d.ts +46 -0
  282. package/src/commands/version/version-info.js +107 -0
  283. package/src/commands/version/version-info.js.map +1 -0
  284. package/src/package-managers/discovery.d.ts +23 -0
  285. package/src/package-managers/discovery.js +104 -0
  286. package/src/package-managers/discovery.js.map +1 -0
  287. package/src/package-managers/error.d.ts +43 -0
  288. package/src/package-managers/error.js +41 -0
  289. package/src/package-managers/error.js.map +1 -0
  290. package/src/package-managers/factory.d.ts +30 -0
  291. package/src/package-managers/factory.js +137 -0
  292. package/src/package-managers/factory.js.map +1 -0
  293. package/src/package-managers/host.d.ts +86 -0
  294. package/src/package-managers/host.js +80 -0
  295. package/src/package-managers/host.js.map +1 -0
  296. package/src/package-managers/index.d.ts +13 -0
  297. package/src/package-managers/index.js +17 -0
  298. package/src/package-managers/index.js.map +1 -0
  299. package/src/package-managers/logger.d.ts +27 -0
  300. package/src/package-managers/logger.js +10 -0
  301. package/src/package-managers/logger.js.map +1 -0
  302. package/src/package-managers/package-manager-descriptor.d.ts +245 -0
  303. package/src/package-managers/package-manager-descriptor.js +175 -0
  304. package/src/package-managers/package-manager-descriptor.js.map +1 -0
  305. package/src/package-managers/package-manager.d.ts +191 -0
  306. package/src/package-managers/package-manager.js +496 -0
  307. package/src/package-managers/package-manager.js.map +1 -0
  308. package/src/package-managers/package-metadata.d.ts +91 -0
  309. package/src/package-managers/package-metadata.js +10 -0
  310. package/src/package-managers/package-metadata.js.map +1 -0
  311. package/src/package-managers/package-tree.d.ts +23 -0
  312. package/src/package-managers/package-tree.js +10 -0
  313. package/src/package-managers/package-tree.js.map +1 -0
  314. package/src/package-managers/parsers.d.ts +170 -0
  315. package/src/package-managers/parsers.js +467 -0
  316. package/src/package-managers/parsers.js.map +1 -0
  317. package/src/utilities/color.d.ts +9 -0
  318. package/src/utilities/color.js +28 -0
  319. package/src/utilities/color.js.map +1 -0
  320. package/src/utilities/completion.d.ts +30 -0
  321. package/src/utilities/completion.js +270 -0
  322. package/src/utilities/completion.js.map +1 -0
  323. package/src/utilities/config.d.ts +38 -0
  324. package/src/utilities/config.js +369 -0
  325. package/src/utilities/config.js.map +1 -0
  326. package/src/utilities/environment-options.d.ts +25 -0
  327. package/src/utilities/environment-options.js +60 -0
  328. package/src/utilities/environment-options.js.map +1 -0
  329. package/src/utilities/eol.d.ts +20 -0
  330. package/src/utilities/eol.js +35 -0
  331. package/src/utilities/eol.js.map +1 -0
  332. package/src/utilities/error.d.ts +18 -0
  333. package/src/utilities/error.js +41 -0
  334. package/src/utilities/error.js.map +1 -0
  335. package/src/utilities/find-up.d.ts +21 -0
  336. package/src/utilities/find-up.js +67 -0
  337. package/src/utilities/find-up.js.map +1 -0
  338. package/src/utilities/json-file.d.ts +24 -0
  339. package/src/utilities/json-file.js +179 -0
  340. package/src/utilities/json-file.js.map +1 -0
  341. package/src/utilities/log-file.d.ts +13 -0
  342. package/src/utilities/log-file.js +28 -0
  343. package/src/utilities/log-file.js.map +1 -0
  344. package/src/utilities/memoize.d.ts +15 -0
  345. package/src/utilities/memoize.js +64 -0
  346. package/src/utilities/memoize.js.map +1 -0
  347. package/src/utilities/package-metadata.d.ts +58 -0
  348. package/src/utilities/package-metadata.js +265 -0
  349. package/src/utilities/package-metadata.js.map +1 -0
  350. package/src/utilities/prettier.d.ts +13 -0
  351. package/src/utilities/prettier.js +46 -0
  352. package/src/utilities/prettier.js.map +1 -0
  353. package/src/utilities/project.d.ts +8 -0
  354. package/src/utilities/project.js +81 -0
  355. package/src/utilities/project.js.map +1 -0
  356. package/src/utilities/prompt.d.ts +17 -0
  357. package/src/utilities/prompt.js +90 -0
  358. package/src/utilities/prompt.js.map +1 -0
  359. package/src/utilities/tty.d.ts +16 -0
  360. package/src/utilities/tty.js +23 -0
  361. package/src/utilities/tty.js.map +1 -0
  362. package/src/utilities/version.d.ts +16 -0
  363. package/src/utilities/version.js +26 -0
  364. package/src/utilities/version.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,6FAAwF;AAExF,sDAAiD;AAEjD,MAAqB,kBACnB,SAAQ,iDAAsB;IAG9B,WAAW,GAAG,KAAK,CAAC;IACpB,OAAO,GAAG,iBAAiB,CAAC;IAC5B,OAAO,GAAG,6BAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;IACxC,QAAQ,GAAG,iEAAiE,CAAC;IAC7E,mBAAmB,CAAsB;CAC1C;AATD,qCASC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import { ArchitectCommandModule } from '../../command-builder/architect-command-module';
9
+ import { CommandModuleImplementation } from '../../command-builder/command-module';
10
+ export default class TestCommandModule extends ArchitectCommandModule implements CommandModuleImplementation {
11
+ multiTarget: boolean;
12
+ command: string;
13
+ aliases: string[] | undefined;
14
+ describe: string;
15
+ longDescriptionPath: string;
16
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.dev/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const node_path_1 = require("node:path");
11
+ const architect_command_module_1 = require("../../command-builder/architect-command-module");
12
+ const command_config_1 = require("../command-config");
13
+ class TestCommandModule extends architect_command_module_1.ArchitectCommandModule {
14
+ multiTarget = true;
15
+ command = 'test [project]';
16
+ aliases = command_config_1.RootCommands['test'].aliases;
17
+ describe = 'Runs unit tests in a project.';
18
+ longDescriptionPath = (0, node_path_1.join)(__dirname, 'long-description.md');
19
+ }
20
+ exports.default = TestCommandModule;
21
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,yCAAiC;AACjC,6FAAwF;AAExF,sDAAiD;AAEjD,MAAqB,iBACnB,SAAQ,iDAAsB;IAG9B,WAAW,GAAG,IAAI,CAAC;IACnB,OAAO,GAAG,gBAAgB,CAAC;IAC3B,OAAO,GAAG,6BAAY,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;IACvC,QAAQ,GAAG,+BAA+B,CAAC;IAC3C,mBAAmB,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;CAC9D;AATD,oCASC"}
@@ -0,0 +1,2 @@
1
+ Takes the name of the project, as specified in the `projects` section of the `angular.json` workspace configuration file.
2
+ When a project name is not supplied, it will execute for all projects.
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import { Argv } from 'yargs';
9
+ import { CommandModule, CommandScope, Options } from '../../command-builder/command-module';
10
+ interface UpdateCommandArgs {
11
+ packages?: string[];
12
+ force: boolean;
13
+ next: boolean;
14
+ 'migrate-only'?: boolean;
15
+ name?: string;
16
+ from?: string;
17
+ to?: string;
18
+ 'allow-dirty': boolean;
19
+ verbose: boolean;
20
+ 'create-commits': boolean;
21
+ }
22
+ export default class UpdateCommandModule extends CommandModule<UpdateCommandArgs> {
23
+ scope: CommandScope;
24
+ protected shouldReportAnalytics: boolean;
25
+ private readonly resolvePaths;
26
+ command: string;
27
+ describe: string;
28
+ longDescriptionPath: string;
29
+ builder(localYargs: Argv): Argv<UpdateCommandArgs>;
30
+ run(options: Options<UpdateCommandArgs>): Promise<number | void>;
31
+ private migrateOnly;
32
+ private updatePackagesAndMigrate;
33
+ }
34
+ export {};
@@ -0,0 +1,531 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.dev/license
8
+ */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || (function () {
26
+ var ownKeys = function(o) {
27
+ ownKeys = Object.getOwnPropertyNames || function (o) {
28
+ var ar = [];
29
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
30
+ return ar;
31
+ };
32
+ return ownKeys(o);
33
+ };
34
+ return function (mod) {
35
+ if (mod && mod.__esModule) return mod;
36
+ var result = {};
37
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
38
+ __setModuleDefault(result, mod);
39
+ return result;
40
+ };
41
+ })();
42
+ var __importDefault = (this && this.__importDefault) || function (mod) {
43
+ return (mod && mod.__esModule) ? mod : { "default": mod };
44
+ };
45
+ Object.defineProperty(exports, "__esModule", { value: true });
46
+ const tools_1 = require("@angular-devkit/schematics/tools");
47
+ const listr2_1 = require("listr2");
48
+ const node_fs_1 = require("node:fs");
49
+ const node_module_1 = require("node:module");
50
+ const path = __importStar(require("node:path"));
51
+ const npm_package_arg_1 = __importDefault(require("npm-package-arg"));
52
+ const command_module_1 = require("../../command-builder/command-module");
53
+ const schematic_engine_host_1 = require("../../command-builder/utilities/schematic-engine-host");
54
+ const color_1 = require("../../utilities/color");
55
+ const environment_options_1 = require("../../utilities/environment-options");
56
+ const error_1 = require("../../utilities/error");
57
+ const cli_version_1 = require("./utilities/cli-version");
58
+ const constants_1 = require("./utilities/constants");
59
+ const git_1 = require("./utilities/git");
60
+ const migration_1 = require("./utilities/migration");
61
+ class CommandError extends Error {
62
+ }
63
+ const UPDATE_SCHEMATIC_COLLECTION = path.join(__dirname, 'schematic/collection.json');
64
+ class UpdateCommandModule extends command_module_1.CommandModule {
65
+ scope = command_module_1.CommandScope.In;
66
+ shouldReportAnalytics = false;
67
+ resolvePaths = [__dirname, this.context.root];
68
+ command = 'update [packages..]';
69
+ describe = 'Updates your workspace and its dependencies. See https://update.angular.dev/.';
70
+ longDescriptionPath = path.join(__dirname, 'long-description.md');
71
+ builder(localYargs) {
72
+ return localYargs
73
+ .positional('packages', {
74
+ description: 'The names of package(s) to update.',
75
+ type: 'string',
76
+ array: true,
77
+ })
78
+ .option('force', {
79
+ description: 'Ignore peer dependency version mismatches.',
80
+ type: 'boolean',
81
+ default: false,
82
+ })
83
+ .option('next', {
84
+ description: 'Use the prerelease version, including beta and RCs.',
85
+ type: 'boolean',
86
+ default: false,
87
+ })
88
+ .option('migrate-only', {
89
+ description: 'Only perform a migration, do not update the installed version.',
90
+ type: 'boolean',
91
+ })
92
+ .option('name', {
93
+ description: 'The name of the migration to run. Only available when a single package is updated.',
94
+ type: 'string',
95
+ conflicts: ['to', 'from'],
96
+ })
97
+ .option('from', {
98
+ description: 'Version from which to migrate from. ' +
99
+ `Only available when a single package is updated, and only with 'migrate-only'.`,
100
+ type: 'string',
101
+ implies: ['migrate-only'],
102
+ conflicts: ['name'],
103
+ })
104
+ .option('to', {
105
+ describe: 'Version up to which to apply migrations. Only available when a single package is updated, ' +
106
+ `and only with 'migrate-only' option. Requires 'from' to be specified. Default to the installed version detected.`,
107
+ type: 'string',
108
+ implies: ['from', 'migrate-only'],
109
+ conflicts: ['name'],
110
+ })
111
+ .option('allow-dirty', {
112
+ describe: 'Whether to allow updating when the repository contains modified or untracked files.',
113
+ type: 'boolean',
114
+ default: false,
115
+ })
116
+ .option('verbose', {
117
+ describe: 'Display additional details about internal operations during execution.',
118
+ type: 'boolean',
119
+ default: false,
120
+ })
121
+ .option('create-commits', {
122
+ describe: 'Create source control commits for updates and migrations.',
123
+ type: 'boolean',
124
+ alias: ['C'],
125
+ default: false,
126
+ })
127
+ .middleware((argv) => {
128
+ if (argv.name) {
129
+ argv['migrate-only'] = true;
130
+ }
131
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
+ return argv;
133
+ })
134
+ .check(({ packages, 'allow-dirty': allowDirty, 'migrate-only': migrateOnly }) => {
135
+ const { logger } = this.context;
136
+ // This allows the user to easily reset any changes from the update.
137
+ if (packages?.length && !(0, git_1.checkCleanGit)(this.context.root)) {
138
+ if (allowDirty) {
139
+ logger.warn('Repository is not clean. Update changes will be mixed with pre-existing changes.');
140
+ }
141
+ else {
142
+ throw new command_module_1.CommandModuleError('Repository is not clean. Please commit or stash any changes before updating.');
143
+ }
144
+ }
145
+ if (migrateOnly) {
146
+ if (packages?.length !== 1) {
147
+ throw new command_module_1.CommandModuleError(`A single package must be specified when using the 'migrate-only' option.`);
148
+ }
149
+ }
150
+ return true;
151
+ })
152
+ .strict();
153
+ }
154
+ async run(options) {
155
+ const { logger, packageManager } = this.context;
156
+ // Check if the current installed CLI version is older than the latest compatible version.
157
+ // Skip when running `ng update` without a package name as this will not trigger an actual update.
158
+ if (!environment_options_1.disableVersionCheck && options.packages?.length) {
159
+ const cliVersionToInstall = await (0, cli_version_1.checkCLIVersion)(options.packages, logger, packageManager, options.next);
160
+ if (cliVersionToInstall) {
161
+ logger.warn('The installed Angular CLI version is outdated.\n' +
162
+ `Installing a temporary Angular CLI versioned ${cliVersionToInstall} to perform the update.`);
163
+ return (0, cli_version_1.runTempBinary)(`@angular/cli@${cliVersionToInstall}`, packageManager, process.argv.slice(2));
164
+ }
165
+ }
166
+ const packages = [];
167
+ for (const request of options.packages ?? []) {
168
+ try {
169
+ const packageIdentifier = (0, npm_package_arg_1.default)(request);
170
+ // only registry identifiers are supported
171
+ if (!packageIdentifier.registry) {
172
+ logger.error(`Package '${request}' is not a registry package identifer.`);
173
+ return 1;
174
+ }
175
+ if (packages.some((v) => v.name === packageIdentifier.name)) {
176
+ logger.error(`Duplicate package '${packageIdentifier.name}' specified.`);
177
+ return 1;
178
+ }
179
+ if (options.migrateOnly && packageIdentifier.rawSpec !== '*') {
180
+ logger.warn('Package specifier has no effect when using "migrate-only" option.');
181
+ }
182
+ // Wildcard uses the next tag if next option is used otherwise use latest tag.
183
+ // Wildcard is present if no selector is provided on the command line.
184
+ if (packageIdentifier.rawSpec === '*') {
185
+ packageIdentifier.fetchSpec = options.next ? 'next' : 'latest';
186
+ packageIdentifier.type = 'tag';
187
+ }
188
+ packages.push(packageIdentifier);
189
+ }
190
+ catch (e) {
191
+ (0, error_1.assertIsError)(e);
192
+ logger.error(e.message);
193
+ return 1;
194
+ }
195
+ }
196
+ logger.info(`Using package manager: ${color_1.colors.gray(packageManager.name)}`);
197
+ logger.info('Collecting installed dependencies...');
198
+ const rootDependencies = await packageManager.getProjectDependencies();
199
+ logger.info(`Found ${rootDependencies.size} dependencies.`);
200
+ const workflow = new tools_1.NodeWorkflow(this.context.root, {
201
+ packageManager: packageManager.name,
202
+ packageManagerForce: await (0, cli_version_1.shouldForcePackageManager)(packageManager, logger, options.verbose),
203
+ // __dirname -> favor @schematics/update from this package
204
+ // Otherwise, use packages from the active workspace (migrations)
205
+ resolvePaths: this.resolvePaths,
206
+ schemaValidation: true,
207
+ engineHostCreator: (options) => new schematic_engine_host_1.SchematicEngineHost(options.resolvePaths),
208
+ });
209
+ if (packages.length === 0) {
210
+ // Show status
211
+ const { success } = await (0, migration_1.executeSchematic)(workflow, logger, UPDATE_SCHEMATIC_COLLECTION, 'update', {
212
+ force: options.force,
213
+ next: options.next,
214
+ verbose: options.verbose,
215
+ packageManager: packageManager.name,
216
+ packages: [],
217
+ });
218
+ return success ? 0 : 1;
219
+ }
220
+ return options.migrateOnly
221
+ ? this.migrateOnly(workflow, (options.packages ?? [])[0], rootDependencies, options, packageManager)
222
+ : this.updatePackagesAndMigrate(workflow, rootDependencies, options, packages, packageManager);
223
+ }
224
+ async migrateOnly(workflow, packageName, rootDependencies, options, packageManager) {
225
+ const { logger } = this.context;
226
+ let packageDependency = rootDependencies.get(packageName);
227
+ let packagePath = packageDependency?.path;
228
+ let packageNode;
229
+ if (!packageDependency) {
230
+ const installed = await packageManager.getInstalledPackage(packageName);
231
+ if (installed) {
232
+ packageDependency = installed;
233
+ packagePath = installed.path;
234
+ }
235
+ }
236
+ if (packagePath) {
237
+ packageNode = await readPackageManifest(path.join(packagePath, 'package.json'));
238
+ }
239
+ if (!packageNode) {
240
+ const jsonPath = findPackageJson(this.context.root, packageName);
241
+ if (jsonPath) {
242
+ packageNode = await readPackageManifest(jsonPath);
243
+ if (!packagePath) {
244
+ packagePath = path.dirname(jsonPath);
245
+ }
246
+ }
247
+ }
248
+ if (!packageNode || !packagePath) {
249
+ logger.error('Package is not installed.');
250
+ return 1;
251
+ }
252
+ const updateMetadata = packageNode['ng-update'];
253
+ let migrations = updateMetadata?.migrations;
254
+ if (migrations === undefined) {
255
+ logger.error('Package does not provide migrations.');
256
+ return 1;
257
+ }
258
+ else if (typeof migrations !== 'string') {
259
+ logger.error('Package contains a malformed migrations field.');
260
+ return 1;
261
+ }
262
+ else if (path.posix.isAbsolute(migrations) || path.win32.isAbsolute(migrations)) {
263
+ logger.error('Package contains an invalid migrations field. Absolute paths are not permitted.');
264
+ return 1;
265
+ }
266
+ // Normalize slashes
267
+ migrations = migrations.replace(/\\/g, '/');
268
+ if (migrations.startsWith('../')) {
269
+ logger.error('Package contains an invalid migrations field. Paths outside the package root are not permitted.');
270
+ return 1;
271
+ }
272
+ // Check if it is a package-local location
273
+ const localMigrations = path.join(packagePath, migrations);
274
+ if ((0, node_fs_1.existsSync)(localMigrations)) {
275
+ migrations = localMigrations;
276
+ }
277
+ else {
278
+ // Try to resolve from package location.
279
+ // This avoids issues with package hoisting.
280
+ try {
281
+ const packageRequire = (0, node_module_1.createRequire)(packagePath + '/');
282
+ migrations = packageRequire.resolve(migrations, { paths: this.resolvePaths });
283
+ }
284
+ catch (e) {
285
+ (0, error_1.assertIsError)(e);
286
+ if (e.code === 'MODULE_NOT_FOUND') {
287
+ logger.error('Migrations for package were not found.');
288
+ }
289
+ else {
290
+ logger.error(`Unable to resolve migrations for package. [${e.message}]`);
291
+ }
292
+ return 1;
293
+ }
294
+ }
295
+ if (options.name) {
296
+ return (0, migration_1.executeMigration)(workflow, logger, packageName, migrations, options.name, options.createCommits);
297
+ }
298
+ const from = (0, cli_version_1.coerceVersionNumber)(options.from);
299
+ if (!from) {
300
+ logger.error(`"from" value [${options.from}] is not a valid version.`);
301
+ return 1;
302
+ }
303
+ return (0, migration_1.executeMigrations)(workflow, logger, packageName, migrations, from, options.to || packageNode.version, options.createCommits);
304
+ }
305
+ // eslint-disable-next-line max-lines-per-function
306
+ async updatePackagesAndMigrate(workflow, rootDependencies, options, packages, packageManager) {
307
+ const { logger } = this.context;
308
+ const logVerbose = (message) => {
309
+ if (options.verbose) {
310
+ logger.info(message);
311
+ }
312
+ };
313
+ const requests = [];
314
+ // Validate packages actually are part of the workspace
315
+ for (const pkg of packages) {
316
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
317
+ const node = rootDependencies.get(pkg.name);
318
+ if (!node) {
319
+ logger.error(`Package '${pkg.name}' is not a dependency.`);
320
+ return 1;
321
+ }
322
+ // If a specific version is requested and matches the installed version, skip.
323
+ if (pkg.type === 'version' && node.version === pkg.fetchSpec) {
324
+ logger.info(`Package '${pkg.name}' is already at '${pkg.fetchSpec}'.`);
325
+ continue;
326
+ }
327
+ requests.push({ identifier: pkg, node });
328
+ }
329
+ if (requests.length === 0) {
330
+ return 0;
331
+ }
332
+ logger.info('Fetching dependency metadata from registry...');
333
+ const packagesToUpdate = [];
334
+ for (const { identifier: requestIdentifier, node } of requests) {
335
+ const packageName = requestIdentifier.name;
336
+ let manifest = null;
337
+ try {
338
+ manifest = await packageManager.getManifest(requestIdentifier);
339
+ }
340
+ catch (e) {
341
+ (0, error_1.assertIsError)(e);
342
+ logger.error(`Error fetching manifest for '${packageName}': ` + e.message);
343
+ return 1;
344
+ }
345
+ if (!manifest) {
346
+ logger.error(`Package specified by '${requestIdentifier.raw}' does not exist within the registry.`);
347
+ return 1;
348
+ }
349
+ if (manifest.version === node.version) {
350
+ logger.info(`Package '${packageName}' is already up to date.`);
351
+ continue;
352
+ }
353
+ if (constants_1.ANGULAR_PACKAGES_REGEXP.test(node.name)) {
354
+ const { name, version } = node;
355
+ const toBeInstalledMajorVersion = +manifest.version.split('.')[0];
356
+ const currentMajorVersion = +version.split('.')[0];
357
+ if (toBeInstalledMajorVersion - currentMajorVersion > 1) {
358
+ // Only allow updating a single version at a time.
359
+ if (currentMajorVersion < 6) {
360
+ // Before version 6, the major versions were not always sequential.
361
+ // Example @angular/core skipped version 3, @angular/cli skipped versions 2-5.
362
+ logger.error(`Updating multiple major versions of '${name}' at once is not supported. Please migrate each major version individually.\n` +
363
+ `For more information about the update process, see https://update.angular.dev/.`);
364
+ }
365
+ else {
366
+ const nextMajorVersionFromCurrent = currentMajorVersion + 1;
367
+ logger.error(`Updating multiple major versions of '${name}' at once is not supported. Please migrate each major version individually.\n` +
368
+ `Run 'ng update ${name}@${nextMajorVersionFromCurrent}' in your workspace directory ` +
369
+ `to update to latest '${nextMajorVersionFromCurrent}.x' version of '${name}'.\n\n` +
370
+ `For more information about the update process, see https://update.angular.dev/?v=${currentMajorVersion}.0-${nextMajorVersionFromCurrent}.0`);
371
+ }
372
+ return 1;
373
+ }
374
+ }
375
+ packagesToUpdate.push(requestIdentifier.toString());
376
+ }
377
+ if (packagesToUpdate.length === 0) {
378
+ return 0;
379
+ }
380
+ const { success } = await (0, migration_1.executeSchematic)(workflow, logger, UPDATE_SCHEMATIC_COLLECTION, 'update', {
381
+ verbose: options.verbose,
382
+ force: options.force,
383
+ next: options.next,
384
+ packageManager: this.context.packageManager.name,
385
+ packages: packagesToUpdate,
386
+ });
387
+ if (success) {
388
+ const { root: commandRoot } = this.context;
389
+ const ignorePeerDependencies = await (0, cli_version_1.shouldForcePackageManager)(packageManager, logger, options.verbose);
390
+ const tasks = new listr2_1.Listr([
391
+ {
392
+ title: 'Cleaning node modules directory',
393
+ async task(_, task) {
394
+ try {
395
+ await node_fs_1.promises.rm(path.join(commandRoot, 'node_modules'), {
396
+ force: true,
397
+ recursive: true,
398
+ maxRetries: 3,
399
+ });
400
+ }
401
+ catch (e) {
402
+ (0, error_1.assertIsError)(e);
403
+ if (e.code === 'ENOENT') {
404
+ task.skip('Cleaning not required. Node modules directory not found.');
405
+ }
406
+ }
407
+ },
408
+ },
409
+ {
410
+ title: 'Installing packages',
411
+ async task() {
412
+ try {
413
+ await packageManager.install({
414
+ ignorePeerDependencies,
415
+ });
416
+ }
417
+ catch (e) {
418
+ throw new CommandError('Unable to install packages');
419
+ }
420
+ },
421
+ },
422
+ ]);
423
+ try {
424
+ await tasks.run();
425
+ }
426
+ catch (e) {
427
+ if (e instanceof CommandError) {
428
+ return 1;
429
+ }
430
+ throw e;
431
+ }
432
+ }
433
+ if (success && options.createCommits) {
434
+ if (!(0, migration_1.commitChanges)(logger, `Angular CLI update for packages - ${packagesToUpdate.join(', ')}`)) {
435
+ return 1;
436
+ }
437
+ }
438
+ // This is a temporary workaround to allow data to be passed back from the update schematic
439
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
440
+ const migrations = global.externalMigrations;
441
+ if (success && migrations) {
442
+ const rootRequire = (0, node_module_1.createRequire)(this.context.root + '/');
443
+ for (const migration of migrations) {
444
+ // Resolve the package from the workspace root, as otherwise it will be resolved from the temp
445
+ // installed CLI version.
446
+ let packagePath;
447
+ logVerbose(`Resolving migration package '${migration.package}' from '${this.context.root}'...`);
448
+ try {
449
+ try {
450
+ packagePath = path.dirname(
451
+ // This may fail if the `package.json` is not exported as an entry point
452
+ rootRequire.resolve(path.join(migration.package, 'package.json')));
453
+ }
454
+ catch (e) {
455
+ (0, error_1.assertIsError)(e);
456
+ if (e.code === 'MODULE_NOT_FOUND') {
457
+ // Fallback to trying to resolve the package's main entry point
458
+ packagePath = rootRequire.resolve(migration.package);
459
+ }
460
+ else {
461
+ throw e;
462
+ }
463
+ }
464
+ }
465
+ catch (e) {
466
+ (0, error_1.assertIsError)(e);
467
+ if (e.code === 'MODULE_NOT_FOUND') {
468
+ logVerbose(e.toString());
469
+ logger.error(`Migrations for package (${migration.package}) were not found.` +
470
+ ' The package could not be found in the workspace.');
471
+ }
472
+ else {
473
+ logger.error(`Unable to resolve migrations for package (${migration.package}). [${e.message}]`);
474
+ }
475
+ return 1;
476
+ }
477
+ let migrations;
478
+ // Check if it is a package-local location
479
+ const localMigrations = path.join(packagePath, migration.collection);
480
+ if ((0, node_fs_1.existsSync)(localMigrations)) {
481
+ migrations = localMigrations;
482
+ }
483
+ else {
484
+ // Try to resolve from package location.
485
+ // This avoids issues with package hoisting.
486
+ try {
487
+ const packageRequire = (0, node_module_1.createRequire)(packagePath + '/');
488
+ migrations = packageRequire.resolve(migration.collection);
489
+ }
490
+ catch (e) {
491
+ (0, error_1.assertIsError)(e);
492
+ if (e.code === 'MODULE_NOT_FOUND') {
493
+ logger.error(`Migrations for package (${migration.package}) were not found.`);
494
+ }
495
+ else {
496
+ logger.error(`Unable to resolve migrations for package (${migration.package}). [${e.message}]`);
497
+ }
498
+ return 1;
499
+ }
500
+ }
501
+ const result = await (0, migration_1.executeMigrations)(workflow, logger, migration.package, migrations, migration.from, migration.to, options.createCommits);
502
+ // A non-zero value is a failure for the package's migrations
503
+ if (result !== 0) {
504
+ return result;
505
+ }
506
+ }
507
+ }
508
+ return success ? 0 : 1;
509
+ }
510
+ }
511
+ exports.default = UpdateCommandModule;
512
+ async function readPackageManifest(manifestPath) {
513
+ try {
514
+ const content = await node_fs_1.promises.readFile(manifestPath, 'utf8');
515
+ return JSON.parse(content);
516
+ }
517
+ catch {
518
+ return undefined;
519
+ }
520
+ }
521
+ function findPackageJson(workspaceDir, packageName) {
522
+ try {
523
+ const projectRequire = (0, node_module_1.createRequire)(path.join(workspaceDir, 'package.json'));
524
+ const packageJsonPath = projectRequire.resolve(`${packageName}/package.json`);
525
+ return packageJsonPath;
526
+ }
527
+ catch {
528
+ return undefined;
529
+ }
530
+ }
531
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":"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"}