generator-jhipster 8.2.1 → 8.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (478) hide show
  1. package/dist/cli/environment-builder.mjs +3 -3
  2. package/dist/cli/jhipster-command.mjs +1 -2
  3. package/dist/cli/jhipster.cjs +0 -0
  4. package/dist/generators/angular/command.js +5 -0
  5. package/dist/generators/angular/generator.js +70 -9
  6. package/dist/generators/angular/index.js +1 -0
  7. package/dist/generators/angular/needle-api/needle-client-angular.js +3 -3
  8. package/dist/generators/angular/resources/package.json +15 -12
  9. package/dist/generators/angular/support/index.js +0 -1
  10. package/dist/generators/angular/support/translate-angular.js +142 -8
  11. package/dist/generators/angular/templates/package.json.ejs +0 -10
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.html.ejs +4 -4
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +1 -1
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.html.ejs +1 -1
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.ts.ejs +1 -1
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +19 -27
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +1 -1
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +19 -26
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +1 -1
  20. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +11 -16
  21. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +1 -1
  22. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +32 -47
  23. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +1 -1
  24. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.html.ejs +7 -8
  25. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.ts.ejs +1 -1
  26. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +21 -32
  27. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.ts.ejs +1 -1
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +4 -4
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +1 -1
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +7 -7
  31. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.html.ejs +7 -12
  32. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.model.ts.ejs +9 -5
  33. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +5 -9
  34. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.html.ejs +5 -5
  35. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +3 -3
  36. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.ts.ejs +3 -3
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.component.html.ejs +5 -5
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +12 -12
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.ts.ejs +4 -4
  40. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +36 -36
  41. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.ts.ejs +4 -4
  42. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.html.ejs +2 -2
  43. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.ts.ejs +3 -3
  44. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +33 -33
  45. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.ts.ejs +3 -3
  46. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +8 -8
  47. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +8 -8
  48. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.ts.ejs +4 -4
  49. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.html.ejs +13 -13
  50. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.ts.ejs +3 -3
  51. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +4 -4
  52. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +6 -6
  53. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.ts.ejs +2 -1
  54. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +4 -4
  55. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +26 -26
  56. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.spec.ts.ejs +3 -3
  57. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.ts.ejs +2 -2
  58. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +16 -18
  59. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +1 -2
  60. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +21 -35
  61. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +1 -1
  62. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/account.service.spec.ts.ejs +0 -2
  63. package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +7 -7
  64. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +4 -4
  65. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +25 -25
  66. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +3 -3
  67. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.ts.ejs +2 -2
  68. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +14 -14
  69. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +0 -2
  70. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +1 -2
  71. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +10 -6
  72. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +18 -25
  73. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +0 -2
  74. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +14 -15
  75. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.spec.ts.ejs +1 -5
  76. package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.html.ejs +1 -1
  77. package/dist/generators/angular/templates/src/main/webapp/app/layouts/footer/footer.component.html.ejs +1 -1
  78. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.spec.ts.ejs +11 -18
  79. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +1 -1
  80. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +21 -21
  81. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +0 -2
  82. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
  83. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +12 -13
  84. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +1 -2
  85. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +1 -1
  86. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +3 -3
  87. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.ts.ejs +1 -1
  88. package/dist/generators/angular/templates/webpack/webpack.custom.js.ejs +1 -1
  89. package/dist/generators/app/generator.js +4 -22
  90. package/dist/generators/app/support/config.js +1 -3
  91. package/dist/generators/base/generator.js +21 -2
  92. package/dist/generators/base/shared-data.js +1 -2
  93. package/dist/generators/base/support/basename.js +1 -2
  94. package/dist/generators/base/support/needles.js +3 -5
  95. package/dist/generators/base/support/string.js +2 -2
  96. package/dist/generators/base-application/generator.js +4 -4
  97. package/dist/generators/base-application/support/entity.js +1 -2
  98. package/dist/generators/base-application/support/enum.js +2 -2
  99. package/dist/generators/base-application/support/prepare-entity.js +1 -1
  100. package/dist/generators/base-application/support/prepare-field.js +6 -7
  101. package/dist/generators/base-application/support/relationship.js +1 -2
  102. package/dist/generators/base-application/support/task-type-inference.js +6 -0
  103. package/dist/generators/base-core/generator.js +86 -14
  104. package/dist/generators/base-entity-changes/generator.js +24 -0
  105. package/dist/generators/base-workspaces/internal/deployments.js +2 -2
  106. package/dist/generators/base-workspaces/internal/docker-dependencies.js +2 -2
  107. package/dist/generators/bootstrap/generator.js +4 -5
  108. package/dist/generators/bootstrap/internal/transform-utils.js +4 -0
  109. package/dist/generators/bootstrap/support/eslint-transform.js +2 -1
  110. package/dist/generators/bootstrap/support/java-unused-imports-transform.js +2 -1
  111. package/dist/generators/bootstrap/support/prettier-worker.js +2 -4
  112. package/dist/generators/bootstrap-application/generator.js +3 -4
  113. package/dist/generators/bootstrap-application-base/generator.js +46 -6
  114. package/dist/generators/bootstrap-application-base/utils.js +3 -3
  115. package/dist/generators/bootstrap-application-client/generator.js +2 -3
  116. package/dist/generators/bootstrap-application-server/generator.js +22 -19
  117. package/dist/generators/bootstrap-workspaces/generator.js +1 -2
  118. package/dist/generators/ci-cd/command.js +1 -2
  119. package/dist/generators/ci-cd/generator.js +2 -7
  120. package/dist/generators/client/command.js +1 -2
  121. package/dist/generators/client/generator.js +11 -33
  122. package/dist/generators/client/needle-api/needle-client-vue.js +2 -2
  123. package/dist/generators/client/resources/package.json +6 -6
  124. package/dist/generators/client/templates/src/main/webapp/index.html.ejs +2 -2
  125. package/dist/generators/common/command.js +13 -0
  126. package/dist/generators/common/generator.js +17 -8
  127. package/dist/generators/common/resources/package.json +1 -1
  128. package/dist/generators/cucumber/generator.js +17 -10
  129. package/dist/generators/cucumber/templates/buildSrc/src/main/groovy/jhipster.cucumber-conventions.gradle.ejs +1 -5
  130. package/dist/generators/cypress/generator.js +2 -3
  131. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/administration/administration.cy.ts.ejs +10 -0
  132. package/dist/generators/docker/generator.js +4 -6
  133. package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +0 -32
  134. package/dist/generators/docker/utils.js +2 -3
  135. package/dist/generators/docker-compose/generator.js +5 -10
  136. package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +0 -32
  137. package/dist/generators/entities/generator.js +4 -4
  138. package/dist/generators/entity/generator.js +10 -9
  139. package/dist/generators/entity/prompts.js +12 -12
  140. package/dist/generators/export-jdl/generator.js +0 -5
  141. package/dist/generators/feign-client/generator.js +3 -4
  142. package/dist/generators/gatling/generator.js +2 -3
  143. package/dist/generators/gatling/templates/buildSrc/src/main/groovy/jhipster.gatling-conventions.gradle.ejs +1 -1
  144. package/dist/generators/generate-blueprint/files.js +1 -0
  145. package/dist/generators/generate-blueprint/generator.js +3 -4
  146. package/dist/generators/generate-blueprint/resources/package.json +1 -1
  147. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs +3 -2
  148. package/dist/generators/generate-blueprint/templates/generators/generator/command.mjs.ejs +19 -1
  149. package/dist/generators/generate-blueprint/templates/vitest.test-setup.ts.ejs +6 -0
  150. package/dist/generators/generator-constants.js +5 -2
  151. package/dist/generators/git/generator.js +3 -5
  152. package/dist/generators/gradle/command.js +32 -0
  153. package/dist/generators/gradle/constants.js +0 -1
  154. package/dist/generators/gradle/files.js +2 -8
  155. package/dist/generators/gradle/generator.js +85 -13
  156. package/dist/generators/gradle/generators/code-quality/generator.js +86 -0
  157. package/dist/generators/{java/cleanup.js → gradle/generators/code-quality/index.js} +1 -5
  158. package/dist/generators/gradle/generators/jib/generator.js +64 -0
  159. package/dist/generators/{app/prompts.js → gradle/generators/jib/index.js} +1 -15
  160. package/dist/generators/gradle/generators/node-gradle/generator.js +64 -0
  161. package/dist/generators/gradle/generators/node-gradle/index.js +19 -0
  162. package/dist/generators/gradle/generators/node-gradle/templates/buildSrc/src/main/groovy/jhipster.node-gradle-conventions.gradle.ejs +101 -0
  163. package/dist/generators/gradle/index.js +1 -0
  164. package/dist/generators/gradle/internal/needles.js +9 -3
  165. package/dist/generators/gradle/templates/buildSrc/build.gradle.ejs +3 -2
  166. package/dist/generators/gradle/templates/buildSrc/gradle/libs.versions.toml.ejs +8 -1
  167. package/dist/generators/gradle/templates/gradle/wrapper/{gradle-wrapper.properties.ejs → gradle-wrapper.properties} +1 -1
  168. package/dist/generators/heroku/generator.js +2 -7
  169. package/dist/generators/init/generator.js +3 -4
  170. package/dist/generators/init/resources/.node-version +1 -0
  171. package/dist/generators/java/command.js +2 -38
  172. package/dist/generators/java/generator.js +5 -260
  173. package/dist/generators/java/generators/bootstrap/command.js +35 -0
  174. package/dist/generators/java/generators/bootstrap/generator.js +178 -0
  175. package/dist/generators/java/generators/bootstrap/index.js +20 -0
  176. package/dist/generators/java/generators/build-tool/command.js +42 -0
  177. package/dist/generators/java/generators/build-tool/generator.js +143 -0
  178. package/dist/generators/java/generators/build-tool/index.js +20 -0
  179. package/dist/generators/java/generators/code-quality/command.js +5 -0
  180. package/dist/generators/java/generators/code-quality/generator.js +91 -0
  181. package/dist/generators/java/generators/code-quality/index.js +20 -0
  182. package/dist/generators/java/generators/domain/command.js +30 -0
  183. package/dist/generators/java/{entity-files.js → generators/domain/entity-files.js} +1 -1
  184. package/dist/generators/java/generators/domain/generator.js +169 -0
  185. package/dist/generators/java/generators/domain/index.js +20 -0
  186. package/dist/generators/java/generators/jib/command.js +5 -0
  187. package/dist/generators/java/generators/jib/generator.js +97 -0
  188. package/dist/generators/java/generators/jib/index.js +20 -0
  189. package/dist/generators/{server → java/generators/jib}/templates/src/main/docker/jib/entrypoint.sh.ejs +2 -0
  190. package/dist/generators/java/generators/node/command.js +5 -0
  191. package/dist/generators/java/generators/node/generator.js +97 -0
  192. package/dist/generators/java/generators/node/index.js +20 -0
  193. package/dist/generators/java/support/index.js +1 -0
  194. package/dist/generators/jdl/generator.js +6 -13
  195. package/dist/generators/kubernetes/generator.js +1 -6
  196. package/dist/generators/kubernetes/kubernetes-base.js +3 -3
  197. package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +0 -32
  198. package/dist/generators/kubernetes-helm/generator.js +1 -6
  199. package/dist/generators/kubernetes-knative/generator.js +1 -6
  200. package/dist/generators/languages/entity-files.js +3 -2
  201. package/dist/generators/languages/files.js +2 -2
  202. package/dist/generators/languages/generator.js +6 -15
  203. package/dist/generators/languages/support/translate.js +34 -9
  204. package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json.ejs +19 -0
  205. package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json.ejs +19 -0
  206. package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json.ejs +19 -0
  207. package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json.ejs +19 -0
  208. package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json.ejs +19 -0
  209. package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json.ejs +19 -0
  210. package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json.ejs +19 -0
  211. package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json.ejs +19 -0
  212. package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json.ejs +19 -0
  213. package/dist/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +2 -2
  214. package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json.ejs +19 -0
  215. package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json.ejs +19 -0
  216. package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json.ejs +19 -0
  217. package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json.ejs +19 -0
  218. package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json.ejs +19 -0
  219. package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json.ejs +19 -0
  220. package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json.ejs +19 -0
  221. package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json.ejs +19 -0
  222. package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json.ejs +19 -0
  223. package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json.ejs +19 -0
  224. package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json.ejs +19 -0
  225. package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json.ejs +19 -0
  226. package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json.ejs +19 -0
  227. package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json.ejs +19 -0
  228. package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json.ejs +19 -0
  229. package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json.ejs +19 -0
  230. package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json.ejs +19 -0
  231. package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json.ejs +19 -0
  232. package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json.ejs +19 -0
  233. package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json.ejs +19 -0
  234. package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json.ejs +19 -0
  235. package/dist/generators/languages/templates/src/main/webapp/i18n/pa/{home.json → home.json.ejs} +2 -2
  236. package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json.ejs +19 -0
  237. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json.ejs +19 -0
  238. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json.ejs +19 -0
  239. package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json.ejs +19 -0
  240. package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json.ejs +19 -0
  241. package/dist/generators/languages/templates/src/main/webapp/i18n/si/{home.json → home.json.ejs} +6 -6
  242. package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json.ejs +19 -0
  243. package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json.ejs +19 -0
  244. package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json.ejs +19 -0
  245. package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json.ejs +19 -0
  246. package/dist/generators/languages/templates/src/main/webapp/i18n/te/{home.json → home.json.ejs} +1 -1
  247. package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json.ejs +19 -0
  248. package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json.ejs +19 -0
  249. package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json.ejs +19 -0
  250. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json.ejs +19 -0
  251. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json.ejs +19 -0
  252. package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json.ejs +19 -0
  253. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json.ejs +19 -0
  254. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json.ejs +19 -0
  255. package/dist/generators/languages/translation-data.js +4 -5
  256. package/dist/generators/liquibase/generator.js +126 -36
  257. package/dist/generators/liquibase/support/maven-plugin.js +6 -0
  258. package/dist/generators/liquibase/support/prepare-field.js +16 -1
  259. package/dist/generators/liquibase/support/relationship.js +1 -0
  260. package/dist/generators/liquibase/templates/gradle/liquibase.gradle.ejs +3 -6
  261. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
  262. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +3 -3
  263. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +26 -1
  264. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +3 -3
  265. package/dist/generators/maven/generator.js +14 -6
  266. package/dist/generators/maven/generators/code-quality/command.js +5 -0
  267. package/dist/generators/maven/generators/code-quality/generator.js +268 -0
  268. package/dist/generators/maven/generators/code-quality/index.js +20 -0
  269. package/dist/generators/maven/generators/frontend-plugin/command.js +5 -0
  270. package/dist/generators/maven/generators/frontend-plugin/generator.js +295 -0
  271. package/dist/generators/maven/generators/frontend-plugin/index.js +20 -0
  272. package/dist/generators/maven/generators/jib/command.js +5 -0
  273. package/dist/generators/maven/generators/jib/generator.js +136 -0
  274. package/dist/generators/maven/generators/jib/index.js +20 -0
  275. package/dist/generators/maven/internal/xml-store.js +1 -2
  276. package/dist/generators/maven/support/dependabot-maven.js +12 -2
  277. package/dist/generators/maven/support/pom-store.js +1 -2
  278. package/dist/generators/project-name/generator.js +9 -11
  279. package/dist/generators/react/generator.js +25 -6
  280. package/dist/generators/react/needle-api/needle-client-react.js +2 -2
  281. package/dist/generators/react/resources/package.json +27 -24
  282. package/dist/generators/react/templates/package.json.ejs +1 -7
  283. package/dist/generators/react/templates/src/main/webapp/app/modules/administration/tracker/tracker.tsx.ejs +2 -2
  284. package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +7 -7
  285. package/dist/generators/react/templates/webpack/webpack.microfrontend.js.jhi.react.ejs +0 -8
  286. package/dist/generators/server/command.js +2 -34
  287. package/dist/generators/server/generator.js +35 -204
  288. package/dist/generators/server/jdl/application-definition.js +1 -2
  289. package/dist/generators/server/resources/Dockerfile +13 -13
  290. package/dist/generators/server/resources/build.gradle +1 -0
  291. package/dist/generators/server/resources/gradle/libs.versions.toml +27 -9
  292. package/dist/generators/server/resources/pom.xml +9 -27
  293. package/dist/generators/server/support/prepare-field.js +8 -4
  294. package/dist/generators/server/support/prepare-relationship.js +7 -2
  295. package/dist/generators/server/templates/build.gradle.ejs +29 -143
  296. package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -3
  297. package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +2 -2
  298. package/dist/generators/server/templates/gradle.properties.ejs +0 -7
  299. package/dist/generators/server/templates/pom.xml.ejs +23 -448
  300. package/dist/generators/server/templates/settings.gradle.ejs +0 -4
  301. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +71 -9
  302. package/dist/generators/server/templates/src/main/java/_package_/web/filter/SpaWebFilter_imperative.java.ejs +4 -1
  303. package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +16 -5
  304. package/dist/generators/server/templates/src/main/resources/config/bootstrap.yml.ejs +1 -1
  305. package/dist/generators/server/templates/src/main/resources/static/index_microservices.html.ejs +8 -8
  306. package/dist/generators/server/templates/src/test/java/_package_/IntegrationTest.java.ejs +0 -2
  307. package/dist/generators/server/templates/src/test/java/_package_/config/TestContainersSpringContextCustomizerFactory.java.ejs +71 -46
  308. package/dist/generators/server/templates/src/test/java/_package_/security/jwt/AuthenticationIntegrationTest.java.ejs +0 -3
  309. package/dist/generators/server/templates/src/test/resources/config/application.yml.ejs +1 -1
  310. package/dist/generators/spring-boot/cleanup.js +3 -0
  311. package/dist/generators/spring-boot/command.js +40 -2
  312. package/dist/generators/spring-boot/entity-files.js +2 -2
  313. package/dist/generators/spring-boot/files.js +3 -43
  314. package/dist/generators/spring-boot/generator.js +115 -37
  315. package/dist/generators/{server → spring-boot}/prompts.js +6 -48
  316. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +125 -125
  317. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +2 -2
  318. package/dist/generators/spring-cache/generator.js +11 -6
  319. package/dist/generators/spring-cache/internal/dependencies.js +5 -0
  320. package/dist/generators/spring-cache/resources/build.gradle +1 -0
  321. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +15 -0
  322. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +4 -0
  323. package/dist/generators/spring-cache/templates/src/test/java/_package_/config/RedisTestContainersSpringContextCustomizerFactory.java.ejs +29 -13
  324. package/dist/generators/spring-cloud/generators/gateway/command.js +5 -0
  325. package/dist/generators/spring-cloud/generators/gateway/generator.js +146 -0
  326. package/dist/generators/spring-cloud/generators/gateway/index.js +20 -0
  327. package/dist/generators/spring-cloud-stream/generator.js +2 -3
  328. package/dist/generators/spring-cloud-stream/generators/kafka/generator.js +2 -2
  329. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/test/java/_package_/config/KafkaTestContainersSpringContextCustomizerFactory.java.ejs +28 -12
  330. package/dist/generators/spring-cloud-stream/generators/pulsar/generator.js +2 -2
  331. package/dist/generators/spring-cloud-stream/generators/pulsar/templates/src/test/java/_package_/config/PulsarTestContainersSpringContextCustomizerFactory.java.ejs +33 -17
  332. package/dist/generators/spring-data-cassandra/generator.js +5 -6
  333. package/dist/generators/spring-data-cassandra/templates/src/test/java/_package_/config/CassandraTestContainersSpringContextCustomizerFactory.java.ejs +33 -17
  334. package/dist/generators/spring-data-couchbase/generator.js +3 -4
  335. package/dist/generators/spring-data-elasticsearch/generator.js +3 -5
  336. package/dist/generators/spring-data-mongodb/generator.js +5 -5
  337. package/dist/generators/spring-data-neo4j/generator.js +11 -5
  338. package/dist/generators/spring-data-neo4j/templates/src/test/java/_package_/config/Neo4jTestContainersSpringContextCustomizerFactory.java.ejs +32 -16
  339. package/dist/generators/spring-data-relational/generator.js +6 -7
  340. package/dist/generators/spring-data-relational/support/h2-reserved-keywords.js +22 -0
  341. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +47 -32
  342. package/dist/generators/spring-websocket/generator.js +2 -3
  343. package/dist/generators/upgrade/generator.js +4 -7
  344. package/dist/generators/vue/generator.js +4 -4
  345. package/dist/generators/vue/resources/package.json +24 -21
  346. package/dist/generators/vue/templates/package.json.ejs +3 -3
  347. package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.spec.ts.ejs +1 -1
  348. package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.ts.ejs +1 -1
  349. package/dist/generators/vue/templates/src/main/webapp/app/account/change-password/change-password.vue.ejs +1 -1
  350. package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.vue.ejs +1 -1
  351. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.vue.ejs +1 -1
  352. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.vue.ejs +1 -1
  353. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/init/reset-password-init.vue.ejs +1 -1
  354. package/dist/generators/vue/templates/src/main/webapp/app/account/settings/settings.vue.ejs +1 -1
  355. package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.ts.ejs +3 -3
  356. package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.vue.ejs +2 -2
  357. package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management-edit.vue.ejs +1 -1
  358. package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +7 -7
  359. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +1 -1
  360. package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +4 -3
  361. package/dist/generators/vue/templates/vite.config.mts.ejs +6 -0
  362. package/dist/generators/vue/templates/vitest.config.mts.ejs +1 -1
  363. package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -9
  364. package/dist/generators/workspaces/generator.js +5 -4
  365. package/dist/jdl/converters/jdl-to-json/jdl-to-json-field-converter.js +2 -2
  366. package/dist/jdl/converters/jdl-to-json/jdl-to-json-relationship-converter.js +3 -3
  367. package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +2 -2
  368. package/dist/jdl/jdl-importer.js +1 -2
  369. package/dist/jdl/jhipster/default-application-options.js +1 -1
  370. package/dist/jdl/jhipster/field-types.js +2 -2
  371. package/dist/jdl/jhipster/relationship-types.js +1 -2
  372. package/dist/jdl/models/jdl-deployment.js +1 -2
  373. package/dist/jdl/parsing/api.js +2 -2
  374. package/dist/jdl/parsing/lexer/token-creator.js +1 -2
  375. package/dist/jdl/parsing/self-checks/parsing-system-checker.js +13 -13
  376. package/dist/jdl/parsing/validator.js +5 -5
  377. package/dist/testing/get-generator.js +1 -1
  378. package/dist/testing/helpers.js +34 -9
  379. package/dist/types/generators/angular/support/index.d.ts +0 -1
  380. package/dist/types/generators/angular/support/translate-angular.d.ts +7 -4
  381. package/dist/types/generators/app/support/config.d.ts +1 -1
  382. package/dist/types/generators/base/api.d.ts +8 -1
  383. package/dist/types/generators/base/generator.d.ts +1 -1
  384. package/dist/types/generators/base-application/generator.d.ts +4 -4
  385. package/dist/types/generators/base-application/support/task-type-inference.d.ts +3 -0
  386. package/dist/types/generators/base-application/support/update-application-entities-transform.d.ts +1 -1
  387. package/dist/types/generators/base-application/types.d.ts +15 -0
  388. package/dist/types/generators/base-core/generator.d.ts +33 -1
  389. package/dist/types/generators/base-entity-changes/types.d.ts +2 -0
  390. package/dist/types/generators/bootstrap/internal/transform-utils.d.ts +1 -0
  391. package/dist/types/generators/bootstrap/support/java-unused-imports-transform.d.ts +1 -1
  392. package/dist/types/generators/bootstrap-application-base/support/export-jdl-transform.d.ts +2 -2
  393. package/dist/types/generators/docker/utils.d.ts +7 -0
  394. package/dist/types/generators/generator-constants.d.ts +2 -20
  395. package/dist/types/generators/gradle/types.d.ts +21 -7
  396. package/dist/types/generators/java/support/index.d.ts +1 -0
  397. package/dist/types/generators/java/types.d.ts +37 -22
  398. package/dist/types/generators/languages/support/translate.d.ts +29 -0
  399. package/dist/types/generators/maven/support/dependabot-maven.d.ts +17 -1
  400. package/dist/types/generators/project-name/support/name-resolver.d.ts +1 -1
  401. package/dist/types/generators/server/types.d.ts +2 -0
  402. package/dist/types/generators/spring-data-relational/support/h2-reserved-keywords.d.ts +20 -0
  403. package/dist/types/jdl/converters/jdl-to-json/jdl-to-json-field-converter.d.ts +0 -18
  404. package/dist/types/testing/helpers.d.ts +6 -0
  405. package/dist/types/testing/support/matrix-utils.d.ts +1 -1
  406. package/package.json +19 -32
  407. package/dist/generators/java/files.js +0 -20
  408. package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json +0 -19
  409. package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json +0 -19
  410. package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json +0 -19
  411. package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json +0 -19
  412. package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json +0 -19
  413. package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json +0 -19
  414. package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json +0 -19
  415. package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json +0 -19
  416. package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json +0 -19
  417. package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json +0 -19
  418. package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json +0 -19
  419. package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json +0 -19
  420. package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json +0 -19
  421. package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json +0 -19
  422. package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json +0 -19
  423. package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json +0 -19
  424. package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json +0 -19
  425. package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json +0 -19
  426. package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json +0 -19
  427. package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json +0 -19
  428. package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json +0 -19
  429. package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json +0 -19
  430. package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json +0 -19
  431. package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json +0 -19
  432. package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json +0 -19
  433. package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json +0 -19
  434. package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json +0 -19
  435. package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json +0 -19
  436. package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json +0 -19
  437. package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json +0 -19
  438. package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json +0 -19
  439. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json +0 -19
  440. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json +0 -19
  441. package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json +0 -19
  442. package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json +0 -19
  443. package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json +0 -19
  444. package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json +0 -19
  445. package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json +0 -19
  446. package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json +0 -19
  447. package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json +0 -19
  448. package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json +0 -19
  449. package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json +0 -19
  450. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +0 -148
  451. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json +0 -19
  452. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json +0 -19
  453. package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json +0 -19
  454. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json +0 -19
  455. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json +0 -19
  456. package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_imperative.java.ejs +0 -43
  457. package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_reactive.java.ejs +0 -184
  458. package/dist/generators/statistics.js +0 -223
  459. /package/dist/generators/{server → gradle/generators/code-quality}/templates/buildSrc/src/main/groovy/jhipster.code-quality-conventions.gradle.ejs +0 -0
  460. /package/dist/generators/{server → gradle/generators/jib}/templates/buildSrc/src/main/groovy/jhipster.docker-conventions.gradle.ejs +0 -0
  461. /package/dist/generators/java/{templates → generators/bootstrap/templates}/src/main/java/_package_/GeneratedByJHipster.java.ejs +0 -0
  462. /package/dist/generators/{server → java/generators/code-quality}/templates/checkstyle.xml.ejs +0 -0
  463. /package/dist/generators/java/{templates → generators/domain/templates}/_global_partials_entity_/field_validators.ejs +0 -0
  464. /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +0 -0
  465. /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jackson_identity_info.ejs +0 -0
  466. /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jakarta_validation.ejs +0 -0
  467. /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/enumeration/_enumName_.java.ejs +0 -0
  468. /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_Asserts.java.ejs +0 -0
  469. /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +0 -0
  470. /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_TestSamples.java.ejs +0 -0
  471. /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/domain/AssertUtils.java.ejs +0 -0
  472. /package/dist/generators/{server → java/generators/node}/templates/npmw +0 -0
  473. /package/dist/generators/{server → java/generators/node}/templates/npmw.cmd +0 -0
  474. /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/security/jwt/JWTRelayGatewayFilterFactory.java.ejs +0 -0
  475. /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/filter/ModifyServersOpenApiFilter.java.ejs +0 -0
  476. /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/rest/GatewayResource.java.ejs +0 -0
  477. /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/rest/vm/RouteVM.java.ejs +0 -0
  478. /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/test/java/_package_/web/filter/ModifyServersOpenApiFilterTest.java.ejs +0 -0
