@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,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createTreeWithEmptyV1Workspace = exports.createTreeWithEmptyWorkspace = void 0;
4
+ const tree_1 = require("../tree");
5
+ /**
6
+ * Creates a host for testing.
7
+ */
8
+ function createTreeWithEmptyWorkspace(opts = {}) {
9
+ const tree = new tree_1.FsTree('/virtual', false);
10
+ return addCommonFiles(tree, opts.layout === 'apps-libs');
11
+ }
12
+ exports.createTreeWithEmptyWorkspace = createTreeWithEmptyWorkspace;
13
+ /**
14
+ * @deprecated use createTreeWithEmptyWorkspace instead
15
+ */
16
+ function createTreeWithEmptyV1Workspace() {
17
+ throw new Error('Use createTreeWithEmptyWorkspace instead of createTreeWithEmptyV1Workspace');
18
+ }
19
+ exports.createTreeWithEmptyV1Workspace = createTreeWithEmptyV1Workspace;
20
+ function addCommonFiles(tree, addAppsAndLibsFolders) {
21
+ tree.write('./.prettierrc', JSON.stringify({ singleQuote: true }));
22
+ tree.write('/package.json', JSON.stringify({
23
+ name: '@proj/source',
24
+ dependencies: {},
25
+ devDependencies: {},
26
+ }));
27
+ tree.write('/nx.json', JSON.stringify({
28
+ affected: {
29
+ defaultBase: 'main',
30
+ },
31
+ targetDefaults: {
32
+ build: {
33
+ cache: true,
34
+ },
35
+ lint: {
36
+ cache: true,
37
+ },
38
+ },
39
+ }));
40
+ tree.write('/tsconfig.base.json', JSON.stringify({ compilerOptions: { paths: {} } }));
41
+ if (addAppsAndLibsFolders) {
42
+ tree.write('/apps/.gitignore', '');
43
+ tree.write('/libs/.gitignore', '');
44
+ }
45
+ return tree;
46
+ }
@@ -0,0 +1,5 @@
1
+ import type { Tree } from '../tree';
2
+ /**
3
+ * Creates a host for testing.
4
+ */
5
+ export declare function createTree(): Tree;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createTree = void 0;
4
+ const tree_1 = require("../tree");
5
+ /**
6
+ * Creates a host for testing.
7
+ */
8
+ function createTree() {
9
+ return new tree_1.FsTree('/virtual', false);
10
+ }
11
+ exports.createTree = createTree;
@@ -0,0 +1,128 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="@types/node/ts4.8/fs" />
3
+ /// <reference types="node" />
4
+ import type { Mode } from 'fs';
5
+ /**
6
+ * Options to set when writing a file in the Virtual file system tree.
7
+ */
8
+ export interface TreeWriteOptions {
9
+ /**
10
+ * Permission to be granted on the file, given as a string (e.g `755`) or octal integer (e.g `0o755`).
11
+ * The logical OR operator can be used to separate multiple permissions.
12
+ * See https://nodejs.org/api/fs.html#fs_file_modes
13
+ */
14
+ mode?: Mode;
15
+ }
16
+ /**
17
+ * Virtual file system tree.
18
+ */
19
+ export interface Tree {
20
+ /**
21
+ * Root of the workspace. All paths are relative to this.
22
+ */
23
+ root: string;
24
+ /**
25
+ * Read the contents of a file.
26
+ * @param filePath A path to a file.
27
+ */
28
+ read(filePath: string): Buffer | null;
29
+ /**
30
+ * Read the contents of a file as string.
31
+ * @param filePath A path to a file.
32
+ * @param encoding the encoding for the result
33
+ */
34
+ read(filePath: string, encoding: BufferEncoding): string | null;
35
+ /**
36
+ * Update the contents of a file or create a new file.
37
+ */
38
+ write(filePath: string, content: Buffer | string, options?: TreeWriteOptions): void;
39
+ /**
40
+ * Check if a file exists.
41
+ */
42
+ exists(filePath: string): boolean;
43
+ /**
44
+ * Delete the file.
45
+ */
46
+ delete(filePath: string): void;
47
+ /**
48
+ * Rename the file or the folder.
49
+ */
50
+ rename(from: string, to: string): void;
51
+ /**
52
+ * Check if this is a file or not.
53
+ */
54
+ isFile(filePath: string): boolean;
55
+ /**
56
+ * Returns the list of children of a folder.
57
+ */
58
+ children(dirPath: string): string[];
59
+ /**
60
+ * Returns the list of currently recorded changes.
61
+ */
62
+ listChanges(): FileChange[];
63
+ /**
64
+ * Changes permissions of a file.
65
+ * @param filePath A path to a file.
66
+ * @param mode The permission to be granted on the file, given as a string (e.g `755`) or octal integer (e.g `0o755`).
67
+ * See https://nodejs.org/api/fs.html#fs_file_modes.
68
+ */
69
+ changePermissions(filePath: string, mode: Mode): void;
70
+ }
71
+ /**
72
+ * Description of a file change in the Nx virtual file system/
73
+ */
74
+ export interface FileChange {
75
+ /**
76
+ * Path relative to the workspace root
77
+ */
78
+ path: string;
79
+ /**
80
+ * Type of change: 'CREATE' | 'DELETE' | 'UPDATE'
81
+ */
82
+ type: 'CREATE' | 'DELETE' | 'UPDATE';
83
+ /**
84
+ * The content of the file or null in case of delete.
85
+ */
86
+ content: Buffer | null;
87
+ /**
88
+ * Options to set on the file being created or updated.
89
+ */
90
+ options?: TreeWriteOptions;
91
+ }
92
+ export declare class FsTree implements Tree {
93
+ readonly root: string;
94
+ private readonly isVerbose;
95
+ private readonly logOperationId?;
96
+ private recordedChanges;
97
+ /**
98
+ * Signifies if operations on the tree instance
99
+ * are allowed. Set to false after changes are written
100
+ * to disk, to prevent someone trying to use the tree to update
101
+ * files when the tree is no longer effective.
102
+ */
103
+ private locked;
104
+ constructor(root: string, isVerbose: boolean, logOperationId?: string);
105
+ read(filePath: string): Buffer | null;
106
+ read(filePath: string, encoding: BufferEncoding): string | null;
107
+ write(filePath: string, content: Buffer | string, options?: TreeWriteOptions): void;
108
+ overwrite(filePath: string, content: Buffer | string, options?: TreeWriteOptions): void;
109
+ delete(filePath: string): void;
110
+ exists(filePath: string): boolean;
111
+ rename(from: string, to: string): void;
112
+ isFile(filePath: string): boolean;
113
+ children(dirPath: string): string[];
114
+ listChanges(): FileChange[];
115
+ changePermissions(filePath: string, mode: Mode): void;
116
+ lock(): void;
117
+ private assertUnlocked;
118
+ private normalize;
119
+ private fsReadDir;
120
+ private fsIsFile;
121
+ private fsReadFile;
122
+ private fsExists;
123
+ private filesForDir;
124
+ private directChildrenOfDir;
125
+ private rp;
126
+ }
127
+ export declare function flushChanges(root: string, fileChanges: FileChange[]): void;
128
+ export declare function printChanges(fileChanges: FileChange[], indent?: string): void;
@@ -0,0 +1,309 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.printChanges = exports.flushChanges = exports.FsTree = void 0;
4
+ const fs_extra_1 = require("fs-extra");
5
+ const logger_1 = require("../utils/logger");
6
+ const output_1 = require("../utils/output");
7
+ const path_1 = require("path");
8
+ const chalk = require("chalk");
9
+ class FsTree {
10
+ constructor(root, isVerbose, logOperationId) {
11
+ this.root = root;
12
+ this.isVerbose = isVerbose;
13
+ this.logOperationId = logOperationId;
14
+ this.recordedChanges = {};
15
+ /**
16
+ * Signifies if operations on the tree instance
17
+ * are allowed. Set to false after changes are written
18
+ * to disk, to prevent someone trying to use the tree to update
19
+ * files when the tree is no longer effective.
20
+ */
21
+ this.locked = false;
22
+ }
23
+ read(filePath, encoding) {
24
+ filePath = this.normalize(filePath);
25
+ try {
26
+ let content;
27
+ if (this.recordedChanges[this.rp(filePath)]) {
28
+ content = this.recordedChanges[this.rp(filePath)].content;
29
+ }
30
+ else {
31
+ content = this.fsReadFile(filePath);
32
+ }
33
+ return encoding ? content.toString(encoding) : content;
34
+ }
35
+ catch (e) {
36
+ if (this.isVerbose) {
37
+ logger_1.logger.error(e);
38
+ }
39
+ return null;
40
+ }
41
+ }
42
+ write(filePath, content, options) {
43
+ this.assertUnlocked();
44
+ filePath = this.normalize(filePath);
45
+ // Remove any recorded changes where a parent directory has been
46
+ // deleted when writing a new file within the directory.
47
+ let parent = (0, path_1.dirname)(this.rp(filePath));
48
+ while (parent !== '.') {
49
+ if (this.recordedChanges[parent]?.isDeleted) {
50
+ delete this.recordedChanges[parent];
51
+ }
52
+ parent = (0, path_1.dirname)(parent);
53
+ }
54
+ if (this.fsExists(this.rp(filePath)) &&
55
+ Buffer.from(content).equals(this.fsReadFile(filePath))) {
56
+ // Remove recorded change because the file has been restored to it's original contents
57
+ delete this.recordedChanges[this.rp(filePath)];
58
+ return;
59
+ }
60
+ try {
61
+ this.recordedChanges[this.rp(filePath)] = {
62
+ content: Buffer.from(content),
63
+ isDeleted: false,
64
+ options,
65
+ };
66
+ }
67
+ catch (e) {
68
+ if (this.isVerbose) {
69
+ logger_1.logger.error(e);
70
+ }
71
+ }
72
+ }
73
+ overwrite(filePath, content, options) {
74
+ filePath = this.normalize(filePath);
75
+ this.write(filePath, content, options);
76
+ }
77
+ delete(filePath) {
78
+ this.assertUnlocked();
79
+ filePath = this.normalize(filePath);
80
+ if (this.filesForDir(this.rp(filePath)).length > 0) {
81
+ this.filesForDir(this.rp(filePath)).forEach((f) => (this.recordedChanges[f] = { content: null, isDeleted: true }));
82
+ }
83
+ this.recordedChanges[this.rp(filePath)] = {
84
+ content: null,
85
+ isDeleted: true,
86
+ };
87
+ // Delete directory when is not root and there are no children
88
+ if (filePath !== '' &&
89
+ this.children((0, path_1.dirname)(this.rp(filePath))).length < 1) {
90
+ this.delete((0, path_1.dirname)(this.rp(filePath)));
91
+ }
92
+ }
93
+ exists(filePath) {
94
+ filePath = this.normalize(filePath);
95
+ try {
96
+ if (this.recordedChanges[this.rp(filePath)]) {
97
+ return !this.recordedChanges[this.rp(filePath)].isDeleted;
98
+ }
99
+ else if (this.filesForDir(this.rp(filePath)).length > 0) {
100
+ return true;
101
+ }
102
+ else {
103
+ return this.fsExists(filePath);
104
+ }
105
+ }
106
+ catch {
107
+ return false;
108
+ }
109
+ }
110
+ rename(from, to) {
111
+ this.assertUnlocked();
112
+ from = this.normalize(from);
113
+ to = this.normalize(to);
114
+ if (from === to) {
115
+ return;
116
+ }
117
+ if (this.isFile(from)) {
118
+ const content = this.read(this.rp(from));
119
+ this.write(this.rp(to), content);
120
+ this.delete(this.rp(from));
121
+ }
122
+ else {
123
+ for (const child of this.children(from)) {
124
+ this.rename((0, path_1.join)(from, child), (0, path_1.join)(to, child));
125
+ }
126
+ }
127
+ }
128
+ isFile(filePath) {
129
+ filePath = this.normalize(filePath);
130
+ try {
131
+ if (this.recordedChanges[this.rp(filePath)]) {
132
+ return !this.recordedChanges[this.rp(filePath)].isDeleted;
133
+ }
134
+ else {
135
+ return this.fsIsFile(filePath);
136
+ }
137
+ }
138
+ catch {
139
+ return false;
140
+ }
141
+ }
142
+ children(dirPath) {
143
+ dirPath = this.normalize(dirPath);
144
+ let res = this.fsReadDir(dirPath);
145
+ res = [...res, ...this.directChildrenOfDir(this.rp(dirPath))];
146
+ res = res.filter((q) => {
147
+ const r = this.recordedChanges[this.normalize((0, path_1.join)(this.rp(dirPath), q))];
148
+ return !r?.isDeleted;
149
+ });
150
+ // Dedupe
151
+ return Array.from(new Set(res));
152
+ }
153
+ listChanges() {
154
+ const res = [];
155
+ Object.keys(this.recordedChanges).forEach((f) => {
156
+ if (this.recordedChanges[f].isDeleted) {
157
+ if (this.fsExists(f)) {
158
+ res.push({ path: f, type: 'DELETE', content: null });
159
+ }
160
+ }
161
+ else {
162
+ if (this.fsExists(f)) {
163
+ res.push({
164
+ path: f,
165
+ type: 'UPDATE',
166
+ content: this.recordedChanges[f].content,
167
+ options: this.recordedChanges[f].options,
168
+ });
169
+ }
170
+ else {
171
+ res.push({
172
+ path: f,
173
+ type: 'CREATE',
174
+ content: this.recordedChanges[f].content,
175
+ options: this.recordedChanges[f].options,
176
+ });
177
+ }
178
+ }
179
+ });
180
+ return res;
181
+ }
182
+ changePermissions(filePath, mode) {
183
+ this.assertUnlocked();
184
+ filePath = this.normalize(filePath);
185
+ const filePathChangeKey = this.rp(filePath);
186
+ if (this.recordedChanges[filePathChangeKey]) {
187
+ if (this.recordedChanges[filePathChangeKey].isDeleted) {
188
+ throw new Error(`Cannot change permissions of deleted file ${filePath}.`);
189
+ }
190
+ this.recordedChanges[filePathChangeKey].options = { mode };
191
+ }
192
+ else if (!this.fsExists(filePath)) {
193
+ throw new Error(`Cannot change permissions of non-existing file ${filePath}.`);
194
+ }
195
+ else if (!this.fsIsFile(filePath)) {
196
+ // To fully support directories we'd need to change how we store
197
+ // changes to keep a record of directories so we can associate
198
+ // permissions to them.
199
+ throw new Error(`Cannot change permissions of non-file ${filePath}.`);
200
+ }
201
+ else {
202
+ this.recordedChanges[filePathChangeKey] = {
203
+ content: this.fsReadFile(filePath),
204
+ isDeleted: false,
205
+ options: { mode },
206
+ };
207
+ }
208
+ }
209
+ // Marks FsTree as final.
210
+ lock() {
211
+ this.locked = true;
212
+ }
213
+ assertUnlocked() {
214
+ if (this.locked) {
215
+ output_1.output.error({
216
+ title: `File changes have already been written to disk. Further changes were attempted ${this.logOperationId ? ` while running ${this.logOperationId}.` : '.'}`,
217
+ bodyLines: [
218
+ 'The file system can no longer be modified. This commonly happens when a generator attempts to make further changes in its callback, or an asynchronous operation is still running after the generator completes.',
219
+ ],
220
+ });
221
+ throw new Error('Tree changed after commit to disk.');
222
+ }
223
+ }
224
+ normalize(path) {
225
+ return (0, path_1.relative)(this.root, (0, path_1.join)(this.root, path)).split(path_1.sep).join('/');
226
+ }
227
+ fsReadDir(dirPath) {
228
+ try {
229
+ return (0, fs_extra_1.readdirSync)((0, path_1.join)(this.root, dirPath));
230
+ }
231
+ catch {
232
+ return [];
233
+ }
234
+ }
235
+ fsIsFile(filePath) {
236
+ const stat = (0, fs_extra_1.statSync)((0, path_1.join)(this.root, filePath));
237
+ return stat.isFile();
238
+ }
239
+ fsReadFile(filePath) {
240
+ return (0, fs_extra_1.readFileSync)((0, path_1.join)(this.root, filePath));
241
+ }
242
+ fsExists(filePath) {
243
+ try {
244
+ const stat = (0, fs_extra_1.statSync)((0, path_1.join)(this.root, filePath));
245
+ return stat.isFile() || stat.isDirectory();
246
+ }
247
+ catch {
248
+ return false;
249
+ }
250
+ }
251
+ filesForDir(path) {
252
+ return Object.keys(this.recordedChanges).filter((f) => f.startsWith(`${path}/`) && !this.recordedChanges[f].isDeleted);
253
+ }
254
+ directChildrenOfDir(path) {
255
+ const res = {};
256
+ if (path === '') {
257
+ return Object.keys(this.recordedChanges).map((file) => file.split('/')[0]);
258
+ }
259
+ Object.keys(this.recordedChanges).forEach((f) => {
260
+ if (f.startsWith(`${path}/`)) {
261
+ // Remove the current folder's path from the directory
262
+ const file = f.substring(path.length + 1);
263
+ // Split the path on segments, and take the first one
264
+ const basePath = file.split('/')[0];
265
+ // Mark it as a child of the current directory
266
+ res[basePath] = true;
267
+ }
268
+ });
269
+ return Object.keys(res);
270
+ }
271
+ rp(pp) {
272
+ return pp.startsWith('/') ? pp.substring(1) : pp;
273
+ }
274
+ }
275
+ exports.FsTree = FsTree;
276
+ function flushChanges(root, fileChanges) {
277
+ fileChanges.forEach((f) => {
278
+ const fpath = (0, path_1.join)(root, f.path);
279
+ if (f.type === 'CREATE') {
280
+ (0, fs_extra_1.ensureDirSync)((0, path_1.dirname)(fpath));
281
+ (0, fs_extra_1.writeFileSync)(fpath, f.content);
282
+ if (f.options?.mode)
283
+ (0, fs_extra_1.chmodSync)(fpath, f.options.mode);
284
+ }
285
+ else if (f.type === 'UPDATE') {
286
+ (0, fs_extra_1.writeFileSync)(fpath, f.content);
287
+ if (f.options?.mode)
288
+ (0, fs_extra_1.chmodSync)(fpath, f.options.mode);
289
+ }
290
+ else if (f.type === 'DELETE') {
291
+ (0, fs_extra_1.removeSync)(fpath);
292
+ }
293
+ });
294
+ }
295
+ exports.flushChanges = flushChanges;
296
+ function printChanges(fileChanges, indent = '') {
297
+ fileChanges.forEach((f) => {
298
+ if (f.type === 'CREATE') {
299
+ console.log(`${indent}${chalk.green('CREATE')} ${f.path}`);
300
+ }
301
+ else if (f.type === 'UPDATE') {
302
+ console.log(`${indent}${chalk.white('UPDATE')} ${f.path}`);
303
+ }
304
+ else if (f.type === 'DELETE') {
305
+ console.log(`${indent}${chalk.yellow('DELETE')} ${f.path}`);
306
+ }
307
+ });
308
+ }
309
+ exports.printChanges = printChanges;
@@ -0,0 +1,11 @@
1
+ import { Tree } from '../tree';
2
+ /**
3
+ * Performs a tree-aware glob search on the files in a workspace. Able to find newly
4
+ * created files and hides deleted files before the updates are committed to disk.
5
+ * Paths should be unix-style with forward slashes.
6
+ *
7
+ * @param tree The file system tree
8
+ * @param patterns A list of glob patterns
9
+ * @returns Normalized paths in the workspace that match the provided glob patterns.
10
+ */
11
+ export declare function glob(tree: Tree, patterns: string[]): string[];
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.glob = void 0;
4
+ const minimatch_1 = require("minimatch");
5
+ const globs_1 = require("../../utils/globs");
6
+ const workspace_context_1 = require("../../utils/workspace-context");
7
+ /**
8
+ * Performs a tree-aware glob search on the files in a workspace. Able to find newly
9
+ * created files and hides deleted files before the updates are committed to disk.
10
+ * Paths should be unix-style with forward slashes.
11
+ *
12
+ * @param tree The file system tree
13
+ * @param patterns A list of glob patterns
14
+ * @returns Normalized paths in the workspace that match the provided glob patterns.
15
+ */
16
+ function glob(tree, patterns) {
17
+ const matches = new Set((0, workspace_context_1.globWithWorkspaceContext)(tree.root, patterns));
18
+ const combinedGlob = (0, globs_1.combineGlobPatterns)(patterns);
19
+ const matcher = minimatch_1.minimatch.makeRe(combinedGlob);
20
+ if (!matcher) {
21
+ throw new Error('Invalid glob pattern: ' + combinedGlob);
22
+ }
23
+ for (const change of tree.listChanges()) {
24
+ if (change.type !== 'UPDATE' && matcher.test(change.path)) {
25
+ if (change.type === 'CREATE') {
26
+ matches.add(change.path);
27
+ }
28
+ else if (change.type === 'DELETE') {
29
+ matches.delete(change.path);
30
+ }
31
+ }
32
+ }
33
+ return Array.from(matches);
34
+ }
35
+ exports.glob = glob;
@@ -0,0 +1,28 @@
1
+ import type { Tree } from '../tree';
2
+ import type { JsonParseOptions, JsonSerializeOptions } from '../../utils/json';
3
+ /**
4
+ * Reads a json file, removes all comments and parses JSON.
5
+ *
6
+ * @param tree - file system tree
7
+ * @param path - file path
8
+ * @param options - Optional JSON Parse Options
9
+ */
10
+ export declare function readJson<T extends object = any>(tree: Tree, path: string, options?: JsonParseOptions): T;
11
+ /**
12
+ * Writes a JSON value to the file system tree
13
+
14
+ * @param tree File system tree
15
+ * @param path Path of JSON file in the Tree
16
+ * @param value Serializable value to write
17
+ * @param options Optional JSON Serialize Options
18
+ */
19
+ export declare function writeJson<T extends object = object>(tree: Tree, path: string, value: T, options?: JsonSerializeOptions): void;
20
+ /**
21
+ * Updates a JSON value to the file system tree
22
+ *
23
+ * @param tree File system tree
24
+ * @param path Path of JSON file in the Tree
25
+ * @param updater Function that maps the current value of a JSON document to a new value to be written to the document
26
+ * @param options Optional JSON Parse and Serialize Options
27
+ */
28
+ export declare function updateJson<T extends object = any, U extends object = T>(tree: Tree, path: string, updater: (value: T) => U, options?: JsonParseOptions & JsonSerializeOptions): void;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateJson = exports.writeJson = exports.readJson = void 0;
4
+ const json_1 = require("../../utils/json");
5
+ /**
6
+ * Reads a json file, removes all comments and parses JSON.
7
+ *
8
+ * @param tree - file system tree
9
+ * @param path - file path
10
+ * @param options - Optional JSON Parse Options
11
+ */
12
+ function readJson(tree, path, options) {
13
+ if (!tree.exists(path)) {
14
+ throw new Error(`Cannot find ${path}`);
15
+ }
16
+ try {
17
+ return (0, json_1.parseJson)(tree.read(path, 'utf-8'), options);
18
+ }
19
+ catch (e) {
20
+ throw new Error(`Cannot parse ${path}: ${e.message}`);
21
+ }
22
+ }
23
+ exports.readJson = readJson;
24
+ /**
25
+ * Writes a JSON value to the file system tree
26
+
27
+ * @param tree File system tree
28
+ * @param path Path of JSON file in the Tree
29
+ * @param value Serializable value to write
30
+ * @param options Optional JSON Serialize Options
31
+ */
32
+ function writeJson(tree, path, value, options) {
33
+ tree.write(path, (0, json_1.serializeJson)(value, options));
34
+ }
35
+ exports.writeJson = writeJson;
36
+ /**
37
+ * Updates a JSON value to the file system tree
38
+ *
39
+ * @param tree File system tree
40
+ * @param path Path of JSON file in the Tree
41
+ * @param updater Function that maps the current value of a JSON document to a new value to be written to the document
42
+ * @param options Optional JSON Parse and Serialize Options
43
+ */
44
+ function updateJson(tree, path, updater, options) {
45
+ const updatedValue = updater(readJson(tree, path, options));
46
+ writeJson(tree, path, updatedValue, options);
47
+ }
48
+ exports.updateJson = updateJson;
@@ -0,0 +1,11 @@
1
+ import type { NxJsonConfiguration } from '../../config/nx-json';
2
+ import type { Tree } from '../tree';
3
+ /**
4
+ * @deprecated You must pass a {@link Tree}
5
+ */
6
+ export declare function readNxJson(): NxJsonConfiguration | null;
7
+ export declare function readNxJson(tree: Tree): NxJsonConfiguration | null;
8
+ /**
9
+ * Update nx.json
10
+ */
11
+ export declare function updateNxJson(tree: Tree, nxJson: NxJsonConfiguration): void;