nx 13.9.4 → 13.10.0-beta.3

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 (438) hide show
  1. package/bin/init-local.d.ts +2 -0
  2. package/bin/init-local.js +123 -0
  3. package/bin/init-local.js.map +1 -0
  4. package/{src/cli/run-cli.d.ts → bin/init.d.ts} +0 -0
  5. package/bin/init.js +13 -0
  6. package/bin/init.js.map +1 -0
  7. package/bin/nx.js +8 -8
  8. package/bin/nx.js.map +1 -1
  9. package/{src/compat/compat.d.ts → bin/run-executor.d.ts} +0 -0
  10. package/{src/cli/run-cli.js → bin/run-executor.js} +11 -3
  11. package/bin/run-executor.js.map +1 -0
  12. package/package.json +26 -11
  13. package/src/adapter/compat.d.ts +1 -0
  14. package/src/{compat → adapter}/compat.js +2 -2
  15. package/src/adapter/compat.js.map +1 -0
  16. package/src/{cli → adapter}/decorate-cli.d.ts +0 -0
  17. package/src/{cli → adapter}/decorate-cli.js +0 -0
  18. package/src/adapter/decorate-cli.js.map +1 -0
  19. package/src/{commands → adapter}/ngcli-adapter.d.ts +1 -1
  20. package/src/{commands → adapter}/ngcli-adapter.js +14 -14
  21. package/src/adapter/ngcli-adapter.js.map +1 -0
  22. package/src/cli/index.d.ts +0 -3
  23. package/src/cli/index.js +0 -74
  24. package/src/cli/index.js.map +1 -1
  25. package/src/command-line/affected.d.ts +3 -0
  26. package/src/command-line/affected.js +117 -0
  27. package/src/command-line/affected.js.map +1 -0
  28. package/src/command-line/connect-to-nx-cloud.d.ts +2 -0
  29. package/src/command-line/connect-to-nx-cloud.js +79 -0
  30. package/src/command-line/connect-to-nx-cloud.js.map +1 -0
  31. package/src/command-line/daemon.d.ts +2 -0
  32. package/src/command-line/daemon.js +23 -0
  33. package/src/command-line/daemon.js.map +1 -0
  34. package/src/command-line/dep-graph.d.ts +24 -0
  35. package/src/command-line/dep-graph.js +371 -0
  36. package/src/command-line/dep-graph.js.map +1 -0
  37. package/src/command-line/examples.d.ts +5 -0
  38. package/src/command-line/examples.js +283 -0
  39. package/src/command-line/examples.js.map +1 -0
  40. package/src/command-line/format.d.ts +7 -0
  41. package/src/command-line/format.js +205 -0
  42. package/src/command-line/format.js.map +1 -0
  43. package/src/command-line/generate.d.ts +17 -0
  44. package/src/{commands → command-line}/generate.js +46 -67
  45. package/src/command-line/generate.js.map +1 -0
  46. package/src/command-line/lint.d.ts +1 -0
  47. package/src/command-line/lint.js +33 -0
  48. package/src/command-line/lint.js.map +1 -0
  49. package/src/command-line/list.d.ts +13 -0
  50. package/src/command-line/list.js +41 -0
  51. package/src/command-line/list.js.map +1 -0
  52. package/src/{commands → command-line}/migrate.d.ts +6 -2
  53. package/src/{commands → command-line}/migrate.js +30 -67
  54. package/src/command-line/migrate.js.map +1 -0
  55. package/src/command-line/nx-commands.d.ts +9 -0
  56. package/src/command-line/nx-commands.js +607 -0
  57. package/src/command-line/nx-commands.js.map +1 -0
  58. package/src/command-line/print-affected.d.ts +6 -0
  59. package/src/command-line/print-affected.js +82 -0
  60. package/src/command-line/print-affected.js.map +1 -0
  61. package/src/command-line/report.d.ts +17 -0
  62. package/src/command-line/report.js +125 -0
  63. package/src/command-line/report.js.map +1 -0
  64. package/src/command-line/reset.d.ts +1 -0
  65. package/src/command-line/reset.js +20 -0
  66. package/src/command-line/reset.js.map +1 -0
  67. package/src/command-line/run-many.d.ts +3 -0
  68. package/src/command-line/run-many.js +61 -0
  69. package/src/command-line/run-many.js.map +1 -0
  70. package/src/command-line/run-one.d.ts +3 -0
  71. package/src/command-line/run-one.js +111 -0
  72. package/src/command-line/run-one.js.map +1 -0
  73. package/src/{commands → command-line}/run.d.ts +12 -7
  74. package/src/{commands → command-line}/run.js +24 -74
  75. package/src/command-line/run.js.map +1 -0
  76. package/src/command-line/utils.d.ts +51 -0
  77. package/src/command-line/utils.js +272 -0
  78. package/src/command-line/utils.js.map +1 -0
  79. package/src/command-line/workspace-generators.d.ts +1 -0
  80. package/src/command-line/workspace-generators.js +151 -0
  81. package/src/command-line/workspace-generators.js.map +1 -0
  82. package/src/command-line/workspace-integrity-checks.d.ts +11 -0
  83. package/src/command-line/workspace-integrity-checks.js +60 -0
  84. package/src/command-line/workspace-integrity-checks.js.map +1 -0
  85. package/src/core/affected-project-graph/affected-project-graph-models.d.ts +11 -0
  86. package/src/core/affected-project-graph/affected-project-graph-models.js +3 -0
  87. package/src/core/affected-project-graph/affected-project-graph-models.js.map +1 -0
  88. package/src/core/affected-project-graph/affected-project-graph.d.ts +5 -0
  89. package/src/core/affected-project-graph/affected-project-graph.js +88 -0
  90. package/src/core/affected-project-graph/affected-project-graph.js.map +1 -0
  91. package/src/core/affected-project-graph/index.d.ts +2 -0
  92. package/src/core/affected-project-graph/index.js +6 -0
  93. package/src/core/affected-project-graph/index.js.map +1 -0
  94. package/src/core/affected-project-graph/locators/implicit-json-changes.d.ts +4 -0
  95. package/src/core/affected-project-graph/locators/implicit-json-changes.js +54 -0
  96. package/src/core/affected-project-graph/locators/implicit-json-changes.js.map +1 -0
  97. package/src/core/affected-project-graph/locators/npm-packages.d.ts +4 -0
  98. package/src/core/affected-project-graph/locators/npm-packages.js +35 -0
  99. package/src/core/affected-project-graph/locators/npm-packages.js.map +1 -0
  100. package/src/core/affected-project-graph/locators/tsconfig-json-changes.d.ts +4 -0
  101. package/src/core/affected-project-graph/locators/tsconfig-json-changes.js +64 -0
  102. package/src/core/affected-project-graph/locators/tsconfig-json-changes.js.map +1 -0
  103. package/src/core/affected-project-graph/locators/workspace-json-changes.d.ts +4 -0
  104. package/src/core/affected-project-graph/locators/workspace-json-changes.js +48 -0
  105. package/src/core/affected-project-graph/locators/workspace-json-changes.js.map +1 -0
  106. package/src/core/affected-project-graph/locators/workspace-projects.d.ts +3 -0
  107. package/src/core/affected-project-graph/locators/workspace-projects.js +40 -0
  108. package/src/core/affected-project-graph/locators/workspace-projects.js.map +1 -0
  109. package/src/core/assert-workspace-validity.d.ts +2 -0
  110. package/src/core/assert-workspace-validity.js +72 -0
  111. package/src/core/assert-workspace-validity.js.map +1 -0
  112. package/src/core/dep-graph/3rdpartylicenses.txt +732 -0
  113. package/src/core/dep-graph/index.html +16 -0
  114. package/src/core/dep-graph/main.esm.js +2 -0
  115. package/src/core/dep-graph/main.esm.js.LICENSE.txt +39 -0
  116. package/src/core/dep-graph/polyfills.esm.js +1 -0
  117. package/src/core/dep-graph/runtime.esm.js +1 -0
  118. package/src/core/dep-graph/styles.css +3 -0
  119. package/src/core/file-map-utils.d.ts +9 -0
  120. package/src/core/file-map-utils.js +80 -0
  121. package/src/core/file-map-utils.js.map +1 -0
  122. package/src/core/file-utils.d.ts +41 -0
  123. package/src/core/file-utils.js +168 -0
  124. package/src/core/file-utils.js.map +1 -0
  125. package/src/core/hasher/file-hasher-base.d.ts +12 -0
  126. package/src/core/hasher/file-hasher-base.js +68 -0
  127. package/src/core/hasher/file-hasher-base.js.map +1 -0
  128. package/src/core/hasher/file-hasher.d.ts +2 -0
  129. package/src/core/hasher/file-hasher.js +22 -0
  130. package/src/core/hasher/file-hasher.js.map +1 -0
  131. package/src/core/hasher/git-based-file-hasher.d.ts +10 -0
  132. package/src/core/hasher/git-based-file-hasher.js +50 -0
  133. package/src/core/hasher/git-based-file-hasher.js.map +1 -0
  134. package/src/core/hasher/git-hasher.d.ts +7 -0
  135. package/src/core/hasher/git-hasher.js +134 -0
  136. package/src/core/hasher/git-hasher.js.map +1 -0
  137. package/src/core/hasher/hasher.d.ts +60 -0
  138. package/src/core/hasher/hasher.js +362 -0
  139. package/src/core/hasher/hasher.js.map +1 -0
  140. package/src/core/hasher/hashing-impl.d.ts +5 -0
  141. package/src/core/hasher/hashing-impl.js +23 -0
  142. package/src/core/hasher/hashing-impl.js.map +1 -0
  143. package/src/core/hasher/node-based-file-hasher.d.ts +7 -0
  144. package/src/core/hasher/node-based-file-hasher.js +78 -0
  145. package/src/core/hasher/node-based-file-hasher.js.map +1 -0
  146. package/src/core/normalize-nx-json.d.ts +8 -0
  147. package/src/core/normalize-nx-json.js +32 -0
  148. package/src/core/normalize-nx-json.js.map +1 -0
  149. package/src/core/nx-deps/nx-deps-cache.d.ts +41 -0
  150. package/src/core/nx-deps/nx-deps-cache.js +164 -0
  151. package/src/core/nx-deps/nx-deps-cache.js.map +1 -0
  152. package/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.d.ts +6 -0
  153. package/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.js +19 -0
  154. package/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.js.map +1 -0
  155. package/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.d.ts +3 -0
  156. package/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.js +76 -0
  157. package/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.js.map +1 -0
  158. package/src/core/project-graph/build-dependencies/explicit-project-dependencies.d.ts +3 -0
  159. package/src/core/project-graph/build-dependencies/explicit-project-dependencies.js +27 -0
  160. package/src/core/project-graph/build-dependencies/explicit-project-dependencies.js.map +1 -0
  161. package/src/core/project-graph/build-dependencies/implicit-project-dependencies.d.ts +3 -0
  162. package/src/core/project-graph/build-dependencies/implicit-project-dependencies.js +20 -0
  163. package/src/core/project-graph/build-dependencies/implicit-project-dependencies.js.map +1 -0
  164. package/src/core/project-graph/build-dependencies/index.d.ts +3 -0
  165. package/src/core/project-graph/build-dependencies/index.js +7 -0
  166. package/src/core/project-graph/build-dependencies/index.js.map +1 -0
  167. package/src/core/project-graph/build-dependencies/typescript-import-locator.d.ts +11 -0
  168. package/src/core/project-graph/build-dependencies/typescript-import-locator.js +114 -0
  169. package/src/core/project-graph/build-dependencies/typescript-import-locator.js.map +1 -0
  170. package/src/core/project-graph/build-nodes/index.d.ts +2 -0
  171. package/src/core/project-graph/build-nodes/index.js +6 -0
  172. package/src/core/project-graph/build-nodes/index.js.map +1 -0
  173. package/src/core/project-graph/build-nodes/npm-packages.d.ts +2 -0
  174. package/src/core/project-graph/build-nodes/npm-packages.js +22 -0
  175. package/src/core/project-graph/build-nodes/npm-packages.js.map +1 -0
  176. package/src/core/project-graph/build-nodes/workspace-projects.d.ts +3 -0
  177. package/src/core/project-graph/build-nodes/workspace-projects.js +49 -0
  178. package/src/core/project-graph/build-nodes/workspace-projects.js.map +1 -0
  179. package/src/core/project-graph/build-project-graph.d.ts +9 -0
  180. package/src/core/project-graph/build-project-graph.js +233 -0
  181. package/src/core/project-graph/build-project-graph.js.map +1 -0
  182. package/src/core/project-graph/daemon/cache.d.ts +6 -0
  183. package/src/core/project-graph/daemon/cache.js +56 -0
  184. package/src/core/project-graph/daemon/cache.js.map +1 -0
  185. package/src/core/project-graph/daemon/client/client.d.ts +26 -0
  186. package/src/core/project-graph/daemon/client/client.js +200 -0
  187. package/src/core/project-graph/daemon/client/client.js.map +1 -0
  188. package/src/core/project-graph/daemon/client/exec-is-server-available.d.ts +1 -0
  189. package/src/core/project-graph/daemon/client/exec-is-server-available.js +13 -0
  190. package/src/core/project-graph/daemon/client/exec-is-server-available.js.map +1 -0
  191. package/src/core/project-graph/daemon/client/generate-help-output.d.ts +1 -0
  192. package/src/core/project-graph/daemon/client/generate-help-output.js +31 -0
  193. package/src/core/project-graph/daemon/client/generate-help-output.js.map +1 -0
  194. package/src/core/project-graph/daemon/server/logger.d.ts +18 -0
  195. package/src/core/project-graph/daemon/server/logger.js +38 -0
  196. package/src/core/project-graph/daemon/server/logger.js.map +1 -0
  197. package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.d.ts +8 -0
  198. package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js +191 -0
  199. package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js.map +1 -0
  200. package/src/core/project-graph/daemon/server/server.d.ts +4 -0
  201. package/src/core/project-graph/daemon/server/server.js +236 -0
  202. package/src/core/project-graph/daemon/server/server.js.map +1 -0
  203. package/src/core/project-graph/daemon/server/shutdown-utils.d.ts +12 -0
  204. package/src/core/project-graph/daemon/server/shutdown-utils.js +32 -0
  205. package/src/core/project-graph/daemon/server/shutdown-utils.js.map +1 -0
  206. package/src/core/project-graph/daemon/server/start.d.ts +1 -0
  207. package/src/core/project-graph/daemon/server/start.js +19 -0
  208. package/src/core/project-graph/daemon/server/start.js.map +1 -0
  209. package/src/core/project-graph/daemon/server/stop.d.ts +1 -0
  210. package/src/core/project-graph/daemon/server/stop.js +19 -0
  211. package/src/core/project-graph/daemon/server/stop.js.map +1 -0
  212. package/src/core/project-graph/daemon/server/watcher.d.ts +12 -0
  213. package/src/core/project-graph/daemon/server/watcher.js +158 -0
  214. package/src/core/project-graph/daemon/server/watcher.js.map +1 -0
  215. package/src/core/project-graph/daemon/socket-utils.d.ts +15 -0
  216. package/src/core/project-graph/daemon/socket-utils.js +38 -0
  217. package/src/core/project-graph/daemon/socket-utils.js.map +1 -0
  218. package/src/core/project-graph/daemon/tmp-dir.d.ts +6 -0
  219. package/src/core/project-graph/daemon/tmp-dir.js +37 -0
  220. package/src/core/project-graph/daemon/tmp-dir.js.map +1 -0
  221. package/src/core/project-graph/operators.d.ts +20 -0
  222. package/src/core/project-graph/operators.js +125 -0
  223. package/src/core/project-graph/operators.js.map +1 -0
  224. package/src/core/project-graph/project-graph-builder.d.ts +38 -0
  225. package/src/core/project-graph/project-graph-builder.js +164 -0
  226. package/src/core/project-graph/project-graph-builder.js.map +1 -0
  227. package/src/core/project-graph/project-graph-worker.d.ts +1 -0
  228. package/src/core/project-graph/project-graph-worker.js +19 -0
  229. package/src/core/project-graph/project-graph-worker.js.map +1 -0
  230. package/src/core/project-graph/project-graph.d.ts +37 -0
  231. package/src/core/project-graph/project-graph.js +188 -0
  232. package/src/core/project-graph/project-graph.js.map +1 -0
  233. package/src/core/shared-interfaces.d.ts +11 -0
  234. package/src/core/shared-interfaces.js +3 -0
  235. package/src/core/shared-interfaces.js.map +1 -0
  236. package/src/core/target-project-locator.d.ts +36 -0
  237. package/src/core/target-project-locator.js +164 -0
  238. package/src/core/target-project-locator.js.map +1 -0
  239. package/src/shared/nx.d.ts +2 -1
  240. package/src/shared/tree.js +1 -1
  241. package/src/shared/tree.js.map +1 -1
  242. package/src/shared/workspace.d.ts +8 -6
  243. package/src/shared/workspace.js +17 -21
  244. package/src/shared/workspace.js.map +1 -1
  245. package/src/tasks-runner/batch/batch-messages.d.ts +24 -0
  246. package/src/tasks-runner/batch/batch-messages.js +9 -0
  247. package/src/tasks-runner/batch/batch-messages.js.map +1 -0
  248. package/src/tasks-runner/batch/run-batch.d.ts +1 -0
  249. package/src/tasks-runner/batch/run-batch.js +57 -0
  250. package/src/tasks-runner/batch/run-batch.js.map +1 -0
  251. package/src/tasks-runner/cache.d.ts +40 -0
  252. package/src/tasks-runner/cache.js +284 -0
  253. package/src/tasks-runner/cache.js.map +1 -0
  254. package/src/tasks-runner/default-tasks-runner.d.ts +19 -0
  255. package/src/tasks-runner/default-tasks-runner.js +48 -0
  256. package/src/tasks-runner/default-tasks-runner.js.map +1 -0
  257. package/src/tasks-runner/forked-process-task-runner.d.ts +36 -0
  258. package/src/tasks-runner/forked-process-task-runner.js +259 -0
  259. package/src/tasks-runner/forked-process-task-runner.js.map +1 -0
  260. package/src/tasks-runner/life-cycle.d.ts +43 -0
  261. package/src/tasks-runner/life-cycle.js +72 -0
  262. package/src/tasks-runner/life-cycle.js.map +1 -0
  263. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.d.ts +25 -0
  264. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +349 -0
  265. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js.map +1 -0
  266. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.d.ts +25 -0
  267. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js +231 -0
  268. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js.map +1 -0
  269. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.d.ts +5 -0
  270. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js +19 -0
  271. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js.map +1 -0
  272. package/src/tasks-runner/life-cycles/pretty-time.d.ts +4 -0
  273. package/src/tasks-runner/life-cycles/pretty-time.js +75 -0
  274. package/src/tasks-runner/life-cycles/pretty-time.js.map +1 -0
  275. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.d.ts +33 -0
  276. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +110 -0
  277. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js.map +1 -0
  278. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.d.ts +31 -0
  279. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js +97 -0
  280. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js.map +1 -0
  281. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.d.ts +19 -0
  282. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js +67 -0
  283. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js.map +1 -0
  284. package/src/tasks-runner/life-cycles/task-timings-life-cycle.d.ts +13 -0
  285. package/src/tasks-runner/life-cycles/task-timings-life-cycle.js +33 -0
  286. package/src/tasks-runner/life-cycles/task-timings-life-cycle.js.map +1 -0
  287. package/src/tasks-runner/remove-old-cache-records.d.ts +1 -0
  288. package/src/tasks-runner/remove-old-cache-records.js +62 -0
  289. package/src/tasks-runner/remove-old-cache-records.js.map +1 -0
  290. package/src/tasks-runner/reporter.d.ts +14 -0
  291. package/src/tasks-runner/reporter.js +11 -0
  292. package/src/tasks-runner/reporter.js.map +1 -0
  293. package/src/tasks-runner/run-command.d.ts +22 -0
  294. package/src/tasks-runner/run-command.js +352 -0
  295. package/src/tasks-runner/run-command.js.map +1 -0
  296. package/src/tasks-runner/task-graph-creator.d.ts +13 -0
  297. package/src/tasks-runner/task-graph-creator.js +71 -0
  298. package/src/tasks-runner/task-graph-creator.js.map +1 -0
  299. package/src/tasks-runner/task-orchestrator.d.ts +38 -0
  300. package/src/tasks-runner/task-orchestrator.js +299 -0
  301. package/src/tasks-runner/task-orchestrator.js.map +1 -0
  302. package/src/tasks-runner/tasks-runner-v2.d.ts +19 -0
  303. package/src/tasks-runner/tasks-runner-v2.js +42 -0
  304. package/src/tasks-runner/tasks-runner-v2.js.map +1 -0
  305. package/src/tasks-runner/tasks-runner.d.ts +45 -0
  306. package/src/tasks-runner/tasks-runner.js +15 -0
  307. package/src/tasks-runner/tasks-runner.js.map +1 -0
  308. package/src/tasks-runner/tasks-schedule.d.ts +33 -0
  309. package/src/tasks-runner/tasks-schedule.js +130 -0
  310. package/src/tasks-runner/tasks-schedule.js.map +1 -0
  311. package/src/tasks-runner/utils.d.ts +32 -0
  312. package/src/tasks-runner/utils.js +234 -0
  313. package/src/tasks-runner/utils.js.map +1 -0
  314. package/src/utils/app-root.d.ts +9 -0
  315. package/src/utils/app-root.js +10 -1
  316. package/src/utils/app-root.js.map +1 -1
  317. package/src/utils/cache-directory.d.ts +4 -0
  318. package/src/utils/cache-directory.js +37 -0
  319. package/src/utils/cache-directory.js.map +1 -0
  320. package/src/utils/default-base.d.ts +1 -0
  321. package/src/utils/default-base.js +16 -0
  322. package/src/utils/default-base.js.map +1 -0
  323. package/src/utils/fileutils.d.ts +4 -0
  324. package/src/utils/fileutils.js +38 -1
  325. package/src/utils/fileutils.js.map +1 -1
  326. package/src/{cli → utils}/find-workspace-root.d.ts +5 -2
  327. package/src/{cli → utils}/find-workspace-root.js +0 -0
  328. package/src/utils/find-workspace-root.js.map +1 -0
  329. package/src/{cli/is_ci.d.ts → utils/is-ci.d.ts} +0 -0
  330. package/src/{cli/is_ci.js → utils/is-ci.js} +2 -1
  331. package/src/utils/is-ci.js.map +1 -0
  332. package/src/utils/json-diff.d.ts +17 -0
  333. package/src/utils/json-diff.js +112 -0
  334. package/src/utils/json-diff.js.map +1 -0
  335. package/src/{shared → utils}/logger.d.ts +0 -0
  336. package/src/{shared → utils}/logger.js +0 -0
  337. package/src/utils/logger.js.map +1 -0
  338. package/src/{shared → utils}/nx-plugin.d.ts +12 -3
  339. package/src/utils/nx-plugin.js +162 -0
  340. package/src/utils/nx-plugin.js.map +1 -0
  341. package/src/{cli → utils}/output.d.ts +17 -14
  342. package/src/utils/output.js +170 -0
  343. package/src/utils/output.js.map +1 -0
  344. package/src/{shared → utils}/package-json.d.ts +2 -2
  345. package/src/{shared → utils}/package-json.js +0 -0
  346. package/src/utils/package-json.js.map +1 -0
  347. package/src/{shared → utils}/package-manager.d.ts +0 -0
  348. package/src/{shared → utils}/package-manager.js +0 -0
  349. package/src/utils/package-manager.js.map +1 -0
  350. package/src/{shared → utils}/params.d.ts +5 -4
  351. package/src/{shared → utils}/params.js +3 -3
  352. package/src/utils/params.js.map +1 -0
  353. package/src/utils/path.d.ts +8 -0
  354. package/src/utils/path.js +22 -0
  355. package/src/utils/path.js.map +1 -0
  356. package/src/utils/perf-logging.d.ts +1 -0
  357. package/src/utils/perf-logging.js +12 -0
  358. package/src/utils/perf-logging.js.map +1 -0
  359. package/src/utils/plugins/community-plugins.d.ts +3 -0
  360. package/src/utils/plugins/community-plugins.js +47 -0
  361. package/src/utils/plugins/community-plugins.js.map +1 -0
  362. package/src/utils/plugins/core-plugins.d.ts +3 -0
  363. package/src/utils/plugins/core-plugins.js +80 -0
  364. package/src/utils/plugins/core-plugins.js.map +1 -0
  365. package/src/utils/plugins/index.d.ts +4 -0
  366. package/src/utils/plugins/index.js +16 -0
  367. package/src/utils/plugins/index.js.map +1 -0
  368. package/src/utils/plugins/installed-plugins.d.ts +3 -0
  369. package/src/utils/plugins/installed-plugins.js +55 -0
  370. package/src/utils/plugins/installed-plugins.js.map +1 -0
  371. package/src/utils/plugins/models.d.ts +31 -0
  372. package/src/{cli/workspace.js → utils/plugins/models.js} +1 -1
  373. package/src/utils/plugins/models.js.map +1 -0
  374. package/src/utils/plugins/plugin-capabilities.d.ts +3 -0
  375. package/src/utils/plugins/plugin-capabilities.js +81 -0
  376. package/src/utils/plugins/plugin-capabilities.js.map +1 -0
  377. package/src/utils/plugins/shared.d.ts +1 -0
  378. package/src/utils/plugins/shared.js +9 -0
  379. package/src/utils/plugins/shared.js.map +1 -0
  380. package/src/utils/print-help.d.ts +10 -0
  381. package/src/utils/print-help.js +46 -0
  382. package/src/utils/print-help.js.map +1 -0
  383. package/src/utils/project-graph-utils.d.ts +12 -0
  384. package/src/utils/project-graph-utils.js +96 -0
  385. package/src/utils/project-graph-utils.js.map +1 -0
  386. package/src/utils/register.d.ts +1 -1
  387. package/src/utils/register.js +14 -9
  388. package/src/utils/register.js.map +1 -1
  389. package/src/utils/strip-indents.d.ts +14 -0
  390. package/src/utils/strip-indents.js +25 -0
  391. package/src/utils/strip-indents.js.map +1 -0
  392. package/src/utils/strip-source-code.d.ts +2 -0
  393. package/src/utils/strip-source-code.js +85 -0
  394. package/src/utils/strip-source-code.js.map +1 -0
  395. package/src/utils/typescript.d.ts +11 -0
  396. package/src/utils/typescript.js +70 -0
  397. package/src/utils/typescript.js.map +1 -0
  398. package/src/utils/version-utils.d.ts +1 -0
  399. package/src/utils/version-utils.js +19 -0
  400. package/src/utils/version-utils.js.map +1 -0
  401. package/src/utils/versions.d.ts +8 -0
  402. package/src/utils/versions.js +12 -0
  403. package/src/utils/versions.js.map +1 -0
  404. package/tasks-runners/default.d.ts +1 -0
  405. package/tasks-runners/default.js +6 -0
  406. package/tasks-runners/default.js.map +1 -0
  407. package/src/cli/decorate-cli.js.map +0 -1
  408. package/src/cli/find-workspace-root.js.map +0 -1
  409. package/src/cli/init-local.d.ts +0 -2
  410. package/src/cli/init-local.js +0 -109
  411. package/src/cli/init-local.js.map +0 -1
  412. package/src/cli/is_ci.js.map +0 -1
  413. package/src/cli/output.js +0 -129
  414. package/src/cli/output.js.map +0 -1
  415. package/src/cli/parse-run-one-options.d.ts +0 -6
  416. package/src/cli/parse-run-one-options.js +0 -139
  417. package/src/cli/parse-run-one-options.js.map +0 -1
  418. package/src/cli/run-cli.js.map +0 -1
  419. package/src/cli/workspace.d.ts +0 -4
  420. package/src/cli/workspace.js.map +0 -1
  421. package/src/commands/generate.d.ts +0 -15
  422. package/src/commands/generate.js.map +0 -1
  423. package/src/commands/help.d.ts +0 -1
  424. package/src/commands/help.js +0 -34
  425. package/src/commands/help.js.map +0 -1
  426. package/src/commands/migrate.js.map +0 -1
  427. package/src/commands/ngcli-adapter.js.map +0 -1
  428. package/src/commands/run.js.map +0 -1
  429. package/src/compat/compat.js.map +0 -1
  430. package/src/shared/logger.js.map +0 -1
  431. package/src/shared/nx-plugin.js +0 -53
  432. package/src/shared/nx-plugin.js.map +0 -1
  433. package/src/shared/package-json.js.map +0 -1
  434. package/src/shared/package-manager.js.map +0 -1
  435. package/src/shared/params.js.map +0 -1
  436. package/src/shared/print-help.d.ts +0 -2
  437. package/src/shared/print-help.js +0 -32
  438. package/src/shared/print-help.js.map +0 -1
