@ohos-ports/nx 17.3.2-beta.0

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 (671) hide show
  1. package/.eslintrc.json +106 -0
  2. package/LICENSE +22 -0
  3. package/README.md +66 -0
  4. package/bin/init-local.d.ts +8 -0
  5. package/bin/init-local.js +175 -0
  6. package/bin/nx-cloud.d.ts +2 -0
  7. package/bin/nx-cloud.js +55 -0
  8. package/bin/nx.d.ts +2 -0
  9. package/bin/nx.js +230 -0
  10. package/bin/post-install.d.ts +1 -0
  11. package/bin/post-install.js +55 -0
  12. package/bin/run-executor.d.ts +1 -0
  13. package/bin/run-executor.js +66 -0
  14. package/executors.json +19 -0
  15. package/generators.json +10 -0
  16. package/migrations.json +87 -0
  17. package/package.json +186 -0
  18. package/plugins/package-json.d.ts +1 -0
  19. package/plugins/package-json.js +12 -0
  20. package/presets/core.json +1 -0
  21. package/presets/npm.json +7 -0
  22. package/release/changelog-renderer/index.d.ts +56 -0
  23. package/release/changelog-renderer/index.js +238 -0
  24. package/release/index.d.ts +4 -0
  25. package/release/index.js +11 -0
  26. package/schemas/nx-schema.json +623 -0
  27. package/schemas/project-schema.json +244 -0
  28. package/schemas/workspace-schema.json +185 -0
  29. package/src/adapter/angular-json.d.ts +9 -0
  30. package/src/adapter/angular-json.js +127 -0
  31. package/src/adapter/compat.d.ts +2 -0
  32. package/src/adapter/compat.js +136 -0
  33. package/src/adapter/decorate-cli.d.ts +1 -0
  34. package/src/adapter/decorate-cli.js +25 -0
  35. package/src/adapter/ngcli-adapter.d.ts +90 -0
  36. package/src/adapter/ngcli-adapter.js +848 -0
  37. package/src/adapter/rxjs-for-await.d.ts +109 -0
  38. package/src/adapter/rxjs-for-await.js +362 -0
  39. package/src/command-line/add/add.d.ts +2 -0
  40. package/src/command-line/add/add.js +165 -0
  41. package/src/command-line/add/command-object.d.ts +7 -0
  42. package/src/command-line/add/command-object.js +24 -0
  43. package/src/command-line/affected/affected.d.ts +7 -0
  44. package/src/command-line/affected/affected.js +105 -0
  45. package/src/command-line/affected/command-object.d.ts +16 -0
  46. package/src/command-line/affected/command-object.js +93 -0
  47. package/src/command-line/affected/print-affected.d.ts +11 -0
  48. package/src/command-line/affected/print-affected.js +108 -0
  49. package/src/command-line/connect/command-object.d.ts +3 -0
  50. package/src/command-line/connect/command-object.js +19 -0
  51. package/src/command-line/connect/connect-to-nx-cloud.d.ts +8 -0
  52. package/src/command-line/connect/connect-to-nx-cloud.js +96 -0
  53. package/src/command-line/connect/view-logs.d.ts +1 -0
  54. package/src/command-line/connect/view-logs.js +53 -0
  55. package/src/command-line/daemon/command-object.d.ts +2 -0
  56. package/src/command-line/daemon/command-object.js +21 -0
  57. package/src/command-line/daemon/daemon.d.ts +2 -0
  58. package/src/command-line/daemon/daemon.js +27 -0
  59. package/src/command-line/examples.d.ts +5 -0
  60. package/src/command-line/examples.js +347 -0
  61. package/src/command-line/exec/command-object.d.ts +2 -0
  62. package/src/command-line/exec/command-object.js +19 -0
  63. package/src/command-line/exec/exec.d.ts +1 -0
  64. package/src/command-line/exec/exec.js +141 -0
  65. package/src/command-line/format/command-object.d.ts +3 -0
  66. package/src/command-line/format/command-object.js +46 -0
  67. package/src/command-line/format/format.d.ts +2 -0
  68. package/src/command-line/format/format.js +155 -0
  69. package/src/command-line/generate/command-object.d.ts +2 -0
  70. package/src/command-line/generate/command-object.js +70 -0
  71. package/src/command-line/generate/generate.d.ts +21 -0
  72. package/src/command-line/generate/generate.js +266 -0
  73. package/src/command-line/generate/generator-utils.d.ts +17 -0
  74. package/src/command-line/generate/generator-utils.js +87 -0
  75. package/src/command-line/graph/command-object.d.ts +2 -0
  76. package/src/command-line/graph/command-object.js +21 -0
  77. package/src/command-line/graph/graph.d.ts +39 -0
  78. package/src/command-line/graph/graph.js +661 -0
  79. package/src/command-line/init/command-object.d.ts +2 -0
  80. package/src/command-line/init/command-object.js +81 -0
  81. package/src/command-line/init/implementation/add-nx-to-monorepo.d.ts +4 -0
  82. package/src/command-line/init/implementation/add-nx-to-monorepo.js +133 -0
  83. package/src/command-line/init/implementation/add-nx-to-nest.d.ts +5 -0
  84. package/src/command-line/init/implementation/add-nx-to-nest.js +346 -0
  85. package/src/command-line/init/implementation/add-nx-to-npm-repo.d.ts +4 -0
  86. package/src/command-line/init/implementation/add-nx-to-npm-repo.js +66 -0
  87. package/src/command-line/init/implementation/angular/index.d.ts +2 -0
  88. package/src/command-line/init/implementation/angular/index.js +128 -0
  89. package/src/command-line/init/implementation/angular/integrated-workspace.d.ts +1 -0
  90. package/src/command-line/init/implementation/angular/integrated-workspace.js +10 -0
  91. package/src/command-line/init/implementation/angular/legacy-angular-versions.d.ts +2 -0
  92. package/src/command-line/init/implementation/angular/legacy-angular-versions.js +125 -0
  93. package/src/command-line/init/implementation/angular/standalone-workspace.d.ts +1 -0
  94. package/src/command-line/init/implementation/angular/standalone-workspace.js +178 -0
  95. package/src/command-line/init/implementation/angular/types.d.ts +20 -0
  96. package/src/command-line/init/implementation/angular/types.js +2 -0
  97. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts +7 -0
  98. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.js +91 -0
  99. package/src/command-line/init/implementation/dot-nx/nxw.d.ts +1 -0
  100. package/src/command-line/init/implementation/dot-nx/nxw.js +116 -0
  101. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.d.ts +1 -0
  102. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.js +22 -0
  103. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.d.ts +1 -0
  104. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.js +19 -0
  105. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.d.ts +1 -0
  106. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.js +18 -0
  107. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.d.ts +1 -0
  108. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.js +16 -0
  109. package/src/command-line/init/implementation/react/clean-up-files.d.ts +1 -0
  110. package/src/command-line/init/implementation/react/clean-up-files.js +31 -0
  111. package/src/command-line/init/implementation/react/index.d.ts +4 -0
  112. package/src/command-line/init/implementation/react/index.js +230 -0
  113. package/src/command-line/init/implementation/react/read-name-from-package-json.d.ts +1 -0
  114. package/src/command-line/init/implementation/react/read-name-from-package-json.js +17 -0
  115. package/src/command-line/init/implementation/react/rename-js-to-jsx.d.ts +1 -0
  116. package/src/command-line/init/implementation/react/rename-js-to-jsx.js +23 -0
  117. package/src/command-line/init/implementation/react/tsconfig-setup.d.ts +1 -0
  118. package/src/command-line/init/implementation/react/tsconfig-setup.js +109 -0
  119. package/src/command-line/init/implementation/react/write-craco-config.d.ts +1 -0
  120. package/src/command-line/init/implementation/react/write-craco-config.js +62 -0
  121. package/src/command-line/init/implementation/react/write-vite-config.d.ts +1 -0
  122. package/src/command-line/init/implementation/react/write-vite-config.js +38 -0
  123. package/src/command-line/init/implementation/react/write-vite-index-html.d.ts +1 -0
  124. package/src/command-line/init/implementation/react/write-vite-index-html.js +25 -0
  125. package/src/command-line/init/implementation/utils.d.ts +16 -0
  126. package/src/command-line/init/implementation/utils.js +176 -0
  127. package/src/command-line/init/init-v1.d.ts +11 -0
  128. package/src/command-line/init/init-v1.js +118 -0
  129. package/src/command-line/init/init-v2.d.ts +7 -0
  130. package/src/command-line/init/init-v2.js +165 -0
  131. package/src/command-line/list/command-object.d.ts +2 -0
  132. package/src/command-line/list/command-object.js +15 -0
  133. package/src/command-line/list/list.d.ts +13 -0
  134. package/src/command-line/list/list.js +47 -0
  135. package/src/command-line/migrate/command-object.d.ts +3 -0
  136. package/src/command-line/migrate/command-object.js +150 -0
  137. package/src/command-line/migrate/migrate.d.ts +114 -0
  138. package/src/command-line/migrate/migrate.js +1115 -0
  139. package/src/command-line/new/command-object.d.ts +2 -0
  140. package/src/command-line/new/command-object.js +25 -0
  141. package/src/command-line/new/new.d.ts +3 -0
  142. package/src/command-line/new/new.js +30 -0
  143. package/src/command-line/nx-commands.d.ts +10 -0
  144. package/src/command-line/nx-commands.js +77 -0
  145. package/src/command-line/release/changelog.d.ts +8 -0
  146. package/src/command-line/release/changelog.js +696 -0
  147. package/src/command-line/release/command-object.d.ts +45 -0
  148. package/src/command-line/release/command-object.js +237 -0
  149. package/src/command-line/release/config/config.d.ts +56 -0
  150. package/src/command-line/release/config/config.js +501 -0
  151. package/src/command-line/release/config/filter-release-groups.d.ts +13 -0
  152. package/src/command-line/release/config/filter-release-groups.js +150 -0
  153. package/src/command-line/release/index.d.ts +16 -0
  154. package/src/command-line/release/index.js +23 -0
  155. package/src/command-line/release/publish.d.ts +8 -0
  156. package/src/command-line/release/publish.js +149 -0
  157. package/src/command-line/release/release.d.ts +4 -0
  158. package/src/command-line/release/release.js +124 -0
  159. package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts +7 -0
  160. package/src/command-line/release/utils/batch-projects-by-generator-config.js +37 -0
  161. package/src/command-line/release/utils/exec-command.d.ts +1 -0
  162. package/src/command-line/release/utils/exec-command.js +34 -0
  163. package/src/command-line/release/utils/git.d.ts +55 -0
  164. package/src/command-line/release/utils/git.js +261 -0
  165. package/src/command-line/release/utils/github.d.ts +27 -0
  166. package/src/command-line/release/utils/github.js +229 -0
  167. package/src/command-line/release/utils/launch-editor.d.ts +1 -0
  168. package/src/command-line/release/utils/launch-editor.js +42 -0
  169. package/src/command-line/release/utils/markdown.d.ts +6 -0
  170. package/src/command-line/release/utils/markdown.js +29 -0
  171. package/src/command-line/release/utils/print-changes.d.ts +7 -0
  172. package/src/command-line/release/utils/print-changes.js +60 -0
  173. package/src/command-line/release/utils/resolve-nx-json-error-message.d.ts +1 -0
  174. package/src/command-line/release/utils/resolve-nx-json-error-message.js +52 -0
  175. package/src/command-line/release/utils/resolve-semver-specifier.d.ts +3 -0
  176. package/src/command-line/release/utils/resolve-semver-specifier.js +69 -0
  177. package/src/command-line/release/utils/semver.d.ts +17 -0
  178. package/src/command-line/release/utils/semver.js +56 -0
  179. package/src/command-line/release/utils/shared.d.ts +34 -0
  180. package/src/command-line/release/utils/shared.js +211 -0
  181. package/src/command-line/release/version.d.ts +42 -0
  182. package/src/command-line/release/version.js +347 -0
  183. package/src/command-line/repair/command-object.d.ts +2 -0
  184. package/src/command-line/repair/command-object.js +22 -0
  185. package/src/command-line/repair/repair.d.ts +3 -0
  186. package/src/command-line/repair/repair.js +37 -0
  187. package/src/command-line/repair.d.ts +4 -0
  188. package/src/command-line/repair.js +7 -0
  189. package/src/command-line/report/command-object.d.ts +2 -0
  190. package/src/command-line/report/command-object.js +11 -0
  191. package/src/command-line/report/report.d.ts +48 -0
  192. package/src/command-line/report/report.js +232 -0
  193. package/src/command-line/reset/command-object.d.ts +2 -0
  194. package/src/command-line/reset/command-object.js +9 -0
  195. package/src/command-line/reset/reset.d.ts +1 -0
  196. package/src/command-line/reset/reset.js +23 -0
  197. package/src/command-line/run/command-object.d.ts +6 -0
  198. package/src/command-line/run/command-object.js +25 -0
  199. package/src/command-line/run/executor-utils.d.ts +7 -0
  200. package/src/command-line/run/executor-utils.js +73 -0
  201. package/src/command-line/run/run-one.d.ts +7 -0
  202. package/src/command-line/run/run-one.js +117 -0
  203. package/src/command-line/run/run.d.ts +51 -0
  204. package/src/command-line/run/run.js +172 -0
  205. package/src/command-line/run-many/command-object.d.ts +2 -0
  206. package/src/command-line/run-many/command-object.js +11 -0
  207. package/src/command-line/run-many/run-many.d.ts +10 -0
  208. package/src/command-line/run-many/run-many.js +90 -0
  209. package/src/command-line/run-many.d.ts +4 -0
  210. package/src/command-line/run-many.js +7 -0
  211. package/src/command-line/run-one.d.ts +4 -0
  212. package/src/command-line/run-one.js +7 -0
  213. package/src/command-line/run.d.ts +4 -0
  214. package/src/command-line/run.js +7 -0
  215. package/src/command-line/show/command-object.d.ts +22 -0
  216. package/src/command-line/show/command-object.js +84 -0
  217. package/src/command-line/show/show.d.ts +3 -0
  218. package/src/command-line/show/show.js +126 -0
  219. package/src/command-line/watch/command-object.d.ts +2 -0
  220. package/src/command-line/watch/command-object.js +64 -0
  221. package/src/command-line/watch/watch.d.ts +23 -0
  222. package/src/command-line/watch/watch.js +169 -0
  223. package/src/command-line/watch.d.ts +4 -0
  224. package/src/command-line/watch.js +7 -0
  225. package/src/command-line/yargs-utils/documentation.d.ts +2 -0
  226. package/src/command-line/yargs-utils/documentation.js +12 -0
  227. package/src/command-line/yargs-utils/shared-options.d.ts +89 -0
  228. package/src/command-line/yargs-utils/shared-options.js +284 -0
  229. package/src/commands-runner/command-graph.d.ts +13 -0
  230. package/src/commands-runner/command-graph.js +2 -0
  231. package/src/commands-runner/create-command-graph.d.ts +4 -0
  232. package/src/commands-runner/create-command-graph.js +44 -0
  233. package/src/commands-runner/get-command-projects.d.ts +3 -0
  234. package/src/commands-runner/get-command-projects.js +19 -0
  235. package/src/config/calculate-default-project-name.d.ts +4 -0
  236. package/src/config/calculate-default-project-name.js +42 -0
  237. package/src/config/configuration.d.ts +8 -0
  238. package/src/config/configuration.js +17 -0
  239. package/src/config/misc-interfaces.d.ts +199 -0
  240. package/src/config/misc-interfaces.js +2 -0
  241. package/src/config/nx-json.d.ts +372 -0
  242. package/src/config/nx-json.js +40 -0
  243. package/src/config/project-graph.d.ts +137 -0
  244. package/src/config/project-graph.js +37 -0
  245. package/src/config/schema-utils.d.ts +15 -0
  246. package/src/config/schema-utils.js +59 -0
  247. package/src/config/task-graph.d.ts +100 -0
  248. package/src/config/task-graph.js +2 -0
  249. package/src/config/workspace-json-project-json.d.ts +189 -0
  250. package/src/config/workspace-json-project-json.js +2 -0
  251. package/src/config/workspaces.d.ts +18 -0
  252. package/src/config/workspaces.js +35 -0
  253. package/src/core/graph/3rdpartylicenses.txt +833 -0
  254. package/src/core/graph/environment.js +1 -0
  255. package/src/core/graph/favicon.ico +0 -0
  256. package/src/core/graph/index.html +31 -0
  257. package/src/core/graph/main.js +1 -0
  258. package/src/core/graph/polyfills.js +1 -0
  259. package/src/core/graph/runtime.js +1 -0
  260. package/src/core/graph/styles.css +3 -0
  261. package/src/core/graph/styles.js +1 -0
  262. package/src/daemon/cache.d.ts +9 -0
  263. package/src/daemon/cache.js +52 -0
  264. package/src/daemon/client/client.d.ts +56 -0
  265. package/src/daemon/client/client.js +359 -0
  266. package/src/daemon/client/daemon-socket-messenger.d.ts +13 -0
  267. package/src/daemon/client/daemon-socket-messenger.js +26 -0
  268. package/src/daemon/client/exec-is-server-available.d.ts +1 -0
  269. package/src/daemon/client/exec-is-server-available.js +11 -0
  270. package/src/daemon/client/generate-help-output.d.ts +1 -0
  271. package/src/daemon/client/generate-help-output.js +26 -0
  272. package/src/daemon/server/file-watching/changed-projects.d.ts +10 -0
  273. package/src/daemon/server/file-watching/changed-projects.js +45 -0
  274. package/src/daemon/server/file-watching/file-watcher-sockets.d.ts +13 -0
  275. package/src/daemon/server/file-watching/file-watcher-sockets.js +66 -0
  276. package/src/daemon/server/handle-hash-tasks.d.ts +10 -0
  277. package/src/daemon/server/handle-hash-tasks.js +26 -0
  278. package/src/daemon/server/handle-outputs-tracking.d.ts +15 -0
  279. package/src/daemon/server/handle-outputs-tracking.js +36 -0
  280. package/src/daemon/server/handle-process-in-background.d.ts +6 -0
  281. package/src/daemon/server/handle-process-in-background.js +33 -0
  282. package/src/daemon/server/handle-request-file-data.d.ts +4 -0
  283. package/src/daemon/server/handle-request-file-data.js +13 -0
  284. package/src/daemon/server/handle-request-project-graph.d.ts +2 -0
  285. package/src/daemon/server/handle-request-project-graph.js +37 -0
  286. package/src/daemon/server/handle-request-shutdown.d.ts +6 -0
  287. package/src/daemon/server/handle-request-shutdown.js +26 -0
  288. package/src/daemon/server/logger.d.ts +18 -0
  289. package/src/daemon/server/logger.js +37 -0
  290. package/src/daemon/server/outputs-tracking.d.ts +8 -0
  291. package/src/daemon/server/outputs-tracking.js +94 -0
  292. package/src/daemon/server/project-graph-incremental-recomputation.d.ts +22 -0
  293. package/src/daemon/server/project-graph-incremental-recomputation.js +227 -0
  294. package/src/daemon/server/server.d.ts +9 -0
  295. package/src/daemon/server/server.js +303 -0
  296. package/src/daemon/server/shutdown-utils.d.ts +17 -0
  297. package/src/daemon/server/shutdown-utils.js +77 -0
  298. package/src/daemon/server/start.d.ts +1 -0
  299. package/src/daemon/server/start.js +17 -0
  300. package/src/daemon/server/watcher.d.ts +12 -0
  301. package/src/daemon/server/watcher.js +96 -0
  302. package/src/daemon/socket-utils.d.ts +11 -0
  303. package/src/daemon/socket-utils.js +42 -0
  304. package/src/daemon/tmp-dir.d.ts +8 -0
  305. package/src/daemon/tmp-dir.js +68 -0
  306. package/src/devkit-exports.d.ts +135 -0
  307. package/src/devkit-exports.js +140 -0
  308. package/src/devkit-internals.d.ts +19 -0
  309. package/src/devkit-internals.js +37 -0
  310. package/src/devkit-testing-exports.d.ts +2 -0
  311. package/src/devkit-testing-exports.js +8 -0
  312. package/src/executors/noop/noop.impl.d.ts +3 -0
  313. package/src/executors/noop/noop.impl.js +6 -0
  314. package/src/executors/noop/schema.json +10 -0
  315. package/src/executors/run-commands/run-commands.impl.d.ts +42 -0
  316. package/src/executors/run-commands/run-commands.impl.js +247 -0
  317. package/src/executors/run-commands/schema.json +150 -0
  318. package/src/executors/run-script/run-script.impl.d.ts +8 -0
  319. package/src/executors/run-script/run-script.impl.js +56 -0
  320. package/src/executors/run-script/schema.json +28 -0
  321. package/src/executors/utils/convert-nx-executor.d.ts +10 -0
  322. package/src/executors/utils/convert-nx-executor.js +82 -0
  323. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts +8 -0
  324. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +49 -0
  325. package/src/generators/testing-utils/create-tree-with-empty-workspace.d.ts +11 -0
  326. package/src/generators/testing-utils/create-tree-with-empty-workspace.js +46 -0
  327. package/src/generators/testing-utils/create-tree.d.ts +5 -0
  328. package/src/generators/testing-utils/create-tree.js +11 -0
  329. package/src/generators/tree.d.ts +128 -0
  330. package/src/generators/tree.js +309 -0
  331. package/src/generators/utils/glob.d.ts +11 -0
  332. package/src/generators/utils/glob.js +35 -0
  333. package/src/generators/utils/json.d.ts +28 -0
  334. package/src/generators/utils/json.js +48 -0
  335. package/src/generators/utils/nx-json.d.ts +11 -0
  336. package/src/generators/utils/nx-json.js +59 -0
  337. package/src/generators/utils/project-configuration.d.ts +42 -0
  338. package/src/generators/utils/project-configuration.js +239 -0
  339. package/src/hasher/create-task-hasher.d.ts +4 -0
  340. package/src/hasher/create-task-hasher.js +16 -0
  341. package/src/hasher/file-hasher.d.ts +2 -0
  342. package/src/hasher/file-hasher.js +19 -0
  343. package/src/hasher/hash-task.d.ts +7 -0
  344. package/src/hasher/hash-task.js +54 -0
  345. package/src/hasher/native-task-hasher-impl.d.ts +19 -0
  346. package/src/hasher/native-task-hasher-impl.js +37 -0
  347. package/src/hasher/node-task-hasher-impl.d.ts +49 -0
  348. package/src/hasher/node-task-hasher-impl.js +431 -0
  349. package/src/hasher/task-hasher.d.ts +129 -0
  350. package/src/hasher/task-hasher.js +266 -0
  351. package/src/index.d.ts +1 -0
  352. package/src/index.js +5 -0
  353. package/src/migrations/update-15-0-0/migrate-to-inputs.d.ts +2 -0
  354. package/src/migrations/update-15-0-0/migrate-to-inputs.js +102 -0
  355. package/src/migrations/update-15-0-0/prefix-outputs.d.ts +2 -0
  356. package/src/migrations/update-15-0-0/prefix-outputs.js +64 -0
  357. package/src/migrations/update-15-1-0/set-project-names.d.ts +2 -0
  358. package/src/migrations/update-15-1-0/set-project-names.js +32 -0
  359. package/src/migrations/update-15-8-2/update-nxw.d.ts +2 -0
  360. package/src/migrations/update-15-8-2/update-nxw.js +7 -0
  361. package/src/migrations/update-16-0-0/remove-nrwl-cli.d.ts +2 -0
  362. package/src/migrations/update-16-0-0/remove-nrwl-cli.js +16 -0
  363. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.d.ts +2 -0
  364. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.js +97 -0
  365. package/src/migrations/update-16-0-0/update-nx-cloud-runner.d.ts +2 -0
  366. package/src/migrations/update-16-0-0/update-nx-cloud-runner.js +27 -0
  367. package/src/migrations/update-16-2-0/remove-run-commands-output-path.d.ts +2 -0
  368. package/src/migrations/update-16-2-0/remove-run-commands-output-path.js +45 -0
  369. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.d.ts +12 -0
  370. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.js +60 -0
  371. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.d.ts +2 -0
  372. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.js +21 -0
  373. package/src/migrations/update-17-0-0/move-cache-directory.d.ts +2 -0
  374. package/src/migrations/update-17-0-0/move-cache-directory.js +35 -0
  375. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.d.ts +2 -0
  376. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.js +72 -0
  377. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.d.ts +2 -0
  378. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.js +122 -0
  379. package/src/migrations/update-17-3-0/nx-release-path.d.ts +3 -0
  380. package/src/migrations/update-17-3-0/nx-release-path.js +49 -0
  381. package/src/migrations/update-17-3-0/update-nxw.d.ts +2 -0
  382. package/src/migrations/update-17-3-0/update-nxw.js +7 -0
  383. package/src/native/assert-supported-platform.d.ts +1 -0
  384. package/src/native/assert-supported-platform.js +39 -0
  385. package/src/native/index.d.ts +192 -0
  386. package/src/native/index.js +289 -0
  387. package/src/native/transform-objects.d.ts +3 -0
  388. package/src/native/transform-objects.js +50 -0
  389. package/src/nx-cloud/debug-logger.d.ts +1 -0
  390. package/src/nx-cloud/debug-logger.js +9 -0
  391. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts +8 -0
  392. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +107 -0
  393. package/src/nx-cloud/generators/connect-to-nx-cloud/schema.json +27 -0
  394. package/src/nx-cloud/nx-cloud-tasks-runner-shell.d.ts +15 -0
  395. package/src/nx-cloud/nx-cloud-tasks-runner-shell.js +41 -0
  396. package/src/nx-cloud/resolution-helpers.d.ts +1 -0
  397. package/src/nx-cloud/resolution-helpers.js +20 -0
  398. package/src/nx-cloud/update-manager.d.ts +17 -0
  399. package/src/nx-cloud/update-manager.js +240 -0
  400. package/src/nx-cloud/utilities/axios.d.ts +2 -0
  401. package/src/nx-cloud/utilities/axios.js +24 -0
  402. package/src/nx-cloud/utilities/environment.d.ts +3 -0
  403. package/src/nx-cloud/utilities/environment.js +47 -0
  404. package/src/nx-cloud/utilities/get-cloud-options.d.ts +2 -0
  405. package/src/nx-cloud/utilities/get-cloud-options.js +11 -0
  406. package/src/plugins/js/hasher/hasher.d.ts +5 -0
  407. package/src/plugins/js/hasher/hasher.js +52 -0
  408. package/src/plugins/js/index.d.ts +4 -0
  409. package/src/plugins/js/index.js +96 -0
  410. package/src/plugins/js/lock-file/lock-file.d.ts +34 -0
  411. package/src/plugins/js/lock-file/lock-file.js +169 -0
  412. package/src/plugins/js/lock-file/npm-parser.d.ts +7 -0
  413. package/src/plugins/js/lock-file/npm-parser.js +463 -0
  414. package/src/plugins/js/lock-file/pnpm-parser.d.ts +7 -0
  415. package/src/plugins/js/lock-file/pnpm-parser.js +294 -0
  416. package/src/plugins/js/lock-file/project-graph-pruning.d.ts +7 -0
  417. package/src/plugins/js/lock-file/project-graph-pruning.js +155 -0
  418. package/src/plugins/js/lock-file/utils/package-json.d.ts +10 -0
  419. package/src/plugins/js/lock-file/utils/package-json.js +34 -0
  420. package/src/plugins/js/lock-file/utils/pnpm-normalizer.d.ts +38 -0
  421. package/src/plugins/js/lock-file/utils/pnpm-normalizer.js +575 -0
  422. package/src/plugins/js/lock-file/yarn-parser.d.ts +7 -0
  423. package/src/plugins/js/lock-file/yarn-parser.js +437 -0
  424. package/src/plugins/js/package-json/create-package-json.d.ts +27 -0
  425. package/src/plugins/js/package-json/create-package-json.js +207 -0
  426. package/src/plugins/js/project-graph/affected/lock-file-changes.d.ts +4 -0
  427. package/src/plugins/js/project-graph/affected/lock-file-changes.js +16 -0
  428. package/src/plugins/js/project-graph/affected/npm-packages.d.ts +4 -0
  429. package/src/plugins/js/project-graph/affected/npm-packages.js +56 -0
  430. package/src/plugins/js/project-graph/affected/touched-projects.d.ts +2 -0
  431. package/src/plugins/js/project-graph/affected/touched-projects.js +18 -0
  432. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.d.ts +4 -0
  433. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.js +63 -0
  434. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.d.ts +6 -0
  435. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.js +33 -0
  436. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.d.ts +3 -0
  437. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.js +82 -0
  438. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.d.ts +3 -0
  439. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.js +94 -0
  440. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.d.ts +7 -0
  441. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.js +156 -0
  442. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.d.ts +32 -0
  443. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +183 -0
  444. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.d.ts +16 -0
  445. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.js +120 -0
  446. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.d.ts +2 -0
  447. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.js +32 -0
  448. package/src/plugins/js/utils/config.d.ts +2 -0
  449. package/src/plugins/js/utils/config.js +65 -0
  450. package/src/plugins/js/utils/register.d.ts +151 -0
  451. package/src/plugins/js/utils/register.js +215 -0
  452. package/src/plugins/js/utils/typescript.d.ts +14 -0
  453. package/src/plugins/js/utils/typescript.js +98 -0
  454. package/src/plugins/js/versions.d.ts +1 -0
  455. package/src/plugins/js/versions.js +4 -0
  456. package/src/plugins/package-json-workspaces/create-nodes.d.ts +19 -0
  457. package/src/plugins/package-json-workspaces/create-nodes.js +130 -0
  458. package/src/plugins/package-json-workspaces/index.d.ts +1 -0
  459. package/src/plugins/package-json-workspaces/index.js +4 -0
  460. package/src/plugins/project-json/build-nodes/package-json-next-to-project-json.d.ts +2 -0
  461. package/src/plugins/project-json/build-nodes/package-json-next-to-project-json.js +47 -0
  462. package/src/plugins/project-json/build-nodes/project-json.d.ts +4 -0
  463. package/src/plugins/project-json/build-nodes/project-json.js +29 -0
  464. package/src/plugins/target-defaults/target-defaults-plugin.d.ts +8 -0
  465. package/src/plugins/target-defaults/target-defaults-plugin.js +103 -0
  466. package/src/project-graph/affected/affected-project-graph-models.d.ts +11 -0
  467. package/src/project-graph/affected/affected-project-graph-models.js +2 -0
  468. package/src/project-graph/affected/affected-project-graph.d.ts +4 -0
  469. package/src/project-graph/affected/affected-project-graph.js +83 -0
  470. package/src/project-graph/affected/locators/project-glob-changes.d.ts +2 -0
  471. package/src/project-graph/affected/locators/project-glob-changes.js +31 -0
  472. package/src/project-graph/affected/locators/workspace-json-changes.d.ts +4 -0
  473. package/src/project-graph/affected/locators/workspace-json-changes.js +47 -0
  474. package/src/project-graph/affected/locators/workspace-projects.d.ts +5 -0
  475. package/src/project-graph/affected/locators/workspace-projects.js +85 -0
  476. package/src/project-graph/build-project-graph.d.ts +14 -0
  477. package/src/project-graph/build-project-graph.js +219 -0
  478. package/src/project-graph/file-map-utils.d.ts +15 -0
  479. package/src/project-graph/file-map-utils.js +63 -0
  480. package/src/project-graph/file-utils.d.ts +31 -0
  481. package/src/project-graph/file-utils.js +181 -0
  482. package/src/project-graph/nx-deps-cache.d.ts +48 -0
  483. package/src/project-graph/nx-deps-cache.js +228 -0
  484. package/src/project-graph/operators.d.ts +12 -0
  485. package/src/project-graph/operators.js +114 -0
  486. package/src/project-graph/project-graph-builder.d.ts +133 -0
  487. package/src/project-graph/project-graph-builder.js +379 -0
  488. package/src/project-graph/project-graph.d.ts +48 -0
  489. package/src/project-graph/project-graph.js +188 -0
  490. package/src/project-graph/utils/build-all-workspace-files.d.ts +2 -0
  491. package/src/project-graph/utils/build-all-workspace-files.js +15 -0
  492. package/src/project-graph/utils/find-project-for-path.d.ts +20 -0
  493. package/src/project-graph/utils/find-project-for-path.js +57 -0
  494. package/src/project-graph/utils/implicit-project-dependencies.d.ts +3 -0
  495. package/src/project-graph/utils/implicit-project-dependencies.js +19 -0
  496. package/src/project-graph/utils/normalize-project-nodes.d.ts +10 -0
  497. package/src/project-graph/utils/normalize-project-nodes.js +92 -0
  498. package/src/project-graph/utils/project-configuration-utils.d.ts +53 -0
  499. package/src/project-graph/utils/project-configuration-utils.js +456 -0
  500. package/src/project-graph/utils/retrieve-workspace-files.d.ts +37 -0
  501. package/src/project-graph/utils/retrieve-workspace-files.js +109 -0
  502. package/src/tasks-runner/batch/batch-messages.d.ts +33 -0
  503. package/src/tasks-runner/batch/batch-messages.js +9 -0
  504. package/src/tasks-runner/batch/run-batch.d.ts +1 -0
  505. package/src/tasks-runner/batch/run-batch.js +77 -0
  506. package/src/tasks-runner/cache.d.ts +36 -0
  507. package/src/tasks-runner/cache.js +236 -0
  508. package/src/tasks-runner/create-task-graph.d.ts +25 -0
  509. package/src/tasks-runner/create-task-graph.js +225 -0
  510. package/src/tasks-runner/default-tasks-runner.d.ts +20 -0
  511. package/src/tasks-runner/default-tasks-runner.js +29 -0
  512. package/src/tasks-runner/fork.d.ts +1 -0
  513. package/src/tasks-runner/fork.js +23 -0
  514. package/src/tasks-runner/forked-process-task-runner.d.ts +44 -0
  515. package/src/tasks-runner/forked-process-task-runner.js +396 -0
  516. package/src/tasks-runner/init-tasks-runner.d.ts +11 -0
  517. package/src/tasks-runner/init-tasks-runner.js +57 -0
  518. package/src/tasks-runner/life-cycle.d.ts +43 -0
  519. package/src/tasks-runner/life-cycle.js +71 -0
  520. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.d.ts +25 -0
  521. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +345 -0
  522. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.d.ts +24 -0
  523. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js +224 -0
  524. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.d.ts +5 -0
  525. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js +16 -0
  526. package/src/tasks-runner/life-cycles/formatting-utils.d.ts +3 -0
  527. package/src/tasks-runner/life-cycles/formatting-utils.js +44 -0
  528. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.d.ts +17 -0
  529. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.js +67 -0
  530. package/src/tasks-runner/life-cycles/pretty-time.d.ts +4 -0
  531. package/src/tasks-runner/life-cycles/pretty-time.js +74 -0
  532. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.d.ts +33 -0
  533. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +99 -0
  534. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.d.ts +31 -0
  535. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js +89 -0
  536. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.d.ts +22 -0
  537. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.js +87 -0
  538. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.d.ts +19 -0
  539. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js +73 -0
  540. package/src/tasks-runner/life-cycles/task-timings-life-cycle.d.ts +13 -0
  541. package/src/tasks-runner/life-cycles/task-timings-life-cycle.js +39 -0
  542. package/src/tasks-runner/life-cycles/view-logs-utils.d.ts +1 -0
  543. package/src/tasks-runner/life-cycles/view-logs-utils.js +16 -0
  544. package/src/tasks-runner/psuedo-ipc.d.ts +49 -0
  545. package/src/tasks-runner/psuedo-ipc.js +140 -0
  546. package/src/tasks-runner/remove-old-cache-records.d.ts +1 -0
  547. package/src/tasks-runner/remove-old-cache-records.js +61 -0
  548. package/src/tasks-runner/run-command.d.ts +28 -0
  549. package/src/tasks-runner/run-command.js +353 -0
  550. package/src/tasks-runner/task-env.d.ts +8 -0
  551. package/src/tasks-runner/task-env.js +144 -0
  552. package/src/tasks-runner/task-graph-utils.d.ts +7 -0
  553. package/src/tasks-runner/task-graph-utils.js +55 -0
  554. package/src/tasks-runner/task-orchestrator.d.ts +50 -0
  555. package/src/tasks-runner/task-orchestrator.js +375 -0
  556. package/src/tasks-runner/tasks-runner.d.ts +23 -0
  557. package/src/tasks-runner/tasks-runner.js +2 -0
  558. package/src/tasks-runner/tasks-schedule.d.ts +36 -0
  559. package/src/tasks-runner/tasks-schedule.js +142 -0
  560. package/src/tasks-runner/utils.d.ts +51 -0
  561. package/src/tasks-runner/utils.js +293 -0
  562. package/src/utils/ab-testing.d.ts +51 -0
  563. package/src/utils/ab-testing.js +91 -0
  564. package/src/utils/all-file-data.d.ts +2 -0
  565. package/src/utils/all-file-data.js +15 -0
  566. package/src/utils/app-root.d.ts +8 -0
  567. package/src/utils/app-root.js +12 -0
  568. package/src/utils/assert-workspace-validity.d.ts +3 -0
  569. package/src/utils/assert-workspace-validity.js +84 -0
  570. package/src/utils/async-iterator.d.ts +2 -0
  571. package/src/utils/async-iterator.js +17 -0
  572. package/src/utils/cache-directory.d.ts +6 -0
  573. package/src/utils/cache-directory.js +60 -0
  574. package/src/utils/child-process.d.ts +19 -0
  575. package/src/utils/child-process.js +117 -0
  576. package/src/utils/chunkify.d.ts +1 -0
  577. package/src/utils/chunkify.js +38 -0
  578. package/src/utils/code-frames.d.ts +14 -0
  579. package/src/utils/code-frames.js +119 -0
  580. package/src/utils/collapse-expanded-outputs.d.ts +1 -0
  581. package/src/utils/collapse-expanded-outputs.js +41 -0
  582. package/src/utils/command-line-utils.d.ts +48 -0
  583. package/src/utils/command-line-utils.js +254 -0
  584. package/src/utils/consume-messages-from-socket.d.ts +1 -0
  585. package/src/utils/consume-messages-from-socket.js +22 -0
  586. package/src/utils/default-base.d.ts +1 -0
  587. package/src/utils/default-base.js +15 -0
  588. package/src/utils/exit-codes.d.ts +6 -0
  589. package/src/utils/exit-codes.js +20 -0
  590. package/src/utils/fileutils.d.ts +69 -0
  591. package/src/utils/fileutils.js +135 -0
  592. package/src/utils/find-matching-projects.d.ts +10 -0
  593. package/src/utils/find-matching-projects.js +198 -0
  594. package/src/utils/find-workspace-root.d.ts +11 -0
  595. package/src/utils/find-workspace-root.js +34 -0
  596. package/src/utils/globs.d.ts +1 -0
  597. package/src/utils/globs.js +8 -0
  598. package/src/utils/ignore.d.ts +8 -0
  599. package/src/utils/ignore.js +68 -0
  600. package/src/utils/installation-directory.d.ts +2 -0
  601. package/src/utils/installation-directory.js +13 -0
  602. package/src/utils/is-ci.d.ts +1 -0
  603. package/src/utils/is-ci.js +20 -0
  604. package/src/utils/json-diff.d.ts +18 -0
  605. package/src/utils/json-diff.js +112 -0
  606. package/src/utils/json.d.ts +44 -0
  607. package/src/utils/json.js +60 -0
  608. package/src/utils/logger.d.ts +11 -0
  609. package/src/utils/logger.js +47 -0
  610. package/src/utils/nx-cloud-utils.d.ts +4 -0
  611. package/src/utils/nx-cloud-utils.js +27 -0
  612. package/src/utils/nx-plugin.d.ts +119 -0
  613. package/src/utils/nx-plugin.deprecated.d.ts +31 -0
  614. package/src/utils/nx-plugin.deprecated.js +25 -0
  615. package/src/utils/nx-plugin.js +293 -0
  616. package/src/utils/object-sort.d.ts +1 -0
  617. package/src/utils/object-sort.js +10 -0
  618. package/src/utils/output.d.ts +72 -0
  619. package/src/utils/output.js +239 -0
  620. package/src/utils/package-json.d.ts +98 -0
  621. package/src/utils/package-json.js +134 -0
  622. package/src/utils/package-manager.d.ts +93 -0
  623. package/src/utils/package-manager.js +300 -0
  624. package/src/utils/params.d.ts +138 -0
  625. package/src/utils/params.js +684 -0
  626. package/src/utils/path.d.ts +19 -0
  627. package/src/utils/path.js +38 -0
  628. package/src/utils/perf-logging.d.ts +1 -0
  629. package/src/utils/perf-logging.js +11 -0
  630. package/src/utils/plugins/community-plugins.d.ts +2 -0
  631. package/src/utils/plugins/community-plugins.js +29 -0
  632. package/src/utils/plugins/core-plugins.d.ts +3 -0
  633. package/src/utils/plugins/core-plugins.js +114 -0
  634. package/src/utils/plugins/index.d.ts +4 -0
  635. package/src/utils/plugins/index.js +14 -0
  636. package/src/utils/plugins/installed-plugins.d.ts +6 -0
  637. package/src/utils/plugins/installed-plugins.js +104 -0
  638. package/src/utils/plugins/local-plugins.d.ts +5 -0
  639. package/src/utils/plugins/local-plugins.js +58 -0
  640. package/src/utils/plugins/models.d.ts +22 -0
  641. package/src/utils/plugins/models.js +2 -0
  642. package/src/utils/plugins/plugin-capabilities.d.ts +4 -0
  643. package/src/utils/plugins/plugin-capabilities.js +124 -0
  644. package/src/utils/plugins/shared.d.ts +1 -0
  645. package/src/utils/plugins/shared.js +8 -0
  646. package/src/utils/print-help.d.ts +11 -0
  647. package/src/utils/print-help.js +265 -0
  648. package/src/utils/project-graph-utils.d.ts +13 -0
  649. package/src/utils/project-graph-utils.js +74 -0
  650. package/src/utils/promised-based-queue.d.ts +6 -0
  651. package/src/utils/promised-based-queue.js +43 -0
  652. package/src/utils/serialize-overrides-into-command-line.d.ts +3 -0
  653. package/src/utils/serialize-overrides-into-command-line.js +43 -0
  654. package/src/utils/split-target.d.ts +3 -0
  655. package/src/utils/split-target.js +49 -0
  656. package/src/utils/strip-indents.d.ts +14 -0
  657. package/src/utils/strip-indents.js +24 -0
  658. package/src/utils/typescript.d.ts +1 -0
  659. package/src/utils/typescript.js +5 -0
  660. package/src/utils/update-nxw.d.ts +2 -0
  661. package/src/utils/update-nxw.js +12 -0
  662. package/src/utils/versions.d.ts +1 -0
  663. package/src/utils/versions.js +4 -0
  664. package/src/utils/workspace-configuration-check.d.ts +1 -0
  665. package/src/utils/workspace-configuration-check.js +37 -0
  666. package/src/utils/workspace-context.d.ts +10 -0
  667. package/src/utils/workspace-context.js +56 -0
  668. package/src/utils/workspace-root.d.ts +6 -0
  669. package/src/utils/workspace-root.js +39 -0
  670. package/tasks-runners/default.d.ts +1 -0
  671. package/tasks-runners/default.js +5 -0