@@ -18,9 +18,9 @@
18
18
  -%>
19
19
  <div class="d-flex justify-content-center">
20
20
  <div class="col-8">
21
- @if (<%= entityInstance %>) {
21
+ @if (<%= entityInstance %>()) {
22
22
  <div>
23
- <h2 data-cy="<%= entityInstance %>DetailsHeading"><span <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.detail.title">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.detail.title')</span></h2>
23
+ <h2 data-cy="<%= entityInstance %>DetailsHeading"><span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.detail.title')</span></h2>
24
24
 
25
25
  <hr>
26
26
 
@@ -33,35 +33,35 @@
33
33
  const fieldName = field.fieldName;
34
34
  const fieldType = field.fieldType;
35
35
  _%>
36
- <dt><span <%= jhiPrefix %>Translate="<%= field.fieldTranslationKey %>"<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%= i18nKeyPrefix %>.help.<%= fieldName %>' | translate"<% } else { %> ngbTooltip="<%= field.documentation %>"<% } } %>>__jhiTransformTranslate__('<%- field.fieldTranslationKey %>')</span></dt>
36
+ <dt><span<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%= i18nKeyPrefix %>.help.<%= fieldName %>' | translate"<% } else { %> ngbTooltip="<%= field.documentation %>"<% } } %>>__jhiTranslateTag__('<%- field.fieldTranslationKey %>')</span></dt>
37
37
  <dd>
38
38
  <%_ if (field.fieldIsEnum) { _%>
39
39
  <%# TODO: import enum and use its key as label _%>
40
- <span <%= jhiPrefix %>Translate="{{ '<%= frontendAppName %>.<%= fieldType %>.' + <%= entityInstance %>.<%= fieldName %> }}">{{ <%= entityInstance %>.<%= fieldName %> }}</span>
40
+ <span>__jhiTranslateTagEnum__('<%= frontendAppName %>.<%= fieldType %>', { "value": "<%= entityInstance %>()!.<%= fieldName %> ?? 'null'" })</span>
41
41
  <%_ } else if (field.fieldTypeBinary && field.blobContentTypeImage) { _%>
42
- @if (<%= entityInstance %>.<%= fieldName %>) {
42
+ @if (<%= entityInstance %>()!.<%= fieldName %>) {
43
43
  <div>
44
- <a (click)="openFile(<%= entityInstance %>.<%= fieldName %>, <%= entityInstance %>.<%= fieldName %>ContentType)">
45
- <img [src]="'data:' + <%= entityInstance %>.<%= fieldName %>ContentType + ';base64,' + <%= entityInstance %>.<%= fieldName %>" style="max-width: 100%;" alt="<%= entityInstance %>"/>
44
+ <a (click)="openFile(<%= entityInstance %>()!.<%= fieldName %> ?? '', <%= entityInstance %>()!.<%= fieldName %>ContentType)">
45
+ <img [src]="'data:' + <%= entityInstance %>()!.<%= fieldName %>ContentType + ';base64,' + <%= entityInstance %>()!.<%= fieldName %>" style="max-width: 100%;" alt="<%= entityInstance %>"/>
46
46
  </a>
47
- {{ <%= entityInstance %>.<%= fieldName %>ContentType }}, {{ byteSize(<%= entityInstance %>.<%= fieldName %>) }}
47
+ {{ <%= entityInstance %>()!.<%= fieldName %>ContentType }}, {{ byteSize(<%= entityInstance %>()!.<%= fieldName %> ?? '') }}
48
48
  </div>
49
49
  }
50
50
  <%_ } else if (field.fieldTypeBinary && field.blobContentTypeAny) { _%>
51
- @if (<%= entityInstance %>.<%= fieldName %>) {
51
+ @if (<%= entityInstance %>()!.<%= fieldName %>) {
52
52
  <div>
53
- <a (click)="openFile(<%= entityInstance %>.<%= fieldName %>, <%= entityInstance %>.<%= fieldName %>ContentType)" <%= jhiPrefix %>Translate="entity.action.open">__jhiTransformTranslate__('entity.action.open')</a>
54
- {{ <%= entityInstance %>.<%= fieldName %>ContentType }}, {{ byteSize(<%= entityInstance %>.<%= fieldName %>) }}
53
+ <a (click)="openFile(<%= entityInstance %>()!.<%= fieldName %> ?? '', <%= entityInstance %>()!.<%= fieldName %>ContentType)">__jhiTranslateTag__('entity.action.open')</a>
54
+ {{ <%= entityInstance %>()!.<%= fieldName %>ContentType }}, {{ byteSize(<%= entityInstance %>()!.<%= fieldName %> ?? '') }}
55
55
  </div>
56
56
  }
57
57
  <%_ } else if (field.fieldTypeDuration) { _%>
58
- <span>{{ <%= entityInstance %>.<%= fieldName %> | duration }} ({{<%= entityInstance %>.<%= fieldName %> }})</span>
58
+ <span>{{ <%= entityInstance %>()!.<%= fieldName %> | duration }} ({{<%= entityInstance %>()!.<%= fieldName %> }})</span>
59
59
  <%_ } else if (field.fieldTypeTimed) { _%>
60
- <span>{{ <%= entityInstance %>.<%= fieldName %> | formatMediumDatetime }}</span>
60
+ <span>{{ <%= entityInstance %>()!.<%= fieldName %> | formatMediumDatetime }}</span>
61
61
  <%_ } else if (field.fieldTypeLocalDate) { _%>
62
- <span>{{ <%= entityInstance %>.<%= fieldName %> | formatMediumDate }}</span>
62
+ <span>{{ <%= entityInstance %>()!.<%= fieldName %> | formatMediumDate }}</span>
63
63
  <%_ } else { _%>
64
- <span>{{ <%= entityInstance %>.<%= fieldName %> }}</span>
64
+ <span>{{ <%= entityInstance %>()!.<%= fieldName %> }}</span>
65
65
  <%_ } _%>
66
66
  </dd>
67
67
  <%_ } _%>
@@ -75,29 +75,29 @@ for (const relationship of relationships.filter(rel => !rel.otherEntityIsEmbedde
75
75
  const otherEntityField = relationship.otherEntityField;
76
76
  if (persistableRelationship) {
77
77
  _%>
78
- <dt><span <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.<%= relationshipName %>">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.<%- relationshipName %>')</span></dt>
78
+ <dt><span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.<%- relationshipName %>')</span></dt>
79
79
  <dd>
80
80
  <%_ if (relationship.otherEntityUser) { _%>
81
81
  <%_ if (relationship.collection) { _%>
82
- @for (<%= relationshipFieldName %> of <%= entityInstance %>.<%= relationshipFieldNamePlural %>; track $index; let last = $last) {
82
+ @for (<%= relationshipFieldName %> of <%= entityInstance %>()!.<%= relationshipFieldNamePlural %>; track $index; let last = $last) {
83
83
  <span>
84
84
  {{ <%= relationshipFieldName %>.<%= otherEntityField %> }}{{ last ? '' : ', ' }}
85
85
  </span>
86
86
  }
87
87
  <%_ } else { _%>
88
- <span>{{ <%= entityInstance %>.<%= relationshipFieldName %>?.<%= otherEntityField %> }}</span>
88
+ <span>{{ <%= entityInstance %>()!.<%= relationshipFieldName %>?.<%= otherEntityField %> }}</span>
89
89
  <%_ } _%>
90
90
  <%_ } else { _%>
91
91
  <%_ if (relationship.collection) { _%>
92
- @for (<%= relationshipFieldName %> of <%= entityInstance %>.<%= relationshipFieldNamePlural %>; track $index; let last = $last) {
92
+ @for (<%= relationshipFieldName %> of <%= entityInstance %>()!.<%= relationshipFieldNamePlural %>; track $index; let last = $last) {
93
93
  <span>
94
- <a [routerLink]="['/<%= relationship.otherEntity.entityPage %>', <%= relationshipFieldName %>.<%= relationship.otherEntity.primaryKey.name %>, 'view']">{{ <%= relationshipFieldName %>.<%= otherEntityField %> }}</a>{{ last ? '' : ', ' }}
94
+ <a [routerLink]="['/<%= relationship.otherEntity.entityPage %>', <%= relationshipFieldName %>.<%= relationship.otherEntity.primaryKey.name %>, 'view']">{{ <%= relationshipFieldName %>?.<%= otherEntityField %> }}</a>{{ last ? '' : ', ' }}
95
95
  </span>
96
96
  }
97
97
  <%_ } else { _%>
98
- @if (<%= entityInstance + '.' + relationshipFieldName %>) {
98
+ @if (<%= entityInstance + '()!.' + relationshipFieldName %>) {
99
99
  <div>
100
- <a [routerLink]="['/<%= relationship.otherEntity.entityPage %>', <%= entityInstance + '.' + relationshipFieldName + '.' + relationship.otherEntity.primaryKey.name %>, 'view']">{{ <%= entityInstance %>.<%= relationshipFieldName %>.<%= otherEntityField %> }}</a>
100
+ <a [routerLink]="['/<%= relationship.otherEntity.entityPage %>', <%= entityInstance + '()!.' + relationshipFieldName + '?.' + relationship.otherEntity.primaryKey.name %>, 'view']">{{ <%= entityInstance %>()!.<%= relationshipFieldName %>?.<%= otherEntityField %> }}</a>
101
101
  </div>
102
102
  }
103
103
  <%_ } _%>
@@ -113,14 +113,14 @@ _%>
113
113
  (click)="previousState()"
114
114
  class="btn btn-info"
115
115
  data-cy="entityDetailsBackButton">
116
- <fa-icon icon="arrow-left"></fa-icon>&nbsp;<span <%= jhiPrefix %>Translate="entity.action.back">__jhiTransformTranslate__('entity.action.back')</span>
116
+ <fa-icon icon="arrow-left"></fa-icon>&nbsp;<span>__jhiTranslateTag__('entity.action.back')</span>
117
117
  </button>
118
118
  <%_ if (!readOnly && updatableEntity) { _%>
119
119
 
120
120
  <button type="button"
121
- [routerLink]="['/<%= entityPage %>', <%= entityInstance %>.<%= primaryKey.name %>, 'edit']"
121
+ [routerLink]="['/<%= entityPage %>', <%= entityInstance %>()!.<%= primaryKey.name %>, 'edit']"
122
122
  class="btn btn-primary">
123
- <fa-icon icon="pencil-alt"></fa-icon>&nbsp;<span <%= jhiPrefix %>Translate="entity.action.edit">__jhiTransformTranslate__('entity.action.edit')</span>
123
+ <fa-icon icon="pencil-alt"></fa-icon>&nbsp;<span>__jhiTranslateTag__('entity.action.edit')</span>
124
124
  </button>
125
125
  <%_ } _%>
126
126
  </div>
@@ -22,7 +22,7 @@ const testEntity = this.generateTestEntityPrimaryKey(primaryKey, 0);
22
22
  _%>
23
23
  import { ComponentFixture, TestBed } from '@angular/core/testing';
24
24
  import { provideRouter, withComponentInputBinding } from '@angular/router';
25
- import { RouterTestingHarness, RouterTestingModule } from '@angular/router/testing';
25
+ import { RouterTestingHarness } from '@angular/router/testing';
26
26
  import { of } from 'rxjs';
27
27
 
28
28
  <%_ if (anyFieldIsBlobDerived) { _%>
@@ -40,7 +40,7 @@ describe('<%= entityAngularName %> Management Detail Component', () => {
40
40
 
41
41
  beforeEach(async () => {
42
42
  await TestBed.configureTestingModule({
43
- imports: [<%= entityAngularName %>DetailComponent, RouterTestingModule.withRoutes([], { bindToComponentInputs: true })],
43
+ imports: [<%= entityAngularName %>DetailComponent],
44
44
  providers: [
45
45
  provideRouter(
46
46
  [
@@ -73,7 +73,7 @@ describe('<%= entityAngularName %> Management Detail Component', () => {
73
73
  const instance = await harness.navigateByUrl('/', <%= entityAngularName %>DetailComponent);
74
74
 
75
75
  // THEN
76
- expect(instance.<%= entityInstance %>).toEqual(expect.objectContaining(<%- testEntity %>));
76
+ expect(instance.<%= entityInstance %>()).toEqual(expect.objectContaining(<%- testEntity %>));
77
77
  });
78
78
  });
79
79
 
@@ -16,7 +16,7 @@
16
16
  See the License for the specific language governing permissions and
17
17
  limitations under the License.
18
18
  -%>
19
- import { Component, <% if (anyFieldIsBlobDerived) { %>inject, <% } %>Input } from '@angular/core';
19
+ import { Component, <% if (anyFieldIsBlobDerived) { %>inject, <% } %>input } from '@angular/core';
20
20
  import { RouterModule } from '@angular/router';
21
21
 
22
22
  import SharedModule from 'app/shared/shared.module';
@@ -33,7 +33,7 @@ import { DataUtils } from 'app/core/util/data-util.service';
33
33
  imports: [SharedModule, RouterModule, DurationPipe, FormatMediumDatetimePipe, FormatMediumDatePipe],
34
34
  })
35
35
  export class <%= entityAngularName %>DetailComponent {
36
- @Input() <%= entityInstance %>: I<%= entityAngularName %> | null = null;
36
+ <%= entityInstance %> = input<I<%= entityAngularName %> | null>(null);
37
37
 
38
38
  <%_ if (anyFieldIsBlobDerived) { _%>
39
39
  protected dataUtils = inject(DataUtils);
@@ -18,18 +18,18 @@
18
18
  -%>
19
19
  <div>
20
20
  <h2 id="page-heading" data-cy="<%= entityClass %>Heading">
21
- <span <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.title">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.title')</span>
21
+ <span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.title')</span>
22
22
 
23
23
  <div class="d-flex justify-content-end">
24
24
  <button class="btn btn-info me-2" (click)="load()" [disabled]="isLoading">
25
25
  <fa-icon icon="sync" [spin]="isLoading"></fa-icon>
26
- <span <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.refreshListLabel">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.refreshListLabel')</span>
26
+ <span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.refreshListLabel')</span>
27
27
  </button>
28
28
  <%_ if (!readOnly) { _%>
29
29
 
30
30
  <button id="jh-create-entity" data-cy="entityCreateButton" class="btn btn-primary jh-create-entity create-<%= entityUrl %>" [routerLink]="['/<%= entityPage %>/new']">
31
31
  <fa-icon icon="plus"></fa-icon>
32
- <span <% if (searchEngineAny) { %>class="hidden-sm-down" <% } %> <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.createLabel">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.createLabel')</span>
32
+ <span <% if (searchEngineAny) { %>class="hidden-sm-down" <% } %>>__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.createLabel')</span>
33
33
  </button>
34
34
  <%_ } _%>
35
35
  </div>
@@ -43,8 +43,8 @@
43
43
  <form name="searchForm" class="row row-cols-sm-auto align-items-center">
44
44
  <div class="col-sm-12">
45
45
  <div class="input-group w-100 mt-3">
46
- <label class="visually-hidden" for="currentSearch" <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.search">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.search')</label>
47
- <input type="text" class="form-control" [(ngModel)]="currentSearch" id="currentSearch" name="currentSearch" placeholder="<% if (enableTranslation) { %>{{ '<%= i18nKeyPrefix %>.home.search' | translate }}<% } else { %>Query<% } %>">
46
+ <label class="visually-hidden" for="currentSearch">__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.search')</label>
47
+ <input type="text" class="form-control" [(ngModel)]="currentSearch" id="currentSearch" name="currentSearch" placeholder="__jhiTranslatePipe__('<%= i18nKeyPrefix %>.home.search')">
48
48
 
49
49
  <button class="btn btn-info" (click)="search(currentSearch)">
50
50
  <fa-icon icon="search"></fa-icon>
@@ -66,7 +66,7 @@
66
66
 
67
67
  @if (<%= entityInstancePlural %>?.length === 0) {
68
68
  <div class="alert alert-warning" id="no-result">
69
- <span <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.notFound">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.notFound')</span>
69
+ <span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.notFound')</span>
70
70
  </div>
71
71
  }
72
72
 
@@ -78,7 +78,7 @@
78
78
  <%_ for (const field of fields.filter(field => !field.hidden)) { _%>
79
79
  <th scope="col" <%= jhiPrefix %>SortBy="<%= field.fieldName %>">
80
80
  <div class="d-flex">
81
- <span <%= jhiPrefix %>Translate="<%= field.fieldTranslationKey %>">__jhiTransformTranslate__('<%- field.fieldTranslationKey %>')</span>
81
+ <span>__jhiTranslateTag__('<%- field.fieldTranslationKey %>')</span>
82
82
  <%_ if (!field.transient) { _%>
83
83
  <% if (searchEngineAny && !field.fieldTypeBoolean && !field.fieldTypeNumeric && !field.fieldTypeTemporal) { %>@if (!currentSearch) {<% } %>
84
84
  <fa-icon class="p-1" icon="sort"></fa-icon>
@@ -93,7 +93,7 @@
93
93
  _%>
94
94
  <th scope="col" <%= jhiPrefix %>SortBy="<%= relationship.relationshipName + (fieldName) %>">
95
95
  <div class="d-flex">
96
- <span <%= jhiPrefix %>Translate="<%= `${i18nKeyPrefix}.${relationship.relationshipName}` %>">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.<%- relationship.relationshipName %>')</span>
96
+ <span>__jhiTranslateTag__('<%- i18nKeyPrefix %>.<%- relationship.relationshipName %>')</span>
97
97
  <fa-icon class="p-1" icon="sort"></fa-icon>
98
98
  </div>
99
99
  </th>
@@ -123,13 +123,13 @@ _%>
123
123
  <%_ } else if (field.fieldTypeBinary && field.blobContentTypeAny) { _%>
124
124
  <td>
125
125
  @if (<%= entityInstance %>.<%= fieldName %>) {
126
- <a (click)="openFile(<%= entityInstance %>.<%= fieldName %>, <%= entityInstance %>.<%= fieldName %>ContentType)" <%= jhiPrefix %>Translate="entity.action.open">__jhiTransformTranslate__('entity.action.open')</a>
126
+ <a (click)="openFile(<%= entityInstance %>.<%= fieldName %>, <%= entityInstance %>.<%= fieldName %>ContentType)">__jhiTranslateTag__('entity.action.open')</a>
127
127
  <span>{{ <%= entityInstance %>.<%= fieldName %>ContentType }}, {{ byteSize(<%= entityInstance %>.<%= fieldName %>) }}</span>
128
128
  }
129
129
  </td>
130
130
  <%_ } else if (field.fieldIsEnum) { _%>
131
131
  <%# TODO: import enum and use its key as label _%>
132
- <td<% if (field.id) { %>><a<%- routerLink %><% } %> <%= jhiPrefix %>Translate="{{ '<%= frontendAppName %>.<%= fieldType %>.' + <%= entityInstance %>.<%= fieldName %> }}">{{ <%= entityInstance %>.<%= fieldName %> }}<% if (field.id) { %></a><% } %></td>
132
+ <td<% if (field.id) { %>><a<%- routerLink %><% } %>>__jhiTranslateTagEnum__('<%= frontendAppName %>.<%= fieldType %>', { "value": "<%= entityInstance %>.<%= fieldName %> ?? 'null'" })<% if (field.id) { %></a><% } %></td>
133
133
  <%_ } else if (field.fieldTypeTimed) { _%>
134
134
  <td>{{ <%= entityInstance %>.<%= fieldName %> | formatMediumDatetime }}</td>
135
135
  <%_ } else if (field.fieldTypeLocalDate) { _%>
@@ -185,21 +185,21 @@ _%>
185
185
  class="btn btn-info btn-sm"
186
186
  data-cy="filterOtherEntityButton">
187
187
  <fa-icon icon="eye"></fa-icon>
188
- <span class="d-none d-md-inline" <%= jhiPrefix %>Translate="entity.action.show" [translateValues]="{ otherEntity: ('<%= otherEntityTranslationKey %>' | translate) }">__jhiTransformTranslate__('entity.action.show', { "otherEntity": "<%- relationship.otherEntity.entityClassHumanized %>" })</span>
188
+ <span class="d-none d-md-inline">__jhiTranslateTagPipe__('entity.action.show', { "otherEntity": "<%= otherEntityTranslationKey %>" })</span>
189
189
  </button>
190
190
  <%_ } _%>
191
191
  <%_ } _%>
192
192
  <a [routerLink]="['/<%= entityPage %>', <%= entityInstance %>.<%= primaryKey.name %>, 'view']"
193
193
  class="btn btn-info btn-sm" data-cy="entityDetailsButton">
194
194
  <fa-icon icon="eye"></fa-icon>
195
- <span class="d-none d-md-inline" <%= jhiPrefix %>Translate="entity.action.view">__jhiTransformTranslate__('entity.action.view')</span>
195
+ <span class="d-none d-md-inline">__jhiTranslateTag__('entity.action.view')</span>
196
196
  </a>
197
197
  <%_ if (!readOnly && updatableEntity) { _%>
198
198
 
199
199
  <a [routerLink]="['/<%= entityPage %>', <%= entityInstance %>.<%= primaryKey.name %>, 'edit']"
200
200
  class="btn btn-primary btn-sm" data-cy="entityEditButton">
201
201
  <fa-icon icon="pencil-alt"></fa-icon>
202
- <span class="d-none d-md-inline" <%= jhiPrefix %>Translate="entity.action.edit">__jhiTransformTranslate__('entity.action.edit')</span>
202
+ <span class="d-none d-md-inline">__jhiTranslateTag__('entity.action.edit')</span>
203
203
  </a>
204
204
  <%_ } _%>
205
205
  <%_ if (!readOnly) { _%>
@@ -208,7 +208,7 @@ _%>
208
208
  class="btn btn-danger btn-sm"
209
209
  data-cy="entityDeleteButton">
210
210
  <fa-icon icon="times"></fa-icon>
211
- <span class="d-none d-md-inline" <%= jhiPrefix %>Translate="entity.action.delete">__jhiTransformTranslate__('entity.action.delete')</span>
211
+ <span class="d-none d-md-inline">__jhiTranslateTag__('entity.action.delete')</span>
212
212
  </button>
213
213
  <%_ } _%>
214
214
  </div>
@@ -32,7 +32,6 @@ import {
32
32
  import { HttpHeaders, HttpResponse } from '@angular/common/http';
33
33
  import { HttpClientTestingModule } from '@angular/common/http/testing';
34
34
  import { ActivatedRoute } from '@angular/router';
35
- import { RouterTestingModule } from '@angular/router/testing';
36
35
  import {
37
36
  of,
38
37
  <%_ if (!readOnly) { _%>
@@ -60,7 +59,6 @@ describe('<%= entityAngularName %> Management Component', () => {
60
59
  beforeEach(() => {
61
60
  TestBed.configureTestingModule({
62
61
  imports: [
63
- RouterTestingModule.withRoutes([{ path: '<%= entityPage %>', component: <%= entityAngularName %>Component }]),
64
62
  HttpClientTestingModule,
65
63
  <%= entityAngularName %>Component,
66
64
  ],
@@ -23,7 +23,6 @@ import { TestBed } from '@angular/core/testing';
23
23
  import { HttpResponse } from '@angular/common/http';
24
24
  import { HttpClientTestingModule } from '@angular/common/http/testing';
25
25
  import { ActivatedRouteSnapshot, ActivatedRoute, Router, convertToParamMap } from '@angular/router';
26
- import { RouterTestingModule } from '@angular/router/testing';
27
26
  import { of } from 'rxjs';
28
27
 
29
28
  import { I<%= entityAngularName %> } from '../<%= entityFileName %>.model';
@@ -39,7 +38,7 @@ describe('<%= entityAngularName %> routing resolve service', () => {
39
38
 
40
39
  beforeEach(() => {
41
40
  TestBed.configureTestingModule({
42
- imports: [HttpClientTestingModule, RouterTestingModule.withRoutes([])],
41
+ imports: [HttpClientTestingModule],
43
42
  providers: [
44
43
  {
45
44
  provide: ActivatedRoute,
@@ -200,12 +200,16 @@ _%>
200
200
  <%_ for (field of fields) {
201
201
  const { fieldName, fieldTypeBoolean, fieldTypeTimed, fieldTypeLocalDate } = field;
202
202
  _%>
203
- <%_ if (field.id) { _%>
204
- <%= fieldName %>: null,
205
- <%_ } else if (fieldTypeBoolean) { _%>
206
- <%= fieldName %>: false,
207
- <%_ } else if (fieldTypeTimed) { _%>
208
- <%= fieldName %>: currentTime,
203
+ <%_ if (field.fieldTsDefaultValue) { _%>
204
+ <%= fieldName %>: <%- field.fieldTsDefaultValue %>,
205
+ <%_ } else { _%>
206
+ <%_ if (field.id) { _%>
207
+ <%= fieldName %>: null,
208
+ <%_ } else if (fieldTypeBoolean) { _%>
209
+ <%= fieldName %>: false,
210
+ <%_ } else if (fieldTypeTimed) { _%>
211
+ <%= fieldName %>: currentTime,
212
+ <%_ } _%>
209
213
  <%_ } _%>
210
214
  <%_ } _%>
211
215
  <%_ for (const relationship of relationships.filter(({ persistableRelationship }) => persistableRelationship)) {
@@ -18,8 +18,8 @@
18
18
  -%>
19
19
  <div class="d-flex justify-content-center">
20
20
  <div class="col-8">
21
- <form name="editForm" role="form" novalidate (ngSubmit)="save()" [formGroup]="editForm">
22
- <h2 id="<%= jhiPrefixDashed %>-<%= entityFileName %>-heading" data-cy="<%= entityClass %>CreateUpdateHeading" <%= jhiPrefix %>Translate="<%= i18nKeyPrefix %>.home.createOrEditLabel">__jhiTransformTranslate__('<%- i18nKeyPrefix %>.home.createOrEditLabel')</h2>
21
+ <form name="editForm" novalidate (ngSubmit)="save()" [formGroup]="editForm">
22
+ <h2 id="<%= jhiPrefixDashed %>-<%= entityFileName %>-heading" data-cy="<%= entityClass %>CreateUpdateHeading">__jhiTranslateTag__('<%- i18nKeyPrefix %>.home.createOrEditLabel')</h2>
23
23
 
24
24
  <div>
25
25
  <<%= jhiPrefixDashed %>-alert-error></<%= jhiPrefixDashed %>-alert-error>
@@ -46,13 +46,13 @@ _%>
46
46
 
47
47
  <% if (field.autoGenerate) { %>@if (editForm.controls.<%= field.fieldName %>.value !== null) {<% } %>
48
48
  <div class="mb-3">
49
- <label class="form-label" <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= fieldName %>"<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%= i18nKeyPrefix %>.help.<%= fieldName %>' | translate"<% } else { %> ngbTooltip="<%= field.documentation %>"<% } } %>><%= fieldNameHumanized %></label>
49
+ <label class="form-label" for="field_<%= fieldName %>"<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%= i18nKeyPrefix %>.help.<%= fieldName %>' | translate"<% } else { %> ngbTooltip="<%= field.documentation %>"<% } } %>>__jhiTranslateTag__('<%= i18nKeyPrefix %>.<%= fieldName %>')</label>
50
50
  <%_ if (field.fieldIsEnum) { _%>
51
51
  <select class="form-control" name="<%= fieldName %>" formControlName="<%= fieldName %>" id="field_<%= fieldName %>" data-cy="<%= fieldName %>">
52
52
  <%_ const enumPrefix = frontendAppName + '.'+ fieldType; _%>
53
53
  <option [ngValue]="null"><% if (enableTranslation) { %>{{ '<%= enumPrefix %>.null' | translate }}<% } %></option>
54
54
  @for (<%= this._.lowerFirst(fieldType) %> of <%- this._.lowerFirst(fieldType) %>Values; track $index) {
55
- <option [value]="<%= this._.lowerFirst(fieldType) %>"><% if (enableTranslation) { %>{{ '<%= enumPrefix %>.' + <%= this._.lowerFirst(fieldType) %> | translate }}<% } else { %> {{ <%= this._.lowerFirst(fieldType) %> }} <% } %></option>
55
+ <option [value]="<%= this._.lowerFirst(fieldType) %>">__jhiTranslatePipeEnum__('<%= enumPrefix %>', { "value": "<%= this._.lowerFirst(fieldType) %>" })</option>
56
56
  }
57
57
  </select>
58
58
  <%_ } else { _%>
@@ -66,7 +66,7 @@ _%>
66
66
  @if (editForm.get('<%= fieldName %>')!.value) {
67
67
  <div class="form-text text-danger clearfix">
68
68
  <%_ if (field.blobContentTypeAny) { _%>
69
- <a class="pull-start" (click)="openFile(editForm.get('<%= fieldName %>')!.value!, editForm.get('<%= fieldName %>ContentType')!.value!)" <%= jhiPrefix %>Translate="entity.action.open">__jhiTransformTranslate__('entity.action.open')</a><br>
69
+ <a class="pull-start" (click)="openFile(editForm.get('<%= fieldName %>')!.value!, editForm.get('<%= fieldName %>ContentType')!.value!)">__jhiTranslateTag__('entity.action.open')</a><br>
70
70
  <span class="pull-start">{{ editForm.get('<%= fieldName %>ContentType')!.value }}, {{ byteSize(editForm.get('<%= fieldName %>')!.value!) }}</span>
71
71
  <%_ } else { _%>
72
72
  <span class="pull-start">{{ editForm.get('<%= fieldName %>ContentType')!.value }}, {{ byteSize(editForm.get('<%= fieldName %>')!.value!) }}</span>
@@ -113,47 +113,41 @@ _%>
113
113
  <div>
114
114
  <%_ if (field.fieldValidationRequired) { _%>
115
115
  @if (editForm.get('<%= fieldName %>')?.errors?.required) {
116
- <small class="form-text text-danger"
117
- <%= jhiPrefix %>Translate="entity.validation.required">__jhiTransformTranslate__('entity.validation.required')</small>
116
+ <small class="form-text text-danger">__jhiTranslateTag__('entity.validation.required')</small>
118
117
  }
119
118
  <%_ } _%>
120
119
  <%_ if (field.fieldValidationMinLength) { _%>
121
120
  @if (editForm.get('<%= fieldName %>')?.errors?.minlength) {
122
- <small class="form-text text-danger"
123
- <%= jhiPrefix %>Translate="entity.validation.minlength" [translateValues]="{ min: <%= field.fieldValidateRulesMinlength %> }">__jhiTransformTranslate__('entity.validation.minlength', { "min": <%- field.fieldValidateRulesMinlength %> })</small>
121
+ <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.minlength', { "min": <%- field.fieldValidateRulesMinlength %> })</small>
124
122
  }
125
123
  <%_ } _%>
126
124
  <%_ if (field.fieldValidationMaxLength) { _%>
127
125
  @if (editForm.get('<%= fieldName %>')?.errors?.maxlength) {
128
- <small class="form-text text-danger"
129
- <%= jhiPrefix %>Translate="entity.validation.maxlength" [translateValues]="{ max: <%= field.fieldValidateRulesMaxlength %> }">__jhiTransformTranslate__('entity.validation.maxlength', { "max": <%- field.fieldValidateRulesMaxlength %> })</small>
126
+ <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.maxlength', { "max": <%- field.fieldValidateRulesMaxlength %> })</small>
130
127
  }
131
128
  <%_ } _%>
132
129
  <%_ if (field.fieldValidationMin) { _%>
133
130
  @if (editForm.get('<%= fieldName %>')?.errors?.min) {
134
- <small class="form-text text-danger"
135
- <%= jhiPrefix %>Translate="entity.validation.min" [translateValues]="{ min: <%= field.fieldValidateRulesMin %> }">__jhiTransformTranslate__('entity.validation.min', { "min": <%- field.fieldValidateRulesMin %> })</small>
131
+ <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.min', { "min": <%- field.fieldValidateRulesMin %> })</small>
136
132
  }
137
133
  <%_ } _%>
138
134
  <%_ if (field.fieldValidationMax) { _%>
139
135
  @if (editForm.get('<%= fieldName %>')?.errors?.max) {
140
- <small class="form-text text-danger"
141
- <%= jhiPrefix %>Translate="entity.validation.max" [translateValues]="{ max: <%= field.fieldValidateRulesMax %> }">__jhiTransformTranslate__('entity.validation.max', { "max": <%- field.fieldValidateRulesMax %> })</small>
136
+ <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.max', { "max": <%- field.fieldValidateRulesMax %> })</small>
142
137
  }
143
138
  <%_ } _%>
144
139
  <%_ if (field.fieldValidationPattern) { _%>
145
140
  @if (editForm.get('<%= fieldName %>')?.errors?.pattern) {
146
- <small class="form-text text-danger"
147
- <%= jhiPrefix %>Translate="entity.validation.pattern" [translateValues]="{ pattern: '<%= fieldNameHumanized %>' }">__jhiTransformTranslate__('entity.validation.pattern', { "pattern": "<%- fieldNameHumanized %>" })</small>
141
+ <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.pattern', { "pattern": "<%- fieldNameHumanized %>" })</small>
148
142
  }
149
143
  <%_ } _%>
150
144
  <%_ if (field.fieldTypeNumeric || field.fieldTypeDuration) { _%>
151
145
  <small class="form-text text-danger"
152
- [hidden]="!editForm.get('<%= fieldName %>')?.errors?.number" <%= jhiPrefix %>Translate="entity.validation.number">__jhiTransformTranslate__('entity.validation.number')</small>
146
+ [hidden]="!editForm.get('<%= fieldName %>')?.errors?.number">__jhiTranslateTag__('entity.validation.number')</small>
153
147
  <%_ } _%>
154
148
  <%_ if (field.fieldTypeTimed) { _%>
155
149
  <small class="form-text text-danger"
156
- [hidden]="!editForm.get('<%= fieldName %>')?.errors?.datetimelocal" <%= jhiPrefix %>Translate="entity.validation.datetimelocal">__jhiTransformTranslate__('entity.validation.datetimelocal')</small>
150
+ [hidden]="!editForm.get('<%= fieldName %>')?.errors?.datetimelocal">__jhiTranslateTag__('entity.validation.datetimelocal')</small>
157
151
  <%_ } _%>
158
152
  </div>
159
153
  }
@@ -171,7 +165,7 @@ _%>
171
165
  <%_ if (relationship.persistableRelationship && !relationship.collection) { _%>
172
166
 
173
167
  <div class="mb-3">
174
- <label class="form-label" <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= relationshipName %>">__jhiTransformTranslate__('<%- translationKey %>')</label>
168
+ <label class="form-label" for="field_<%= relationshipName %>">__jhiTranslateTag__('<%- translationKey %>')</label>
175
169
  <select class="form-control" id="field_<%= relationshipName %>" data-cy="<%= propertyName %>" name="<%= relationshipName %>" formControlName="<%= propertyName %>" [compareWith]="compare<%= otherEntity.entityAngularName %>">
176
170
  <%_ if (!relationshipRequired) { _%>
177
171
  <option [ngValue]="null"></option>
@@ -192,7 +186,7 @@ _%>
192
186
  <%_ } else if (relationship.persistableRelationship) { _%>
193
187
 
194
188
  <div class="mb-3">
195
- <label <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= relationshipFieldNamePlural %>">__jhiTransformTranslate__('<%- translationKey %>')</label>
189
+ <label for="field_<%= relationshipFieldNamePlural %>">__jhiTranslateTag__('<%- translationKey %>')</label>
196
190
  <select class="form-control" id="field_<%= relationshipFieldNamePlural %>" data-cy="<%= relationshipFieldName %>" multiple name="<%= propertyName %>" formControlName="<%= propertyName %>" [compareWith]="compare<%= otherEntity.entityAngularName %>">
197
191
  @for (<%= otherEntityName %>Option of <%= otherEntity.entityInstancePlural %>SharedCollection; track $index) {
198
192
  <option [ngValue]="<%= otherEntityName %>Option">{{ <%= otherEntityName %>Option.<%= otherEntityField %> }}</option>
@@ -205,8 +199,7 @@ _%>
205
199
  <div>
206
200
  <%_ if (relationshipRequired) { _%>
207
201
  @if (editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])?.errors?.required) {
208
- <small class="form-text text-danger"
209
- <%= jhiPrefix %>Translate="entity.validation.required">__jhiTransformTranslate__('entity.validation.required')</small>
202
+ <small class="form-text text-danger">__jhiTranslateTag__('entity.validation.required')</small>
210
203
  }
211
204
  <%_ } _%>
212
205
  </div>
@@ -217,11 +210,11 @@ _%>
217
210
 
218
211
  <div>
219
212
  <button type="button" id="cancel-save" data-cy="entityCreateCancelButton" class="btn btn-secondary" (click)="previousState()">
220
- <fa-icon icon="ban"></fa-icon>&nbsp;<span <%= jhiPrefix %>Translate="entity.action.cancel">__jhiTransformTranslate__('entity.action.cancel')</span>
213
+ <fa-icon icon="ban"></fa-icon>&nbsp;<span>__jhiTranslateTag__('entity.action.cancel')</span>
221
214
  </button>
222
215
 
223
216
  <button type="submit" id="save-entity" data-cy="entityCreateSaveButton" [disabled]="editForm.invalid || isSaving" class="btn btn-primary">
224
- <fa-icon icon="save"></fa-icon>&nbsp;<span <%= jhiPrefix %>Translate="entity.action.save">__jhiTransformTranslate__('entity.action.save')</span>
217
+ <fa-icon icon="save"></fa-icon>&nbsp;<span>__jhiTranslateTag__('entity.action.save')</span>
225
218
  </button>
226
219
  </div>
227
220
  </form>
@@ -30,7 +30,6 @@ import { HttpResponse } from '@angular/common/http';
30
30
  import { HttpClientTestingModule } from '@angular/common/http/testing';
31
31
  import { FormBuilder } from '@angular/forms';
32
32
  import { ActivatedRoute } from '@angular/router';
33
- import { RouterTestingModule } from '@angular/router/testing';
34
33
  import { of, Subject, from } from 'rxjs';
35
34
 
36
35
  import { <%= entityAngularName %>FormService } from './<%= entityFileName %>-form.service';
@@ -59,7 +58,6 @@ describe('<%= entityAngularName %> Management Update Component', () => {
59
58
  TestBed.configureTestingModule({
60
59
  imports: [
61
60
  HttpClientTestingModule,
62
- RouterTestingModule.withRoutes([]),
63
61
  <%= entityAngularName %>UpdateComponent,
64
62
  ],
65
63
  providers: [
@@ -22,45 +22,44 @@
22
22
  </div>
23
23
 
24
24
  <div class="col-md-9">
25
- <h1 class="display-4"><span <%= jhiPrefix %>Translate="home.title">__jhiTransformTranslate__('home.title')</span> (<%= humanizedBaseName %>)</h1>
25
+ <h1 class="display-4"><span>__jhiTranslateTag__('home.title')</span> (<%= humanizedBaseName %>)</h1>
26
26
 
27
- <p class="lead" <%= jhiPrefix %>Translate="home.subtitle">__jhiTransformTranslate__('home.subtitle')</p>
27
+ <p class="lead">__jhiTranslateTag__('home.subtitle')</p>
28
28
 
29
29
  <div>
30
30
  @if (account() !== null) {
31
31
  <div class="alert alert-success">
32
32
  @if (account()) {
33
- <span id="home-logged-message" <%= jhiPrefix %>Translate="home.logged.message"
34
- [translateValues]="{ username: account()!.login }">__jhiTransformTranslate__('home.logged.message', { "username": "{{ account()!.login }}" })</span>
33
+ <span id="home-logged-message">__jhiTranslateTag__('home.logged.message', { "username": "account()!.login" })</span>
35
34
  }
36
35
  </div>
37
36
  } @else {
38
37
  <div class="alert alert-warning">
39
- <span <%= jhiPrefix %>Translate="global.messages.info.authenticated.prefix">__jhiTransformTranslate__('global.messages.info.authenticated.prefix')</span>
40
- <a class="alert-link" (click)="login()" <%= jhiPrefix %>Translate="global.messages.info.authenticated.link">__jhiTransformTranslate__('global.messages.info.authenticated.link')</a><span <%= jhiPrefix %>Translate="global.messages.info.authenticated.suffix">__jhiTransformTranslate__('global.messages.info.authenticated.suffix')</span>
38
+ <span>__jhiTranslateTag__('global.messages.info.authenticated.prefix')</span>
39
+ <a class="alert-link" (click)="login()">__jhiTranslateTag__('global.messages.info.authenticated.link')</a><span>__jhiTranslateTag__('global.messages.info.authenticated.suffix')</span>
41
40
  </div>
42
41
  <%_ if (generateUserManagement) { _%>
43
42
 
44
43
  <div class="alert alert-warning">
45
- <span <%= jhiPrefix %>Translate="global.messages.info.register.noaccount">__jhiTransformTranslate__('global.messages.info.register.noaccount')</span>&nbsp;
46
- <a class="alert-link" routerLink="/account/register" <%= jhiPrefix %>Translate="global.messages.info.register.link">__jhiTransformTranslate__('global.messages.info.register.link')</a>
44
+ <span>__jhiTranslateTag__('global.messages.info.register.noaccount')</span>&nbsp;
45
+ <a class="alert-link" routerLink="/account/register">__jhiTranslateTag__('global.messages.info.register.link')</a>
47
46
  </div>
48
47
  <%_ } _%>
49
48
  }
50
49
  </div>
51
50
 
52
- <p <%= jhiPrefix %>Translate="home.question">__jhiTransformTranslate__('home.question')</p>
51
+ <p>__jhiTranslateTag__('home.question')</p>
53
52
 
54
53
  <ul>
55
- <li><a href="https://www.jhipster.tech/" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.link.homepage">__jhiTransformTranslate__('home.link.homepage')</a></li>
56
- <li><a href="https://stackoverflow.com/tags/jhipster/info" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.link.stackoverflow">__jhiTransformTranslate__('home.link.stackoverflow')</a></li>
57
- <li><a href="https://github.com/jhipster/generator-jhipster/issues?state=open" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.link.bugtracker">__jhiTransformTranslate__('home.link.bugtracker')</a></li>
58
- <li><a href="https://gitter.im/jhipster/generator-jhipster" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.link.chat">__jhiTransformTranslate__('home.link.chat')</a></li>
59
- <li><a href="https://twitter.com/jhipster" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.link.follow">__jhiTransformTranslate__('home.link.follow')</a></li>
54
+ <li><a href="<%- hipsterDocumentationLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.link.homepage')</a></li>
55
+ <li><a href="<%- hipsterStackoverflowLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.link.stackoverflow')</a></li>
56
+ <li><a href="<%- hipsterBugTrackerLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.link.bugtracker')</a></li>
57
+ <li><a href="<%- hipsterChatLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.link.chat')</a></li>
58
+ <li><a href="<%- hipsterTwitterLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.link.follow')</a></li>
60
59
  </ul>
61
60
 
62
61
  <p>
63
- <span <%= jhiPrefix %>Translate="home.like">__jhiTransformTranslate__('home.like')</span> <a href="https://github.com/jhipster/generator-jhipster" target="_blank" rel="noopener noreferrer" <%= jhiPrefix %>Translate="home.github">__jhiTransformTranslate__('home.github')</a>!
62
+ <span>__jhiTranslateTag__('home.like')</span> <a href="<%- hipsterProjectLink %>" target="_blank" rel="noopener noreferrer">__jhiTranslateTag__('home.github')</a>!
64
63
  </p>
65
64
  </div>
66
65
  </div>
@@ -24,7 +24,6 @@ jest.mock('app/login/login.service');
24
24
  import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
25
25
  <%_ if (!authenticationTypeOauth2) { _%>
26
26
  import { Router } from '@angular/router';
27
- import { RouterTestingModule } from '@angular/router/testing';
28
27
  <%_ } _%>
29
28
  import { of<% if (!authenticationTypeOauth2) { %>, Subject<% } %> } from 'rxjs';
30
29
 
@@ -60,10 +59,7 @@ describe('Home Component', () => {
60
59
  waitForAsync(() => {
61
60
  TestBed.configureTestingModule({
62
61
  imports: [
63
- HomeComponent,
64
- <%_ if (!authenticationTypeOauth2) { _%>
65
- RouterTestingModule.withRoutes([]),
66
- <%_ } _%>
62
+ HomeComponent
67
63
  ],
68
64
  providers: [
69
65
  AccountService,
@@ -23,7 +23,7 @@
23
23
  </div>
24
24
 
25
25
  <div class="col-md-8">
26
- <h1 <%= jhiPrefix %>Translate="error.title">__jhiTransformTranslate__('error.title')</h1>
26
+ <h1>__jhiTranslateTag__('error.title')</h1>
27
27
 
28
28
  @if (errorMessage()) {
29
29
  <div class="alert alert-danger">{{ errorMessage() }}</div>
@@ -17,5 +17,5 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  <div class="footer">
20
- <p <%= jhiPrefix %>Translate="footer">__jhiTransformTranslate__('footer')</p>
20
+ <p>__jhiTranslateTag__('footer')</p>
21
21
  </div>