nx 13.9.3 → 13.10.0-beta.2

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 +1 -1
  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 +4 -11
  20. package/src/{commands → adapter}/ngcli-adapter.js +13 -37
  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 +42 -63
  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 +21 -58
  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 +15 -63
  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 +21 -20
  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 +0 -0
  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
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractCachedFileData = exports.shouldRecomputeWholeGraph = exports.writeCache = exports.createCache = exports.readCache = exports.ensureCacheDirectory = exports.nxDepsPath = void 0;
4
+ const fs_1 = require("fs");
5
+ const fs_extra_1 = require("fs-extra");
6
+ const path_1 = require("path");
7
+ const perf_hooks_1 = require("perf_hooks");
8
+ const cache_directory_1 = require("../../utils/cache-directory");
9
+ const fileutils_1 = require("../../utils/fileutils");
10
+ const fileutils_2 = require("nx/src/utils/fileutils");
11
+ exports.nxDepsPath = (0, path_1.join)(cache_directory_1.cacheDir, 'nxdeps.json');
12
+ function ensureCacheDirectory() {
13
+ try {
14
+ if (!(0, fs_1.existsSync)(cache_directory_1.cacheDir)) {
15
+ (0, fs_extra_1.ensureDirSync)(cache_directory_1.cacheDir);
16
+ }
17
+ }
18
+ catch (e) {
19
+ /*
20
+ * @jeffbcross: Node JS docs recommend against checking for existence of directory immediately before creating it.
21
+ * Instead, just try to create the directory and handle the error.
22
+ *
23
+ * We ran into race conditions when running scripts concurrently, where multiple scripts were
24
+ * arriving here simultaneously, checking for directory existence, then trying to create the directory simultaneously.
25
+ *
26
+ * In this case, we're creating the directory. If the operation failed, we ensure that the directory
27
+ * exists before continuing (or raise an exception).
28
+ */
29
+ if (!(0, fileutils_1.directoryExists)(cache_directory_1.cacheDir)) {
30
+ throw new Error(`Failed to create directory: ${cache_directory_1.cacheDir}`);
31
+ }
32
+ }
33
+ }
34
+ exports.ensureCacheDirectory = ensureCacheDirectory;
35
+ function readCache() {
36
+ perf_hooks_1.performance.mark('read cache:start');
37
+ ensureCacheDirectory();
38
+ let data = null;
39
+ try {
40
+ if ((0, fileutils_1.fileExists)(exports.nxDepsPath)) {
41
+ data = (0, fileutils_2.readJsonFile)(exports.nxDepsPath);
42
+ }
43
+ }
44
+ catch (error) {
45
+ console.log(`Error reading '${exports.nxDepsPath}'. Continue the process without the cache.`);
46
+ console.log(error);
47
+ }
48
+ perf_hooks_1.performance.mark('read cache:end');
49
+ perf_hooks_1.performance.measure('read cache', 'read cache:start', 'read cache:end');
50
+ return data !== null && data !== void 0 ? data : null;
51
+ }
52
+ exports.readCache = readCache;
53
+ function createCache(nxJson, packageJsonDeps, projectGraph, tsConfig) {
54
+ var _a;
55
+ const nxJsonPlugins = (nxJson.plugins || []).map((p) => ({
56
+ name: p,
57
+ version: packageJsonDeps[p],
58
+ }));
59
+ const newValue = {
60
+ version: projectGraph.version || '5.0',
61
+ deps: packageJsonDeps,
62
+ // compilerOptions may not exist, especially for repos converted through add-nx-to-monorepo
63
+ pathMappings: ((_a = tsConfig === null || tsConfig === void 0 ? void 0 : tsConfig.compilerOptions) === null || _a === void 0 ? void 0 : _a.paths) || {},
64
+ nxJsonPlugins,
65
+ nodes: projectGraph.nodes,
66
+ externalNodes: projectGraph.externalNodes,
67
+ dependencies: projectGraph.dependencies,
68
+ };
69
+ return newValue;
70
+ }
71
+ exports.createCache = createCache;
72
+ function writeCache(cache) {
73
+ perf_hooks_1.performance.mark('write cache:start');
74
+ (0, fileutils_2.writeJsonFile)(exports.nxDepsPath, cache);
75
+ perf_hooks_1.performance.mark('write cache:end');
76
+ perf_hooks_1.performance.measure('write cache', 'write cache:start', 'write cache:end');
77
+ }
78
+ exports.writeCache = writeCache;
79
+ function shouldRecomputeWholeGraph(cache, packageJsonDeps, workspaceJson, nxJson, tsConfig) {
80
+ if (cache.version !== '5.0') {
81
+ return true;
82
+ }
83
+ if (cache.deps['@nrwl/workspace'] !== packageJsonDeps['@nrwl/workspace']) {
84
+ return true;
85
+ }
86
+ // we have a cached project that is no longer present
87
+ if (Object.keys(cache.nodes).some((p) => (cache.nodes[p].type === 'app' ||
88
+ cache.nodes[p].type === 'lib' ||
89
+ cache.nodes[p].type === 'e2e') &&
90
+ !workspaceJson.projects[p])) {
91
+ return true;
92
+ }
93
+ // a path mapping for an existing project has changed
94
+ if (Object.keys(cache.pathMappings).some((t) => {
95
+ var _a, _b;
96
+ const cached = cache.pathMappings && cache.pathMappings[t]
97
+ ? JSON.stringify(cache.pathMappings[t])
98
+ : undefined;
99
+ const notCached = ((_a = tsConfig === null || tsConfig === void 0 ? void 0 : tsConfig.compilerOptions) === null || _a === void 0 ? void 0 : _a.paths) && ((_b = tsConfig === null || tsConfig === void 0 ? void 0 : tsConfig.compilerOptions) === null || _b === void 0 ? void 0 : _b.paths[t])
100
+ ? JSON.stringify(tsConfig.compilerOptions.paths[t])
101
+ : undefined;
102
+ return cached !== notCached;
103
+ })) {
104
+ return true;
105
+ }
106
+ // a new plugin has been added
107
+ if ((nxJson.plugins || []).length !== cache.nxJsonPlugins.length)
108
+ return true;
109
+ // a plugin has changed
110
+ if ((nxJson.plugins || []).some((t) => {
111
+ const matchingPlugin = cache.nxJsonPlugins.find((p) => p.name === t);
112
+ if (!matchingPlugin)
113
+ return true;
114
+ return matchingPlugin.version !== packageJsonDeps[t];
115
+ })) {
116
+ return true;
117
+ }
118
+ return false;
119
+ }
120
+ exports.shouldRecomputeWholeGraph = shouldRecomputeWholeGraph;
121
+ /*
122
+ This can only be invoked when the list of projects is either the same
123
+ or new projects have been added, so every project in the cache has a corresponding
124
+ project in fileMap
125
+ */
126
+ function extractCachedFileData(fileMap, c) {
127
+ const filesToProcess = {};
128
+ const cachedFileData = {};
129
+ const currentProjects = Object.keys(fileMap).filter((name) => fileMap[name].length > 0);
130
+ currentProjects.forEach((p) => {
131
+ processProjectNode(p, c.nodes[p], cachedFileData, filesToProcess, fileMap);
132
+ });
133
+ return {
134
+ filesToProcess,
135
+ cachedFileData,
136
+ };
137
+ }
138
+ exports.extractCachedFileData = extractCachedFileData;
139
+ function processProjectNode(name, cachedNode, cachedFileData, filesToProcess, fileMap) {
140
+ if (!cachedNode) {
141
+ filesToProcess[name] = fileMap[name];
142
+ return;
143
+ }
144
+ const fileDataFromCache = {};
145
+ for (let f of cachedNode.data.files) {
146
+ fileDataFromCache[f.file] = f;
147
+ }
148
+ if (!cachedFileData[name]) {
149
+ cachedFileData[name] = {};
150
+ }
151
+ for (let f of fileMap[name]) {
152
+ const fromCache = fileDataFromCache[f.file];
153
+ if (fromCache && fromCache.hash == f.hash) {
154
+ cachedFileData[name][f.file] = fromCache;
155
+ }
156
+ else {
157
+ if (!filesToProcess[cachedNode.name]) {
158
+ filesToProcess[cachedNode.name] = [];
159
+ }
160
+ filesToProcess[cachedNode.name].push(f);
161
+ }
162
+ }
163
+ }
164
+ //# sourceMappingURL=nx-deps-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nx-deps-cache.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/core/nx-deps/nx-deps-cache.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Workspace } from 'nx/src/shared/workspace';
2
+ import { ProjectFileMap, ProjectGraph } from 'nx/src/shared/project-graph';
3
+ export declare function buildExplicitTypescriptAndPackageJsonDependencies(jsPluginConfig: {
4
+ analyzeSourceFiles?: boolean;
5
+ analyzePackageJson?: boolean;
6
+ }, workspace: Workspace, projectGraph: ProjectGraph, filesToProcess: ProjectFileMap): any[];
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildExplicitTypescriptAndPackageJsonDependencies = void 0;
4
+ const explicit_project_dependencies_1 = require("./explicit-project-dependencies");
5
+ const explicit_package_json_dependencies_1 = require("./explicit-package-json-dependencies");
6
+ function buildExplicitTypescriptAndPackageJsonDependencies(jsPluginConfig, workspace, projectGraph, filesToProcess) {
7
+ let res = [];
8
+ if (jsPluginConfig.analyzeSourceFiles === undefined ||
9
+ jsPluginConfig.analyzeSourceFiles === true) {
10
+ res = res.concat((0, explicit_project_dependencies_1.buildExplicitTypeScriptDependencies)(workspace, projectGraph, filesToProcess));
11
+ }
12
+ if (jsPluginConfig.analyzePackageJson === undefined ||
13
+ jsPluginConfig.analyzePackageJson === true) {
14
+ res = res.concat((0, explicit_package_json_dependencies_1.buildExplicitPackageJsonDependencies)(workspace, projectGraph, filesToProcess));
15
+ }
16
+ return res;
17
+ }
18
+ exports.buildExplicitTypescriptAndPackageJsonDependencies = buildExplicitTypescriptAndPackageJsonDependencies;
19
+ //# sourceMappingURL=build-explicit-typescript-and-package-json-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-explicit-typescript-and-package-json-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/build-explicit-typescript-and-package-json-dependencies.ts"],"names":[],"mappings":";;;AAAA,mFAAsF;AACtF,6FAA4F;AAI5F,SAAgB,iDAAiD,CAC/D,cAGC,EACD,SAAoB,EACpB,YAA0B,EAC1B,cAA8B;IAE9B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IACE,cAAc,CAAC,kBAAkB,KAAK,SAAS;QAC/C,cAAc,CAAC,kBAAkB,KAAK,IAAI,EAC1C;QACA,GAAG,GAAG,GAAG,CAAC,MAAM,CACd,IAAA,mEAAmC,EACjC,SAAS,EACT,YAAY,EACZ,cAAc,CACf,CACF,CAAC;KACH;IACD,IACE,cAAc,CAAC,kBAAkB,KAAK,SAAS;QAC/C,cAAc,CAAC,kBAAkB,KAAK,IAAI,EAC1C;QACA,GAAG,GAAG,GAAG,CAAC,MAAM,CACd,IAAA,yEAAoC,EAClC,SAAS,EACT,YAAY,EACZ,cAAc,CACf,CACF,CAAC;KACH;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAnCD,8GAmCC"}
@@ -0,0 +1,3 @@
1
+ import { Workspace } from 'nx/src/shared/workspace';
2
+ import { ProjectFileMap, ProjectGraph } from 'nx/src/shared/project-graph';
3
+ export declare function buildExplicitPackageJsonDependencies(workspace: Workspace, graph: ProjectGraph, filesToProcess: ProjectFileMap): any;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildExplicitPackageJsonDependencies = void 0;
4
+ const file_utils_1 = require("../../file-utils");
5
+ const path_1 = require("path");
6
+ const json_1 = require("nx/src/utils/json");
7
+ const path_2 = require("nx/src/utils/path");
8
+ class ProjectGraphNodeRecords {
9
+ }
10
+ function buildExplicitPackageJsonDependencies(workspace, graph, filesToProcess) {
11
+ const res = [];
12
+ let packageNameMap = undefined;
13
+ Object.keys(filesToProcess).forEach((source) => {
14
+ Object.values(filesToProcess[source]).forEach((f) => {
15
+ if (isPackageJsonAtProjectRoot(graph.nodes, f.file)) {
16
+ // we only create the package name map once and only if a package.json file changes
17
+ packageNameMap = packageNameMap || createPackageNameMap(workspace);
18
+ processPackageJson(source, f.file, graph, res, packageNameMap);
19
+ }
20
+ });
21
+ });
22
+ return res;
23
+ }
24
+ exports.buildExplicitPackageJsonDependencies = buildExplicitPackageJsonDependencies;
25
+ function createPackageNameMap(w) {
26
+ const res = {};
27
+ for (let projectName of Object.keys(w.projects)) {
28
+ try {
29
+ const packageJson = (0, json_1.parseJson)((0, file_utils_1.defaultFileRead)((0, path_1.join)(w.projects[projectName].root, 'package.json')));
30
+ res[packageJson.name || `@${w.npmScope}/${projectName}`] = projectName;
31
+ }
32
+ catch (e) { }
33
+ }
34
+ return res;
35
+ }
36
+ function isPackageJsonAtProjectRoot(nodes, fileName) {
37
+ return Object.values(nodes).find((projectNode) => (projectNode.type === 'lib' || projectNode.type === 'app') &&
38
+ (0, path_2.joinPathFragments)(projectNode.data.root, 'package.json') === fileName);
39
+ }
40
+ function processPackageJson(sourceProject, fileName, graph, collectedDeps, packageNameMap) {
41
+ try {
42
+ const deps = readDeps((0, json_1.parseJson)((0, file_utils_1.defaultFileRead)(fileName)));
43
+ // the name matches the import path
44
+ deps.forEach((d) => {
45
+ // package.json refers to another project in the monorepo
46
+ if (packageNameMap[d]) {
47
+ collectedDeps.push({
48
+ sourceProjectName: sourceProject,
49
+ targetProjectName: packageNameMap[d],
50
+ sourceProjectFile: fileName,
51
+ });
52
+ }
53
+ else if (graph.externalNodes[`npm:${d}`]) {
54
+ collectedDeps.push({
55
+ sourceProjectName: sourceProject,
56
+ targetProjectName: `npm:${d}`,
57
+ sourceProjectFile: fileName,
58
+ });
59
+ }
60
+ });
61
+ }
62
+ catch (e) {
63
+ if (process.env.NX_VERBOSE_LOGGING === 'true') {
64
+ console.log(e);
65
+ }
66
+ }
67
+ }
68
+ function readDeps(packageJsonDeps) {
69
+ var _a, _b, _c;
70
+ return [
71
+ ...Object.keys((_a = packageJsonDeps === null || packageJsonDeps === void 0 ? void 0 : packageJsonDeps.dependencies) !== null && _a !== void 0 ? _a : {}),
72
+ ...Object.keys((_b = packageJsonDeps === null || packageJsonDeps === void 0 ? void 0 : packageJsonDeps.devDependencies) !== null && _b !== void 0 ? _b : {}),
73
+ ...Object.keys((_c = packageJsonDeps === null || packageJsonDeps === void 0 ? void 0 : packageJsonDeps.peerDependencies) !== null && _c !== void 0 ? _c : {}),
74
+ ];
75
+ }
76
+ //# sourceMappingURL=explicit-package-json-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explicit-package-json-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/explicit-package-json-dependencies.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { ProjectFileMap, ProjectGraph } from 'nx/src/shared/project-graph';
2
+ import { Workspace } from 'nx/src/shared/workspace';
3
+ export declare function buildExplicitTypeScriptDependencies(workspace: Workspace, graph: ProjectGraph, filesToProcess: ProjectFileMap): any;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildExplicitTypeScriptDependencies = void 0;
4
+ const typescript_import_locator_1 = require("./typescript-import-locator");
5
+ const target_project_locator_1 = require("../../target-project-locator");
6
+ function buildExplicitTypeScriptDependencies(workspace, graph, filesToProcess) {
7
+ const importLocator = new typescript_import_locator_1.TypeScriptImportLocator();
8
+ const targetProjectLocator = new target_project_locator_1.TargetProjectLocator(graph.nodes, graph.externalNodes);
9
+ const res = [];
10
+ Object.keys(filesToProcess).forEach((source) => {
11
+ Object.values(filesToProcess[source]).forEach((f) => {
12
+ importLocator.fromFile(f.file, (importExpr, filePath, type) => {
13
+ const target = targetProjectLocator.findProjectWithImport(importExpr, f.file, workspace.npmScope);
14
+ if (target) {
15
+ res.push({
16
+ sourceProjectName: source,
17
+ targetProjectName: target,
18
+ sourceProjectFile: f.file,
19
+ });
20
+ }
21
+ });
22
+ });
23
+ });
24
+ return res;
25
+ }
26
+ exports.buildExplicitTypeScriptDependencies = buildExplicitTypeScriptDependencies;
27
+ //# sourceMappingURL=explicit-project-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explicit-project-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/explicit-project-dependencies.ts"],"names":[],"mappings":";;;AAAA,2EAAsE;AACtE,yEAAoE;AAQpE,SAAgB,mCAAmC,CACjD,SAAoB,EACpB,KAAmB,EACnB,cAA8B;IAE9B,MAAM,aAAa,GAAG,IAAI,mDAAuB,EAAE,CAAC;IACpD,MAAM,oBAAoB,GAAG,IAAI,6CAAoB,CACnD,KAAK,CAAC,KAAY,EAClB,KAAK,CAAC,aAAa,CACpB,CAAC;IACF,MAAM,GAAG,GAAG,EAAS,CAAC;IACtB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7C,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,aAAa,CAAC,QAAQ,CACpB,CAAC,CAAC,IAAI,EACN,CAAC,UAAkB,EAAE,QAAgB,EAAE,IAAoB,EAAE,EAAE;gBAC7D,MAAM,MAAM,GAAG,oBAAoB,CAAC,qBAAqB,CACvD,UAAU,EACV,CAAC,CAAC,IAAI,EACN,SAAS,CAAC,QAAQ,CACnB,CAAC;gBACF,IAAI,MAAM,EAAE;oBACV,GAAG,CAAC,IAAI,CAAC;wBACP,iBAAiB,EAAE,MAAM;wBACzB,iBAAiB,EAAE,MAAM;wBACzB,iBAAiB,EAAE,CAAC,CAAC,IAAI;qBAC1B,CAAC,CAAC;iBACJ;YACH,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAjCD,kFAiCC"}
@@ -0,0 +1,3 @@
1
+ import { ProjectGraphProcessorContext } from 'nx/src/shared/project-graph';
2
+ import { ProjectGraphBuilder } from '../project-graph-builder';
3
+ export declare function buildImplicitProjectDependencies(ctx: ProjectGraphProcessorContext, builder: ProjectGraphBuilder): void;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildImplicitProjectDependencies = void 0;
4
+ function buildImplicitProjectDependencies(ctx, builder) {
5
+ Object.keys(ctx.workspace.projects).forEach((source) => {
6
+ const p = ctx.workspace.projects[source];
7
+ if (p.implicitDependencies && p.implicitDependencies.length > 0) {
8
+ p.implicitDependencies.forEach((target) => {
9
+ if (target.startsWith('!')) {
10
+ builder.removeDependency(source, target.substr(1));
11
+ }
12
+ else {
13
+ builder.addImplicitDependency(source, target);
14
+ }
15
+ });
16
+ }
17
+ });
18
+ }
19
+ exports.buildImplicitProjectDependencies = buildImplicitProjectDependencies;
20
+ //# sourceMappingURL=implicit-project-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implicit-project-dependencies.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/implicit-project-dependencies.ts"],"names":[],"mappings":";;;AAGA,SAAgB,gCAAgC,CAC9C,GAAiC,EACjC,OAA4B;IAE5B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACrD,MAAM,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,CAAC,oBAAoB,IAAI,CAAC,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/D,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACxC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBAC1B,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpD;qBAAM;oBACL,OAAO,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;iBAC/C;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAhBD,4EAgBC"}
@@ -0,0 +1,3 @@
1
+ export * from './implicit-project-dependencies';
2
+ export * from './explicit-project-dependencies';
3
+ export * from './explicit-package-json-dependencies';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./implicit-project-dependencies"), exports);
5
+ (0, tslib_1.__exportStar)(require("./explicit-project-dependencies"), exports);
6
+ (0, tslib_1.__exportStar)(require("./explicit-package-json-dependencies"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/index.ts"],"names":[],"mappings":";;;AAAA,+EAAgD;AAChD,+EAAgD;AAChD,oFAAqD"}
@@ -0,0 +1,11 @@
1
+ import { DependencyType } from 'nx/src/shared/project-graph';
2
+ export declare class TypeScriptImportLocator {
3
+ private readonly scanner;
4
+ constructor();
5
+ fromFile(filePath: string, visitor: (importExpr: string, filePath: string, type: DependencyType) => void): void;
6
+ fromNode(filePath: string, node: any, visitor: (importExpr: string, filePath: string, type: DependencyType) => void): void;
7
+ private ignoreStatement;
8
+ private ignoreLoadChildrenDependency;
9
+ private getPropertyAssignmentName;
10
+ private getStringLiteralValue;
11
+ }
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TypeScriptImportLocator = void 0;
4
+ const path = require("path");
5
+ const strip_source_code_1 = require("../../../utils/strip-source-code");
6
+ const file_utils_1 = require("../../file-utils");
7
+ const project_graph_1 = require("nx/src/shared/project-graph");
8
+ let tsModule;
9
+ class TypeScriptImportLocator {
10
+ constructor() {
11
+ tsModule = require('typescript');
12
+ this.scanner = tsModule.createScanner(tsModule.ScriptTarget.Latest, false);
13
+ }
14
+ fromFile(filePath, visitor) {
15
+ const extension = path.extname(filePath);
16
+ if (extension !== '.ts' &&
17
+ extension !== '.tsx' &&
18
+ extension !== '.js' &&
19
+ extension !== '.jsx') {
20
+ return;
21
+ }
22
+ const content = (0, file_utils_1.defaultFileRead)(filePath);
23
+ const strippedContent = (0, strip_source_code_1.stripSourceCode)(this.scanner, content);
24
+ if (strippedContent !== '') {
25
+ const tsFile = tsModule.createSourceFile(filePath, strippedContent, tsModule.ScriptTarget.Latest, true);
26
+ this.fromNode(filePath, tsFile, visitor);
27
+ }
28
+ }
29
+ fromNode(filePath, node, visitor) {
30
+ if (tsModule.isImportDeclaration(node) ||
31
+ (tsModule.isExportDeclaration(node) && node.moduleSpecifier)) {
32
+ if (!this.ignoreStatement(node)) {
33
+ const imp = this.getStringLiteralValue(node.moduleSpecifier);
34
+ visitor(imp, filePath, project_graph_1.DependencyType.static);
35
+ }
36
+ return; // stop traversing downwards
37
+ }
38
+ if (tsModule.isCallExpression(node) &&
39
+ node.expression.kind === tsModule.SyntaxKind.ImportKeyword &&
40
+ node.arguments.length === 1 &&
41
+ tsModule.isStringLiteral(node.arguments[0])) {
42
+ if (!this.ignoreStatement(node)) {
43
+ const imp = this.getStringLiteralValue(node.arguments[0]);
44
+ visitor(imp, filePath, project_graph_1.DependencyType.dynamic);
45
+ }
46
+ return;
47
+ }
48
+ if (tsModule.isCallExpression(node) &&
49
+ node.expression.getText() === 'require' &&
50
+ node.arguments.length === 1 &&
51
+ tsModule.isStringLiteral(node.arguments[0])) {
52
+ if (!this.ignoreStatement(node)) {
53
+ const imp = this.getStringLiteralValue(node.arguments[0]);
54
+ visitor(imp, filePath, project_graph_1.DependencyType.static);
55
+ }
56
+ return;
57
+ }
58
+ if (node.kind === tsModule.SyntaxKind.PropertyAssignment) {
59
+ const name = this.getPropertyAssignmentName(node.name);
60
+ if (name === 'loadChildren') {
61
+ const init = node.initializer;
62
+ if (init.kind === tsModule.SyntaxKind.StringLiteral &&
63
+ !this.ignoreLoadChildrenDependency(node.getFullText())) {
64
+ const childrenExpr = this.getStringLiteralValue(init);
65
+ visitor(childrenExpr, filePath, project_graph_1.DependencyType.dynamic);
66
+ return; // stop traversing downwards
67
+ }
68
+ }
69
+ }
70
+ /**
71
+ * Continue traversing down the AST from the current node
72
+ */
73
+ tsModule.forEachChild(node, (child) => this.fromNode(filePath, child, visitor));
74
+ }
75
+ ignoreStatement(node) {
76
+ return (0, strip_source_code_1.stripSourceCode)(this.scanner, node.getFullText()) === '';
77
+ }
78
+ ignoreLoadChildrenDependency(contents) {
79
+ this.scanner.setText(contents);
80
+ let token = this.scanner.scan();
81
+ while (token !== tsModule.SyntaxKind.EndOfFileToken) {
82
+ if (token === tsModule.SyntaxKind.SingleLineCommentTrivia ||
83
+ token === tsModule.SyntaxKind.MultiLineCommentTrivia) {
84
+ const start = this.scanner.getStartPos() + 2;
85
+ token = this.scanner.scan();
86
+ const isMultiLineCommentTrivia = token === tsModule.SyntaxKind.MultiLineCommentTrivia;
87
+ const end = this.scanner.getStartPos() - (isMultiLineCommentTrivia ? 2 : 0);
88
+ const comment = contents.substring(start, end).trim();
89
+ if (comment === 'nx-ignore-next-line') {
90
+ return true;
91
+ }
92
+ }
93
+ else {
94
+ token = this.scanner.scan();
95
+ }
96
+ }
97
+ return false;
98
+ }
99
+ getPropertyAssignmentName(nameNode) {
100
+ switch (nameNode.kind) {
101
+ case tsModule.SyntaxKind.Identifier:
102
+ return nameNode.getText();
103
+ case tsModule.SyntaxKind.StringLiteral:
104
+ return nameNode.text;
105
+ default:
106
+ return null;
107
+ }
108
+ }
109
+ getStringLiteralValue(node) {
110
+ return node.getText().substr(1, node.getText().length - 2);
111
+ }
112
+ }
113
+ exports.TypeScriptImportLocator = TypeScriptImportLocator;
114
+ //# sourceMappingURL=typescript-import-locator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript-import-locator.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-dependencies/typescript-import-locator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './workspace-projects';
2
+ export * from './npm-packages';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./workspace-projects"), exports);
5
+ (0, tslib_1.__exportStar)(require("./npm-packages"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-nodes/index.ts"],"names":[],"mappings":";;;AAAA,oEAAqC;AACrC,8DAA+B"}
@@ -0,0 +1,2 @@
1
+ import { ProjectGraphBuilder } from '../project-graph-builder';
2
+ export declare function buildNpmPackageNodes(builder: ProjectGraphBuilder): void;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildNpmPackageNodes = void 0;
4
+ const path_1 = require("path");
5
+ const app_root_1 = require("nx/src/utils/app-root");
6
+ const fileutils_1 = require("nx/src/utils/fileutils");
7
+ function buildNpmPackageNodes(builder) {
8
+ const packageJson = (0, fileutils_1.readJsonFile)((0, path_1.join)(app_root_1.appRootPath, 'package.json'));
9
+ const deps = Object.assign(Object.assign({}, packageJson.dependencies), packageJson.devDependencies);
10
+ Object.keys(deps).forEach((d) => {
11
+ builder.addExternalNode({
12
+ type: 'npm',
13
+ name: `npm:${d}`,
14
+ data: {
15
+ version: deps[d],
16
+ packageName: d,
17
+ },
18
+ });
19
+ });
20
+ }
21
+ exports.buildNpmPackageNodes = buildNpmPackageNodes;
22
+ //# sourceMappingURL=npm-packages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-packages.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-nodes/npm-packages.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,oDAAoD;AACpD,sDAAsD;AAGtD,SAAgB,oBAAoB,CAAC,OAA4B;IAC/D,MAAM,WAAW,GAAG,IAAA,wBAAY,EAAC,IAAA,WAAI,EAAC,sBAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,mCACL,WAAW,CAAC,YAAY,GACxB,WAAW,CAAC,eAAe,CAC/B,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,OAAO,CAAC,eAAe,CAAC;YACtB,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,OAAO,CAAC,EAAE;YAChB,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAChB,WAAW,EAAE,CAAC;aACf;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAhBD,oDAgBC"}
@@ -0,0 +1,3 @@
1
+ import { ProjectGraphProcessorContext } from 'nx/src/shared/project-graph';
2
+ import { ProjectGraphBuilder } from '../project-graph-builder';
3
+ export declare function buildWorkspaceProjectNodes(ctx: ProjectGraphProcessorContext, builder: ProjectGraphBuilder): void;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildWorkspaceProjectNodes = void 0;
4
+ const path_1 = require("path");
5
+ const fs_1 = require("fs");
6
+ const app_root_1 = require("nx/src/utils/app-root");
7
+ const nx_plugin_1 = require("nx/src/utils/nx-plugin");
8
+ const project_graph_utils_1 = require("nx/src/utils/project-graph-utils");
9
+ function buildWorkspaceProjectNodes(ctx, builder) {
10
+ const toAdd = [];
11
+ Object.keys(ctx.workspace.projects).forEach((key) => {
12
+ const p = ctx.workspace.projects[key];
13
+ const projectRoot = (0, path_1.join)(app_root_1.appRootPath, p.root);
14
+ if ((0, fs_1.existsSync)((0, path_1.join)(projectRoot, 'package.json'))) {
15
+ p.targets = (0, project_graph_utils_1.mergeNpmScriptsWithTargets)(projectRoot, p.targets);
16
+ }
17
+ p.targets = (0, nx_plugin_1.mergePluginTargetsWithNxTargets)(p.root, p.targets, (0, nx_plugin_1.loadNxPlugins)(ctx.workspace.plugins));
18
+ const projectType = p.projectType === 'application'
19
+ ? key.endsWith('-e2e')
20
+ ? 'e2e'
21
+ : 'app'
22
+ : 'lib';
23
+ const tags = ctx.workspace.projects && ctx.workspace.projects[key]
24
+ ? ctx.workspace.projects[key].tags || []
25
+ : [];
26
+ toAdd.push({
27
+ name: key,
28
+ type: projectType,
29
+ data: Object.assign(Object.assign({}, p), { tags, files: ctx.fileMap[key] }),
30
+ });
31
+ });
32
+ // Sort by root directory length (do we need this?)
33
+ toAdd.sort((a, b) => {
34
+ if (!a.data.root)
35
+ return -1;
36
+ if (!b.data.root)
37
+ return -1;
38
+ return a.data.root.length > b.data.root.length ? -1 : 1;
39
+ });
40
+ toAdd.forEach((n) => {
41
+ builder.addNode({
42
+ name: n.name,
43
+ type: n.type,
44
+ data: n.data,
45
+ });
46
+ });
47
+ }
48
+ exports.buildWorkspaceProjectNodes = buildWorkspaceProjectNodes;
49
+ //# sourceMappingURL=workspace-projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-projects.js","sourceRoot":"","sources":["../../../../../../../packages/nx/src/core/project-graph/build-nodes/workspace-projects.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,2BAAgC;AAChC,oDAAoD;AACpD,sDAGgC;AAEhC,0EAA8E;AAG9E,SAAgB,0BAA0B,CACxC,GAAiC,EACjC,OAA4B;IAE5B,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAClD,MAAM,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,sBAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,IAAA,eAAU,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC,EAAE;YACjD,CAAC,CAAC,OAAO,GAAG,IAAA,gDAA0B,EAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SAChE;QACD,CAAC,CAAC,OAAO,GAAG,IAAA,2CAA+B,EACzC,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,OAAO,EACT,IAAA,yBAAa,EAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CACrC,CAAC;QACF,MAAM,WAAW,GACf,CAAC,CAAC,WAAW,KAAK,aAAa;YAC7B,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACpB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,KAAK;YACT,CAAC,CAAC,KAAK,CAAC;QACZ,MAAM,IAAI,GACR,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YACnD,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QAET,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,WAAW;YACjB,IAAI,kCACC,CAAC,KACJ,IAAI,EACJ,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GACxB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,mDAAmD;IACnD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClB,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClB,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AApDD,gEAoDC"}