@@ -0,0 +1,36 @@
1
+ import { DefaultTasksRunnerOptions } from './default-tasks-runner';
2
+ import { Task, TaskGraph } from '../config/task-graph';
3
+ import { ProjectGraph } from '../config/project-graph';
4
+ export interface Batch {
5
+ executorName: string;
6
+ taskGraph: TaskGraph;
7
+ }
8
+ export declare class TasksSchedule {
9
+ private readonly projectGraph;
10
+ private readonly taskGraph;
11
+ private readonly options;
12
+ private notScheduledTaskGraph;
13
+ private reverseTaskDeps;
14
+ private reverseProjectGraph;
15
+ private scheduledBatches;
16
+ private scheduledTasks;
17
+ private completedTasks;
18
+ private scheduleRequestsExecutionChain;
19
+ constructor(projectGraph: ProjectGraph, taskGraph: TaskGraph, options: DefaultTasksRunnerOptions);
20
+ scheduleNextTasks(): Promise<void>;
21
+ hasTasks(): boolean;
22
+ complete(taskIds: string[]): void;
23
+ getAllScheduledTasks(): {
24
+ scheduledTasks: string[];
25
+ scheduledBatches: Batch[];
26
+ };
27
+ nextTask(): Task;
28
+ nextBatch(): Batch;
29
+ private scheduleTasks;
30
+ private scheduleTask;
31
+ private scheduleBatches;
32
+ private scheduleBatch;
33
+ private processTaskForBatches;
34
+ private canBatchTaskBeScheduled;
35
+ private canBeScheduled;
36
+ }
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TasksSchedule = void 0;
4
+ const utils_1 = require("./utils");
5
+ const project_graph_utils_1 = require("../utils/project-graph-utils");
6
+ const operators_1 = require("../project-graph/operators");
7
+ class TasksSchedule {
8
+ constructor(projectGraph, taskGraph, options) {
9
+ this.projectGraph = projectGraph;
10
+ this.taskGraph = taskGraph;
11
+ this.options = options;
12
+ this.notScheduledTaskGraph = this.taskGraph;
13
+ this.reverseTaskDeps = (0, utils_1.calculateReverseDeps)(this.taskGraph);
14
+ this.reverseProjectGraph = (0, operators_1.reverse)(this.projectGraph);
15
+ this.scheduledBatches = [];
16
+ this.scheduledTasks = [];
17
+ this.completedTasks = new Set();
18
+ this.scheduleRequestsExecutionChain = Promise.resolve();
19
+ }
20
+ async scheduleNextTasks() {
21
+ this.scheduleRequestsExecutionChain =
22
+ this.scheduleRequestsExecutionChain.then(() => this.scheduleTasks());
23
+ await this.scheduleRequestsExecutionChain;
24
+ }
25
+ hasTasks() {
26
+ return (this.scheduledBatches.length +
27
+ this.scheduledTasks.length +
28
+ Object.keys(this.notScheduledTaskGraph.tasks).length !==
29
+ 0);
30
+ }
31
+ complete(taskIds) {
32
+ for (const taskId of taskIds) {
33
+ this.completedTasks.add(taskId);
34
+ }
35
+ this.notScheduledTaskGraph = (0, utils_1.removeTasksFromTaskGraph)(this.notScheduledTaskGraph, taskIds);
36
+ }
37
+ getAllScheduledTasks() {
38
+ return {
39
+ scheduledTasks: this.scheduledTasks,
40
+ scheduledBatches: this.scheduledBatches,
41
+ };
42
+ }
43
+ nextTask() {
44
+ if (this.scheduledTasks.length > 0) {
45
+ return this.taskGraph.tasks[this.scheduledTasks.shift()];
46
+ }
47
+ else {
48
+ return null;
49
+ }
50
+ }
51
+ nextBatch() {
52
+ return this.scheduledBatches.length > 0
53
+ ? this.scheduledBatches.shift()
54
+ : null;
55
+ }
56
+ async scheduleTasks() {
57
+ if (this.options.batch || process.env.NX_BATCH_MODE === 'true') {
58
+ await this.scheduleBatches();
59
+ }
60
+ for (let root of this.notScheduledTaskGraph.roots) {
61
+ if (this.canBeScheduled(root)) {
62
+ await this.scheduleTask(root);
63
+ }
64
+ }
65
+ }
66
+ async scheduleTask(taskId) {
67
+ this.notScheduledTaskGraph = (0, utils_1.removeTasksFromTaskGraph)(this.notScheduledTaskGraph, [taskId]);
68
+ this.scheduledTasks = this.scheduledTasks
69
+ .concat(taskId)
70
+ // NOTE: sort task by most dependent on first
71
+ .sort((taskId1, taskId2) => {
72
+ // First compare the length of task dependencies.
73
+ const taskDifference = this.reverseTaskDeps[taskId2].length -
74
+ this.reverseTaskDeps[taskId1].length;
75
+ if (taskDifference !== 0) {
76
+ return taskDifference;
77
+ }
78
+ // Tie-breaker for tasks with equal number of task dependencies.
79
+ // Most likely tasks with no dependencies such as test
80
+ const project1 = this.taskGraph.tasks[taskId1].target.project;
81
+ const project2 = this.taskGraph.tasks[taskId2].target.project;
82
+ return ((0, project_graph_utils_1.findAllProjectNodeDependencies)(project2, this.reverseProjectGraph)
83
+ .length -
84
+ (0, project_graph_utils_1.findAllProjectNodeDependencies)(project1, this.reverseProjectGraph)
85
+ .length);
86
+ });
87
+ }
88
+ async scheduleBatches() {
89
+ const batchMap = {};
90
+ for (const root of this.notScheduledTaskGraph.roots) {
91
+ const rootTask = this.notScheduledTaskGraph.tasks[root];
92
+ const executorName = await (0, utils_1.getExecutorNameForTask)(rootTask, this.projectGraph);
93
+ await this.processTaskForBatches(batchMap, rootTask, executorName, true);
94
+ }
95
+ for (const [executorName, taskGraph] of Object.entries(batchMap)) {
96
+ this.scheduleBatch({ executorName, taskGraph });
97
+ }
98
+ }
99
+ scheduleBatch({ executorName, taskGraph }) {
100
+ // Create a new task graph without the tasks that are being scheduled as part of this batch
101
+ this.notScheduledTaskGraph = (0, utils_1.removeTasksFromTaskGraph)(this.notScheduledTaskGraph, Object.keys(taskGraph.tasks));
102
+ this.scheduledBatches.push({ executorName, taskGraph });
103
+ }
104
+ async processTaskForBatches(batches, task, rootExecutorName, isRoot) {
105
+ if (!this.canBatchTaskBeScheduled(task.id, batches[rootExecutorName])) {
106
+ return;
107
+ }
108
+ const { batchImplementationFactory } = await (0, utils_1.getExecutorForTask)(task, this.projectGraph);
109
+ const executorName = await (0, utils_1.getExecutorNameForTask)(task, this.projectGraph);
110
+ if (rootExecutorName !== executorName) {
111
+ return;
112
+ }
113
+ if (!batchImplementationFactory) {
114
+ return;
115
+ }
116
+ const batch = (batches[rootExecutorName] =
117
+ batches[rootExecutorName] ??
118
+ {
119
+ tasks: {},
120
+ dependencies: {},
121
+ roots: [],
122
+ });
123
+ batch.tasks[task.id] = task;
124
+ batch.dependencies[task.id] =
125
+ this.notScheduledTaskGraph.dependencies[task.id];
126
+ if (isRoot) {
127
+ batch.roots.push(task.id);
128
+ }
129
+ for (const dep of this.reverseTaskDeps[task.id]) {
130
+ const depTask = this.taskGraph.tasks[dep];
131
+ await this.processTaskForBatches(batches, depTask, rootExecutorName, false);
132
+ }
133
+ }
134
+ canBatchTaskBeScheduled(taskId, batchTaskGraph) {
135
+ // all deps have either completed or belong to the same batch
136
+ return this.taskGraph.dependencies[taskId].every((id) => this.completedTasks.has(id) || !!batchTaskGraph?.tasks[id]);
137
+ }
138
+ canBeScheduled(taskId) {
139
+ return this.taskGraph.dependencies[taskId].every((id) => this.completedTasks.has(id));
140
+ }
141
+ }
142
+ exports.TasksSchedule = TasksSchedule;
@@ -0,0 +1,51 @@
1
+ import { Task, TaskGraph } from '../config/task-graph';
2
+ import { ProjectGraph, ProjectGraphProjectNode } from '../config/project-graph';
3
+ import { TargetDependencyConfig } from '../config/workspace-json-project-json';
4
+ import { CustomHasher } from '../config/misc-interfaces';
5
+ export declare function getCommandAsString(execCommand: string, task: Task): string;
6
+ export declare function getDependencyConfigs({ project, target }: {
7
+ project: string;
8
+ target: string;
9
+ }, defaultDependencyConfigs: Record<string, (TargetDependencyConfig | string)[]>, projectGraph: ProjectGraph): TargetDependencyConfig[] | undefined;
10
+ export declare function expandDependencyConfigSyntaxSugar(dependencyConfigString: string, graph: ProjectGraph): TargetDependencyConfig;
11
+ export declare function getOutputs(p: Record<string, ProjectGraphProjectNode>, target: Task['target'], overrides: Task['overrides']): string[];
12
+ declare class InvalidOutputsError extends Error {
13
+ outputs: string[];
14
+ invalidOutputs: Set<string>;
15
+ constructor(outputs: string[], invalidOutputs: Set<string>);
16
+ private static createMessage;
17
+ }
18
+ export declare function validateOutputs(outputs: string[]): void;
19
+ export declare function transformLegacyOutputs(projectRoot: string, error: InvalidOutputsError): string[];
20
+ /**
21
+ * @deprecated Pass the target and overrides instead. This will be removed in v19.
22
+ */
23
+ export declare function getOutputsForTargetAndConfiguration(task: Task, node: ProjectGraphProjectNode): string[];
24
+ export declare function getOutputsForTargetAndConfiguration(target: Task['target'] | Task, overrides: Task['overrides'] | ProjectGraphProjectNode, node: ProjectGraphProjectNode): string[];
25
+ export declare function interpolate(template: string, data: any): string;
26
+ export declare function getExecutorNameForTask(task: Task, projectGraph: ProjectGraph): Promise<string>;
27
+ export declare function getExecutorForTask(task: Task, projectGraph: ProjectGraph): Promise<import("../config/misc-interfaces").ExecutorConfig & {
28
+ isNgCompat: boolean;
29
+ isNxExecutor: boolean;
30
+ }>;
31
+ export declare function getCustomHasher(task: Task, projectGraph: ProjectGraph): Promise<CustomHasher> | null;
32
+ export declare function removeTasksFromTaskGraph(graph: TaskGraph, ids: string[]): TaskGraph;
33
+ export declare function removeIdsFromGraph<T>(graph: {
34
+ roots: string[];
35
+ dependencies: Record<string, string[]>;
36
+ }, ids: string[], mapWithIds: Record<string, T>): {
37
+ mapWithIds: Record<string, T>;
38
+ roots: string[];
39
+ dependencies: Record<string, string[]>;
40
+ };
41
+ export declare function calculateReverseDeps(taskGraph: TaskGraph): Record<string, string[]>;
42
+ export declare function getCliPath(): string;
43
+ export declare function getPrintableCommandArgsForTask(task: Task): string[];
44
+ export declare function getSerializedArgsForTask(task: Task, isVerbose: boolean): string[];
45
+ export declare function shouldStreamOutput(task: Task, initiatingProject: string | null): boolean;
46
+ export declare function isCacheableTask(task: Task, options: {
47
+ cacheableOperations?: string[] | null;
48
+ cacheableTargets?: string[] | null;
49
+ }): boolean;
50
+ export declare function unparse(options: Object): string[];
51
+ export {};
@@ -0,0 +1,293 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.unparse = exports.isCacheableTask = exports.shouldStreamOutput = exports.getSerializedArgsForTask = exports.getPrintableCommandArgsForTask = exports.getCliPath = exports.calculateReverseDeps = exports.removeIdsFromGraph = exports.removeTasksFromTaskGraph = exports.getCustomHasher = exports.getExecutorForTask = exports.getExecutorNameForTask = exports.interpolate = exports.getOutputsForTargetAndConfiguration = exports.transformLegacyOutputs = exports.validateOutputs = exports.getOutputs = exports.expandDependencyConfigSyntaxSugar = exports.getDependencyConfigs = exports.getCommandAsString = void 0;
4
+ const output_1 = require("../utils/output");
5
+ const path_1 = require("path");
6
+ const workspace_root_1 = require("../utils/workspace-root");
7
+ const path_2 = require("../utils/path");
8
+ const fileutils_1 = require("../utils/fileutils");
9
+ const serialize_overrides_into_command_line_1 = require("../utils/serialize-overrides-into-command-line");
10
+ const split_target_1 = require("../utils/split-target");
11
+ const executor_utils_1 = require("../command-line/run/executor-utils");
12
+ const project_graph_1 = require("../project-graph/project-graph");
13
+ function getCommandAsString(execCommand, task) {
14
+ const args = getPrintableCommandArgsForTask(task);
15
+ return [execCommand, 'nx', ...args].join(' ').trim();
16
+ }
17
+ exports.getCommandAsString = getCommandAsString;
18
+ function getDependencyConfigs({ project, target }, defaultDependencyConfigs, projectGraph) {
19
+ const dependencyConfigs = (projectGraph.nodes[project].data?.targets[target]?.dependsOn ??
20
+ defaultDependencyConfigs[target] ??
21
+ []).map((config) => typeof config === 'string'
22
+ ? expandDependencyConfigSyntaxSugar(config, projectGraph)
23
+ : config);
24
+ for (const dependencyConfig of dependencyConfigs) {
25
+ if (dependencyConfig.projects && dependencyConfig.dependencies) {
26
+ output_1.output.error({
27
+ title: `dependsOn is improperly configured for ${project}:${target}`,
28
+ bodyLines: [
29
+ `dependsOn.projects and dependsOn.dependencies cannot be used together.`,
30
+ ],
31
+ });
32
+ process.exit(1);
33
+ }
34
+ }
35
+ return dependencyConfigs;
36
+ }
37
+ exports.getDependencyConfigs = getDependencyConfigs;
38
+ function expandDependencyConfigSyntaxSugar(dependencyConfigString, graph) {
39
+ const [dependencies, targetString] = dependencyConfigString.startsWith('^')
40
+ ? [true, dependencyConfigString.substring(1)]
41
+ : [false, dependencyConfigString];
42
+ // Support for `project:target` syntax doesn't make sense for
43
+ // dependencies, so we only support `target` syntax for dependencies.
44
+ if (dependencies) {
45
+ return {
46
+ target: targetString,
47
+ dependencies: true,
48
+ };
49
+ }
50
+ // Support for both `project:target` and `target:with:colons` syntax
51
+ const [maybeProject, ...segments] = (0, split_target_1.splitByColons)(targetString);
52
+ // if no additional segments are provided, then the string references
53
+ // a target of the same project
54
+ if (!segments.length) {
55
+ return { target: maybeProject };
56
+ }
57
+ return {
58
+ // Only the first segment could be a project. If it is, the rest is a target.
59
+ // If its not, then the whole targetString was a target with colons in its name.
60
+ target: maybeProject in graph.nodes ? segments.join(':') : targetString,
61
+ // If the first segment is a project, then we have a specific project. Otherwise, we don't.
62
+ projects: maybeProject in graph.nodes ? [maybeProject] : undefined,
63
+ };
64
+ }
65
+ exports.expandDependencyConfigSyntaxSugar = expandDependencyConfigSyntaxSugar;
66
+ function getOutputs(p, target, overrides) {
67
+ return getOutputsForTargetAndConfiguration(target, overrides, p[target.project]);
68
+ }
69
+ exports.getOutputs = getOutputs;
70
+ class InvalidOutputsError extends Error {
71
+ constructor(outputs, invalidOutputs) {
72
+ super(InvalidOutputsError.createMessage(invalidOutputs));
73
+ this.outputs = outputs;
74
+ this.invalidOutputs = invalidOutputs;
75
+ }
76
+ static createMessage(invalidOutputs) {
77
+ const invalidOutputsList = '\n - ' + Array.from(invalidOutputs).join('\n - ');
78
+ return `The following outputs are invalid:${invalidOutputsList}\nPlease run "nx repair" to repair your configuration`;
79
+ }
80
+ }
81
+ function validateOutputs(outputs) {
82
+ const invalidOutputs = new Set();
83
+ for (const output of outputs) {
84
+ if (!/^!?{[\s\S]+}/.test(output)) {
85
+ invalidOutputs.add(output);
86
+ }
87
+ }
88
+ if (invalidOutputs.size > 0) {
89
+ throw new InvalidOutputsError(outputs, invalidOutputs);
90
+ }
91
+ }
92
+ exports.validateOutputs = validateOutputs;
93
+ function transformLegacyOutputs(projectRoot, error) {
94
+ return error.outputs.map((output) => {
95
+ if (!error.invalidOutputs.has(output)) {
96
+ return output;
97
+ }
98
+ let [isNegated, outputPath] = output.startsWith('!')
99
+ ? [true, output.substring(1)]
100
+ : [false, output];
101
+ const relativePath = (0, fileutils_1.isRelativePath)(outputPath)
102
+ ? output
103
+ : (0, path_1.relative)(projectRoot, outputPath);
104
+ const isWithinProject = !relativePath.startsWith('..');
105
+ return ((isNegated ? '!' : '') +
106
+ (0, path_2.joinPathFragments)(isWithinProject ? '{projectRoot}' : '{workspaceRoot}', isWithinProject ? relativePath : outputPath));
107
+ });
108
+ }
109
+ exports.transformLegacyOutputs = transformLegacyOutputs;
110
+ /**
111
+ * Returns the list of outputs that will be cached.
112
+ */
113
+ function getOutputsForTargetAndConfiguration(taskTargetOrTask, overridesOrNode, node) {
114
+ const taskTarget = 'id' in taskTargetOrTask ? taskTargetOrTask.target : taskTargetOrTask;
115
+ const overrides = 'id' in taskTargetOrTask ? taskTargetOrTask.overrides : overridesOrNode;
116
+ node = 'id' in taskTargetOrTask ? overridesOrNode : node;
117
+ const { target, configuration } = taskTarget;
118
+ const targetConfiguration = node.data.targets[target];
119
+ const options = {
120
+ ...targetConfiguration.options,
121
+ ...targetConfiguration?.configurations?.[configuration],
122
+ ...overrides,
123
+ };
124
+ if (targetConfiguration?.outputs) {
125
+ validateOutputs(targetConfiguration.outputs);
126
+ return targetConfiguration.outputs
127
+ .map((output) => {
128
+ return interpolate(output, {
129
+ projectRoot: node.data.root,
130
+ projectName: node.name,
131
+ project: { ...node.data, name: node.name }, // this is legacy
132
+ options,
133
+ });
134
+ })
135
+ .filter((output) => !!output && !output.match(/{(projectRoot|workspaceRoot|(options.*))}/));
136
+ }
137
+ // Keep backwards compatibility in case `outputs` doesn't exist
138
+ if (options.outputPath) {
139
+ return Array.isArray(options.outputPath)
140
+ ? options.outputPath
141
+ : [options.outputPath];
142
+ }
143
+ else if (target === 'build' || target === 'prepare') {
144
+ return [
145
+ `dist/${node.data.root}`,
146
+ `${node.data.root}/dist`,
147
+ `${node.data.root}/build`,
148
+ `${node.data.root}/public`,
149
+ ];
150
+ }
151
+ else {
152
+ return [];
153
+ }
154
+ }
155
+ exports.getOutputsForTargetAndConfiguration = getOutputsForTargetAndConfiguration;
156
+ function interpolate(template, data) {
157
+ if (template.includes('{workspaceRoot}', 1)) {
158
+ throw new Error(`Output '${template}' is invalid. {workspaceRoot} can only be used at the beginning of the expression.`);
159
+ }
160
+ if (data.projectRoot == '.' && template.includes('{projectRoot}', 1)) {
161
+ throw new Error(`Output '${template}' is invalid. When {projectRoot} is '.', it can only be used at the beginning of the expression.`);
162
+ }
163
+ let res = template.replace('{workspaceRoot}/', '');
164
+ if (data.projectRoot == '.') {
165
+ res = res.replace('{projectRoot}/', '');
166
+ }
167
+ return res.replace(/{([\s\S]+?)}/g, (match) => {
168
+ let value = data;
169
+ let path = match.slice(1, -1).trim().split('.');
170
+ for (let idx = 0; idx < path.length; idx++) {
171
+ if (!value[path[idx]]) {
172
+ return match;
173
+ }
174
+ value = value[path[idx]];
175
+ }
176
+ return value;
177
+ });
178
+ }
179
+ exports.interpolate = interpolate;
180
+ async function getExecutorNameForTask(task, projectGraph) {
181
+ const project = projectGraph.nodes[task.target.project].data;
182
+ return project.targets[task.target.target].executor;
183
+ }
184
+ exports.getExecutorNameForTask = getExecutorNameForTask;
185
+ async function getExecutorForTask(task, projectGraph) {
186
+ const executor = await getExecutorNameForTask(task, projectGraph);
187
+ const [nodeModule, executorName] = executor.split(':');
188
+ return (0, executor_utils_1.getExecutorInformation)(nodeModule, executorName, workspace_root_1.workspaceRoot, (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph).projects);
189
+ }
190
+ exports.getExecutorForTask = getExecutorForTask;
191
+ async function getCustomHasher(task, projectGraph) {
192
+ const factory = (await getExecutorForTask(task, projectGraph)).hasherFactory;
193
+ return factory ? factory() : null;
194
+ }
195
+ exports.getCustomHasher = getCustomHasher;
196
+ function removeTasksFromTaskGraph(graph, ids) {
197
+ const newGraph = removeIdsFromGraph(graph, ids, graph.tasks);
198
+ return {
199
+ dependencies: newGraph.dependencies,
200
+ roots: newGraph.roots,
201
+ tasks: newGraph.mapWithIds,
202
+ };
203
+ }
204
+ exports.removeTasksFromTaskGraph = removeTasksFromTaskGraph;
205
+ function removeIdsFromGraph(graph, ids, mapWithIds) {
206
+ const filteredMapWithIds = {};
207
+ const dependencies = {};
208
+ const removedSet = new Set(ids);
209
+ for (let id of Object.keys(mapWithIds)) {
210
+ if (!removedSet.has(id)) {
211
+ filteredMapWithIds[id] = mapWithIds[id];
212
+ dependencies[id] = graph.dependencies[id].filter((depId) => !removedSet.has(depId));
213
+ }
214
+ }
215
+ return {
216
+ mapWithIds: filteredMapWithIds,
217
+ dependencies: dependencies,
218
+ roots: Object.keys(dependencies).filter((k) => dependencies[k].length === 0),
219
+ };
220
+ }
221
+ exports.removeIdsFromGraph = removeIdsFromGraph;
222
+ function calculateReverseDeps(taskGraph) {
223
+ const reverseTaskDeps = {};
224
+ Object.keys(taskGraph.tasks).forEach((t) => {
225
+ reverseTaskDeps[t] = [];
226
+ });
227
+ Object.keys(taskGraph.dependencies).forEach((taskId) => {
228
+ taskGraph.dependencies[taskId].forEach((d) => {
229
+ reverseTaskDeps[d].push(taskId);
230
+ });
231
+ });
232
+ return reverseTaskDeps;
233
+ }
234
+ exports.calculateReverseDeps = calculateReverseDeps;
235
+ function getCliPath() {
236
+ return require.resolve(`../../bin/run-executor.js`);
237
+ }
238
+ exports.getCliPath = getCliPath;
239
+ function getPrintableCommandArgsForTask(task) {
240
+ const args = task.overrides['__overrides_unparsed__'];
241
+ const target = task.target.target.includes(':')
242
+ ? `"${task.target.target}"`
243
+ : task.target.target;
244
+ const config = task.target.configuration
245
+ ? `:${task.target.configuration}`
246
+ : '';
247
+ return ['run', `${task.target.project}:${target}${config}`, ...args];
248
+ }
249
+ exports.getPrintableCommandArgsForTask = getPrintableCommandArgsForTask;
250
+ function getSerializedArgsForTask(task, isVerbose) {
251
+ return [
252
+ JSON.stringify({
253
+ targetDescription: task.target,
254
+ overrides: task.overrides,
255
+ isVerbose: isVerbose,
256
+ }),
257
+ ];
258
+ }
259
+ exports.getSerializedArgsForTask = getSerializedArgsForTask;
260
+ function shouldStreamOutput(task, initiatingProject) {
261
+ if (process.env.NX_STREAM_OUTPUT === 'true')
262
+ return true;
263
+ if (longRunningTask(task))
264
+ return true;
265
+ if (task.target.project === initiatingProject)
266
+ return true;
267
+ return false;
268
+ }
269
+ exports.shouldStreamOutput = shouldStreamOutput;
270
+ function isCacheableTask(task, options) {
271
+ if (task.cache !== undefined && !longRunningTask(task)) {
272
+ return task.cache;
273
+ }
274
+ const cacheable = options.cacheableOperations || options.cacheableTargets;
275
+ return (cacheable &&
276
+ cacheable.indexOf(task.target.target) > -1 &&
277
+ !longRunningTask(task));
278
+ }
279
+ exports.isCacheableTask = isCacheableTask;
280
+ function longRunningTask(task) {
281
+ const t = task.target.target;
282
+ return ((!!task.overrides['watch'] && task.overrides['watch'] !== 'false') ||
283
+ t.endsWith(':watch') ||
284
+ t.endsWith('-watch') ||
285
+ t === 'serve' ||
286
+ t === 'dev' ||
287
+ t === 'start');
288
+ }
289
+ // TODO: vsavkin remove when nx-cloud doesn't depend on it
290
+ function unparse(options) {
291
+ return (0, serialize_overrides_into_command_line_1.serializeOverridesIntoCommandLine)(options);
292
+ }
293
+ exports.unparse = unparse;
@@ -0,0 +1,51 @@
1
+ export type MessageOptionKey = 'yes' | 'skip';
2
+ declare const messageOptions: {
3
+ readonly setupNxCloud: readonly [{
4
+ readonly code: "enable-caching";
5
+ readonly message: "Would you like remote caching to make your build faster?";
6
+ readonly initial: 0;
7
+ readonly choices: readonly [{
8
+ readonly value: "yes";
9
+ readonly name: "Yes";
10
+ }, {
11
+ readonly value: "skip";
12
+ readonly name: "Skip for now";
13
+ }];
14
+ readonly footer: "\nRead more about remote cache at https://nx.dev/ci/features/remote-cache";
15
+ readonly hint: "\n(it's free and can be disabled any time)";
16
+ }];
17
+ readonly setupViewLogs: readonly [{
18
+ readonly code: "connect-to-view-logs";
19
+ readonly message: "To view the logs, Nx needs to connect your workspace to Nx Cloud and upload the most recent run details";
20
+ readonly initial: 0;
21
+ readonly choices: readonly [{
22
+ readonly value: "yes";
23
+ readonly name: "Yes";
24
+ readonly hint: "Connect to Nx Cloud and upload the run details";
25
+ }, {
26
+ readonly value: "skip";
27
+ readonly name: "No";
28
+ }];
29
+ readonly footer: "\nRead more about remote cache at https://nx.dev/ci/features/remote-cache";
30
+ readonly hint: "\n(it's free and can be disabled any time)";
31
+ }];
32
+ };
33
+ export type MessageKey = keyof typeof messageOptions;
34
+ export type MessageData = typeof messageOptions[MessageKey][number];
35
+ export declare class PromptMessages {
36
+ private selectedMessages;
37
+ getPrompt(key: MessageKey): MessageData;
38
+ codeOfSelectedPromptMessage(key: string): string;
39
+ }
40
+ export declare const messages: PromptMessages;
41
+ /**
42
+ * We are incrementing a counter to track how often create-nx-workspace is used in CI
43
+ * vs dev environments. No personal information is collected.
44
+ */
45
+ export declare function recordStat(opts: {
46
+ command: string;
47
+ nxVersion: string;
48
+ useCloud: boolean;
49
+ meta: string;
50
+ }): Promise<void>;
51
+ export {};
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.recordStat = exports.messages = exports.PromptMessages = void 0;
4
+ const is_ci_1 = require("./is-ci");
5
+ const messageOptions = {
6
+ setupNxCloud: [
7
+ {
8
+ code: 'enable-caching',
9
+ message: `Would you like remote caching to make your build faster?`,
10
+ initial: 0,
11
+ choices: [
12
+ { value: 'yes', name: 'Yes' },
13
+ { value: 'skip', name: 'Skip for now' },
14
+ ],
15
+ footer: '\nRead more about remote cache at https://nx.dev/ci/features/remote-cache',
16
+ hint: `\n(it's free and can be disabled any time)`,
17
+ },
18
+ ],
19
+ setupViewLogs: [
20
+ {
21
+ code: 'connect-to-view-logs',
22
+ message: `To view the logs, Nx needs to connect your workspace to Nx Cloud and upload the most recent run details`,
23
+ initial: 0,
24
+ choices: [
25
+ {
26
+ value: 'yes',
27
+ name: 'Yes',
28
+ hint: 'Connect to Nx Cloud and upload the run details',
29
+ },
30
+ { value: 'skip', name: 'No' },
31
+ ],
32
+ footer: '\nRead more about remote cache at https://nx.dev/ci/features/remote-cache',
33
+ hint: `\n(it's free and can be disabled any time)`,
34
+ },
35
+ ],
36
+ };
37
+ class PromptMessages {
38
+ constructor() {
39
+ this.selectedMessages = {};
40
+ }
41
+ getPrompt(key) {
42
+ if (this.selectedMessages[key] === undefined) {
43
+ if (process.env.NX_GENERATE_DOCS_PROCESS === 'true') {
44
+ this.selectedMessages[key] = 0;
45
+ }
46
+ else {
47
+ this.selectedMessages[key] = Math.floor(Math.random() * messageOptions[key].length);
48
+ }
49
+ }
50
+ return messageOptions[key][this.selectedMessages[key]];
51
+ }
52
+ codeOfSelectedPromptMessage(key) {
53
+ if (this.selectedMessages[key] === undefined)
54
+ return null;
55
+ return messageOptions[key][this.selectedMessages[key]].code;
56
+ }
57
+ }
58
+ exports.PromptMessages = PromptMessages;
59
+ exports.messages = new PromptMessages();
60
+ /**
61
+ * We are incrementing a counter to track how often create-nx-workspace is used in CI
62
+ * vs dev environments. No personal information is collected.
63
+ */
64
+ async function recordStat(opts) {
65
+ try {
66
+ const major = Number(opts.nxVersion.split('.')[0]);
67
+ if (process.env.NX_VERBOSE_LOGGING === 'true') {
68
+ console.log(`Record stat. Major: ${major}`);
69
+ }
70
+ if (major < 10 || major > 16)
71
+ return; // test version, skip it
72
+ const axios = require('axios');
73
+ await (axios['default'] ?? axios)
74
+ .create({
75
+ baseURL: 'https://cloud.nx.app',
76
+ timeout: 400,
77
+ })
78
+ .post('/nx-cloud/stats', {
79
+ command: opts.command,
80
+ isCI: (0, is_ci_1.isCI)(),
81
+ useCloud: opts.useCloud,
82
+ meta: opts.meta,
83
+ });
84
+ }
85
+ catch (e) {
86
+ if (process.env.NX_VERBOSE_LOGGING === 'true') {
87
+ console.error(e);
88
+ }
89
+ }
90
+ }
91
+ exports.recordStat = recordStat;
@@ -0,0 +1,2 @@
1
+ import { FileData } from '../config/project-graph';
2
+ export declare function allFileData(): Promise<FileData[]>;