@nx/angular 17.0.5 → 17.0.6

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 (458) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +4 -9
  3. package/esm2022/mf/mf.mjs +1 -1
  4. package/esm2022/src/runtime/nx/data-persistence.mjs +1 -1
  5. package/executors.d.ts +2 -9
  6. package/executors.js +2 -7
  7. package/executors.json +9 -19
  8. package/fesm2022/nx-angular-mf.mjs.map +1 -1
  9. package/fesm2022/nx-angular.mjs.map +1 -1
  10. package/generators.d.ts +1 -1
  11. package/generators.js +1 -3
  12. package/generators.json +2 -7
  13. package/migrations.json +0 -451
  14. package/ng-package.json +2 -2
  15. package/package.json +26 -20
  16. package/plugins/component-testing.d.ts +26 -1
  17. package/plugins/component-testing.js +4 -15
  18. package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.d.ts +5 -0
  19. package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.js +137 -0
  20. package/src/{executors → builders}/module-federation-dev-server/schema.d.ts +7 -25
  21. package/src/{executors → builders}/module-federation-dev-server/schema.json +6 -31
  22. package/src/builders/module-federation-dev-ssr/module-federation-dev-ssr.impl.d.ts +1 -1
  23. package/src/builders/module-federation-dev-ssr/module-federation-dev-ssr.impl.js +9 -15
  24. package/src/builders/utilities/module-federation.js +1 -1
  25. package/src/builders/webpack-browser/schema.d.ts +2 -6
  26. package/src/builders/webpack-browser/schema.json +15 -15
  27. package/src/builders/webpack-browser/validate-options.d.ts +2 -0
  28. package/src/builders/webpack-browser/validate-options.js +40 -0
  29. package/src/builders/webpack-browser/webpack-browser.impl.js +6 -8
  30. package/src/builders/{dev-server → webpack-dev-server}/lib/index.d.ts +0 -1
  31. package/src/builders/{dev-server → webpack-dev-server}/lib/index.js +0 -1
  32. package/src/builders/webpack-dev-server/lib/normalize-options.d.ts +2 -0
  33. package/src/builders/webpack-dev-server/lib/normalize-options.js +14 -0
  34. package/src/builders/webpack-dev-server/schema.d.ts +21 -0
  35. package/src/builders/{dev-server → webpack-dev-server}/schema.json +5 -42
  36. package/src/builders/webpack-dev-server/webpack-dev-server.impl.d.ts +4 -0
  37. package/src/builders/webpack-dev-server/webpack-dev-server.impl.js +105 -0
  38. package/src/builders/webpack-server/schema.d.ts +1 -0
  39. package/src/builders/webpack-server/schema.json +20 -7
  40. package/src/builders/webpack-server/validate-options.js +7 -0
  41. package/src/builders/webpack-server/webpack-server.impl.js +9 -4
  42. package/src/executors/browser-esbuild/browser-esbuild.impl.d.ts +3 -2
  43. package/src/executors/browser-esbuild/browser-esbuild.impl.js +8 -15
  44. package/src/executors/browser-esbuild/lib/buildable-libs.d.ts +9 -0
  45. package/src/executors/{utilities → browser-esbuild/lib}/buildable-libs.js +4 -3
  46. package/src/executors/browser-esbuild/lib/validate-options.d.ts +2 -0
  47. package/src/executors/browser-esbuild/lib/validate-options.js +40 -0
  48. package/src/executors/browser-esbuild/schema.d.ts +1 -3
  49. package/src/executors/browser-esbuild/schema.json +8 -38
  50. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/compile-ngc.transform.js +4 -6
  51. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/write-package.transform.js +13 -25
  52. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ngc → ngc}/compile-source-files.d.ts +2 -1
  53. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ngc → ngc}/compile-source-files.js +9 -14
  54. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/styles → styles}/stylesheet-processor.d.ts +10 -5
  55. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/styles → styles}/stylesheet-processor.js +86 -39
  56. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ts/cache-compiler-host.d.ts +16 -0
  57. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ts/cache-compiler-host.js +175 -0
  58. package/src/executors/ng-packagr-lite/ng-packagr-lite.impl.js +17 -5
  59. package/src/executors/ng-packagr-lite/schema.json +1 -1
  60. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +3 -5
  61. package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.d.ts +1 -1
  62. package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.js +6 -13
  63. package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.d.ts +10 -5
  64. package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.js +86 -39
  65. package/src/executors/package/ng-packagr-adjustments/ts/cache-compiler-host.d.ts +15 -0
  66. package/src/executors/package/ng-packagr-adjustments/ts/cache-compiler-host.js +197 -0
  67. package/src/executors/package/package.impl.d.ts +1 -1
  68. package/src/executors/package/package.impl.js +15 -5
  69. package/src/executors/package/schema.json +3 -3
  70. package/src/executors/utilities/tailwindcss.d.ts +7 -0
  71. package/src/executors/utilities/{ng-packagr/tailwindcss.js → tailwindcss.js} +22 -5
  72. package/src/executors/utilities/typescript.js +1 -1
  73. package/src/generators/add-linting/add-linting.d.ts +1 -1
  74. package/src/generators/add-linting/add-linting.js +15 -9
  75. package/src/generators/add-linting/lib/add-angular-eslint-dependencies.d.ts +2 -2
  76. package/src/generators/add-linting/lib/add-angular-eslint-dependencies.js +5 -9
  77. package/src/generators/add-linting/lib/create-eslint-configuration.d.ts +2 -2
  78. package/src/generators/add-linting/schema.json +1 -1
  79. package/src/generators/application/application.js +17 -19
  80. package/src/generators/application/files/base/tsconfig.app.json__tpl__ +1 -1
  81. package/src/generators/application/files/base/tsconfig.json__tpl__ +2 -6
  82. package/src/generators/application/files/ng-module/src/app/app.component.spec.ts__tpl__ +1 -3
  83. package/src/generators/application/files/ng-module/src/app/app.component.ts__tpl__ +2 -4
  84. package/src/generators/application/files/ng-module/src/app/app.module.ts__tpl__ +1 -1
  85. package/src/generators/application/files/ng-module/src/app/nx-welcome.component.ts__tpl__ +14 -53
  86. package/src/generators/application/files/ng-module/src/main.ts__tpl__ +8 -2
  87. package/src/generators/application/files/standalone-components/src/app/app.component.spec.ts__tpl__ +4 -6
  88. package/src/generators/application/files/standalone-components/src/app/app.component.ts__tpl__ +2 -4
  89. package/src/generators/application/files/standalone-components/src/app/app.config.ts__tpl__ +3 -3
  90. package/src/generators/application/files/standalone-components/src/app/nx-welcome.component.ts__tpl__ +14 -53
  91. package/src/generators/application/files/standalone-components/src/main.ts__tpl__ +8 -4
  92. package/src/generators/application/files/tsconfig.editor.json__tpl__ +5 -0
  93. package/src/generators/application/files/v14/.browserlistrc__tpl__ +16 -0
  94. package/src/generators/application/files/v14/src/environments/environment.prod.ts__tpl__ +3 -0
  95. package/src/generators/application/files/v14/src/environments/environment.ts__tpl__ +16 -0
  96. package/src/generators/application/files/v14/src/polyfills.ts__tpl__ +53 -0
  97. package/src/generators/application/lib/add-e2e.js +8 -22
  98. package/src/generators/application/lib/add-unit-test-runner.js +20 -5
  99. package/src/generators/application/lib/create-files.js +10 -14
  100. package/src/generators/application/lib/create-project.d.ts +1 -1
  101. package/src/generators/application/lib/create-project.js +38 -48
  102. package/src/generators/application/lib/index.d.ts +0 -1
  103. package/src/generators/application/lib/index.js +0 -1
  104. package/src/generators/application/lib/normalize-options.d.ts +1 -1
  105. package/src/generators/application/lib/normalize-options.js +6 -28
  106. package/src/generators/application/lib/normalized-schema.d.ts +0 -5
  107. package/src/generators/application/lib/update-editor-tsconfig.d.ts +1 -1
  108. package/src/generators/application/lib/update-editor-tsconfig.js +14 -11
  109. package/src/generators/application/schema.d.ts +0 -1
  110. package/src/generators/application/schema.json +10 -18
  111. package/src/generators/component/component.js +1 -4
  112. package/src/generators/component/files/__fileName__.spec.ts__tpl__ +3 -2
  113. package/src/generators/component/files/__fileName__.ts__tpl__ +2 -8
  114. package/src/generators/component/lib/component.js +1 -1
  115. package/src/generators/component/lib/index.d.ts +1 -1
  116. package/src/generators/component/lib/index.js +1 -1
  117. package/src/generators/component/lib/normalize-options.js +2 -3
  118. package/src/generators/{setup-mf/lib/update-tsconfig.d.ts → component/lib/validate-options.d.ts} +1 -1
  119. package/src/generators/component/lib/validate-options.js +8 -0
  120. package/src/generators/component/schema.d.ts +3 -3
  121. package/src/generators/component/schema.json +4 -4
  122. package/src/generators/component-cypress-spec/files/__componentFileName__.__fileExt__ +8 -13
  123. package/src/generators/component-cypress-spec/schema.json +1 -1
  124. package/src/generators/component-story/files/__componentFileName__.stories.ts__tmpl__ +2 -2
  125. package/src/generators/component-test/component-test.d.ts +1 -1
  126. package/src/generators/component-test/component-test.js +3 -8
  127. package/src/generators/component-test/files/__componentFileName__.cy.ts__tpl__ +11 -9
  128. package/src/generators/component-test/schema.json +1 -1
  129. package/src/generators/convert-to-with-mf/convert-to-with-mf.js +1 -3
  130. package/src/generators/convert-to-with-mf/lib/write-new-webpack-config.js +2 -3
  131. package/src/generators/convert-to-with-mf/schema.d.ts +0 -1
  132. package/src/generators/convert-to-with-mf/schema.json +0 -6
  133. package/src/generators/cypress-component-configuration/cypress-component-configuration.d.ts +1 -2
  134. package/src/generators/cypress-component-configuration/cypress-component-configuration.js +24 -43
  135. package/src/generators/directive/directive.js +1 -0
  136. package/src/generators/directive/files/__fileName__.ts__tpl__ +3 -1
  137. package/src/generators/directive/lib/index.d.ts +1 -0
  138. package/src/generators/directive/lib/index.js +1 -0
  139. package/src/generators/directive/lib/normalize-options.js +1 -3
  140. package/src/generators/directive/lib/validate-options.d.ts +3 -0
  141. package/src/generators/directive/lib/validate-options.js +8 -0
  142. package/src/generators/directive/schema.d.ts +3 -3
  143. package/src/generators/directive/schema.json +4 -4
  144. package/src/generators/federate-module/federate-module.js +0 -1
  145. package/src/generators/federate-module/lib/add-remote.d.ts +1 -1
  146. package/src/generators/federate-module/lib/add-remote.js +11 -2
  147. package/src/generators/federate-module/schema.json +3 -3
  148. package/src/generators/host/files/ts/webpack.server.config.ts__tmpl__ +2 -2
  149. package/src/generators/host/host.js +9 -8
  150. package/src/generators/host/lib/add-ssr.d.ts +3 -0
  151. package/src/generators/host/lib/{update-ssr-setup.js → add-ssr.js} +14 -8
  152. package/src/generators/host/lib/index.d.ts +1 -1
  153. package/src/generators/host/lib/index.js +1 -1
  154. package/src/generators/host/schema.json +6 -6
  155. package/src/generators/init/init.d.ts +2 -2
  156. package/src/generators/init/init.js +137 -19
  157. package/src/generators/init/schema.d.ts +9 -1
  158. package/src/generators/init/schema.json +59 -8
  159. package/src/generators/library/files/ng-module/src/lib/lib.routes.ts__tpl__ +1 -1
  160. package/src/generators/library/files/standalone-components/src/lib/lib.routes.ts__tpl__ +1 -1
  161. package/src/generators/library/lib/add-load-children.js +2 -2
  162. package/src/generators/library/lib/add-project.js +22 -24
  163. package/src/generators/library/lib/add-standalone-component.d.ts +2 -2
  164. package/src/generators/library/lib/add-standalone-component.js +4 -5
  165. package/src/generators/library/lib/normalize-options.js +5 -2
  166. package/src/generators/library/lib/update-tsconfig.js +3 -3
  167. package/src/generators/library/library.js +27 -15
  168. package/src/generators/library/schema.d.ts +0 -1
  169. package/src/generators/library/schema.json +13 -13
  170. package/src/generators/library-secondary-entry-point/files/src/index.ts__tmpl__ +5 -1
  171. package/src/generators/library-secondary-entry-point/lib/index.d.ts +1 -0
  172. package/src/generators/library-secondary-entry-point/lib/index.js +1 -0
  173. package/src/generators/library-secondary-entry-point/lib/update-linting-file-patterns.d.ts +3 -0
  174. package/src/generators/library-secondary-entry-point/lib/update-linting-file-patterns.js +15 -0
  175. package/src/generators/library-secondary-entry-point/library-secondary-entry-point.js +2 -3
  176. package/src/generators/library-secondary-entry-point/schema.d.ts +0 -1
  177. package/src/generators/library-secondary-entry-point/schema.json +3 -9
  178. package/src/generators/move/schema.json +1 -1
  179. package/src/generators/ng-add/migrate-from-angular-cli.js +1 -1
  180. package/src/generators/ng-add/migrators/projects/app.migrator.js +7 -50
  181. package/src/generators/ng-add/migrators/projects/e2e.migrator.js +23 -31
  182. package/src/generators/ng-add/ng-add.js +8 -1
  183. package/src/generators/ng-add/schema.json +1 -1
  184. package/src/generators/ng-add/utilities/workspace.d.ts +1 -1
  185. package/src/generators/ng-add/utilities/workspace.js +16 -9
  186. package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.models.ts__tmpl__ +1 -1
  187. package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.selectors.spec.ts__tmpl__ +1 -1
  188. package/src/generators/ngrx/files/no-inject/__directory__/__fileName__.effects.ts__tmpl__ +22 -0
  189. package/src/generators/ngrx/files/no-inject/__directory__/__fileName__.facade.ts__tmpl__ +27 -0
  190. package/src/generators/ngrx/lib/generate-files.js +10 -1
  191. package/src/generators/ngrx/lib/validate-options.js +23 -0
  192. package/src/generators/ngrx/schema.json +3 -3
  193. package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.models.ts__tmpl__ +1 -1
  194. package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.selectors.spec.ts__tmpl__ +1 -1
  195. package/src/generators/ngrx-feature-store/files/no-inject/__directory__/__fileName__.effects.ts__tmpl__ +22 -0
  196. package/src/generators/ngrx-feature-store/files/no-inject/__directory__/__fileName__.facade.ts__tmpl__ +27 -0
  197. package/src/generators/ngrx-feature-store/lib/generate-files.js +12 -1
  198. package/src/generators/ngrx-feature-store/lib/validate-options.js +22 -0
  199. package/src/generators/ngrx-feature-store/schema.json +3 -3
  200. package/src/generators/ngrx-root-store/lib/normalize-options.js +1 -1
  201. package/src/generators/ngrx-root-store/lib/validate-options.js +15 -0
  202. package/src/generators/ngrx-root-store/schema.json +2 -2
  203. package/src/generators/pipe/files/__fileName__.ts__tpl__ +2 -0
  204. package/src/generators/pipe/lib/index.d.ts +1 -0
  205. package/src/generators/pipe/lib/index.js +1 -0
  206. package/src/generators/pipe/lib/normalize-options.js +0 -1
  207. package/src/generators/pipe/lib/validate-options.d.ts +3 -0
  208. package/src/generators/pipe/lib/validate-options.js +8 -0
  209. package/src/generators/pipe/pipe.js +1 -0
  210. package/src/generators/pipe/schema.d.ts +3 -3
  211. package/src/generators/pipe/schema.json +4 -4
  212. package/src/generators/remote/files/base-ts/webpack.server.config.ts__tmpl__ +2 -2
  213. package/src/generators/remote/files/common/{pre-v17/src → src}/main.server.ts__tmpl__ +3 -1
  214. package/src/generators/remote/lib/{update-ssr-setup.d.ts → add-ssr.d.ts} +1 -1
  215. package/src/generators/remote/lib/{update-ssr-setup.js → add-ssr.js} +13 -9
  216. package/src/generators/remote/lib/index.d.ts +1 -1
  217. package/src/generators/remote/lib/index.js +1 -1
  218. package/src/generators/remote/remote.js +9 -7
  219. package/src/generators/remote/schema.json +6 -6
  220. package/src/generators/scam/lib/convert-component-to-scam.js +1 -2
  221. package/src/generators/scam/schema.d.ts +3 -3
  222. package/src/generators/scam/schema.json +2 -2
  223. package/src/generators/scam-directive/lib/convert-directive-to-scam.js +1 -2
  224. package/src/generators/scam-directive/scam-directive.js +1 -3
  225. package/src/generators/scam-directive/schema.d.ts +3 -4
  226. package/src/generators/scam-directive/schema.json +2 -8
  227. package/src/generators/scam-pipe/lib/convert-pipe-to-scam.js +1 -2
  228. package/src/generators/scam-pipe/scam-pipe.js +1 -3
  229. package/src/generators/scam-pipe/schema.d.ts +3 -4
  230. package/src/generators/scam-pipe/schema.json +2 -8
  231. package/src/generators/scam-to-standalone/scam-to-standalone.js +7 -0
  232. package/src/generators/scam-to-standalone/schema.json +2 -2
  233. package/src/generators/setup-mf/files/host-files/app.component.spec.ts__tmpl__ +1 -3
  234. package/src/generators/setup-mf/files/ts-webpack/module-federation.config.ts__tmpl__ +0 -12
  235. package/src/generators/setup-mf/files/ts-webpack/webpack.config.ts__tmpl__ +1 -1
  236. package/src/generators/setup-mf/files/ts-webpack/webpack.prod.config.ts__tmpl__ +12 -12
  237. package/src/generators/setup-mf/files/webpack/module-federation.config.js__tmpl__ +1 -13
  238. package/src/generators/setup-mf/lib/add-cypress-workaround.js +4 -14
  239. package/src/generators/setup-mf/lib/add-remote-entry.js +11 -2
  240. package/src/generators/setup-mf/lib/add-remote-to-host.js +1 -1
  241. package/src/generators/setup-mf/lib/fix-bootstrap.js +18 -10
  242. package/src/generators/setup-mf/lib/generate-config.js +0 -3
  243. package/src/generators/setup-mf/lib/index.d.ts +1 -1
  244. package/src/generators/setup-mf/lib/index.js +1 -1
  245. package/src/generators/setup-mf/lib/normalize-options.js +1 -2
  246. package/src/generators/setup-mf/lib/remove-dead-code-from-remote.js +10 -10
  247. package/src/generators/setup-mf/lib/set-tsconfig-target.d.ts +3 -0
  248. package/src/generators/setup-mf/lib/set-tsconfig-target.js +16 -0
  249. package/src/generators/setup-mf/lib/setup-serve-target.js +1 -1
  250. package/src/generators/setup-mf/lib/update-host-app-routes.js +2 -2
  251. package/src/generators/setup-mf/schema.d.ts +0 -1
  252. package/src/generators/setup-mf/schema.json +3 -8
  253. package/src/generators/setup-mf/setup-mf.js +7 -1
  254. package/src/generators/setup-ssr/files/{server/server-builder/pre-v17 → ngmodule/base}/__serverFileName__ +8 -7
  255. package/src/generators/setup-ssr/files/ngmodule/base/src/__main__ +1 -1
  256. package/src/generators/setup-ssr/files/ngmodule/v14/src/__main__ +11 -0
  257. package/src/generators/setup-ssr/files/{server/server-builder/v17+ → standalone}/__serverFileName__ +16 -25
  258. package/src/generators/setup-ssr/lib/add-hydration.js +5 -11
  259. package/src/generators/setup-ssr/lib/generate-files.d.ts +1 -1
  260. package/src/generators/setup-ssr/lib/generate-files.js +16 -11
  261. package/src/generators/setup-ssr/lib/index.d.ts +0 -4
  262. package/src/generators/setup-ssr/lib/index.js +0 -4
  263. package/src/generators/setup-ssr/lib/normalize-options.js +1 -7
  264. package/src/generators/setup-ssr/lib/update-project-config.d.ts +1 -2
  265. package/src/generators/setup-ssr/lib/update-project-config.js +13 -46
  266. package/src/generators/setup-ssr/lib/validate-options.js +2 -15
  267. package/src/generators/setup-ssr/schema.json +4 -4
  268. package/src/generators/setup-ssr/setup-ssr.js +12 -18
  269. package/src/generators/setup-tailwind/schema.json +1 -1
  270. package/src/generators/stories/schema.json +1 -1
  271. package/src/generators/stories/stories.js +2 -2
  272. package/src/generators/storybook-configuration/lib/generate-stories.js +4 -6
  273. package/src/generators/storybook-configuration/lib/generate-storybook-configuration.js +1 -3
  274. package/src/generators/storybook-configuration/schema.d.ts +1 -1
  275. package/src/generators/storybook-configuration/schema.json +7 -7
  276. package/src/generators/storybook-configuration/storybook-configuration.js +5 -8
  277. package/src/generators/utils/create-ts-config.d.ts +8 -0
  278. package/src/generators/utils/create-ts-config.js +35 -0
  279. package/src/generators/utils/dependencies.js +2 -1
  280. package/src/generators/utils/export-scam.js +2 -2
  281. package/src/generators/utils/project.d.ts +1 -0
  282. package/src/generators/utils/project.js +29 -2
  283. package/src/generators/utils/selector.d.ts +2 -2
  284. package/src/generators/utils/selector.js +4 -11
  285. package/src/generators/utils/testing.js +1 -24
  286. package/src/generators/utils/validations.d.ts +1 -0
  287. package/src/generators/utils/validations.js +14 -1
  288. package/src/generators/utils/version-utils.d.ts +2 -2
  289. package/src/generators/utils/version-utils.js +3 -3
  290. package/src/utils/backward-compatible-versions.d.ts +4 -6
  291. package/src/utils/backward-compatible-versions.js +22 -20
  292. package/src/utils/mf/utils.js +0 -7
  293. package/src/utils/mf/with-module-federation-ssr.js +0 -3
  294. package/src/utils/mf/with-module-federation.js +0 -3
  295. package/src/utils/nx-devkit/ast-utils.js +2 -4
  296. package/src/utils/nx-devkit/testing.js +31 -27
  297. package/src/utils/{index.d.ts → public-api.d.ts} +0 -5
  298. package/src/utils/{index.js → public-api.js} +0 -5
  299. package/src/utils/version-utils.d.ts +3 -3
  300. package/src/utils/versions.d.ts +11 -9
  301. package/src/utils/versions.js +12 -10
  302. package/src/builders/dev-server/dev-server.impl.d.ts +0 -4
  303. package/src/builders/dev-server/dev-server.impl.js +0 -160
  304. package/src/builders/dev-server/lib/normalize-options.d.ts +0 -2
  305. package/src/builders/dev-server/lib/normalize-options.js +0 -20
  306. package/src/builders/dev-server/lib/validate-options.d.ts +0 -2
  307. package/src/builders/dev-server/lib/validate-options.js +0 -22
  308. package/src/builders/dev-server/schema.d.ts +0 -39
  309. package/src/executors/application/application.impl.d.ts +0 -3
  310. package/src/executors/application/application.impl.js +0 -37
  311. package/src/executors/application/schema.d.ts +0 -8
  312. package/src/executors/application/schema.json +0 -682
  313. package/src/executors/application/utils/validate-options.d.ts +0 -2
  314. package/src/executors/application/utils/validate-options.js +0 -52
  315. package/src/executors/extract-i18n/extract-i18n.impl.d.ts +0 -3
  316. package/src/executors/extract-i18n/extract-i18n.impl.js +0 -43
  317. package/src/executors/extract-i18n/schema.d.ts +0 -8
  318. package/src/executors/extract-i18n/schema.json +0 -45
  319. package/src/executors/module-federation-dev-server/lib/build-static-remotes.d.ts +0 -4
  320. package/src/executors/module-federation-dev-server/lib/build-static-remotes.js +0 -56
  321. package/src/executors/module-federation-dev-server/lib/index.d.ts +0 -5
  322. package/src/executors/module-federation-dev-server/lib/index.js +0 -8
  323. package/src/executors/module-federation-dev-server/lib/normalize-options.d.ts +0 -2
  324. package/src/executors/module-federation-dev-server/lib/normalize-options.js +0 -23
  325. package/src/executors/module-federation-dev-server/lib/parse-static-remotes-config.d.ts +0 -11
  326. package/src/executors/module-federation-dev-server/lib/parse-static-remotes-config.js +0 -18
  327. package/src/executors/module-federation-dev-server/lib/start-dev-remotes.d.ts +0 -5
  328. package/src/executors/module-federation-dev-server/lib/start-dev-remotes.js +0 -29
  329. package/src/executors/module-federation-dev-server/lib/start-static-remotes-file-server.d.ts +0 -9
  330. package/src/executors/module-federation-dev-server/lib/start-static-remotes-file-server.js +0 -46
  331. package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.d.ts +0 -4
  332. package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.js +0 -116
  333. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-packagr.d.ts +0 -3
  334. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-packagr.js +0 -34
  335. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.di.d.ts +0 -2
  336. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.di.js +0 -12
  337. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.transform.d.ts +0 -8
  338. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.transform.js +0 -12
  339. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.di.d.ts +0 -8
  340. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.di.js +0 -18
  341. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.transform.d.ts +0 -8
  342. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.transform.js +0 -285
  343. package/src/executors/package/ng-packagr-adjustments/ng-packagr.d.ts +0 -3
  344. package/src/executors/package/ng-packagr-adjustments/ng-packagr.js +0 -28
  345. package/src/executors/utilities/buildable-libs.d.ts +0 -6
  346. package/src/executors/utilities/esbuild-extensions.d.ts +0 -10
  347. package/src/executors/utilities/esbuild-extensions.js +0 -50
  348. package/src/executors/utilities/module-loader.d.ts +0 -15
  349. package/src/executors/utilities/module-loader.js +0 -52
  350. package/src/executors/utilities/ng-compiler-cli.d.ts +0 -1
  351. package/src/executors/utilities/ng-compiler-cli.js +0 -8
  352. package/src/executors/utilities/ng-packagr/stylesheet-processor.d.ts +0 -49
  353. package/src/executors/utilities/ng-packagr/stylesheet-processor.di.d.ts +0 -2
  354. package/src/executors/utilities/ng-packagr/stylesheet-processor.di.js +0 -16
  355. package/src/executors/utilities/ng-packagr/stylesheet-processor.js +0 -209
  356. package/src/executors/utilities/ng-packagr/tailwindcss.d.ts +0 -7
  357. package/src/executors/utilities/patch-builder-context.d.ts +0 -3
  358. package/src/executors/utilities/patch-builder-context.js +0 -41
  359. package/src/generators/add-linting/lib/buildable-project.d.ts +0 -2
  360. package/src/generators/add-linting/lib/buildable-project.js +0 -9
  361. package/src/generators/application/lib/set-generator-defaults.d.ts +0 -3
  362. package/src/generators/application/lib/set-generator-defaults.js +0 -17
  363. package/src/generators/component/lib/set-generator-defaults.d.ts +0 -3
  364. package/src/generators/component/lib/set-generator-defaults.js +0 -14
  365. package/src/generators/convert-to-application-executor/convert-to-application-executor.d.ts +0 -4
  366. package/src/generators/convert-to-application-executor/convert-to-application-executor.js +0 -242
  367. package/src/generators/convert-to-application-executor/schema.d.ts +0 -4
  368. package/src/generators/convert-to-application-executor/schema.json +0 -26
  369. package/src/generators/host/files/common/v17+/src/main.server.ts__tmpl__ +0 -67
  370. package/src/generators/host/lib/update-ssr-setup.d.ts +0 -3
  371. package/src/generators/library/lib/set-generator-defaults.d.ts +0 -3
  372. package/src/generators/library/lib/set-generator-defaults.js +0 -15
  373. package/src/generators/remote/files/common/v17+/src/main.server.ts__tmpl__ +0 -73
  374. package/src/generators/setup-mf/files/ts-webpack/tsconfig.lint.json__tmpl__ +0 -12
  375. package/src/generators/setup-mf/lib/update-tsconfig.js +0 -19
  376. package/src/generators/setup-ssr/files/server/application-builder/__serverFileName__ +0 -56
  377. package/src/generators/setup-ssr/lib/add-dependencies.d.ts +0 -2
  378. package/src/generators/setup-ssr/lib/add-dependencies.js +0 -36
  379. package/src/generators/setup-ssr/lib/add-server-file.d.ts +0 -3
  380. package/src/generators/setup-ssr/lib/add-server-file.js +0 -31
  381. package/src/generators/setup-ssr/lib/constants.d.ts +0 -3
  382. package/src/generators/setup-ssr/lib/constants.js +0 -6
  383. package/src/generators/setup-ssr/lib/generate-server-ts-config.d.ts +0 -4
  384. package/src/generators/setup-ssr/lib/generate-server-ts-config.js +0 -29
  385. package/src/generators/setup-ssr/lib/set-router-initial-navigation.d.ts +0 -3
  386. package/src/generators/setup-ssr/lib/set-router-initial-navigation.js +0 -93
  387. package/src/generators/utils/add-jest.d.ts +0 -8
  388. package/src/generators/utils/add-jest.js +0 -36
  389. package/src/generators/utils/add-mf-env-to-inputs.d.ts +0 -2
  390. package/src/generators/utils/add-mf-env-to-inputs.js +0 -27
  391. package/src/generators/utils/ensure-angular-dependencies.d.ts +0 -2
  392. package/src/generators/utils/ensure-angular-dependencies.js +0 -35
  393. package/src/generators/utils/update-app-editor-tsconfig-excluded-files.d.ts +0 -2
  394. package/src/generators/utils/update-app-editor-tsconfig-excluded-files.js +0 -23
  395. package/src/generators/utils/update-project-root-tsconfig.d.ts +0 -3
  396. package/src/generators/utils/update-project-root-tsconfig.js +0 -26
  397. package/src/migrations/update-17-1-0/browser-target-to-build-target.d.ts +0 -3
  398. package/src/migrations/update-17-1-0/browser-target-to-build-target.js +0 -50
  399. package/src/migrations/update-17-1-0/replace-nguniversal-builders.d.ts +0 -2
  400. package/src/migrations/update-17-1-0/replace-nguniversal-builders.js +0 -75
  401. package/src/migrations/update-17-1-0/replace-nguniversal-engines.d.ts +0 -2
  402. package/src/migrations/update-17-1-0/replace-nguniversal-engines.js +0 -183
  403. package/src/migrations/update-17-1-0/update-angular-cli.d.ts +0 -3
  404. package/src/migrations/update-17-1-0/update-angular-cli.js +0 -23
  405. package/src/migrations/update-17-1-0/update-zone-js-deep-import.d.ts +0 -2
  406. package/src/migrations/update-17-1-0/update-zone-js-deep-import.js +0 -37
  407. package/src/migrations/update-17-2-0/rename-webpack-dev-server.d.ts +0 -2
  408. package/src/migrations/update-17-2-0/rename-webpack-dev-server.js +0 -40
  409. package/src/migrations/update-17-3-0/add-autoprefixer-dependency.d.ts +0 -2
  410. package/src/migrations/update-17-3-0/add-autoprefixer-dependency.js +0 -26
  411. package/src/migrations/update-17-3-0/add-browser-sync-dependency.d.ts +0 -2
  412. package/src/migrations/update-17-3-0/add-browser-sync-dependency.js +0 -26
  413. package/src/migrations/update-17-3-0/update-angular-cli.d.ts +0 -3
  414. package/src/migrations/update-17-3-0/update-angular-cli.js +0 -23
  415. package/src/migrations/update-18-0-0/add-mf-env-var-to-target-defaults.d.ts +0 -2
  416. package/src/migrations/update-18-0-0/add-mf-env-var-to-target-defaults.js +0 -26
  417. package/src/migrations/update-18-1-0/update-angular-cli.d.ts +0 -3
  418. package/src/migrations/update-18-1-0/update-angular-cli.js +0 -23
  419. package/src/migrations/update-18-1-1/fix-target-defaults-inputs.d.ts +0 -2
  420. package/src/migrations/update-18-1-1/fix-target-defaults-inputs.js +0 -53
  421. package/src/migrations/update-18-2-0/update-angular-cli.d.ts +0 -3
  422. package/src/migrations/update-18-2-0/update-angular-cli.js +0 -23
  423. package/src/utils/targets.d.ts +0 -2
  424. package/src/utils/targets.js +0 -17
  425. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/compile-ngc.di.d.ts +0 -0
  426. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/compile-ngc.di.js +0 -0
  427. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/compile-ngc.transform.d.ts +0 -0
  428. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/entry-point.di.d.ts +0 -0
  429. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/entry-point.di.js +0 -0
  430. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/entry-point.transform.d.ts +0 -0
  431. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/entry-point.transform.js +0 -0
  432. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/write-package.di.d.ts +0 -0
  433. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/write-package.di.js +0 -0
  434. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/entry-point/write-package.transform.d.ts +0 -0
  435. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/options.di.d.ts +0 -0
  436. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/options.di.js +0 -0
  437. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/package.di.d.ts +0 -0
  438. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/ng-package → ng-package}/package.di.js +0 -0
  439. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/styles → styles}/stylesheet-processor.di.d.ts +0 -0
  440. /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{pre-v17/styles → styles}/stylesheet-processor.di.js +0 -0
  441. /package/src/generators/host/files/common/{pre-v17/src → src}/main.server.ts__tmpl__ +0 -0
  442. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.actions.ts__tmpl__ +0 -0
  443. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.effects.spec.ts__tmpl__ +0 -0
  444. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.effects.ts__tmpl__ +0 -0
  445. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.facade.spec.ts__tmpl__ +0 -0
  446. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.facade.ts__tmpl__ +0 -0
  447. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.reducer.spec.ts__tmpl__ +0 -0
  448. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.reducer.ts__tmpl__ +0 -0
  449. /package/src/generators/ngrx/files/{__directory__ → base/__directory__}/__fileName__.selectors.ts__tmpl__ +0 -0
  450. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.actions.ts__tmpl__ +0 -0
  451. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.effects.spec.ts__tmpl__ +0 -0
  452. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.effects.ts__tmpl__ +0 -0
  453. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.facade.spec.ts__tmpl__ +0 -0
  454. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.facade.ts__tmpl__ +0 -0
  455. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.reducer.spec.ts__tmpl__ +0 -0
  456. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.reducer.ts__tmpl__ +0 -0
  457. /package/src/generators/ngrx-feature-store/files/{__directory__ → base/__directory__}/__fileName__.selectors.ts__tmpl__ +0 -0
  458. /package/src/generators/setup-ssr/files/{root → base}/tsconfig.server.json__tpl__ +0 -0
