@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,408 @@
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 __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
26
+ var useValue = arguments.length > 2;
27
+ for (var i = 0; i < initializers.length; i++) {
28
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
29
+ }
30
+ return useValue ? value : void 0;
31
+ };
32
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
33
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
34
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
35
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
36
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
37
+ var _, done = false;
38
+ for (var i = decorators.length - 1; i >= 0; i--) {
39
+ var context = {};
40
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
41
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
42
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
43
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
44
+ if (kind === "accessor") {
45
+ if (result === void 0) continue;
46
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
47
+ if (_ = accept(result.get)) descriptor.get = _;
48
+ if (_ = accept(result.set)) descriptor.set = _;
49
+ if (_ = accept(result.init)) initializers.unshift(_);
50
+ }
51
+ else if (_ = accept(result)) {
52
+ if (kind === "field") initializers.unshift(_);
53
+ else descriptor[key] = _;
54
+ }
55
+ }
56
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
57
+ done = true;
58
+ };
59
+ var __importStar = (this && this.__importStar) || (function () {
60
+ var ownKeys = function(o) {
61
+ ownKeys = Object.getOwnPropertyNames || function (o) {
62
+ var ar = [];
63
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
64
+ return ar;
65
+ };
66
+ return ownKeys(o);
67
+ };
68
+ return function (mod) {
69
+ if (mod && mod.__esModule) return mod;
70
+ var result = {};
71
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
72
+ __setModuleDefault(result, mod);
73
+ return result;
74
+ };
75
+ })();
76
+ Object.defineProperty(exports, "__esModule", { value: true });
77
+ exports.SchematicsCommandModule = exports.DEFAULT_SCHEMATICS_COLLECTION = void 0;
78
+ const core_1 = require("@angular-devkit/core");
79
+ const schematics_1 = require("@angular-devkit/schematics");
80
+ const tools_1 = require("@angular-devkit/schematics/tools");
81
+ const node_path_1 = require("node:path");
82
+ const analytics_1 = require("../analytics/analytics");
83
+ const analytics_parameters_1 = require("../analytics/analytics-parameters");
84
+ const config_1 = require("../utilities/config");
85
+ const error_1 = require("../utilities/error");
86
+ const memoize_1 = require("../utilities/memoize");
87
+ const prettier_1 = require("../utilities/prettier");
88
+ const tty_1 = require("../utilities/tty");
89
+ const command_module_1 = require("./command-module");
90
+ const json_schema_1 = require("./utilities/json-schema");
91
+ const schematic_engine_host_1 = require("./utilities/schematic-engine-host");
92
+ const schematic_workflow_1 = require("./utilities/schematic-workflow");
93
+ exports.DEFAULT_SCHEMATICS_COLLECTION = '@schematics/angular';
94
+ let SchematicsCommandModule = (() => {
95
+ let _classSuper = command_module_1.CommandModule;
96
+ let _instanceExtraInitializers = [];
97
+ let _getOrCreateWorkflowForBuilder_decorators;
98
+ let _getOrCreateWorkflowForExecution_decorators;
99
+ let _getSchematicCollections_decorators;
100
+ return class SchematicsCommandModule extends _classSuper {
101
+ static {
102
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
103
+ _getOrCreateWorkflowForBuilder_decorators = [memoize_1.memoize];
104
+ _getOrCreateWorkflowForExecution_decorators = [memoize_1.memoize];
105
+ _getSchematicCollections_decorators = [memoize_1.memoize];
106
+ __esDecorate(this, null, _getOrCreateWorkflowForBuilder_decorators, { kind: "method", name: "getOrCreateWorkflowForBuilder", static: false, private: false, access: { has: obj => "getOrCreateWorkflowForBuilder" in obj, get: obj => obj.getOrCreateWorkflowForBuilder }, metadata: _metadata }, null, _instanceExtraInitializers);
107
+ __esDecorate(this, null, _getOrCreateWorkflowForExecution_decorators, { kind: "method", name: "getOrCreateWorkflowForExecution", static: false, private: false, access: { has: obj => "getOrCreateWorkflowForExecution" in obj, get: obj => obj.getOrCreateWorkflowForExecution }, metadata: _metadata }, null, _instanceExtraInitializers);
108
+ __esDecorate(this, null, _getSchematicCollections_decorators, { kind: "method", name: "getSchematicCollections", static: false, private: false, access: { has: obj => "getSchematicCollections" in obj, get: obj => obj.getSchematicCollections }, metadata: _metadata }, null, _instanceExtraInitializers);
109
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
110
+ }
111
+ scope = (__runInitializers(this, _instanceExtraInitializers), command_module_1.CommandScope.In);
112
+ allowPrivateSchematics = false;
113
+ async builder(argv) {
114
+ return argv
115
+ .option('interactive', {
116
+ describe: 'Enable interactive input prompts.',
117
+ type: 'boolean',
118
+ default: true,
119
+ })
120
+ .option('dry-run', {
121
+ describe: 'Run through and reports activity without writing out results.',
122
+ type: 'boolean',
123
+ alias: ['d'],
124
+ default: false,
125
+ })
126
+ .option('defaults', {
127
+ describe: 'Disable interactive input prompts for options with a default.',
128
+ type: 'boolean',
129
+ default: false,
130
+ })
131
+ .option('force', {
132
+ describe: 'Force overwriting of existing files.',
133
+ type: 'boolean',
134
+ default: false,
135
+ })
136
+ .strict();
137
+ }
138
+ /** Get schematic schema options.*/
139
+ async getSchematicOptions(collection, schematicName, workflow) {
140
+ const schematic = collection.createSchematic(schematicName, true);
141
+ const { schemaJson } = schematic.description;
142
+ if (!schemaJson) {
143
+ return [];
144
+ }
145
+ return (0, json_schema_1.parseJsonSchemaToOptions)(workflow.registry, schemaJson);
146
+ }
147
+ getOrCreateWorkflowForBuilder(collectionName) {
148
+ return new tools_1.NodeWorkflow(this.context.root, {
149
+ resolvePaths: this.getResolvePaths(collectionName),
150
+ engineHostCreator: (options) => new schematic_engine_host_1.SchematicEngineHost(options.resolvePaths),
151
+ });
152
+ }
153
+ async getOrCreateWorkflowForExecution(collectionName, options) {
154
+ const { logger, root, packageManager } = this.context;
155
+ const { force, dryRun, packageRegistry } = options;
156
+ const workflow = new tools_1.NodeWorkflow(root, {
157
+ force,
158
+ dryRun,
159
+ packageManager: packageManager.name,
160
+ // A schema registry is required to allow customizing addUndefinedDefaults
161
+ registry: new core_1.schema.CoreSchemaRegistry(schematics_1.formats.standardFormats),
162
+ packageRegistry,
163
+ resolvePaths: this.getResolvePaths(collectionName),
164
+ schemaValidation: true,
165
+ optionTransforms: [
166
+ // Add configuration file defaults
167
+ async (schematic, current) => {
168
+ const projectName = typeof current?.project === 'string' ? current.project : this.getProjectName();
169
+ return {
170
+ ...(await (0, config_1.getSchematicDefaults)(schematic.collection.name, schematic.name, projectName)),
171
+ ...current,
172
+ };
173
+ },
174
+ ],
175
+ engineHostCreator: (options) => new schematic_engine_host_1.SchematicEngineHost(options.resolvePaths),
176
+ });
177
+ workflow.registry.addPostTransform(core_1.schema.transforms.addUndefinedDefaults);
178
+ workflow.registry.useXDeprecatedProvider((msg) => logger.warn(msg));
179
+ workflow.registry.addSmartDefaultProvider('projectName', () => this.getProjectName());
180
+ const workingDir = (0, core_1.normalize)((0, node_path_1.relative)(this.context.root, process.cwd()));
181
+ workflow.registry.addSmartDefaultProvider('workingDirectory', () => workingDir === '' ? undefined : workingDir);
182
+ workflow.engineHost.registerOptionsTransform(async (schematic, options) => {
183
+ const { collection: { name: collectionName }, name: schematicName, } = schematic;
184
+ const analytics = (0, analytics_1.isPackageNameSafeForAnalytics)(collectionName)
185
+ ? await this.getAnalytics()
186
+ : undefined;
187
+ analytics?.reportSchematicRunEvent({
188
+ [analytics_parameters_1.EventCustomDimension.SchematicCollectionName]: collectionName,
189
+ [analytics_parameters_1.EventCustomDimension.SchematicName]: schematicName,
190
+ ...this.getAnalyticsParameters(options),
191
+ });
192
+ return options;
193
+ });
194
+ if (options.interactive !== false && (0, tty_1.isTTY)()) {
195
+ workflow.registry.usePromptProvider(async (definitions) => {
196
+ let prompts;
197
+ const answers = {};
198
+ for (const definition of definitions) {
199
+ if (options.defaults && definition.default !== undefined) {
200
+ continue;
201
+ }
202
+ // Only load prompt package if needed
203
+ prompts ??= await Promise.resolve().then(() => __importStar(require('@inquirer/prompts')));
204
+ switch (definition.type) {
205
+ case 'confirmation':
206
+ answers[definition.id] = await prompts.confirm({
207
+ message: definition.message,
208
+ default: definition.default,
209
+ });
210
+ break;
211
+ case 'list':
212
+ if (!definition.items?.length) {
213
+ continue;
214
+ }
215
+ answers[definition.id] = await (definition.multiselect ? prompts.checkbox : prompts.select)({
216
+ message: definition.message,
217
+ validate: (values) => {
218
+ if (!definition.validator) {
219
+ return true;
220
+ }
221
+ return definition.validator(Object.values(values).map(({ value }) => value));
222
+ },
223
+ default: definition.multiselect ? undefined : definition.default,
224
+ choices: definition.items?.map((item) => typeof item == 'string'
225
+ ? {
226
+ name: item,
227
+ value: item,
228
+ checked: definition.multiselect && Array.isArray(definition.default)
229
+ ? definition.default?.includes(item)
230
+ : item === definition.default,
231
+ }
232
+ : {
233
+ ...item,
234
+ name: item.label,
235
+ value: item.value,
236
+ checked: definition.multiselect && Array.isArray(definition.default)
237
+ ? // eslint-disable-next-line @typescript-eslint/no-explicit-any
238
+ definition.default?.includes(item.value)
239
+ : item.value === definition.default,
240
+ }),
241
+ });
242
+ break;
243
+ case 'input': {
244
+ let finalValue;
245
+ answers[definition.id] = await prompts.input({
246
+ message: definition.message,
247
+ default: definition.default,
248
+ async validate(value) {
249
+ if (definition.validator === undefined) {
250
+ return true;
251
+ }
252
+ let lastValidation = false;
253
+ for (const type of definition.propertyTypes) {
254
+ let potential;
255
+ switch (type) {
256
+ case 'string':
257
+ potential = String(value);
258
+ break;
259
+ case 'integer':
260
+ case 'number':
261
+ potential = Number(value);
262
+ break;
263
+ default:
264
+ potential = value;
265
+ break;
266
+ }
267
+ lastValidation = await definition.validator(potential);
268
+ // Can be a string if validation fails
269
+ if (lastValidation === true) {
270
+ finalValue = potential;
271
+ return true;
272
+ }
273
+ }
274
+ return lastValidation;
275
+ },
276
+ });
277
+ // Use validated value if present.
278
+ // This ensures the correct type is inserted into the final schema options.
279
+ if (finalValue !== undefined) {
280
+ answers[definition.id] = finalValue;
281
+ }
282
+ break;
283
+ }
284
+ }
285
+ }
286
+ return answers;
287
+ });
288
+ }
289
+ return workflow;
290
+ }
291
+ async getSchematicCollections() {
292
+ const getSchematicCollections = (configSection) => {
293
+ if (!configSection) {
294
+ return undefined;
295
+ }
296
+ const { schematicCollections } = configSection;
297
+ if (Array.isArray(schematicCollections)) {
298
+ return new Set(schematicCollections);
299
+ }
300
+ return undefined;
301
+ };
302
+ const { workspace, globalConfiguration } = this.context;
303
+ if (workspace) {
304
+ const project = (0, config_1.getProjectByCwd)(workspace);
305
+ if (project) {
306
+ const value = getSchematicCollections(workspace.getProjectCli(project));
307
+ if (value) {
308
+ return value;
309
+ }
310
+ }
311
+ }
312
+ const value = getSchematicCollections(workspace?.getCli()) ??
313
+ getSchematicCollections(globalConfiguration.getCli());
314
+ if (value) {
315
+ return value;
316
+ }
317
+ return new Set([exports.DEFAULT_SCHEMATICS_COLLECTION]);
318
+ }
319
+ parseSchematicInfo(schematic) {
320
+ if (schematic?.includes(':')) {
321
+ const [collectionName, schematicName] = schematic.split(':', 2);
322
+ return [collectionName, schematicName];
323
+ }
324
+ return [undefined, schematic];
325
+ }
326
+ async runSchematic(options) {
327
+ const { logger } = this.context;
328
+ const { schematicOptions, executionOptions, collectionName, schematicName } = options;
329
+ const workflow = await this.getOrCreateWorkflowForExecution(collectionName, executionOptions);
330
+ if (!schematicName) {
331
+ throw new Error('schematicName cannot be undefined.');
332
+ }
333
+ const { unsubscribe, files } = (0, schematic_workflow_1.subscribeToWorkflow)(workflow, logger);
334
+ try {
335
+ await workflow
336
+ .execute({
337
+ collection: collectionName,
338
+ schematic: schematicName,
339
+ options: schematicOptions,
340
+ logger,
341
+ allowPrivate: this.allowPrivateSchematics,
342
+ })
343
+ .toPromise();
344
+ if (!files.size) {
345
+ logger.info('Nothing to be done.');
346
+ }
347
+ if (executionOptions.dryRun) {
348
+ logger.warn(`\nNOTE: The "--dry-run" option means no changes were made.`);
349
+ return 0;
350
+ }
351
+ if (files.size) {
352
+ // Note: we could use a task executor to format the files but this is simpler.
353
+ try {
354
+ await (0, prettier_1.formatFiles)(this.context.root, files);
355
+ }
356
+ catch (error) {
357
+ (0, error_1.assertIsError)(error);
358
+ logger.warn(`WARNING: Formatting of files failed with the following error: ${error.message}`);
359
+ }
360
+ }
361
+ return 0;
362
+ }
363
+ catch (err) {
364
+ // In case the workflow was not successful, show an appropriate error message.
365
+ if (err instanceof schematics_1.UnsuccessfulWorkflowExecution) {
366
+ // "See above" because we already printed the error.
367
+ logger.fatal('The Schematic workflow failed. See above.');
368
+ }
369
+ else {
370
+ (0, error_1.assertIsError)(err);
371
+ logger.fatal(err.message);
372
+ }
373
+ return 1;
374
+ }
375
+ finally {
376
+ unsubscribe();
377
+ }
378
+ }
379
+ getProjectName() {
380
+ const { workspace } = this.context;
381
+ if (!workspace) {
382
+ return undefined;
383
+ }
384
+ const projectName = (0, config_1.getProjectByCwd)(workspace);
385
+ if (projectName) {
386
+ return projectName;
387
+ }
388
+ return undefined;
389
+ }
390
+ getResolvePaths(collectionName) {
391
+ const { workspace, root } = this.context;
392
+ if (collectionName[0] === '.') {
393
+ // Resolve relative collections from the location of `angular.json`
394
+ return [root];
395
+ }
396
+ return workspace
397
+ ? // Workspace
398
+ collectionName === exports.DEFAULT_SCHEMATICS_COLLECTION
399
+ ? // Favor __dirname for @schematics/angular to use the build-in version
400
+ [__dirname, process.cwd(), root]
401
+ : [process.cwd(), root, __dirname]
402
+ : // Global
403
+ [__dirname, process.cwd()];
404
+ }
405
+ };
406
+ })();
407
+ exports.SchematicsCommandModule = SchematicsCommandModule;
408
+ //# sourceMappingURL=schematics-command-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schematics-command-module.js","sourceRoot":"","sources":["schematics-command-module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
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 { CommandContext, CommandModule, CommandModuleImplementation } from '../command-module';
9
+ export declare const demandCommandFailureMessage = "You need to specify a command before moving on. Use '--help' to view the available commands.";
10
+ export type CommandModuleConstructor = Partial<CommandModuleImplementation> & {
11
+ new (context: CommandContext): Partial<CommandModuleImplementation> & CommandModule;
12
+ };
13
+ export declare function addCommandModuleToYargs<U extends CommandModuleConstructor>(commandModule: U, context: CommandContext): void;
@@ -0,0 +1,39 @@
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
+ exports.demandCommandFailureMessage = void 0;
11
+ exports.addCommandModuleToYargs = addCommandModuleToYargs;
12
+ const command_module_1 = require("../command-module");
13
+ exports.demandCommandFailureMessage = `You need to specify a command before moving on. Use '--help' to view the available commands.`;
14
+ function addCommandModuleToYargs(commandModule, context) {
15
+ const cmd = new commandModule(context);
16
+ const { args: { options: { jsonHelp }, }, workspace, } = context;
17
+ const describe = jsonHelp ? cmd.fullDescribe : cmd.describe;
18
+ context.yargsInstance.command({
19
+ command: cmd.command,
20
+ aliases: cmd.aliases,
21
+ describe:
22
+ // We cannot add custom fields in help, such as long command description which is used in AIO.
23
+ // Therefore, we get around this by adding a complex object as a string which we later parse when generating the help files.
24
+ typeof describe === 'object' ? JSON.stringify(describe) : describe,
25
+ deprecated: cmd.deprecated,
26
+ builder: (argv) => {
27
+ // Skip scope validation when running with '--json-help' since it's easier to generate the output for all commands this way.
28
+ const isInvalidScope = !jsonHelp &&
29
+ ((cmd.scope === command_module_1.CommandScope.In && !workspace) ||
30
+ (cmd.scope === command_module_1.CommandScope.Out && workspace));
31
+ if (isInvalidScope) {
32
+ throw new command_module_1.CommandModuleError(`This command is not available when running the Angular CLI ${workspace ? 'inside' : 'outside'} a workspace.`);
33
+ }
34
+ return cmd.builder(argv);
35
+ },
36
+ handler: (args) => cmd.handler(args),
37
+ });
38
+ }
39
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["command.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAgBH,0DAyCC;AAtDD,sDAM2B;AAEd,QAAA,2BAA2B,GAAG,8FAA8F,CAAC;AAK1I,SAAgB,uBAAuB,CACrC,aAAgB,EAChB,OAAuB;IAEvB,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,EACJ,IAAI,EAAE,EACJ,OAAO,EAAE,EAAE,QAAQ,EAAE,GACtB,EACD,SAAS,GACV,GAAG,OAAO,CAAC;IAEZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IAE5D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,QAAQ;QACN,8FAA8F;QAC9F,4HAA4H;QAC5H,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;QACpE,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,4HAA4H;YAC5H,MAAM,cAAc,GAClB,CAAC,QAAQ;gBACT,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,6BAAY,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;oBAC5C,CAAC,GAAG,CAAC,KAAK,KAAK,6BAAY,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC;YAEnD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,mCAAkB,CAC1B,8DACE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SACzB,eAAe,CAChB,CAAC;YACJ,CAAC;YAED,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAS,CAAC;QACnC,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;KACrC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,37 @@
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
+ interface JsonHelpOption {
10
+ name: string;
11
+ type?: string;
12
+ deprecated: boolean | string;
13
+ aliases?: string[];
14
+ default?: string;
15
+ required?: boolean;
16
+ positional?: number;
17
+ enum?: string[];
18
+ description?: string;
19
+ }
20
+ interface JsonHelpDescription {
21
+ shortDescription?: string;
22
+ longDescription?: string;
23
+ longDescriptionRelativePath?: string;
24
+ }
25
+ interface JsonHelpSubcommand extends JsonHelpDescription {
26
+ name: string;
27
+ aliases: string[];
28
+ deprecated: string | boolean;
29
+ }
30
+ export interface JsonHelp extends JsonHelpDescription {
31
+ name: string;
32
+ command: string;
33
+ options: JsonHelpOption[];
34
+ subcommands?: JsonHelpSubcommand[];
35
+ }
36
+ export declare function jsonHelpUsage(localYargs: Argv): string;
37
+ export {};
@@ -0,0 +1,92 @@
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
+ exports.jsonHelpUsage = jsonHelpUsage;
11
+ const yargsDefaultCommandRegExp = /^\$0|\*/;
12
+ function jsonHelpUsage(localYargs) {
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
+ const localYargsInstance = localYargs;
15
+ const { deprecatedOptions, alias: aliases, array, string, boolean, number, choices, demandedOptions, default: defaultVal, hiddenOptions = [], } = localYargsInstance.getOptions();
16
+ const internalMethods = localYargsInstance.getInternalMethods();
17
+ const usageInstance = internalMethods.getUsageInstance();
18
+ const context = internalMethods.getContext();
19
+ const descriptions = usageInstance.getDescriptions();
20
+ const groups = localYargsInstance.getGroups();
21
+ const positional = groups[usageInstance.getPositionalGroupName()];
22
+ const seen = new Set();
23
+ const hidden = new Set(hiddenOptions);
24
+ const normalizeOptions = [];
25
+ const allAliases = new Set([...Object.values(aliases).flat()]);
26
+ // Reverted order of https://github.com/yargs/yargs/blob/971e351705f0fbc5566c6ed1dfd707fa65e11c0d/lib/usage.ts#L419-L424
27
+ for (const [names, type] of [
28
+ [number, 'number'],
29
+ [array, 'array'],
30
+ [string, 'string'],
31
+ [boolean, 'boolean'],
32
+ ]) {
33
+ for (const name of names) {
34
+ if (allAliases.has(name) || hidden.has(name) || seen.has(name)) {
35
+ // Ignore hidden, aliases and already visited option.
36
+ continue;
37
+ }
38
+ seen.add(name);
39
+ const positionalIndex = positional?.indexOf(name) ?? -1;
40
+ const alias = aliases[name];
41
+ normalizeOptions.push({
42
+ name,
43
+ type,
44
+ deprecated: deprecatedOptions[name],
45
+ aliases: alias?.length > 0 ? alias : undefined,
46
+ default: defaultVal[name],
47
+ required: demandedOptions[name],
48
+ enum: choices[name],
49
+ description: descriptions[name]?.replace('__yargsString__:', ''),
50
+ positional: positionalIndex >= 0 ? positionalIndex : undefined,
51
+ });
52
+ }
53
+ }
54
+ // https://github.com/yargs/yargs/blob/00e4ebbe3acd438e73fdb101e75b4f879eb6d345/lib/usage.ts#L124
55
+ const subcommands = usageInstance.getCommands()
56
+ .map(([name, rawDescription, isDefault, aliases, deprecated]) => ({
57
+ name: name.split(' ', 1)[0].replace(yargsDefaultCommandRegExp, ''),
58
+ command: name.replace(yargsDefaultCommandRegExp, ''),
59
+ default: isDefault || undefined,
60
+ ...parseDescription(rawDescription),
61
+ aliases,
62
+ deprecated,
63
+ }))
64
+ .sort((a, b) => a.name.localeCompare(b.name));
65
+ const [command, rawDescription] = usageInstance.getUsage()[0] ?? [];
66
+ const defaultSubCommand = subcommands.find((x) => x.default)?.command ?? '';
67
+ const otherSubcommands = subcommands.filter((s) => !s.default);
68
+ const output = {
69
+ name: [...context.commands].pop(),
70
+ command: `${command?.replace(yargsDefaultCommandRegExp, localYargsInstance['$0'])}${defaultSubCommand}`,
71
+ ...parseDescription(rawDescription),
72
+ options: normalizeOptions.sort((a, b) => a.name.localeCompare(b.name)),
73
+ subcommands: otherSubcommands.length ? otherSubcommands : undefined,
74
+ };
75
+ return JSON.stringify(output, undefined, 2);
76
+ }
77
+ function parseDescription(rawDescription) {
78
+ try {
79
+ const { longDescription, describe: shortDescription, longDescriptionRelativePath, } = JSON.parse(rawDescription);
80
+ return {
81
+ shortDescription,
82
+ longDescriptionRelativePath,
83
+ longDescription,
84
+ };
85
+ }
86
+ catch {
87
+ return {
88
+ shortDescription: rawDescription,
89
+ };
90
+ }
91
+ }
92
+ //# sourceMappingURL=json-help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-help.js","sourceRoot":"","sources":["json-help.ts"],"names":[],"mappings":"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"}