@@ -2,65 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.run = exports.runExecutor = exports.validateProject = exports.printRunHelp = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const yargsParser = require("yargs-parser");
6
- const params_1 = require("../shared/params");
7
- const print_help_1 = require("../shared/print-help");
5
+ const params_1 = require("../utils/params");
6
+ const print_help_1 = require("../utils/print-help");
8
7
  const workspace_1 = require("../shared/workspace");
9
- const chalk = require("chalk");
10
- const logger_1 = require("../shared/logger");
11
- const split_target_1 = require("../utils/split-target");
12
8
  const fileutils_1 = require("../utils/fileutils");
13
- const package_json_1 = require("../shared/package-json");
9
+ const package_json_1 = require("../utils/package-json");
14
10
  const path_1 = require("path");
15
11
  const fs_1 = require("fs");
16
- const nx_plugin_1 = require("../shared/nx-plugin");
17
- function throwInvalidInvocation() {
18
- throw new Error(`Specify the project name and the target (e.g., nx run proj:build)`);
19
- }
20
- function parseRunOpts(cwd, args, defaultProjectName) {
21
- const runOptions = (0, params_1.convertToCamelCase)(yargsParser(args, {
22
- boolean: ['help', 'prod'],
23
- string: ['configuration', 'project'],
24
- alias: {
25
- c: 'configuration',
26
- },
27
- configuration: {
28
- 'strip-dashed': false,
29
- },
30
- }));
31
- const help = runOptions.help;
32
- if (!runOptions._ || !runOptions._[0]) {
33
- throwInvalidInvocation();
34
- }
35
- // eslint-disable-next-line prefer-const
36
- let [project, target, configuration] = (0, split_target_1.splitTarget)(runOptions._[0]);
37
- if (!project && defaultProjectName) {
38
- logger_1.logger.debug(`No project name specified. Using default project : ${chalk.bold(defaultProjectName)}`);
39
- project = defaultProjectName;
40
- }
41
- if (runOptions.configuration) {
42
- configuration = runOptions.configuration;
43
- }
44
- if (runOptions.prod) {
45
- configuration = 'production';
46
- }
47
- if (runOptions.project) {
48
- project = runOptions.project;
49
- }
50
- if (!project || !target) {
51
- throwInvalidInvocation();
52
- }
53
- const res = { project, target, configuration, help, runOptions };
54
- delete runOptions['help'];
55
- delete runOptions['_'];
56
- delete runOptions['c'];
57
- delete runOptions['configuration'];
58
- delete runOptions['prod'];
59
- delete runOptions['project'];
60
- return res;
61
- }
62
- function printRunHelp(opts, schema) {
63
- (0, print_help_1.printHelp)(`nx run ${opts.project}:${opts.target}`, schema);
12
+ const nx_plugin_1 = require("../utils/nx-plugin");
13
+ function printRunHelp(opts, schema, plugin) {
14
+ (0, print_help_1.printHelp)(`nx run ${opts.project}:${opts.target}`, schema, Object.assign({ mode: 'run' }, plugin));
64
15
  }
65
16
  exports.printRunHelp = printRunHelp;
66
17
  function validateProject(workspace, projectName) {
@@ -71,20 +22,18 @@ function validateProject(workspace, projectName) {
71
22
  }
72
23
  exports.validateProject = validateProject;
73
24
  function isPromise(v) {
74
- var _a;
75
- return typeof ((_a = v) === null || _a === void 0 ? void 0 : _a.then) === 'function';
25
+ return typeof (v === null || v === void 0 ? void 0 : v.then) === 'function';
76
26
  }
77
27
  function isAsyncIterator(v) {
78
- var _a;
79
- return typeof ((_a = v) === null || _a === void 0 ? void 0 : _a[Symbol.asyncIterator]) === 'function';
28
+ return typeof (v === null || v === void 0 ? void 0 : v[Symbol.asyncIterator]) === 'function';
80
29
  }
81
30
  function promiseToIterator(v) {
82
- return (0, tslib_1.__asyncGenerator)(this, arguments, function* promiseToIterator_1() {
83
- yield yield (0, tslib_1.__await)(yield (0, tslib_1.__await)(v));
31
+ return tslib_1.__asyncGenerator(this, arguments, function* promiseToIterator_1() {
32
+ yield yield tslib_1.__await(yield tslib_1.__await(v));
84
33
  });
85
34
  }
86
35
  function iteratorToProcessStatusCode(i) {
87
- return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
36
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
88
37
  let success;
89
38
  // This is a workaround to fix an issue that only happens with
90
39
  // the @angular-devkit/build-angular:browser builder. Starting
@@ -124,7 +73,7 @@ function createImplicitTargetConfig(root, proj, targetName) {
124
73
  }
125
74
  function runExecutorInternal({ project, target, configuration, }, options, root, cwd, workspace, isVerbose, printHelp) {
126
75
  var _a;
127
- return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
76
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
128
77
  validateProject(workspace, project);
129
78
  const ws = new workspace_1.Workspaces(root);
130
79
  const proj = workspace.projects[project];
@@ -132,13 +81,16 @@ function runExecutorInternal({ project, target, configuration, }, options, root,
132
81
  createImplicitTargetConfig(root, proj, target) ||
133
82
  (0, nx_plugin_1.mergePluginTargetsWithNxTargets)(proj.root, proj.targets, (0, nx_plugin_1.loadNxPlugins)(workspace.plugins))[target];
134
83
  if (!targetConfig) {
135
- throw new Error(`NX Cannot find target '${target}' for project '${project}'`);
84
+ throw new Error(`Cannot find target '${target}' for project '${project}'`);
136
85
  }
137
86
  configuration = configuration !== null && configuration !== void 0 ? configuration : targetConfig.defaultConfiguration;
138
87
  const [nodeModule, executor] = targetConfig.executor.split(':');
139
88
  const { schema, implementationFactory } = ws.readExecutor(nodeModule, executor);
140
89
  if (printHelp) {
141
- printRunHelp({ project, target }, schema);
90
+ printRunHelp({ project, target }, schema, {
91
+ plugin: nodeModule,
92
+ entity: executor,
93
+ });
142
94
  process.exit(0);
143
95
  }
144
96
  const combinedOptions = (0, params_1.combineOptionsForExecutor)(options, configuration, targetConfig, schema, project, ws.relativeCwd(cwd), isVerbose);
@@ -165,8 +117,8 @@ function runExecutorInternal({ project, target, configuration, }, options, root,
165
117
  }
166
118
  }
167
119
  else {
168
- require('../compat/compat');
169
- const observable = yield (yield Promise.resolve().then(() => require('./ngcli-adapter'))).scheduleTarget(root, {
120
+ require('../adapter/compat');
121
+ const observable = yield (yield Promise.resolve().then(() => require('../adapter/ngcli-adapter'))).scheduleTarget(root, {
170
122
  project,
171
123
  target,
172
124
  configuration,
@@ -204,19 +156,17 @@ function runExecutorInternal({ project, target, configuration, }, options, root,
204
156
  * Note that the return value is a promise of an iterator, so you need to await before iterating over it.
205
157
  */
206
158
  function runExecutor(targetDescription, options, context) {
207
- return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
159
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
208
160
  return yield runExecutorInternal(targetDescription, options, context.root, context.cwd, context.workspace, context.isVerbose, false);
209
161
  });
210
162
  }
211
163
  exports.runExecutor = runExecutor;
212
- function run(cwd, root, args, isVerbose) {
213
- return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
164
+ function run(cwd, root, targetDescription, overrides, isVerbose, isHelp) {
165
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
214
166
  const ws = new workspace_1.Workspaces(root);
215
- return (0, params_1.handleErrors)(isVerbose, () => (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
167
+ return (0, params_1.handleErrors)(isVerbose, () => tslib_1.__awaiter(this, void 0, void 0, function* () {
216
168
  const workspace = ws.readWorkspaceConfiguration();
217
- const defaultProjectName = ws.calculateDefaultProjectName(cwd, workspace);
218
- const opts = parseRunOpts(cwd, args, defaultProjectName);
219
- return iteratorToProcessStatusCode(yield runExecutorInternal(opts, opts.runOptions, root, cwd, workspace, isVerbose, opts.help));
169
+ return iteratorToProcessStatusCode(yield runExecutorInternal(targetDescription, overrides, root, cwd, workspace, isVerbose, isHelp));
220
170
  }));
221
171
  });
222
172
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../../packages/nx/src/command-line/run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import * as yargs from 'yargs';
2
+ import { NxAffectedConfig } from '../shared/nx';
3
+ export declare function names(name: string): {
4
+ name: string;
5
+ className: string;
6
+ propertyName: string;
7
+ constantName: string;
8
+ fileName: string;
9
+ };
10
+ export interface RawNxArgs extends NxArgs {
11
+ prod?: boolean;
12
+ }
13
+ export interface NxArgs {
14
+ target?: string;
15
+ configuration?: string;
16
+ runner?: string;
17
+ parallel?: number;
18
+ untracked?: boolean;
19
+ uncommitted?: boolean;
20
+ all?: boolean;
21
+ base?: string;
22
+ head?: string;
23
+ exclude?: string[];
24
+ files?: string[];
25
+ onlyFailed?: boolean;
26
+ 'only-failed'?: boolean;
27
+ verbose?: boolean;
28
+ help?: boolean;
29
+ version?: boolean;
30
+ plain?: boolean;
31
+ withDeps?: boolean;
32
+ 'with-deps'?: boolean;
33
+ projects?: string[];
34
+ select?: string;
35
+ skipNxCache?: boolean;
36
+ 'skip-nx-cache'?: boolean;
37
+ 'hide-cached-output'?: boolean;
38
+ hideCachedOutput?: boolean;
39
+ scan?: boolean;
40
+ }
41
+ export declare function splitArgsIntoNxArgsAndOverrides(args: yargs.Arguments, mode: 'run-one' | 'run-many' | 'affected' | 'print-affected', options?: {
42
+ printWarnings: boolean;
43
+ }): {
44
+ nxArgs: NxArgs;
45
+ overrides: yargs.Arguments;
46
+ };
47
+ export declare function getAffectedConfig(): NxAffectedConfig;
48
+ export declare function parseFiles(options: NxArgs): {
49
+ files: string[];
50
+ };
51
+ export declare function getProjectRoots(projectNames: string[]): string[];
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getProjectRoots = exports.parseFiles = exports.getAffectedConfig = exports.splitArgsIntoNxArgsAndOverrides = exports.names = void 0;
4
+ const yargsParser = require("yargs-parser");
5
+ const file_utils_1 = require("../core/file-utils");
6
+ const output_1 = require("../utils/output");
7
+ const child_process_1 = require("child_process");
8
+ function names(name) {
9
+ return {
10
+ name,
11
+ className: toClassName(name),
12
+ propertyName: toPropertyName(name),
13
+ constantName: toConstantName(name),
14
+ fileName: toFileName(name),
15
+ };
16
+ }
17
+ exports.names = names;
18
+ /**
19
+ * Hyphenated to UpperCamelCase
20
+ */
21
+ function toClassName(str) {
22
+ return toCapitalCase(toPropertyName(str));
23
+ }
24
+ /**
25
+ * Hyphenated to lowerCamelCase
26
+ */
27
+ function toPropertyName(s) {
28
+ return s
29
+ .replace(/([^a-zA-Z0-9])+(.)?/g, (_, __, chr) => chr ? chr.toUpperCase() : '')
30
+ .replace(/[^a-zA-Z\d]/g, '')
31
+ .replace(/^([A-Z])/, (m) => m.toLowerCase());
32
+ }
33
+ /**
34
+ * Hyphenated to CONSTANT_CASE
35
+ */
36
+ function toConstantName(s) {
37
+ return s.replace(/([^a-zA-Z0-9])/g, '_').toUpperCase();
38
+ }
39
+ /**
40
+ * Upper camelCase to lowercase, hyphenated
41
+ */
42
+ function toFileName(s) {
43
+ return s
44
+ .replace(/([a-z\d])([A-Z])/g, '$1_$2')
45
+ .toLowerCase()
46
+ .replace(/[ _]/g, '-');
47
+ }
48
+ /**
49
+ * Capitalizes the first letter of a string
50
+ */
51
+ function toCapitalCase(s) {
52
+ return s.charAt(0).toUpperCase() + s.substr(1);
53
+ }
54
+ const runOne = [
55
+ 'target',
56
+ 'configuration',
57
+ 'prod',
58
+ 'runner',
59
+ 'parallel',
60
+ 'max-parallel',
61
+ 'exclude',
62
+ 'only-failed',
63
+ 'help',
64
+ 'with-deps',
65
+ 'skip-nx-cache',
66
+ 'scan',
67
+ 'hide-cached-output',
68
+ ];
69
+ const runMany = [...runOne, 'projects', 'all'];
70
+ const runAffected = [
71
+ ...runOne,
72
+ 'untracked',
73
+ 'uncommitted',
74
+ 'all',
75
+ 'base',
76
+ 'head',
77
+ 'files',
78
+ 'plain',
79
+ 'select',
80
+ ];
81
+ const ignoreArgs = ['$0', '_'];
82
+ function splitArgsIntoNxArgsAndOverrides(args, mode, options = { printWarnings: true }) {
83
+ const nxSpecific = mode === 'run-one' ? runOne : mode === 'run-many' ? runMany : runAffected;
84
+ const nxArgs = {};
85
+ const overrides = yargsParser(args._, {
86
+ configuration: {
87
+ 'strip-dashed': true,
88
+ 'dot-notation': false,
89
+ },
90
+ });
91
+ // This removes the overrides from the nxArgs._
92
+ args._ = overrides._;
93
+ delete overrides._;
94
+ Object.entries(args).forEach(([key, value]) => {
95
+ const dasherized = names(key).fileName;
96
+ if (nxSpecific.includes(dasherized) || dasherized.startsWith('nx-')) {
97
+ if (value !== undefined)
98
+ nxArgs[key] = value;
99
+ }
100
+ else if (!ignoreArgs.includes(key)) {
101
+ overrides[key] = value;
102
+ }
103
+ });
104
+ if (mode === 'run-many') {
105
+ if (!nxArgs.projects) {
106
+ nxArgs.projects = [];
107
+ }
108
+ else {
109
+ nxArgs.projects = args.projects
110
+ .split(',')
111
+ .map((p) => p.trim());
112
+ }
113
+ }
114
+ if (nxArgs.prod) {
115
+ delete nxArgs.prod;
116
+ nxArgs.configuration = 'production';
117
+ }
118
+ // TODO(v15): onlyFailed should not be an option
119
+ if (options.printWarnings && nxArgs.onlyFailed) {
120
+ output_1.output.warn({
121
+ title: `--onlyFailed is deprecated. All tasks will be run.`,
122
+ });
123
+ }
124
+ if (mode === 'affected') {
125
+ if (options.printWarnings && nxArgs.all) {
126
+ output_1.output.warn({
127
+ title: `Running affected:* commands with --all can result in very slow builds.`,
128
+ bodyLines: [
129
+ `${output_1.output.bold('--all')} is not meant to be used for any sizable project or to be used in CI.`,
130
+ '',
131
+ `${output_1.output.dim('Learn more about checking only what is affected: https://nx.dev/latest/angular/cli/affected#affected')}`,
132
+ ],
133
+ });
134
+ }
135
+ if (!nxArgs.files &&
136
+ !nxArgs.uncommitted &&
137
+ !nxArgs.untracked &&
138
+ !nxArgs.base &&
139
+ !nxArgs.head &&
140
+ !nxArgs.all &&
141
+ args._.length >= 3) {
142
+ nxArgs.base = args._[1];
143
+ nxArgs.head = args._[2];
144
+ }
145
+ // Allow setting base and head via environment variables (lower priority then direct command arguments)
146
+ if (!nxArgs.base && process.env.NX_BASE) {
147
+ nxArgs.base = process.env.NX_BASE;
148
+ if (options.printWarnings) {
149
+ output_1.output.note({
150
+ title: `No explicit --base argument provided, but found environment variable NX_BASE so using its value as the affected base: ${output_1.output.bold(`${nxArgs.base}`)}`,
151
+ });
152
+ }
153
+ }
154
+ if (!nxArgs.head && process.env.NX_HEAD) {
155
+ nxArgs.head = process.env.NX_HEAD;
156
+ if (options.printWarnings) {
157
+ output_1.output.note({
158
+ title: `No explicit --head argument provided, but found environment variable NX_HEAD so using its value as the affected head: ${output_1.output.bold(`${nxArgs.head}`)}`,
159
+ });
160
+ }
161
+ }
162
+ if (!nxArgs.base) {
163
+ const affectedConfig = getAffectedConfig();
164
+ nxArgs.base = affectedConfig.defaultBase;
165
+ // No user-provided arguments to set the affected criteria, so inform the user of the defaults being used
166
+ if (options.printWarnings &&
167
+ !nxArgs.head &&
168
+ !nxArgs.files &&
169
+ !nxArgs.uncommitted &&
170
+ !nxArgs.untracked &&
171
+ !nxArgs.all) {
172
+ output_1.output.note({
173
+ title: `Affected criteria defaulted to --base=${output_1.output.bold(`${nxArgs.base}`)} --head=${output_1.output.bold('HEAD')}`,
174
+ });
175
+ }
176
+ }
177
+ }
178
+ if (!nxArgs.skipNxCache) {
179
+ nxArgs.skipNxCache = process.env.NX_SKIP_NX_CACHE === 'true';
180
+ }
181
+ if (args['parallel'] === 'false' || args['parallel'] === false) {
182
+ nxArgs['parallel'] = 1;
183
+ }
184
+ else if (args['parallel'] === 'true' ||
185
+ args['parallel'] === true ||
186
+ args['parallel'] === '') {
187
+ nxArgs['parallel'] = Number(nxArgs['maxParallel'] || nxArgs['max-parallel'] || 3);
188
+ }
189
+ else if (args['parallel'] !== undefined) {
190
+ nxArgs['parallel'] = Number(args['parallel']);
191
+ }
192
+ return { nxArgs, overrides };
193
+ }
194
+ exports.splitArgsIntoNxArgsAndOverrides = splitArgsIntoNxArgsAndOverrides;
195
+ function getAffectedConfig() {
196
+ var _a;
197
+ const config = (0, file_utils_1.readNxJson)();
198
+ return {
199
+ defaultBase: ((_a = config.affected) === null || _a === void 0 ? void 0 : _a.defaultBase) || 'main',
200
+ };
201
+ }
202
+ exports.getAffectedConfig = getAffectedConfig;
203
+ function parseFiles(options) {
204
+ const { files, uncommitted, untracked, base, head } = options;
205
+ if (files) {
206
+ return {
207
+ files,
208
+ };
209
+ }
210
+ else if (uncommitted) {
211
+ return {
212
+ files: getUncommittedFiles(),
213
+ };
214
+ }
215
+ else if (untracked) {
216
+ return {
217
+ files: getUntrackedFiles(),
218
+ };
219
+ }
220
+ else if (base && head) {
221
+ return {
222
+ files: getFilesUsingBaseAndHead(base, head),
223
+ };
224
+ }
225
+ else if (base) {
226
+ return {
227
+ files: Array.from(new Set([
228
+ ...getFilesUsingBaseAndHead(base, 'HEAD'),
229
+ ...getUncommittedFiles(),
230
+ ...getUntrackedFiles(),
231
+ ])),
232
+ };
233
+ }
234
+ }
235
+ exports.parseFiles = parseFiles;
236
+ function getUncommittedFiles() {
237
+ return parseGitOutput(`git diff --name-only --relative HEAD .`);
238
+ }
239
+ function getUntrackedFiles() {
240
+ return parseGitOutput(`git ls-files --others --exclude-standard`);
241
+ }
242
+ function getFilesUsingBaseAndHead(base, head) {
243
+ let mergeBase;
244
+ try {
245
+ mergeBase = (0, child_process_1.execSync)(`git merge-base "${base}" "${head}"`, {
246
+ maxBuffer: file_utils_1.TEN_MEGABYTES,
247
+ })
248
+ .toString()
249
+ .trim();
250
+ }
251
+ catch (_a) {
252
+ mergeBase = (0, child_process_1.execSync)(`git merge-base --fork-point "${base}" "${head}"`, {
253
+ maxBuffer: file_utils_1.TEN_MEGABYTES,
254
+ })
255
+ .toString()
256
+ .trim();
257
+ }
258
+ return parseGitOutput(`git diff --name-only --relative "${mergeBase}" "${head}"`);
259
+ }
260
+ function parseGitOutput(command) {
261
+ return (0, child_process_1.execSync)(command, { maxBuffer: file_utils_1.TEN_MEGABYTES })
262
+ .toString('utf-8')
263
+ .split('\n')
264
+ .map((a) => a.trim())
265
+ .filter((a) => a.length > 0);
266
+ }
267
+ function getProjectRoots(projectNames) {
268
+ const { projects } = (0, file_utils_1.readWorkspaceJson)();
269
+ return projectNames.map((name) => projects[name].root);
270
+ }
271
+ exports.getProjectRoots = getProjectRoots;
272
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../packages/nx/src/command-line/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function workspaceGenerators(args: string[]): Promise<0 | 1>;
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.workspaceGenerators = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const chalk = require("chalk");
6
+ const child_process_1 = require("child_process");
7
+ const fs_1 = require("fs");
8
+ const fs_extra_1 = require("fs-extra");
9
+ const path = require("path");
10
+ const yargsParser = require("yargs-parser");
11
+ const app_root_1 = require("nx/src/utils/app-root");
12
+ const fileutils_1 = require("../utils/fileutils");
13
+ const output_1 = require("../utils/output");
14
+ const generate_1 = require("nx/src/command-line/generate");
15
+ const fileutils_2 = require("nx/src/utils/fileutils");
16
+ const logger_1 = require("nx/src/utils/logger");
17
+ const package_manager_1 = require("../utils/package-manager");
18
+ const path_1 = require("../utils/path");
19
+ const rootDirectory = app_root_1.appRootPath;
20
+ const toolsDir = path.join(rootDirectory, 'tools');
21
+ const generatorsDir = path.join(toolsDir, 'generators');
22
+ const toolsTsConfigPath = path.join(toolsDir, 'tsconfig.tools.json');
23
+ function workspaceGenerators(args) {
24
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
25
+ const outDir = compileTools();
26
+ const collectionFile = path.join(outDir, 'workspace-generators.json');
27
+ const parsedArgs = parseOptions(args, outDir, collectionFile);
28
+ if (parsedArgs.listGenerators) {
29
+ return listGenerators(collectionFile);
30
+ }
31
+ else {
32
+ process.exitCode = yield (0, generate_1.generate)(process.cwd(), parsedArgs);
33
+ }
34
+ });
35
+ }
36
+ exports.workspaceGenerators = workspaceGenerators;
37
+ // compile tools
38
+ function compileTools() {
39
+ const toolsOutDir = getToolsOutDir();
40
+ (0, fs_extra_1.removeSync)(toolsOutDir);
41
+ compileToolsDir(toolsOutDir);
42
+ const generatorsOutDir = path.join(toolsOutDir, 'generators');
43
+ const collectionData = constructCollection();
44
+ (0, fileutils_2.writeJsonFile)(path.join(generatorsOutDir, 'workspace-generators.json'), collectionData);
45
+ return generatorsOutDir;
46
+ }
47
+ function getToolsOutDir() {
48
+ const outDir = toolsTsConfig().compilerOptions.outDir;
49
+ if (!outDir) {
50
+ logger_1.logger.error(`${toolsTsConfigPath} must specify an outDir`);
51
+ process.exit(1);
52
+ }
53
+ return path.resolve(toolsDir, outDir);
54
+ }
55
+ function compileToolsDir(outDir) {
56
+ (0, fs_extra_1.copySync)(generatorsDir, path.join(outDir, 'generators'));
57
+ const tmpTsConfigPath = createTmpTsConfig(toolsTsConfigPath, {
58
+ include: [path.join(generatorsDir, '**/*.ts')],
59
+ });
60
+ const pmc = (0, package_manager_1.getPackageManagerCommand)();
61
+ const tsc = `${pmc.exec} tsc`;
62
+ try {
63
+ (0, child_process_1.execSync)(`${tsc} -p ${tmpTsConfigPath}`, {
64
+ stdio: 'inherit',
65
+ cwd: rootDirectory,
66
+ });
67
+ }
68
+ catch (_a) {
69
+ process.exit(1);
70
+ }
71
+ }
72
+ function constructCollection() {
73
+ const generators = {};
74
+ (0, fs_1.readdirSync)(generatorsDir).forEach((c) => {
75
+ const childDir = path.join(generatorsDir, c);
76
+ if ((0, fs_1.existsSync)(path.join(childDir, 'schema.json'))) {
77
+ generators[c] = {
78
+ factory: `./${c}`,
79
+ schema: `./${(0, path_1.normalizePath)(path.join(c, 'schema.json'))}`,
80
+ description: `Schematic ${c}`,
81
+ };
82
+ }
83
+ });
84
+ return {
85
+ name: 'workspace-generators',
86
+ version: '1.0',
87
+ generators,
88
+ schematics: generators,
89
+ };
90
+ }
91
+ function toolsTsConfig() {
92
+ return (0, fileutils_2.readJsonFile)(toolsTsConfigPath);
93
+ }
94
+ function listGenerators(collectionFile) {
95
+ try {
96
+ const bodyLines = [];
97
+ const collection = (0, fileutils_2.readJsonFile)(collectionFile);
98
+ bodyLines.push(chalk.bold(chalk.green('WORKSPACE GENERATORS')));
99
+ bodyLines.push('');
100
+ bodyLines.push(...Object.entries(collection.generators).map(([schematicName, schematicMeta]) => {
101
+ return `${chalk.bold(schematicName)} : ${schematicMeta.description}`;
102
+ }));
103
+ bodyLines.push('');
104
+ output_1.output.log({
105
+ title: '',
106
+ bodyLines,
107
+ });
108
+ }
109
+ catch (error) {
110
+ logger_1.logger.fatal(error.message);
111
+ return 1;
112
+ }
113
+ return 0;
114
+ }
115
+ function parseOptions(args, outDir, collectionFile) {
116
+ const schemaPath = path.join(outDir, args[0], 'schema.json');
117
+ let booleanProps = [];
118
+ if ((0, fileutils_1.fileExists)(schemaPath)) {
119
+ const { properties } = (0, fileutils_2.readJsonFile)(path.join(outDir, args[0], 'schema.json'));
120
+ if (properties) {
121
+ booleanProps = Object.keys(properties).filter((key) => properties[key].type === 'boolean');
122
+ }
123
+ }
124
+ const parsed = yargsParser(args, {
125
+ boolean: ['dryRun', 'listGenerators', 'interactive', ...booleanProps],
126
+ alias: {
127
+ dryRun: ['d'],
128
+ listSchematics: ['l'],
129
+ },
130
+ default: {
131
+ interactive: true,
132
+ },
133
+ });
134
+ parsed['generator'] = `${collectionFile}:${parsed['_'][0]}`;
135
+ parsed['_'] = parsed['_'].slice(1);
136
+ return parsed;
137
+ }
138
+ function createTmpTsConfig(tsconfigPath, updateConfig) {
139
+ const tmpTsConfigPath = path.join(path.dirname(tsconfigPath), 'tsconfig.generated.json');
140
+ const originalTSConfig = (0, fileutils_2.readJsonFile)(tsconfigPath);
141
+ const generatedTSConfig = Object.assign(Object.assign({}, originalTSConfig), updateConfig);
142
+ process.on('exit', () => cleanupTmpTsConfigFile(tmpTsConfigPath));
143
+ (0, fileutils_2.writeJsonFile)(tmpTsConfigPath, generatedTSConfig);
144
+ return tmpTsConfigPath;
145
+ }
146
+ function cleanupTmpTsConfigFile(tmpTsConfigPath) {
147
+ if (tmpTsConfigPath) {
148
+ (0, fs_extra_1.removeSync)(tmpTsConfigPath);
149
+ }
150
+ }
151
+ //# sourceMappingURL=workspace-generators.js.map