@@ -0,0 +1,5 @@
1
+ {
2
+ "extends": "./tsconfig.json",
3
+ "include": ["src/**/*.ts"],
4
+ "compilerOptions": {}
5
+ }
@@ -0,0 +1,16 @@
1
+ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
2
+ # For additional information regarding the format and rule options, please see:
3
+ # https://github.com/browserslist/browserslist#queries
4
+
5
+ # For the full list of supported browsers by the Angular framework, please see:
6
+ # https://angular.io/guide/browser-support
7
+
8
+ # You can see what browsers were selected by your queries by running:
9
+ # npx browserslist
10
+
11
+ last 1 Chrome version
12
+ last 1 Firefox version
13
+ last 2 Edge major versions
14
+ last 2 Safari major versions
15
+ last 2 iOS major versions
16
+ Firefox ESR
@@ -0,0 +1,3 @@
1
+ export const environment = {
2
+ production: true
3
+ };
@@ -0,0 +1,16 @@
1
+ // This file can be replaced during build by using the `fileReplacements` array.
2
+ // `ng build` replaces `environment.ts` with `environment.prod.ts`.
3
+ // The list of file replacements can be found in `angular.json`.
4
+
5
+ export const environment = {
6
+ production: false
7
+ };
8
+
9
+ /*
10
+ * For easier debugging in development mode, you can import the following file
11
+ * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.
12
+ *
13
+ * This import should be commented out in production mode because it will have a negative impact
14
+ * on performance if an error is thrown.
15
+ */
16
+ // import 'zone.js/plugins/zone-error';
@@ -0,0 +1,53 @@
1
+ /**
2
+ * This file includes polyfills needed by Angular and is loaded before the app.
3
+ * You can add your own extra polyfills to this file.
4
+ *
5
+ * This file is divided into 2 sections:
6
+ * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
7
+ * 2. Application imports. Files imported after ZoneJS that should be loaded before your main
8
+ * file.
9
+ *
10
+ * The current setup is for so-called "evergreen" browsers; the last versions of browsers that
11
+ * automatically update themselves. This includes recent versions of Safari, Chrome (including
12
+ * Opera), Edge on the desktop, and iOS and Chrome on mobile.
13
+ *
14
+ * Learn more in https://angular.io/guide/browser-support
15
+ */
16
+
17
+ /***************************************************************************************************
18
+ * BROWSER POLYFILLS
19
+ */
20
+
21
+ /**
22
+ * By default, zone.js will patch all possible macroTask and DomEvents
23
+ * user can disable parts of macroTask/DomEvents patch by setting following flags
24
+ * because those flags need to be set before `zone.js` being loaded, and webpack
25
+ * will put import in the top of bundle, so user need to create a separate file
26
+ * in this directory (for example: zone-flags.ts), and put the following flags
27
+ * into that file, and then add the following code before importing zone.js.
28
+ * import './zone-flags';
29
+ *
30
+ * The flags allowed in zone-flags.ts are listed here.
31
+ *
32
+ * The following flags will work for all browsers.
33
+ *
34
+ * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
35
+ * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
36
+ * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
37
+ *
38
+ * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
39
+ * with the following flag, it will bypass `zone.js` patch for IE/Edge
40
+ *
41
+ * (window as any).__Zone_enable_cross_context_check = true;
42
+ *
43
+ */
44
+
45
+ /***************************************************************************************************
46
+ * Zone JS is required by default for Angular itself.
47
+ */
48
+ import 'zone.js'; // Included with Angular CLI.
49
+
50
+
51
+ /***************************************************************************************************
52
+ * APPLICATION IMPORTS
53
+ */
@@ -3,14 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addE2e = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
5
  const versions_1 = require("../../../utils/versions");
