@nx/angular 17.0.4 → 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 -9
  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 -115
  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
@@ -1,67 +0,0 @@
1
- import 'zone.js/node';
2
-
3
- import { APP_BASE_HREF } from '@angular/common';
4
- import { CommonEngine } from '@angular/ssr';
5
- import * as express from 'express';
6
- import * as cors from 'cors';
7
- import { existsSync } from 'node:fs';
8
- import { join } from 'node:path';
9
- import<% if(standalone) { %> bootstrap <% } else { %> { AppServerModule } <% } %>from './bootstrap.server';
10
-
11
- // The Express app is exported so that it can be used by serverless Functions.
12
- export function app(): express.Express {
13
- const server = express();
14
- const distFolder = join(process.cwd(), '<%= browserBundleOutput %>');
15
- const indexHtml = existsSync(join(distFolder, 'index.original.html'))
16
- ? join(distFolder, 'index.original.html')
17
- : join(distFolder, 'index.html');
18
-
19
- server.use(cors());
20
-
21
- const commonEngine = new CommonEngine();
22
-
23
- server.set('view engine', 'html');
24
- server.set('views', distFolder);
25
-
26
- // Example Express Rest API endpoints
27
- // server.get('/api/**', (req, res) => { });
28
- // Serve static files from /browser
29
- server.get(
30
- '*.*',
31
- express.static(distFolder, {
32
- maxAge: '1y',
33
- })
34
- );
35
-
36
- // All regular routes use the Angular engine
37
- server.get('*', (req, res, next) => {
38
- const { protocol, originalUrl, baseUrl, headers } = req;
39
-
40
- commonEngine
41
- .render({
42
- bootstrap<% if (!standalone) { %>: AppServerModule<% } %>,
43
- documentFilePath: indexHtml,
44
- url: `${protocol}://${headers.host}${originalUrl}`,
45
- publicPath: distFolder,
46
- providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
47
- })
48
- .then((html) => res.send(html))
49
- .catch((err) => next(err));
50
- });
51
-
52
- return server;
53
- }
54
-
55
- function run(): void {
56
- const port = process.env['PORT'] || 4000;
57
-
58
- // Start up the Node server
59
- const server = app();
60
- server.listen(port, () => {
61
- console.log(`Node Express server listening on http://localhost:${port}`);
62
- });
63
- }
64
-
65
- run();
66
-
67
- export default <% if (standalone) { %>bootstrap<% } else { %>AppServerModule<% } %>;
@@ -1,3 +0,0 @@
1
- import type { Tree } from '@nx/devkit';
2
- import type { Schema } from '../schema';
3
- export declare function updateSsrSetup(tree: Tree, options: Schema, appName: string, typescriptConfiguration: boolean): Promise<import("@nx/devkit").GeneratorCallback>;
@@ -1,3 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- import type { NormalizedSchema } from './normalized-schema';
3
- export declare function setGeneratorDefaults(tree: Tree, options: NormalizedSchema): void;
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setGeneratorDefaults = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- function setGeneratorDefaults(tree, options) {
6
- const nxJson = (0, devkit_1.readNxJson)(tree);
7
- nxJson.generators = nxJson.generators ?? {};
8
- nxJson.generators['@nx/angular:library'] = {
9
- linter: options.libraryOptions.linter,
10
- unitTestRunner: options.libraryOptions.unitTestRunner,
11
- ...(nxJson.generators['@nx/angular:library'] || {}),
12
- };
13
- (0, devkit_1.updateNxJson)(tree, nxJson);
14
- }
15
- exports.setGeneratorDefaults = setGeneratorDefaults;
@@ -1,73 +0,0 @@
1
- import 'zone.js/node';
2
-
3
- import { APP_BASE_HREF } from '@angular/common';
4
- import { CommonEngine } from '@angular/ssr';
5
- import * as express from 'express';
6
- import * as cors from 'cors';
7
- import { existsSync } from 'node:fs';
8
- import { join } from 'node:path';
9
- import<% if(standalone) { %> bootstrap <% } else { %> { AppServerModule } <% } %>from './bootstrap.server';
10
-
11
- // The Express app is exported so that it can be used by serverless Functions.
12
- export function app(): express.Express {
13
- const server = express();
14
- const browserBundles = join(process.cwd(), '<%= browserBundleOutput %>');
15
- const serverBundles = join(process.cwd(), '<%= serverBundleOutput %>');
16
- const indexHtml = existsSync(join(browserBundles, 'index.original.html'))
17
- ? join(browserBundles, 'index.original.html')
18
- : join(browserBundles, 'index.html');
19
-
20
- server.use(cors());
21
-
22
- const commonEngine = new CommonEngine();
23
-
24
- server.set('view engine', 'html');
25
- server.set('views', browserBundles);
26
-
27
- // Example Express Rest API endpoints
28
- // server.get('/api/**', (req, res) => { });
29
- // Serve static files from /browser
30
- server.get('*.*', express.static(browserBundles, { maxAge: '1y' }));
31
- // Serve static files from /server
32
- server.use('/server', express.static(serverBundles, { maxAge: '1y' }));
33
-
34
- // All regular routes use the Angular engine
35
- server.get('*', (req, res, next) => {
36
- const { protocol, originalUrl, baseUrl, headers } = req;
37
-
38
- commonEngine
39
- .render({
40
- bootstrap<% if (!standalone) { %>: AppServerModule<% } %>,
41
- documentFilePath: indexHtml,
42
- url: `${protocol}://${headers.host}${originalUrl}`,
43
- publicPath: browserBundles,
44
- providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
45
- })
46
- .then((html) => res.send(html))
47
- .catch((err) => next(err));
48
- });
49
-
50
- return server;
51
- }
52
-
53
- function run(): void {
54
- const port = process.env['PORT'] || 4000;
55
-
56
- // Start up the Node server
57
- const server = app();
58
- server.listen(port, () => {
59
- console.log(`Node Express server listening on http://localhost:${port}`);
60
-
61
- /**
62
- * DO NOT REMOVE IF USING @nx/angular:module-federation-dev-ssr executor
63
- * to serve your Host application with this Remote application.
64
- * This message allows Nx to determine when the Remote is ready to be
65
- * consumed by the Host.
66
- */
67
- process.send && process.send('nx.server.ready');
68
- });
69
- }
70
-
71
- run();
72
-
73
- export default <% if (standalone) { %>bootstrap<% } else { %>AppServerModule<% } %>;
@@ -1,12 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "target": "ES2020"
5
- },
6
- "include": [
7
- "src/main.ts",
8
- <% if(type === "remote") { %> "src/remote-entry/<% if(standalone) { %>entry.routes.ts", <% } else { %> entry.module.ts", <% } } %>
9
- "webpack.config.ts",
10
- "webpack.prod.config.ts"
11
- ]
12
- }
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateTsConfig = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- function updateTsConfig(tree, schema) {
6
- const { root } = (0, devkit_1.readProjectConfiguration)(tree, schema.appName);
7
- (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(root, `tsconfig.app.json`), (json) => {
8
- json.compilerOptions ??= {};
9
- json.compilerOptions.target = 'ES2020';
10
- if (schema.mfType === 'remote') {
11
- json.files ??= [];
12
- json.files.push(schema.standalone
13
- ? 'src/app/remote-entry/entry.routes.ts'
14
- : 'src/app/remote-entry/entry.module.ts');
15
- }
16
- return json;
17
- });
18
- }
19
- exports.updateTsConfig = updateTsConfig;
@@ -1,56 +0,0 @@
1
- import { APP_BASE_HREF } from '@angular/common';
2
- import { CommonEngine } from '@angular/ssr';
3
- import express from 'express';
4
- import { fileURLToPath } from 'node:url';
5
- import { dirname, join, resolve } from 'node:path';
6
- import <% if (standalone) { %>bootstrap<% } else { %><%= rootModuleClassName %><% } %> from './src/<%= main.slice(0, -3) %>';
7
-
8
- // The Express app is exported so that it can be used by serverless Functions.
9
- export function app(): express.Express {
10
- const server = express();
11
- const serverDistFolder = dirname(fileURLToPath(import.meta.url));
12
- const browserDistFolder = resolve(serverDistFolder, '../<%= browserBundleOutputPath %>');
13
- const indexHtml = join(serverDistFolder, 'index.server.html');
14
-
15
- const commonEngine = new CommonEngine();
16
-
17
- server.set('view engine', 'html');
18
- server.set('views', browserDistFolder);
19
-
20
- // Example Express Rest API endpoints
21
- // server.get('/api/**', (req, res) => { });
22
- // Serve static files from /browser
23
- server.get('*.*', express.static(browserDistFolder, {
24
- maxAge: '1y'
25
- }));
26
-
27
- // All regular routes use the Angular engine
28
- server.get('*', (req, res, next) => {
29
- const { protocol, originalUrl, baseUrl, headers } = req;
30
-
31
- commonEngine
32
- .render({
33
- bootstrap<% if (!standalone) { %>: <%= rootModuleClassName %><% } %>,
34
- documentFilePath: indexHtml,
35
- url: `${protocol}://${headers.host}${originalUrl}`,
36
- publicPath: browserDistFolder,
37
- providers: [{ provide: APP_BASE_HREF, useValue: baseUrl }],
38
- })
39
- .then((html) => res.send(html))
40
- .catch((err) => next(err));
41
- });
42
-
43
- return server;
44
- }
45
-
46
- function run(): void {
47
- const port = process.env['PORT'] || <%= serverPort %>;
48
-
49
- // Start up the Node server
50
- const server = app();
51
- server.listen(port, () => {
52
- console.log(`Node Express server listening on http://localhost:${port}`);
53
- });
54
- }
55
-
56
- run();
@@ -1,2 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- export declare function addDependencies(tree: Tree, isUsingApplicationBuilder: boolean): void;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addDependencies = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- const semver_1 = require("semver");
6
- const version_utils_1 = require("../../utils/version-utils");
7
- function addDependencies(tree, isUsingApplicationBuilder) {
8
- const pkgVersions = (0, version_utils_1.versions)(tree);
9
- const { major: angularMajorVersion, version: angularVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
10
- const dependencies = {
11
- '@angular/platform-server': (0, version_utils_1.getInstalledPackageVersionInfo)(tree, '@angular/platform-server')
12
- ?.version ?? pkgVersions.angularVersion,
13
- express: pkgVersions.expressVersion,
14
- };
15
- const devDependencies = {
16
- '@types/express': pkgVersions.typesExpressVersion,
17
- };
18
- if (angularMajorVersion >= 17) {
19
- dependencies['@angular/ssr'] =
20
- (0, version_utils_1.getInstalledPackageVersionInfo)(tree, '@angular-devkit/build-angular')
21
- ?.version ?? pkgVersions.angularDevkitVersion;
22
- if (!isUsingApplicationBuilder && (0, semver_1.gte)(angularVersion, '17.1.0')) {
23
- devDependencies['browser-sync'] = pkgVersions.browserSyncVersion;
24
- }
25
- }
26
- else {
27
- dependencies['@nguniversal/express-engine'] =
28
- (0, version_utils_1.getInstalledPackageVersionInfo)(tree, '@nguniversal/express-engine')
29
- ?.version ?? pkgVersions.ngUniversalVersion;
30
- devDependencies['@nguniversal/builders'] =
31
- (0, version_utils_1.getInstalledPackageVersionInfo)(tree, '@nguniversal/builders')?.version ??
32
- pkgVersions.ngUniversalVersion;
33
- }
34
- (0, devkit_1.addDependenciesToPackageJson)(tree, dependencies, devDependencies);
35
- }
36
- exports.addDependencies = addDependencies;
@@ -1,3 +0,0 @@
1
- import type { Tree } from '@nx/devkit';
2
- import type { Schema } from '../schema';
3
- export declare function addServerFile(tree: Tree, schema: Schema, isUsingApplicationBuilder: boolean): void;
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addServerFile = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- const version_utils_1 = require("../../utils/version-utils");
6
- const constants_1 = require("./constants");
7
- function addServerFile(tree, schema, isUsingApplicationBuilder) {
8
- const { root: projectRoot, targets } = (0, devkit_1.readProjectConfiguration)(tree, schema.project);
9
- const { outputPath } = targets.build.options;
10
- const browserBundleOutputPath = isUsingApplicationBuilder
11
- ? getApplicationBuilderBrowserOutputPath(outputPath)
12
- : outputPath;
13
- const pathToFiles = (0, devkit_1.joinPathFragments)(__dirname, '..', 'files');
14
- const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
15
- (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'server', ...(isUsingApplicationBuilder
16
- ? ['application-builder']
17
- : angularMajorVersion >= 17
18
- ? ['server-builder', 'v17+']
19
- : ['server-builder', 'pre-v17'])), projectRoot, { ...schema, browserBundleOutputPath, tpl: '' });
20
- }
21
- exports.addServerFile = addServerFile;
22
- function getApplicationBuilderBrowserOutputPath(outputPath) {
23
- if (outputPath) {
24
- if (typeof outputPath === 'string') {
25
- // when `outputPath` is a string, it's the base path, so we return the default browser path
26
- return constants_1.DEFAULT_BROWSER_DIR;
27
- }
28
- return outputPath.browser ?? constants_1.DEFAULT_BROWSER_DIR;
29
- }
30
- return constants_1.DEFAULT_BROWSER_DIR;
31
- }
@@ -1,3 +0,0 @@
1
- export declare const DEFAULT_BROWSER_DIR = "browser";
2
- export declare const DEFAULT_MEDIA_DIR = "media";
3
- export declare const DEFAULT_SERVER_DIR = "server";
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_SERVER_DIR = exports.DEFAULT_MEDIA_DIR = exports.DEFAULT_BROWSER_DIR = void 0;
4
- exports.DEFAULT_BROWSER_DIR = 'browser';
5
- exports.DEFAULT_MEDIA_DIR = 'media';
6
- exports.DEFAULT_SERVER_DIR = 'server';
@@ -1,4 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- import type { Schema } from '../schema';
3
- export declare function setServerTsConfigOptionsForApplicationBuilder(tree: Tree, options: Schema): void;
4
- export declare function generateTsConfigServerJsonForBrowserBuilder(tree: Tree, options: Schema): void;
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateTsConfigServerJsonForBrowserBuilder = exports.setServerTsConfigOptionsForApplicationBuilder = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- const path_1 = require("path");
6
- function setServerTsConfigOptionsForApplicationBuilder(tree, options) {
7
- const { targets } = (0, devkit_1.readProjectConfiguration)(tree, options.project);
8
- const tsConfigPath = targets.build.options.tsConfig;
9
- (0, devkit_1.updateJson)(tree, tsConfigPath, (json) => {
10
- const files = new Set(json.files ?? []);
11
- files.add((0, devkit_1.joinPathFragments)('src', options.main));
12
- files.add((0, devkit_1.joinPathFragments)(options.serverFileName));
13
- json.files = Array.from(files);
14
- json.compilerOptions ??= {};
15
- const types = new Set(json.compilerOptions.types ?? []);
16
- types.add('node');
17
- json.compilerOptions.types = Array.from(types);
18
- return json;
19
- });
20
- }
21
- exports.setServerTsConfigOptionsForApplicationBuilder = setServerTsConfigOptionsForApplicationBuilder;
22
- function generateTsConfigServerJsonForBrowserBuilder(tree, options) {
23
- const { root } = (0, devkit_1.readProjectConfiguration)(tree, options.project);
24
- (0, devkit_1.generateFiles)(tree, (0, path_1.join)(__dirname, '..', 'files', 'root'), root, {
25
- ...options,
26
- tpl: '',
27
- });
28
- }
29
- exports.generateTsConfigServerJsonForBrowserBuilder = generateTsConfigServerJsonForBrowserBuilder;
@@ -1,3 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- import type { Schema } from '../schema';
3
- export declare function setRouterInitialNavigation(tree: Tree, options: Schema): void;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setRouterInitialNavigation = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- const js_1 = require("@nx/js");
6
- const tsquery_1 = require("@phenomnomnominal/tsquery");
7
- const typescript_1 = require("typescript");
8
- function setRouterInitialNavigation(tree, options) {
9
- const printer = (0, typescript_1.createPrinter)();
10
- const project = (0, devkit_1.readProjectConfiguration)(tree, options.project);
11
- (0, devkit_1.visitNotIgnoredFiles)(tree, project.root, (filePath) => {
12
- // we are only interested in .ts files
13
- if (!filePath.endsWith('.ts')) {
14
- return;
15
- }
16
- if (options.standalone) {
17
- processFileWithStandaloneSetup(tree, filePath, printer);
18
- }
19
- else {
20
- processFileWithNgModuleSetup(tree, filePath, printer);
21
- }
22
- });
23
- }
24
- exports.setRouterInitialNavigation = setRouterInitialNavigation;
25
- function processFileWithStandaloneSetup(tree, filePath, printer) {
26
- let content = tree.read(filePath, 'utf-8');
27
- let sourceFile = tsquery_1.tsquery.ast(content);
28
- const provideRouterCallExpression = getProvideRouterCallExpression(sourceFile);
29
- if (!provideRouterCallExpression) {
30
- return;
31
- }
32
- if (provideRouterCallExpression.arguments.some((arg) => (0, typescript_1.isCallExpression)(arg) &&
33
- (0, typescript_1.isIdentifier)(arg.expression) &&
34
- arg.expression.text === 'withEnabledBlockingInitialNavigation')) {
35
- return;
36
- }
37
- const updatedProvideRouterCallExpression = printer.printNode(typescript_1.EmitHint.Unspecified, updateProvideRouterCallExpression(provideRouterCallExpression), sourceFile);
38
- content = `${content.slice(0, provideRouterCallExpression.getStart())}${updatedProvideRouterCallExpression}${content.slice(provideRouterCallExpression.getEnd())}`;
39
- tree.write(filePath, content);
40
- sourceFile = tsquery_1.tsquery.ast(content);
41
- sourceFile = (0, js_1.insertImport)(tree, sourceFile, filePath, 'withEnabledBlockingInitialNavigation', '@angular/router');
42
- const withDisabledInitialNavigationImportNode = (0, tsquery_1.tsquery)(sourceFile, 'ImportDeclaration ImportSpecifier:has(Identifier[name=withDisabledInitialNavigation])')[0];
43
- if (!withDisabledInitialNavigationImportNode) {
44
- return;
45
- }
46
- const hasTrailingComma = withDisabledInitialNavigationImportNode.parent.elements.hasTrailingComma;
47
- content = tree.read(filePath, 'utf-8');
48
- tree.write(filePath, `${content.slice(0, withDisabledInitialNavigationImportNode.getStart())}${content.slice(withDisabledInitialNavigationImportNode.getEnd() +
49
- (hasTrailingComma ? 1 : 0))}`);
50
- }
51
- function updateProvideRouterCallExpression(node) {
52
- const filteredArgs = node.arguments.filter((arg) => !((0, typescript_1.isCallExpression)(arg) &&
53
- (0, typescript_1.isIdentifier)(arg.expression) &&
54
- arg.expression.text === 'withDisabledInitialNavigation'));
55
- const initialNavigationFeatureArg = typescript_1.factory.createCallExpression(typescript_1.factory.createIdentifier('withEnabledBlockingInitialNavigation'), [], []);
56
- return typescript_1.factory.updateCallExpression(node, node.expression, node.typeArguments, [...filteredArgs, initialNavigationFeatureArg]);
57
- }
58
- function processFileWithNgModuleSetup(tree, filePath, printer) {
59
- const content = tree.read(filePath, 'utf-8');
60
- const sourceFile = tsquery_1.tsquery.ast(content);
61
- const routerModuleForRootCallExpression = getRouterModuleForRootCallExpression(sourceFile);
62
- if (!routerModuleForRootCallExpression) {
63
- return;
64
- }
65
- const updatedRouterModuleForRootCallExpression = printer.printNode(typescript_1.EmitHint.Unspecified, updateRouterModuleForRootCallExpression(routerModuleForRootCallExpression), sourceFile);
66
- tree.write(filePath, `${content.slice(0, routerModuleForRootCallExpression.getStart())}${updatedRouterModuleForRootCallExpression}${content.slice(routerModuleForRootCallExpression.getEnd())}`);
67
- }
68
- function updateRouterModuleForRootCallExpression(node) {
69
- const existingOptions = node.arguments[1];
70
- const existingProperties = existingOptions?.properties
71
- ? typescript_1.factory.createNodeArray(existingOptions.properties.filter((exp) => !((0, typescript_1.isPropertyAssignment)(exp) &&
72
- (0, typescript_1.isIdentifier)(exp.name) &&
73
- exp.name.text === 'initialNavigation')))
74
- : typescript_1.factory.createNodeArray();
75
- const enabledLiteral = typescript_1.factory.createStringLiteral('enabledBlocking', true);
76
- const initialNavigationProperty = typescript_1.factory.createPropertyAssignment('initialNavigation', enabledLiteral);
77
- const routerOptions = existingOptions
78
- ? typescript_1.factory.updateObjectLiteralExpression(existingOptions, typescript_1.factory.createNodeArray([
79
- ...existingProperties,
80
- initialNavigationProperty,
81
- ]))
82
- : typescript_1.factory.createObjectLiteralExpression(typescript_1.factory.createNodeArray([initialNavigationProperty]));
83
- const args = [node.arguments[0], routerOptions];
84
- return typescript_1.factory.createCallExpression(node.expression, node.typeArguments, args);
85
- }
86
- function getProvideRouterCallExpression(sourceFile) {
87
- const routerModuleForRootCalls = (0, tsquery_1.tsquery)(sourceFile, 'PropertyAssignment:has(Identifier[name=providers]) > ArrayLiteralExpression CallExpression:has(Identifier[name=provideRouter])', { visitAllChildren: true });
88
- return routerModuleForRootCalls.length ? routerModuleForRootCalls[0] : null;
89
- }
90
- function getRouterModuleForRootCallExpression(sourceFile) {
91
- const routerModuleForRootCalls = (0, tsquery_1.tsquery)(sourceFile, 'Decorator > CallExpression:has(Identifier[name=NgModule]) PropertyAssignment:has(Identifier[name=imports]) > ArrayLiteralExpression CallExpression:has(Identifier[name=forRoot])', { visitAllChildren: true });
92
- return routerModuleForRootCalls.length ? routerModuleForRootCalls[0] : null;
93
- }
@@ -1,8 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- export type AddJestOptions = {
3
- name: string;
4
- projectRoot: string;
5
- skipPackageJson: boolean;
6
- strict: boolean;
7
- };
8
- export declare function addJest(tree: Tree, options: AddJestOptions): Promise<void>;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addJest = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- const versions_1 = require("../../utils/versions");
6
- const version_utils_1 = require("./version-utils");
7
- async function addJest(tree, options) {
8
- if (!options.skipPackageJson) {
9
- process.env.npm_config_legacy_peer_deps ??= 'true';
10
- (0, version_utils_1.addDependenciesToPackageJsonIfDontExist)(tree, {}, { 'jest-preset-angular': versions_1.jestPresetAngularVersion });
11
- }
12
- const { configurationGenerator } = (0, devkit_1.ensurePackage)('@nx/jest', versions_1.nxVersion);
13
- await configurationGenerator(tree, {
14
- project: options.name,
15
- setupFile: 'angular',
16
- supportTsx: false,
17
- skipSerializers: false,
18
- skipPackageJson: options.skipPackageJson,
19
- skipFormat: true,
20
- addPlugin: false,
21
- addExplicitTargets: true,
22
- });
23
- const setupFile = (0, devkit_1.joinPathFragments)(options.projectRoot, 'src', 'test-setup.ts');
24
- if (options.strict && tree.exists(setupFile)) {
25
- const contents = tree.read(setupFile, 'utf-8');
26
- tree.write(setupFile, `// @ts-expect-error https://thymikee.github.io/jest-preset-angular/docs/getting-started/test-environment
27
- globalThis.ngJest = {
28
- testEnvironmentOptions: {
29
- errorOnUnknownElements: true,
30
- errorOnUnknownProperties: true,
31
- },
32
- };
33
- ${contents}`);
34
- }
35
- }
36
- exports.addJest = addJest;
@@ -1,2 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- export declare function addMfEnvToTargetDefaultInputs(tree: Tree): void;
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addMfEnvToTargetDefaultInputs = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- function addMfEnvToTargetDefaultInputs(tree) {
6
- const nxJson = (0, devkit_1.readNxJson)(tree);
7
- const webpackExecutor = '@nx/angular:webpack-browser';
8
- const mfEnvVar = 'NX_MF_DEV_SERVER_STATIC_REMOTES';
9
- nxJson.targetDefaults ??= {};
10
- nxJson.targetDefaults[webpackExecutor] ??= {};
11
- nxJson.targetDefaults[webpackExecutor].inputs ??= [
12
- 'production',
13
- '^production',
14
- ];
15
- let mfEnvVarExists = false;
16
- for (const input of nxJson.targetDefaults[webpackExecutor].inputs) {
17
- if (typeof input === 'object' && input['env'] === mfEnvVar) {
18
- mfEnvVarExists = true;
19
- break;
20
- }
21
- }
22
- if (!mfEnvVarExists) {
23
- nxJson.targetDefaults[webpackExecutor].inputs.push({ env: mfEnvVar });
24
- (0, devkit_1.updateNxJson)(tree, nxJson);
25
- }
26
- }
27
- exports.addMfEnvToTargetDefaultInputs = addMfEnvToTargetDefaultInputs;
@@ -1,2 +0,0 @@
1
- import type { GeneratorCallback, Tree } from '@nx/devkit';
2
- export declare function ensureAngularDependencies(tree: Tree): GeneratorCallback;
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ensureAngularDependencies = void 0;
4
- const version_utils_1 = require("./version-utils");
5
- function ensureAngularDependencies(tree) {
6
- const pkgVersions = (0, version_utils_1.versions)(tree);
7
- const angularVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, '@angular/core') ??
8
- pkgVersions.angularVersion;
9
- const angularDevkitVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, '@angular-devkit/build-angular') ??
10
- pkgVersions.angularDevkitVersion;
11
- const rxjsVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, 'rxjs') ?? pkgVersions.rxjsVersion;
12
- const tsLibVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, 'tslib') ?? pkgVersions.tsLibVersion;
13
- const zoneJsVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, 'zone.js') ?? pkgVersions.zoneJsVersion;
14
- return (0, version_utils_1.addDependenciesToPackageJsonIfDontExist)(tree, {
15
- '@angular/animations': angularVersion,
16
- '@angular/common': angularVersion,
17
- '@angular/compiler': angularVersion,
18
- '@angular/core': angularVersion,
19
- '@angular/forms': angularVersion,
20
- '@angular/platform-browser': angularVersion,
21
- '@angular/platform-browser-dynamic': angularVersion,
22
- '@angular/router': angularVersion,
23
- rxjs: rxjsVersion,
24
- tslib: tsLibVersion,
25
- 'zone.js': zoneJsVersion,
26
- }, {
27
- '@angular/cli': angularDevkitVersion,
28
- '@angular/compiler-cli': angularVersion,
29
- '@angular/language-service': angularVersion,
30
- '@angular-devkit/build-angular': angularDevkitVersion,
31
- '@angular-devkit/schematics': angularDevkitVersion,
32
- '@schematics/angular': angularDevkitVersion,
33
- });
34
- }
35
- exports.ensureAngularDependencies = ensureAngularDependencies;
@@ -1,2 +0,0 @@
1
- import { type ProjectConfiguration, type Tree } from '@nx/devkit';
2
- export declare function updateAppEditorTsConfigExcludedFiles(tree: Tree, projectConfig: ProjectConfiguration): void;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateAppEditorTsConfigExcludedFiles = void 0;
4
- const devkit_1 = require("@nx/devkit");
5
- function updateAppEditorTsConfigExcludedFiles(tree, projectConfig) {
6
- if (projectConfig.projectType !== 'application') {
7
- return;
8
- }
9
- const editorTsConfigPath = (0, devkit_1.joinPathFragments)(projectConfig.root, 'tsconfig.editor.json');
10
- const appTsConfigPath = (0, devkit_1.joinPathFragments)(projectConfig.root, 'tsconfig.app.json');
11
- if (!tree.exists(editorTsConfigPath) || !tree.exists(appTsConfigPath)) {
12
- return;
13
- }
14
- const appTsConfig = (0, devkit_1.readJson)(tree, appTsConfigPath);
15
- (0, devkit_1.updateJson)(tree, editorTsConfigPath, (json) => {
16
- const exclude = [...(json.exclude ?? []), ...(appTsConfig.exclude ?? [])];
17
- if (exclude.length) {
18
- json.exclude = Array.from(new Set(exclude));
19
- }
20
- return json;
21
- });
22
- }
23
- exports.updateAppEditorTsConfigExcludedFiles = updateAppEditorTsConfigExcludedFiles;
@@ -1,3 +0,0 @@
1
- import { type Tree } from '@nx/devkit';
2
- export { extractTsConfigBase } from '@nx/js';
3
- export declare function updateProjectRootTsConfig(host: Tree, projectRoot: string, relativePathToRootTsConfig: string, isRootProject?: boolean): void;