6
- const version_utils_1 = require("../../utils/version-utils");
6
+ const cypress_1 = require("@nx/cypress");
7
7
  async function addE2e(tree, options) {
8
- // since e2e are separate projects, default to adding plugins
9
- const nxJson = (0, devkit_1.readNxJson)(tree);
10
- const addPlugin = process.env.NX_ADD_PLUGINS !== 'false' &&
11
- nxJson.useInferencePlugins !== false;
12
8
  if (options.e2eTestRunner === 'cypress') {
13
- const { configurationGenerator } = (0, devkit_1.ensurePackage)('@nx/cypress', versions_1.nxVersion);
14
9
  // TODO: This can call `@nx/web:static-config` generator when ready
15
10
  addFileServerTarget(tree, options, 'serve-static');
16
11
  (0, devkit_1.addProjectConfiguration)(tree, options.e2eProjectName, {
@@ -21,20 +16,18 @@ async function addE2e(tree, options) {
21
16
  tags: [],
22
17
  implicitDependencies: [options.name],
23
18
  });
24
- await configurationGenerator(tree, {
19
+ await (0, cypress_1.configurationGenerator)(tree, {
25
20
  project: options.e2eProjectName,
26
21
  directory: 'src',
27
22
  linter: options.linter,
28
23
  skipPackageJson: options.skipPackageJson,
29
24
  skipFormat: true,
30
- devServerTarget: `${options.name}:${options.e2eWebServerTarget}:development`,
31
- baseUrl: options.e2eWebServerAddress,
25
+ devServerTarget: `${options.name}:serve:development`,
32
26
  rootProject: options.rootProject,
33
- addPlugin,
34
27
  });
35
28
  }
36
29
  else if (options.e2eTestRunner === 'playwright') {
37
- const { configurationGenerator } = (0, devkit_1.ensurePackage)('@nx/playwright', versions_1.nxVersion);
30
+ const { configurationGenerator: playwrightConfigurationGenerator } = (0, devkit_1.ensurePackage)('@nx/playwright', versions_1.nxVersion);
38
31
  (0, devkit_1.addProjectConfiguration)(tree, options.e2eProjectName, {
39
32
  projectType: 'application',
40
33
  root: options.e2eProjectRoot,
@@ -42,7 +35,7 @@ async function addE2e(tree, options) {
42
35
  targets: {},
43
36
  implicitDependencies: [options.name],
44
37
  });
45
- await configurationGenerator(tree, {
38
+ await playwrightConfigurationGenerator(tree, {
46
39
  project: options.e2eProjectName,
47
40
  skipFormat: true,
48
41
  skipPackageJson: options.skipPackageJson,
@@ -50,28 +43,21 @@ async function addE2e(tree, options) {
50
43
  js: false,
51
44
  linter: options.linter,
52
45
  setParserOptionsProject: options.setParserOptionsProject,
53
- webServerCommand: `${(0, devkit_1.getPackageManagerCommand)().exec} nx ${options.e2eWebServerTarget} ${options.name}`,
54
- webServerAddress: options.e2eWebServerAddress,
46
+ webServerCommand: `${(0, devkit_1.getPackageManagerCommand)().exec} nx serve ${options.name}`,
47
+ webServerAddress: `http://localhost:${options.port ?? 4200}`,
55
48
  rootProject: options.rootProject,
56
- addPlugin,
57
49
  });
58
50
  }
59
51
  }
60
52
  exports.addE2e = addE2e;
61
53
  function addFileServerTarget(tree, options, targetName) {
62
54
  (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@nx/web': versions_1.nxVersion });
63
- const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
64
- const isUsingApplicationBuilder = angularMajorVersion >= 17 && options.bundler === 'esbuild';
65
55
  const projectConfig = (0, devkit_1.readProjectConfiguration)(tree, options.name);
66
56
  projectConfig.targets[targetName] = {
67
57
  executor: '@nx/web:file-server',
68
58
  options: {
69
59
  buildTarget: `${options.name}:build`,
70
- port: options.e2ePort,
71
- staticFilePath: isUsingApplicationBuilder
72
- ? (0, devkit_1.joinPathFragments)(options.outputPath, 'browser')
73
- : undefined,
74
- spa: true,
60
+ port: options.port,
75
61
  },
76
62
  };
77
63
  (0, devkit_1.updateProjectConfiguration)(tree, options.name, projectConfig);
@@ -1,16 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addUnitTestRunner = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const jest_1 = require("@nx/jest");
4
6
  const test_runners_1 = require("../../../utils/test-runners");
5
- const add_jest_1 = require("../../utils/add-jest");
6
7
  async function addUnitTestRunner(host, options) {
7
8
  if (options.unitTestRunner === test_runners_1.UnitTestRunner.Jest) {
8
- await (0, add_jest_1.addJest)(host, {
9
- name: options.name,
10
- projectRoot: options.appProjectRoot,
9
+ await (0, jest_1.configurationGenerator)(host, {
10
+ project: options.name,
11
+ setupFile: 'angular',
12
+ supportTsx: false,
13
+ skipSerializers: false,
11
14
  skipPackageJson: options.skipPackageJson,
12
- strict: options.strict,
15
+ skipFormat: true,
13
16
  });
17
+ const setupFile = (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'src', 'test-setup.ts');
18
+ if (options.strict && host.exists(setupFile)) {
19
+ const contents = host.read(setupFile, 'utf-8');
20
+ host.write(setupFile, `// @ts-expect-error https://thymikee.github.io/jest-preset-angular/docs/getting-started/test-environment
21
+ globalThis.ngJest = {
22
+ testEnvironmentOptions: {
23
+ errorOnUnknownElements: true,
24
+ errorOnUnknownProperties: true,
25
+ },
26
+ };
27
+ ${contents}`);
28
+ }
14
29
  }
15
30
  }
16
31
  exports.addUnitTestRunner = addUnitTestRunner;
@@ -3,19 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createFiles = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
5
  const js_1 = require("@nx/js");
6
- const update_project_root_tsconfig_1 = require("../../utils/update-project-root-tsconfig");
6
+ const create_ts_config_1 = require("../../utils/create-ts-config");
7
7
  const test_runners_1 = require("../../../utils/test-runners");
8
8
  const version_utils_1 = require("../../utils/version-utils");
9
- const selector_1 = require("../../utils/selector");
10
9
  async function createFiles(tree, options, rootOffset) {
11
- const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
12
- const isUsingApplicationBuilder = angularMajorVersion >= 17 && options.bundler === 'esbuild';
13
- const rootSelector = `${options.prefix}-root`;
14
- (0, selector_1.validateHtmlSelector)(rootSelector);
15
- const nxWelcomeSelector = `${options.prefix}-nx-welcome`;
16
- (0, selector_1.validateHtmlSelector)(nxWelcomeSelector);
10
+ const installedAngularInfo = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
17
11
  const substitutions = {
18
- rootSelector,
12
+ rootSelector: `${options.prefix}-root`,
19
13
  appName: options.name,
20
14
  inlineStyle: options.inlineStyle,
21
15
  inlineTemplate: options.inlineTemplate,
@@ -24,21 +18,23 @@ async function createFiles(tree, options, rootOffset) {
24
18
  unitTesting: options.unitTestRunner !== test_runners_1.UnitTestRunner.None,
25
19
  routing: options.routing,
26
20
  minimal: options.minimal,
27
- nxWelcomeSelector,
21
+ nxWelcomeSelector: `${options.prefix}-nx-welcome`,
28
22
  rootTsConfig: (0, devkit_1.joinPathFragments)(rootOffset, (0, js_1.getRootTsConfigFileName)(tree)),
29
- angularMajorVersion,
23
+ installedAngularInfo,
30
24
  rootOffset,
31
- isUsingApplicationBuilder,
32
25
  tpl: '',
33
26
  };
34
27
  (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/base'), options.appProjectRoot, substitutions);
28
+ if (installedAngularInfo.major === 14) {
29
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/v14'), options.appProjectRoot, substitutions);
30
+ }
35
31
  if (options.standalone) {
36
32
  (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/standalone-components'), options.appProjectRoot, substitutions);
37
33
  }
38
34
  else {
39
- (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/ng-module'), options.appProjectRoot, substitutions);
35
+ await (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/ng-module'), options.appProjectRoot, substitutions);
40
36
  }
41
- (0, update_project_root_tsconfig_1.updateProjectRootTsConfig)(tree, options.appProjectRoot, (0, js_1.getRelativePathToRootTsConfig)(tree, options.appProjectRoot), options.rootProject);
37
+ (0, create_ts_config_1.createTsConfig)(tree, options.appProjectRoot, 'app', options, (0, js_1.getRelativePathToRootTsConfig)(tree, options.appProjectRoot));
42
38
  if (!options.routing) {
43
39
  tree.delete((0, devkit_1.joinPathFragments)(options.appProjectRoot, '/src/app/app.routes.ts'));
44
40
  }
@@ -1,3 +1,3 @@
1
- import { Tree } from '@nx/devkit';
1
+ import type { Tree } from '@nx/devkit';
2
2
  import type { NormalizedSchema } from './normalized-schema';
3
3
  export declare function createProject(tree: Tree, options: NormalizedSchema): void;
@@ -3,75 +3,65 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createProject = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
5
  const version_utils_1 = require("../../utils/version-utils");
6
- const add_build_target_defaults_1 = require("@nx/devkit/src/generators/add-build-target-defaults");
7
6
  function createProject(tree, options) {
8
- const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
7
+ const installedAngularInfo = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
9
8
  const buildExecutor = options.bundler === 'webpack'
10
9
  ? '@angular-devkit/build-angular:browser'
11
- : angularMajorVersion >= 17
12
- ? '@angular-devkit/build-angular:application'
13
- : '@angular-devkit/build-angular:browser-esbuild';
14
- const buildTargetOptionName = angularMajorVersion >= 17 ? 'buildTarget' : 'browserTarget';
15
- const buildMainOptionName = angularMajorVersion >= 17 && options.bundler === 'esbuild'
16
- ? 'browser'
17
- : 'main';
18
- (0, add_build_target_defaults_1.addBuildTargetDefaults)(tree, buildExecutor);
19
- let budgets = undefined;
20
- if (options.bundler === 'webpack' || angularMajorVersion >= 17) {
21
- if (options.strict) {
22
- budgets = [
23
- { type: 'initial', maximumWarning: '500kb', maximumError: '1mb' },
24
- {
25
- type: 'anyComponentStyle',
26
- maximumWarning: '2kb',
27
- maximumError: '4kb',
28
- },
29
- ];
30
- }
31
- else {
32
- budgets = [
33
- { type: 'initial', maximumWarning: '2mb', maximumError: '5mb' },
34
- {
35
- type: 'anyComponentStyle',
36
- maximumWarning: '6kb',
37
- maximumError: '10kb',
38
- },
39
- ];
40
- }
41
- }
42
- const inlineStyleLanguage = options?.style !== 'css' ? options.style : undefined;
10
+ : '@angular-devkit/build-angular:browser-esbuild';
43
11
  const project = {
44
12
  name: options.name,
45
13
  projectType: 'application',
46
14
  prefix: options.prefix,
47
15
  root: options.appProjectRoot,
48
- sourceRoot: options.appProjectSourceRoot,
16
+ sourceRoot: `${options.appProjectRoot}/src`,
49
17
  tags: options.parsedTags,
50
18
  targets: {
51
19
  build: {
52
20
  executor: buildExecutor,
53
21
  outputs: ['{options.outputPath}'],
54
22
  options: {
55
- outputPath: options.outputPath,
56
- index: `${options.appProjectSourceRoot}/index.html`,
57
- [buildMainOptionName]: `${options.appProjectSourceRoot}/main.ts`,
58
- polyfills: ['zone.js'],
23
+ outputPath: `dist/${!options.rootProject ? options.appProjectRoot : options.name}`,
24
+ index: `${options.appProjectRoot}/src/index.html`,
25
+ main: `${options.appProjectRoot}/src/main.ts`,
26
+ polyfills: installedAngularInfo.major === 14
27
+ ? `${options.appProjectRoot}/src/polyfills.ts`
28
+ : ['zone.js'],
59
29
  tsConfig: `${options.appProjectRoot}/tsconfig.app.json`,
60
- inlineStyleLanguage,
61
30
  assets: [
62
- `${options.appProjectSourceRoot}/favicon.ico`,
63
- `${options.appProjectSourceRoot}/assets`,
31
+ `${options.appProjectRoot}/src/favicon.ico`,
32
+ `${options.appProjectRoot}/src/assets`,
64
33
  ],
65
- styles: [`${options.appProjectSourceRoot}/styles.${options.style}`],
34
+ styles: [`${options.appProjectRoot}/src/styles.${options.style}`],
66
35
  scripts: [],
67
36
  },
68
37
  configurations: {
69
38
  production: {
70
- budgets,
39
+ budgets: options.bundler === 'webpack'
40
+ ? [
41
+ {
42
+ type: 'initial',
43
+ maximumWarning: '500kb',
44
+ maximumError: '1mb',
45
+ },
46
+ {
47
+ type: 'anyComponentStyle',
48
+ maximumWarning: '2kb',
49
+ maximumError: '4kb',
50
+ },
51
+ ]
52
+ : undefined,
53
+ fileReplacements: installedAngularInfo.major === 14
54
+ ? [
55
+ {
56
+ replace: `${options.appProjectRoot}/src/environments/environment.ts`,
57
+ with: `${options.appProjectRoot}/src/environments/environment.prod.ts`,
58
+ },
59
+ ]
60
+ : undefined,
71
61
  outputHashing: 'all',
72
62
  },
73
63
  development: {
74
- buildOptimizer: options.bundler === 'webpack' ? false : undefined,
64
+ buildOptimizer: false,
75
65
  optimization: false,
76
66
  vendorChunk: options.bundler === 'webpack' ? true : undefined,
77
67
  extractLicenses: false,
@@ -90,10 +80,10 @@ function createProject(tree, options) {
90
80
  : undefined,
91
81
  configurations: {
92
82
  production: {
93
- [buildTargetOptionName]: `${options.name}:build:production`,
83
+ browserTarget: `${options.name}:build:production`,
94
84
  },
95
85
  development: {
96
- [buildTargetOptionName]: `${options.name}:build:development`,
86
+ browserTarget: `${options.name}:build:development`,
97
87
  },
98
88
  },
99
89
  defaultConfiguration: 'development',
@@ -101,7 +91,7 @@ function createProject(tree, options) {
101
91
  'extract-i18n': {
102
92
  executor: '@angular-devkit/build-angular:extract-i18n',
103
93
  options: {
104
- [buildTargetOptionName]: `${options.name}:build`,
94
+ browserTarget: `${options.name}:build`,
105
95
  },
106
96
  },
107
97
  },
@@ -8,5 +8,4 @@ export * from './enable-strict-type-checking';
8
8
  export * from './normalize-options';
9
9
  export * from './normalized-schema';
10
10
  export * from './set-app-strict-default';
11
- export * from './set-generator-defaults';
12
11
  export * from './update-editor-tsconfig';
@@ -11,5 +11,4 @@ tslib_1.__exportStar(require("./enable-strict-type-checking"), exports);
11
11
  tslib_1.__exportStar(require("./normalize-options"), exports);
12
12
  tslib_1.__exportStar(require("./normalized-schema"), exports);
13
13
  tslib_1.__exportStar(require("./set-app-strict-default"), exports);
14
- tslib_1.__exportStar(require("./set-generator-defaults"), exports);
15
14
  tslib_1.__exportStar(require("./update-editor-tsconfig"), exports);
@@ -1,4 +1,4 @@
1
- import { type Tree } from '@nx/devkit';
1
+ import { Tree } from '@nx/devkit';
2
2
  import type { Schema } from '../schema';
3
3
  import type { NormalizedSchema } from './normalized-schema';
4
4
  export declare function normalizeOptions(host: Tree, options: Partial<Schema>): Promise<NormalizedSchema>;
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.normalizeOptions = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
4
  const project_name_and_root_utils_1 = require("@nx/devkit/src/generators/project-name-and-root-utils");
5
+ const get_npm_scope_1 = require("@nx/js/src/utils/package-json/get-npm-scope");
6
6
  const eslint_1 = require("@nx/eslint");
7
7
  const test_runners_1 = require("../../../utils/test-runners");
8
- const version_utils_1 = require("../../utils/version-utils");
8
+ const project_1 = require("../../utils/project");
9
9
  async function normalizeOptions(host, options) {
10
10
  const { projectName: appProjectName, projectRoot: appProjectRoot, projectNameAndRootFormat, } = await (0, project_name_and_root_utils_1.determineProjectNameAndRootOptions)(host, {
11
11
  name: options.name,
@@ -17,31 +17,16 @@ async function normalizeOptions(host, options) {
17
17
  });
18
18
  options.rootProject = appProjectRoot === '.';
19
19
  options.projectNameAndRootFormat = projectNameAndRootFormat;
20
- const nxJson = (0, devkit_1.readNxJson)(host);
21
- let e2eWebServerTarget = 'serve';
22
- let e2ePort = options.port ?? 4200;
23
- if (nxJson.targetDefaults?.[e2eWebServerTarget] &&
24
- (nxJson.targetDefaults?.[e2eWebServerTarget].options?.port ||
25
- nxJson.targetDefaults?.[e2eWebServerTarget].options?.env?.PORT)) {
26
- e2ePort =
27
- nxJson.targetDefaults?.[e2eWebServerTarget].options?.port ||
28
- nxJson.targetDefaults?.[e2eWebServerTarget].options?.env?.PORT;
29
- }
30
20
  const e2eProjectName = options.rootProject ? 'e2e' : `${appProjectName}-e2e`;
31
21
  const e2eProjectRoot = options.rootProject ? 'e2e' : `${appProjectRoot}-e2e`;
32
- const e2eWebServerAddress = `http://localhost:${e2ePort}`;
33
22
  const parsedTags = options.tags
34
23
  ? options.tags.split(',').map((s) => s.trim())
35
24
  : [];
36
- let bundler = options.bundler;
37
- if (!bundler) {
38
- const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(host);
39
- bundler = angularMajorVersion >= 17 ? 'esbuild' : 'webpack';
40
- }
25
+ const prefix = (0, project_1.normalizeNewProjectPrefix)(options.prefix, (0, get_npm_scope_1.getNpmScope)(host), 'app');
41
26
  // Set defaults and then overwrite with user options
42
27
  return {
43
28
  style: 'css',
44
- routing: true,
29
+ routing: false,
45
30
  inlineStyle: false,
46
31
  inlineTemplate: false,
47
32
  skipTests: options.unitTestRunner === test_runners_1.UnitTestRunner.None,
@@ -50,21 +35,14 @@ async function normalizeOptions(host, options) {
50
35
  e2eTestRunner: test_runners_1.E2eTestRunner.Cypress,
51
36
  linter: eslint_1.Linter.EsLint,
52
37
  strict: true,
53
- standalone: true,
38
+ bundler: options.bundler ?? 'webpack',
54
39
  ...options,
55
- prefix: options.prefix || 'app',
40
+ prefix,
56
41
  name: appProjectName,
57
42
  appProjectRoot,
58
- appProjectSourceRoot: `${appProjectRoot}/src`,
59
43
  e2eProjectRoot,
60
44
  e2eProjectName,
61
- e2eWebServerAddress,
62
- e2eWebServerTarget,
63
- e2ePort,
64
45
  parsedTags,
65
- bundler,
66
- outputPath: (0, devkit_1.joinPathFragments)('dist', !options.rootProject ? appProjectRoot : appProjectName),
67
- ssr: options.ssr ?? false,
68
46
  };
69
47
  }
70
48
  exports.normalizeOptions = normalizeOptions;
@@ -7,12 +7,7 @@ export interface NormalizedSchema extends Schema {
7
7
  e2eTestRunner: E2eTestRunner;
8
8
  prefix: string;
9
9
  appProjectRoot: string;
10
- appProjectSourceRoot: string;
11
10
  e2eProjectName: string;
12
11
  e2eProjectRoot: string;
13
- e2eWebServerAddress: string;
14
- e2eWebServerTarget: string;
15
- e2ePort: number;
16
12
  parsedTags: string[];
17
- outputPath: string;
18
13
  }
@@ -1,3 +1,3 @@
1
- import { type Tree } from '@nx/devkit';
1
+ import type { Tree } from '@nx/devkit';
2
2
  import type { NormalizedSchema } from './normalized-schema';
3
3
  export declare function updateEditorTsConfig(tree: Tree, options: NormalizedSchema): void;
@@ -2,21 +2,24 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateEditorTsConfig = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
- const update_app_editor_tsconfig_excluded_files_1 = require("../../utils/update-app-editor-tsconfig-excluded-files");
6
5
  function getCompilerOptionsTypes(tsConfig) {
7
6
  return tsConfig?.compilerOptions?.types ?? [];
8
7
  }
9
8
  function updateEditorTsConfig(tree, options) {
10
- const appTsConfig = (0, devkit_1.readJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json'));
11
- const types = getCompilerOptionsTypes(appTsConfig);
12
- if (types?.length) {
13
- (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.editor.json'), (json) => {
14
- json.compilerOptions ??= {};
15
- json.compilerOptions.types = Array.from(new Set(types));
16
- return json;
17
- });
9
+ const types = getCompilerOptionsTypes((0, devkit_1.readJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json')));
10
+ if (options.unitTestRunner !== 'none') {
11
+ types.push(...getCompilerOptionsTypes((0, devkit_1.readJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.spec.json'))));
18
12
  }
19
- const project = (0, devkit_1.readProjectConfiguration)(tree, options.name);
20
- (0, update_app_editor_tsconfig_excluded_files_1.updateAppEditorTsConfigExcludedFiles)(tree, project);
13
+ (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.editor.json'), (json) => {
14
+ json.compilerOptions.types = types;
15
+ return json;
16
+ });
17
+ // This should be the last tsconfig references so it's not in the template
18
+ (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.json'), (json) => {
19
+ json.references.push({
20
+ path: './tsconfig.editor.json',
21
+ });
22
+ return json;
23
+ });
21
24
  }
22
25
  exports.updateEditorTsConfig = updateEditorTsConfig;
@@ -30,5 +30,4 @@ export interface Schema {
30
30
  rootProject?: boolean;
31
31
  minimal?: boolean;
32
32
  bundler?: 'webpack' | 'esbuild';
33
- ssr?: boolean;
34
33
  }
@@ -1,5 +1,5 @@
1
1
  {
2
- "$schema": "https://json-schema.org/schema",
2
+ "$schema": "http://json-schema.org/schema",
3
3
  "$id": "GeneratorNxApp",
4
4
  "title": "Creates an Angular application.",
5
5
  "description": "Creates an Angular application.",
@@ -41,23 +41,24 @@
41
41
  },
42
42
  {
43
43
  "value": "scss",
44
- "label": "SASS(.scss) [ https://sass-lang.com ]"
44
+ "label": "SASS(.scss) [ http://sass-lang.com ]"
45
45
  },
46
46
  {
47
47
  "value": "sass",
48
- "label": "SASS(.sass) [ https://sass-lang.com ]"
48
+ "label": "SASS(.sass) [ http://sass-lang.com ]"
49
49
  },
50
50
  {
51
51
  "value": "less",
52
- "label": "LESS [ https://lesscss.org ]"
52
+ "label": "LESS [ http://lesscss.org ]"
53
53
  }
54
54
  ]
55
55
  }
56
56
  },
57
57
  "routing": {
58
58
  "type": "boolean",
59
- "description": "Enable routing for the application.",
60
- "default": true,
59
+ "description": "Generate a routing module.",
60
+ "default": false,
61
+ "x-prompt": "Would you like to configure routing for this application?",
61
62
  "x-priority": "important"
62
63
  },
63
64
  "inlineStyle": {
@@ -81,7 +82,6 @@
81
82
  "type": "string",
82
83
  "format": "html-selector",
83
84
  "description": "The prefix to apply to generated selectors.",
84
- "default": "app",
85
85
  "alias": "p"
86
86
  },
87
87
  "skipTests": {
@@ -155,9 +155,8 @@
155
155
  "default": false
156
156
  },
157
157
  "standalone": {
158
- "description": "Generate an application that is setup to use standalone components.",
158
+ "description": "Generate an application that is setup to use standalone components. _Note: This is only supported in Angular versions >= 14.1.0_",
159
159
  "type": "boolean",
160
- "default": true,
161
160
  "x-priority": "important"
162
161
  },
163
162
  "rootProject": {
@@ -173,17 +172,10 @@
173
172
  "default": false
174
173
  },
175
174
  "bundler": {
176
- "description": "Bundler to use to build the application. It defaults to `esbuild` for Angular versions >= 17.0.0. Otherwise, it defaults to `webpack`. _Note: The `esbuild` bundler is only considered stable from Angular v17._",
175
+ "description": "Bundler to use to build the application.",
177
176
  "type": "string",
178
177
  "enum": ["webpack", "esbuild"],
179
- "x-prompt": "Which bundler do you want to use to build the application?",
180
- "x-priority": "important"
181
- },
182
- "ssr": {
183
- "description": "Creates an application with Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering) enabled.",
184
- "type": "boolean",
185
- "x-prompt": "Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)?",
186
- "default": false
178
+ "default": "webpack"
187
179
  }
188
180
  },
189
181
  "additionalProperties": false,