generator-jhipster 9.1.0 → 9.2.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 (469) hide show
  1. package/README.md +6 -0
  2. package/dist/.blueprint/github-build-matrix/support/integration-test-constants.d.ts +18 -0
  3. package/dist/.blueprint/github-build-matrix/support/integration-test-constants.js +18 -0
  4. package/dist/cli/cli-command.d.ts +16 -0
  5. package/dist/cli/jhipster-command.d.ts +2 -2
  6. package/dist/cli/jhipster-command.js +2 -2
  7. package/dist/cli/types.d.ts +36 -0
  8. package/dist/generators/angular/files-angular.js +2 -2
  9. package/dist/generators/angular/generator.js +3 -3
  10. package/dist/generators/angular/resources/package.json +16 -16
  11. package/dist/generators/angular/templates/.gitignore.jhi.angular.ejs +27 -0
  12. package/dist/generators/angular/templates/angular.json.ejs +2 -1
  13. package/dist/generators/angular/templates/angular.json.esbuild.ejs +2 -11
  14. package/dist/generators/angular/templates/build-plugins/define-esbuild.ts.ejs +13 -11
  15. package/dist/generators/angular/templates/eslint.config.ts.jhi.angular.ejs +1 -1
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.service.spec.ts.ejs +0 -2
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.spec.ts.ejs +6 -8
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.ts.ejs +1 -2
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.spec.ts.ejs +3 -5
  20. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.ts.ejs +1 -2
  21. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.service.spec.ts.ejs +0 -2
  22. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.spec.ts.ejs +4 -6
  23. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.ts.ejs +2 -2
  24. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.service.spec.ts.ejs +0 -2
  25. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.spec.ts.ejs +6 -8
  26. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.ts.ejs +2 -2
  27. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.service.spec.ts.ejs +0 -2
  28. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.spec.ts.ejs +7 -9
  29. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.ts.ejs +2 -2
  30. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.service.spec.ts.ejs +0 -2
  31. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.spec.ts.ejs +8 -10
  32. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.ts.ejs +3 -3
  33. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.spec.ts.ejs +11 -13
  34. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.ts.ejs +1 -2
  35. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.spec.ts.ejs +8 -10
  36. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.ts.ejs +2 -2
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.html.ejs +2 -2
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.spec.ts.ejs +0 -2
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.spec.ts.ejs +2 -4
  40. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.ts.ejs +1 -2
  41. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.ts.ejs +1 -2
  42. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.service.spec.ts.ejs +0 -2
  43. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.spec.ts.ejs +6 -8
  44. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.ts.ejs +0 -2
  45. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.spec.ts.ejs +2 -4
  46. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.ts.ejs +0 -2
  47. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.html.ejs +2 -2
  48. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.service.spec.ts.ejs +0 -2
  49. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.spec.ts.ejs +3 -5
  50. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.ts.ejs +0 -2
  51. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.ts.ejs +1 -2
  52. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.ts.ejs +1 -2
  53. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.ts.ejs +1 -2
  54. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.ts.ejs +1 -2
  55. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.ts.ejs +1 -2
  56. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.spec.ts.ejs +6 -6
  57. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.ts.ejs +1 -2
  58. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.ts.ejs +1 -2
  59. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.service.spec.ts.ejs +0 -2
  60. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.spec.ts.ejs +6 -8
  61. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.ts.ejs +0 -2
  62. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.ts.ejs +0 -2
  63. package/dist/generators/angular/templates/src/main/webapp/app/app.config.ts.ejs +5 -5
  64. package/dist/generators/angular/templates/src/main/webapp/app/app.ts.ejs +0 -4
  65. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/account.service.spec.ts.ejs +10 -14
  66. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-jwt.service.spec.ts.ejs +3 -5
  67. package/dist/generators/angular/templates/src/main/webapp/app/core/config/application-config.service.spec.ts.ejs +0 -2
  68. package/dist/generators/angular/templates/src/main/webapp/app/core/microfrontend/index.ts.ejs +1 -8
  69. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.spec.ts.ejs +19 -21
  70. package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.spec.ts.ejs +2 -4
  71. package/dist/generators/angular/templates/src/main/webapp/app/core/util/event-manager.service.spec.ts.ejs +0 -2
  72. package/dist/generators/angular/templates/src/main/webapp/app/core/util/operators.spec.ts.ejs +0 -2
  73. package/dist/generators/angular/templates/src/main/webapp/app/core/util/parse-links.service.spec.ts.ejs +0 -2
  74. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.spec.ts.ejs +5 -7
  75. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.ts.ejs +0 -2
  76. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.html.ejs +1 -1
  77. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.spec.ts.ejs +9 -15
  78. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.ts.ejs +2 -4
  79. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.spec.ts.ejs +11 -15
  80. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.ts.ejs +2 -2
  81. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +6 -8
  82. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.spec.ts.ejs +1 -3
  83. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.ts.ejs +9 -7
  84. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.spec.ts.ejs +0 -2
  85. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.html.ejs +18 -16
  86. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.spec.ts.ejs +41 -18
  87. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.ts.ejs +11 -5
  88. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/detail/user-management-detail.spec.ts.ejs +3 -5
  89. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/detail/user-management-detail.ts.ejs +1 -2
  90. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/list/user-management.spec.ts.ejs +11 -10
  91. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/list/user-management.ts.ejs +0 -2
  92. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/service/user-management.service.spec.ts.ejs +0 -2
  93. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/update/user-management-update.spec.ts.ejs +5 -7
  94. package/dist/generators/angular/templates/src/main/webapp/app/entities/admin/user-management/update/user-management-update.ts.ejs +0 -2
  95. package/dist/generators/angular/templates/src/main/webapp/app/home/home.spec.ts.ejs +7 -9
  96. package/dist/generators/angular/templates/src/main/webapp/app/home/home.ts.ejs +0 -2
  97. package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.ts.ejs +2 -4
  98. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.spec.ts.ejs +9 -11
  99. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.ts.ejs +5 -3
  100. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/active-menu.directive.ts.ejs +1 -1
  101. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.spec.ts.ejs +5 -7
  102. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.ts.ejs +5 -17
  103. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.spec.ts.ejs +1 -3
  104. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.ts.ejs +1 -2
  105. package/dist/generators/angular/templates/src/main/webapp/app/login/login.spec.ts.ejs +12 -14
  106. package/dist/generators/angular/templates/src/main/webapp/app/login/login.ts.ejs +2 -2
  107. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.spec.ts.ejs +18 -21
  108. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.spec.ts.ejs +2 -4
  109. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.spec.ts.ejs +4 -6
  110. package/dist/generators/angular/templates/src/main/webapp/app/shared/date/format-medium-date.pipe.spec.ts.ejs +0 -2
  111. package/dist/generators/angular/templates/src/main/webapp/app/shared/date/format-medium-datetime.pipe.spec.ts.ejs +0 -2
  112. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.model.spec.ts.ejs +12 -14
  113. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.ts.ejs +2 -2
  114. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translate.directive.spec.ts.ejs +3 -5
  115. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translation.provider.ts.ejs +72 -0
  116. package/dist/generators/angular/templates/src/main/webapp/app/shared/pagination/item-count.spec.ts.ejs +4 -8
  117. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.spec.ts.ejs +2 -4
  118. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.directive.spec.ts.ejs +1 -3
  119. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.service.spec.ts.ejs +0 -2
  120. package/dist/generators/angular/templates/webpack/webpack.microfrontend.js.ejs +1 -1
  121. package/dist/generators/app/command.d.ts +0 -7
  122. package/dist/generators/app/command.js +0 -7
  123. package/dist/generators/app/generator.js +2 -6
  124. package/dist/generators/base/command.d.ts +7 -0
  125. package/dist/generators/base/command.js +7 -0
  126. package/dist/generators/base/generator.d.ts +11 -0
  127. package/dist/generators/base/generator.js +15 -0
  128. package/dist/generators/base/support/constants.d.ts +18 -0
  129. package/dist/generators/base/support/constants.js +18 -0
  130. package/dist/generators/base/tasks.d.ts +1 -0
  131. package/dist/generators/base-application/entity.d.ts +18 -0
  132. package/dist/generators/base-application/entity.js +18 -0
  133. package/dist/generators/base-application/generator.js +2 -1
  134. package/dist/generators/base-application/internal/types/field-types.d.ts +18 -0
  135. package/dist/generators/base-application/internal/types/field-types.js +18 -0
  136. package/dist/generators/base-application/priorities.d.ts +2 -0
  137. package/dist/generators/base-application/priorities.js +1 -0
  138. package/dist/generators/base-application/support/update-application-entities-transform.d.ts +18 -0
  139. package/dist/generators/base-application/support/update-application-entities-transform.js +18 -0
  140. package/dist/generators/base-core/generator.d.ts +1 -0
  141. package/dist/generators/base-core/generator.js +4 -3
  142. package/dist/generators/base-core/internal/config-def.d.ts +18 -0
  143. package/dist/generators/base-core/internal/config-def.js +18 -0
  144. package/dist/generators/base-core/internal/jhipster7-context.d.ts +18 -0
  145. package/dist/generators/base-core/internal/jhipster7-context.js +18 -0
  146. package/dist/generators/base-core/priorities.d.ts +2 -0
  147. package/dist/generators/base-core/priorities.js +12 -1
  148. package/dist/generators/base-simple-application/application.d.ts +0 -2
  149. package/dist/generators/base-simple-application/generator.js +2 -1
  150. package/dist/generators/base-simple-application/generators/bootstrap/generator.js +0 -1
  151. package/dist/generators/base-simple-application/tasks.d.ts +1 -0
  152. package/dist/generators/base-workspaces/command.d.ts +18 -0
  153. package/dist/generators/base-workspaces/command.js +18 -0
  154. package/dist/generators/base-workspaces/internal/docker-base.js +2 -2
  155. package/dist/generators/base-workspaces/priorities.d.ts +2 -0
  156. package/dist/generators/base-workspaces/prompts.d.ts +18 -0
  157. package/dist/generators/base-workspaces/prompts.js +18 -0
  158. package/dist/generators/bootstrap/internal/transform-utils.d.ts +18 -0
  159. package/dist/generators/bootstrap/internal/transform-utils.js +18 -0
  160. package/dist/generators/bootstrap/support/eslint-worker.d.ts +18 -0
  161. package/dist/generators/bootstrap/support/eslint-worker.js +18 -0
  162. package/dist/generators/bootstrap/support/multi-step-transform/template-data.d.ts +18 -0
  163. package/dist/generators/bootstrap/support/multi-step-transform/template-data.js +18 -0
  164. package/dist/generators/bootstrap/support/multi-step-transform/template-file.d.ts +18 -0
  165. package/dist/generators/bootstrap/support/multi-step-transform/template-file.js +18 -0
  166. package/dist/generators/bootstrap/support/prettier-worker.d.ts +18 -0
  167. package/dist/generators/bootstrap/support/prettier-worker.js +18 -0
  168. package/dist/generators/ci-cd/generators/azure/templates/azure-pipelines.yml.ejs +0 -2
  169. package/dist/generators/ci-cd/generators/bootstrap/resources/dependabot/action.yml +1 -1
  170. package/dist/generators/ci-cd/generators/circle/templates/.circleci/config.yml.ejs +1 -6
  171. package/dist/generators/ci-cd/generators/github/templates/.github/workflows/main.yml.ejs +0 -2
  172. package/dist/generators/client/command.d.ts +2 -2
  173. package/dist/generators/client/command.js +2 -2
  174. package/dist/generators/client/generators/bootstrap/generator.d.ts +798 -66
  175. package/dist/generators/client/generators/bootstrap/generator.js +6 -6
  176. package/dist/generators/client/resources/package.json +1 -1
  177. package/dist/generators/client/support/files.d.ts +18 -0
  178. package/dist/generators/client/support/files.js +18 -0
  179. package/dist/generators/client/templates/README.md.jhi.client.ejs +1 -2
  180. package/dist/generators/common/command.d.ts +18 -0
  181. package/dist/generators/common/command.js +13 -0
  182. package/dist/generators/common/resources/package.json +2 -2
  183. package/dist/generators/cypress/resources/package.json +3 -3
  184. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/password-page.cy.ts.ejs +1 -1
  185. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/register-page.cy.ts.ejs +1 -1
  186. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/reset-password-page.cy.ts.ejs +1 -1
  187. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/settings-page.cy.ts.ejs +1 -1
  188. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/administration/administration.cy.ts.ejs +0 -2
  189. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +20 -20
  190. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/lighthouse.audits.ts.ejs +3 -1
  191. package/dist/generators/docker/files.d.ts +18 -0
  192. package/dist/generators/docker/files.js +18 -0
  193. package/dist/generators/docker-compose/command.d.ts +18 -0
  194. package/dist/generators/docker-compose/command.js +18 -0
  195. package/dist/generators/entity/support/asserts.js +2 -2
  196. package/dist/generators/generate-blueprint/generators/standalone/generator.js +2 -2
  197. package/dist/generators/generate-blueprint/generators/standalone/templates/.blueprint/generate-sample/command.ts.ejs +4 -4
  198. package/dist/generators/generate-blueprint/generators/standalone/templates/.blueprint/github-build-matrix/command.ts.ejs +4 -4
  199. package/dist/generators/generate-blueprint/generators/standalone/templates/.github/workflows/build-cache.yml.ejs +2 -0
  200. package/dist/generators/generate-blueprint/generators/standalone/templates/.github/workflows/samples.yml.ejs +4 -0
  201. package/dist/generators/generate-blueprint/generators/standalone/templates/tsconfig.json.ejs +7 -2
  202. package/dist/generators/generate-blueprint/internal/lookup-namespaces.d.ts +18 -0
  203. package/dist/generators/generate-blueprint/internal/lookup-namespaces.js +18 -0
  204. package/dist/generators/generate-blueprint/resources/package.json +3 -3
  205. package/dist/generators/generate-blueprint/templates/generators/generator/command.ts.ejs +3 -1
  206. package/dist/generators/heroku/templates.d.ts +18 -0
  207. package/dist/generators/heroku/templates.js +18 -0
  208. package/dist/generators/index.d.ts +18 -0
  209. package/dist/generators/index.js +18 -0
  210. package/dist/generators/info/command.d.ts +5 -0
  211. package/dist/generators/info/command.js +5 -0
  212. package/dist/generators/info/index.d.ts +1 -0
  213. package/dist/generators/info/index.js +1 -0
  214. package/dist/generators/info/support/extract-info.d.ts +18 -0
  215. package/dist/generators/info/support/extract-info.js +19 -1
  216. package/dist/generators/info/support/markdown-content.d.ts +18 -0
  217. package/dist/generators/info/support/markdown-content.js +18 -0
  218. package/dist/generators/init/generator.js +3 -3
  219. package/dist/generators/init/resources/.node-version +1 -1
  220. package/dist/generators/java/generators/bootstrap/generator.js +0 -2
  221. package/dist/generators/java/generators/domain/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +13 -7
  222. package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +8 -16
  223. package/dist/generators/java/generators/server/generator.js +1 -1
  224. package/dist/generators/java/support/artifacts.d.ts +18 -0
  225. package/dist/generators/java/support/artifacts.js +18 -0
  226. package/dist/generators/java/support/checks/index.d.ts +18 -0
  227. package/dist/generators/java/support/checks/index.js +18 -0
  228. package/dist/generators/java/support/java-enum.d.ts +18 -0
  229. package/dist/generators/java/support/java-enum.js +18 -0
  230. package/dist/generators/java/support/key-store.d.ts +18 -0
  231. package/dist/generators/java/support/key-store.js +18 -0
  232. package/dist/generators/java/support/prepare-entity.d.ts +18 -0
  233. package/dist/generators/java/support/prepare-entity.js +18 -0
  234. package/dist/generators/java/support/util.d.ts +18 -0
  235. package/dist/generators/java/support/util.js +18 -0
  236. package/dist/generators/java-simple-application/application.d.ts +1 -1
  237. package/dist/generators/java-simple-application/generator.d.ts +1 -1
  238. package/dist/generators/java-simple-application/generator.js +2 -1
  239. package/dist/generators/java-simple-application/generators/code-quality/templates/buildSrc/src/main/groovy/jhipster.code-quality-conventions.gradle.ejs +1 -1
  240. package/dist/generators/java-simple-application/generators/code-quality/templates/checkstyle.xml.ejs +1 -11
  241. package/dist/generators/java-simple-application/generators/graalvm/internal/constants.d.ts +19 -1
  242. package/dist/generators/java-simple-application/generators/graalvm/internal/constants.js +19 -1
  243. package/dist/generators/java-simple-application/generators/graalvm/internal/maven-definition.d.ts +18 -0
  244. package/dist/generators/java-simple-application/generators/graalvm/internal/maven-definition.js +18 -0
  245. package/dist/generators/java-simple-application/generators/graalvm/resources/gradle/libs.versions.toml +1 -1
  246. package/dist/generators/java-simple-application/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  247. package/dist/generators/java-simple-application/generators/gradle/types.d.ts +2 -4
  248. package/dist/generators/javascript-simple-application/command.d.ts +5 -0
  249. package/dist/generators/javascript-simple-application/command.js +5 -0
  250. package/dist/generators/javascript-simple-application/generator.js +2 -3
  251. package/dist/generators/javascript-simple-application/index.d.ts +1 -0
  252. package/dist/generators/javascript-simple-application/index.js +1 -0
  253. package/dist/generators/javascript-simple-application/resources/package.json +2 -2
  254. package/dist/generators/jdl/command.d.ts +18 -0
  255. package/dist/generators/jdl/command.js +18 -0
  256. package/dist/generators/jdl/support/export-jdl-transform.d.ts +18 -0
  257. package/dist/generators/jdl/support/export-jdl-transform.js +18 -0
  258. package/dist/generators/jdl/support/import-jdl-transform.d.ts +18 -0
  259. package/dist/generators/jdl/support/import-jdl-transform.js +18 -0
  260. package/dist/generators/jdl/support/index.d.ts +18 -0
  261. package/dist/generators/jdl/support/index.js +18 -0
  262. package/dist/generators/kubernetes/generator.js +1 -1
  263. package/dist/generators/kubernetes/generators/knative/generator.js +1 -1
  264. package/dist/generators/kubernetes/generators/knative/templates/kubectl-apply.sh.ejs +0 -2
  265. package/dist/generators/liquibase/generator.js +1 -1
  266. package/dist/generators/liquibase/support/maven-plugin.d.ts +18 -0
  267. package/dist/generators/liquibase/support/maven-plugin.js +18 -0
  268. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/add_relationship_constraints.ejs +6 -8
  269. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +47 -59
  270. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +0 -1
  271. package/dist/generators/project-name/application.d.ts +18 -0
  272. package/dist/generators/project-name/application.js +18 -0
  273. package/dist/generators/project-name/generator.d.ts +3 -19
  274. package/dist/generators/project-name/generator.js +30 -5
  275. package/dist/generators/project-name/generators/bootstrap/generator.d.ts +0 -18
  276. package/dist/generators/project-name/generators/bootstrap/generator.js +5 -0
  277. package/dist/generators/react/command.d.ts +5 -0
  278. package/dist/generators/react/command.js +5 -0
  279. package/dist/generators/react/generator.js +0 -6
  280. package/dist/generators/react/index.d.ts +1 -0
  281. package/dist/generators/react/index.js +1 -0
  282. package/dist/generators/react/resources/package.json +26 -27
  283. package/dist/generators/react/templates/package.json.ejs +5 -0
  284. package/dist/generators/react/templates/src/main/webapp/app/app.scss.ejs +0 -34
  285. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.tsx.ejs +0 -2
  286. package/dist/generators/react/templates/src/main/webapp/app/entities/reducers.ts.ejs +1 -1
  287. package/dist/generators/react/templates/src/main/webapp/app/entities/routes.tsx.ejs +0 -2
  288. package/dist/generators/react/templates/src/main/webapp/app/index.tsx.ejs +15 -0
  289. package/dist/generators/react/templates/src/main/webapp/app/modules/account/activate/activate.reducer.ts.ejs +1 -1
  290. package/dist/generators/react/templates/src/main/webapp/app/modules/account/password/password.reducer.ts.ejs +1 -1
  291. package/dist/generators/react/templates/src/main/webapp/app/modules/account/password-reset/password-reset.reducer.ts.ejs +1 -1
  292. package/dist/generators/react/templates/src/main/webapp/app/modules/account/register/register.reducer.ts.ejs +1 -1
  293. package/dist/generators/react/templates/src/main/webapp/app/modules/account/sessions/sessions.reducer.ts.ejs +1 -1
  294. package/dist/generators/react/templates/src/main/webapp/app/modules/account/settings/settings.reducer.ts.ejs +1 -1
  295. package/dist/generators/react/templates/src/main/webapp/app/modules/administration/administration.reducer.ts.ejs +1 -1
  296. package/dist/generators/react/templates/src/main/webapp/app/modules/administration/user-management/user-management.reducer.ts.ejs +1 -1
  297. package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +1 -4
  298. package/dist/generators/react/templates/src/main/webapp/app/routes.tsx.ejs +4 -8
  299. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/header/header-components.tsx.ejs +2 -2
  300. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/header/header.spec.tsx.ejs +3 -2
  301. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/menus/entities.tsx.ejs +3 -6
  302. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/menus/menu-item.tsx.ejs +1 -1
  303. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/application-profile.ts.ejs +1 -1
  304. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/authentication.spec.ts.ejs +5 -5
  305. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/authentication.ts.ejs +1 -1
  306. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/index.ts.ejs +2 -4
  307. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/locale.ts.ejs +1 -1
  308. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/user-management.ts.ejs +1 -1
  309. package/dist/generators/react/templates/webpack/webpack.common.js.ejs +1 -1
  310. package/dist/generators/server/generators/bootstrap/generator.d.ts +6 -2
  311. package/dist/generators/server/generators/bootstrap/generator.js +7 -6
  312. package/dist/generators/server/resources/Dockerfile +14 -14
  313. package/dist/generators/server/resources/gradle/libs.versions.toml +11 -11
  314. package/dist/generators/server/resources/pom.xml +8 -8
  315. package/dist/generators/server/support/build-specification-mapper.d.ts +18 -0
  316. package/dist/generators/server/support/build-specification-mapper.js +18 -0
  317. package/dist/generators/server/support/database.d.ts +1 -1
  318. package/dist/generators/server/support/database.js +1 -1
  319. package/dist/generators/server/support/prepare-relationship.d.ts +18 -0
  320. package/dist/generators/server/support/prepare-relationship.js +18 -0
  321. package/dist/generators/spring-boot/generators/cache/generator.js +3 -4
  322. package/dist/generators/spring-boot/generators/cache/resources/gradle/libs.versions.toml +3 -3
  323. package/dist/generators/spring-boot/generators/cache/templates/src/main/java/_package_/config/CacheConfiguration_redis.java.ejs +0 -2
  324. package/dist/generators/spring-boot/generators/data-couchbase/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_couchbase.ejs +1 -5
  325. package/dist/generators/spring-boot/generators/data-couchbase/templates/src/main/java/_package_/_entityPackage_/repository/_entityClass_Repository.java.ejs +5 -25
  326. package/dist/generators/spring-boot/generators/data-mongodb/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_mongodb.ejs +2 -4
  327. package/dist/generators/spring-boot/generators/data-neo4j/generator.d.ts +2 -2
  328. package/dist/generators/spring-boot/generators/data-neo4j/generator.js +6 -0
  329. package/dist/generators/spring-boot/generators/data-relational/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_reactive.ejs +1 -1
  330. package/dist/generators/spring-boot/generators/data-relational/templates/src/main/java/_package_/_entityPackage_/repository/_entityClass_Repository.java.ejs +3 -13
  331. package/dist/generators/spring-boot/generators/data-relational/templates/src/main/java/_package_/_entityPackage_/repository/_entityClass_RepositoryInternalImpl_reactive.java.ejs +10 -5
  332. package/dist/generators/spring-boot/generators/data-relational/templates/src/main/java/_package_/_entityPackage_/repository/rowmapper/_entityClass_RowMapper_reactive.java.ejs +12 -6
  333. package/dist/generators/spring-boot/resources/spring-boot-dependencies-4.json +85 -85
  334. package/dist/generators/spring-boot/resources/spring-boot-dependencies-4.pom +343 -343
  335. package/dist/generators/spring-boot/resources/spring-boot-dependencies.json +83 -83
  336. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +116 -116
  337. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/get_all_stream_template.ejs +2 -3
  338. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/inject_template.ejs +0 -1
  339. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/save_user_snapshot_template.ejs +31 -0
  340. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/search_template.ejs +1 -2
  341. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/validate_id_template.ejs +24 -0
  342. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/repository/UserRepository.java.ejs +3 -13
  343. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/UserService.java.ejs +1 -2
  344. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/impl/_entityClass_ServiceImpl.java.ejs +4 -8
  345. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/mapper/_entityClass_Mapper.java.ejs +2 -4
  346. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/web/rest/_entityClass_Resource.java.ejs +15 -66
  347. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +1 -3
  348. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +2 -2
  349. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/WebConfigurer.java.ejs +1 -2
  350. package/dist/generators/spring-boot/templates/src/main/java/_package_/domain/AbstractAuditingEntity.java.ejs +10 -20
  351. package/dist/generators/spring-boot/templates/src/main/java/_package_/domain/PersistentToken.java.ejs +2 -4
  352. package/dist/generators/spring-boot/templates/src/main/java/_package_/domain/User.java.ejs +10 -20
  353. package/dist/generators/spring-boot/templates/src/main/java/_package_/repository/PersistentTokenRepository.java.ejs +0 -2
  354. package/dist/generators/spring-boot/templates/src/main/java/_package_/security/DomainUserDetailsService.java.ejs +0 -3
  355. package/dist/generators/spring-boot/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +2 -9
  356. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +41 -5
  357. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +0 -1
  358. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/errors/ExceptionTranslator.java.ejs +6 -5
  359. package/dist/generators/spring-boot/templates/src/main/resources/config/application-dev.yml.ejs +1 -1
  360. package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +1 -1
  361. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +3 -5
  362. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +3 -9
  363. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +6 -12
  364. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +217 -255
  365. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/SecurityUtilsUnitTest_imperative.java.ejs +1 -1
  366. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/MailServiceIT.java.ejs +2 -5
  367. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +3 -2
  368. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +41 -7
  369. package/dist/generators/spring-boot/types.d.ts +1 -2
  370. package/dist/generators/spring-cloud/generators/feign-client/files.d.ts +18 -0
  371. package/dist/generators/spring-cloud/generators/feign-client/files.js +18 -0
  372. package/dist/generators/spring-cloud/resources/gradle/libs.versions.toml +2 -2
  373. package/dist/generators/upgrade/support/constants.d.ts +18 -0
  374. package/dist/generators/upgrade/support/constants.js +18 -0
  375. package/dist/generators/upgrade/support/index.d.ts +18 -0
  376. package/dist/generators/upgrade/support/index.js +18 -0
  377. package/dist/generators/vue/command.d.ts +5 -0
  378. package/dist/generators/vue/command.js +5 -0
  379. package/dist/generators/vue/index.d.ts +1 -0
  380. package/dist/generators/vue/index.js +1 -0
  381. package/dist/generators/vue/resources/package.json +32 -32
  382. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +7 -2
  383. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.service.spec.ts.ejs +2 -1
  384. package/dist/generators/vue/templates/src/main/webapp/app/router/account.ts.ejs +1 -1
  385. package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.ts.ejs +0 -2
  386. package/dist/generators/workspaces/command.d.ts +18 -0
  387. package/dist/generators/workspaces/command.js +18 -0
  388. package/dist/generators/workspaces/generator.js +25 -21
  389. package/dist/lib/ci/apply-patch-to-template.d.ts +18 -0
  390. package/dist/lib/ci/apply-patch-to-template.js +18 -0
  391. package/dist/lib/ci/github-group.d.ts +18 -0
  392. package/dist/lib/ci/github-group.js +18 -0
  393. package/dist/lib/ci/github-matrix.d.ts +18 -0
  394. package/dist/lib/ci/github-matrix.js +18 -0
  395. package/dist/lib/ci/github.d.ts +18 -0
  396. package/dist/lib/ci/github.js +18 -0
  397. package/dist/lib/ci/index.d.ts +18 -0
  398. package/dist/lib/ci/index.js +18 -0
  399. package/dist/lib/ci/sample-config.d.ts +18 -0
  400. package/dist/lib/ci/sample-config.js +18 -0
  401. package/dist/lib/ci/support/application-samples.d.ts +18 -0
  402. package/dist/lib/ci/support/application-samples.js +18 -0
  403. package/dist/lib/ci/support/client-samples.d.ts +18 -0
  404. package/dist/lib/ci/support/client-samples.js +18 -0
  405. package/dist/lib/ci/support/deployment-samples.d.ts +18 -0
  406. package/dist/lib/ci/support/deployment-samples.js +18 -0
  407. package/dist/lib/ci/support/matrix-utils.d.ts +18 -0
  408. package/dist/lib/ci/support/matrix-utils.js +18 -0
  409. package/dist/lib/ci/support/server-samples.d.ts +18 -0
  410. package/dist/lib/ci/support/server-samples.js +18 -0
  411. package/dist/lib/command/converter.d.ts +18 -0
  412. package/dist/lib/command/converter.js +18 -0
  413. package/dist/lib/command/index.d.ts +18 -0
  414. package/dist/lib/command/index.js +18 -0
  415. package/dist/lib/command/lookup-commands-configs.d.ts +18 -0
  416. package/dist/lib/command/lookup-commands-configs.js +18 -0
  417. package/dist/lib/command/mutations.d.ts +18 -0
  418. package/dist/lib/command/mutations.js +18 -0
  419. package/dist/lib/command/types.d.ts +1 -5
  420. package/dist/lib/eslint/base.d.ts +18 -0
  421. package/dist/lib/eslint/base.js +18 -0
  422. package/dist/lib/eslint/index.d.ts +18 -0
  423. package/dist/lib/eslint/index.js +18 -0
  424. package/dist/lib/eslint/recommended.d.ts +18 -0
  425. package/dist/lib/eslint/recommended.js +18 -0
  426. package/dist/lib/index.d.ts +18 -0
  427. package/dist/lib/index.js +18 -0
  428. package/dist/lib/jdl/converters/jdl-to-json/jdl-to-json-relationship-converter.js +2 -2
  429. package/dist/lib/jdl/core/basic-types/index.d.ts +18 -0
  430. package/dist/lib/jdl/core/basic-types/index.js +18 -0
  431. package/dist/lib/jdl/core/basic-types/relationships.d.ts +18 -0
  432. package/dist/lib/jdl/core/basic-types/relationships.js +18 -0
  433. package/dist/lib/jdl/core/built-in-options/index.d.ts +18 -0
  434. package/dist/lib/jdl/core/built-in-options/index.js +18 -0
  435. package/dist/lib/jdl/core/built-in-options/jdl-application-definition.d.ts +18 -0
  436. package/dist/lib/jdl/core/built-in-options/jdl-application-definition.js +18 -0
  437. package/dist/lib/jdl/core/models/jdl-enum-value.d.ts +18 -0
  438. package/dist/lib/jdl/core/models/jdl-enum-value.js +18 -0
  439. package/dist/lib/jdl/core/parsing/validator.js +1 -1
  440. package/dist/lib/jdl/core/runtime.d.ts +18 -0
  441. package/dist/lib/jdl/core/runtime.js +18 -0
  442. package/dist/lib/jdl/index.d.ts +18 -0
  443. package/dist/lib/jdl/index.js +18 -0
  444. package/dist/lib/jhipster/index.d.ts +18 -0
  445. package/dist/lib/jhipster/index.js +18 -0
  446. package/dist/lib/jhipster/openapi-options.d.ts +18 -0
  447. package/dist/lib/jhipster/openapi-options.js +18 -0
  448. package/dist/lib/testing/helpers.d.ts +18 -0
  449. package/dist/lib/testing/helpers.js +21 -2
  450. package/dist/lib/testing/index.d.ts +18 -0
  451. package/dist/lib/testing/index.js +18 -0
  452. package/dist/lib/testing/mutate-data.d.ts +5 -5
  453. package/dist/lib/testing/mutate-data.js +5 -5
  454. package/dist/lib/testing/support/entity-samples.d.ts +18 -0
  455. package/dist/lib/testing/support/entity-samples.js +18 -0
  456. package/dist/lib/testing/support/matcher.d.ts +18 -0
  457. package/dist/lib/testing/support/matcher.js +18 -0
  458. package/dist/lib/utils/basename.d.ts +18 -0
  459. package/dist/lib/utils/basename.js +18 -0
  460. package/dist/lib/utils/derived-property.d.ts +18 -0
  461. package/dist/lib/utils/derived-property.js +18 -0
  462. package/dist/lib/utils/get-generator.d.ts +18 -0
  463. package/dist/lib/utils/get-generator.js +18 -0
  464. package/dist/lib/utils/lookup.js +6 -4
  465. package/dist/lib/utils/yo-rc.d.ts +18 -0
  466. package/dist/lib/utils/yo-rc.js +18 -0
  467. package/dist/package.json +29 -31
  468. package/package.json +29 -31
  469. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translation.module.ts.ejs +0 -80
@@ -17,9 +17,7 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  <%_ const tsKeyId = primaryKey.tsSampleValues[0]; _%>
20
- <%_ if (clientTestFrameworkVitest) { _%>
21
20
  import { beforeEach, describe, expect, it, vitest } from 'vitest';
22
- <%_ } _%>
23
21
  import { ComponentFixture, TestBed } from '@angular/core/testing';
24
22
 
25
23
  import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap/modal';
@@ -48,8 +46,8 @@ describe('<%- entityAngularName %> Management Delete Component', () => {
48
46
  describe('confirmDelete', () => {
49
47
  it('should call delete service on confirmDelete', () => {
50
48
  // GIVEN
51
- <%- clientTestFramework %>.spyOn(service, 'delete').mockReturnValue(of(undefined));
52
- <%- clientTestFramework %>.spyOn(mockActiveModal, 'close');
49
+ vitest.spyOn(service, 'delete').mockReturnValue(of(undefined));
50
+ vitest.spyOn(mockActiveModal, 'close');
53
51
 
54
52
  // WHEN
55
53
  comp.confirmDelete(<%- tsKeyId %>);
@@ -61,9 +59,9 @@ describe('<%- entityAngularName %> Management Delete Component', () => {
61
59
 
62
60
  it('should not call delete service on clear', () => {
63
61
  // GIVEN
64
- <%- clientTestFramework %>.spyOn(service, 'delete');
65
- <%- clientTestFramework %>.spyOn(mockActiveModal, 'close');
66
- <%- clientTestFramework %>.spyOn(mockActiveModal, 'dismiss');
62
+ vitest.spyOn(service, 'delete');
63
+ vitest.spyOn(mockActiveModal, 'close');
64
+ vitest.spyOn(mockActiveModal, 'dismiss');
67
65
 
68
66
  // WHEN
69
67
  comp.cancel();
@@ -23,7 +23,6 @@ import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap/modal';
23
23
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
24
24
  <%_ if (enableTranslation) { _%>
25
25
  import { TranslateDirective } from 'app/shared/language';
26
- import { TranslateModule } from '@ngx-translate/core';
27
26
  <%_ } _%>
28
27
  import { AlertError } from 'app/shared/alert/alert-error';
29
28
  import { I<%- entityAngularName %> } from '../<%- entityFileName %>.model';
@@ -36,7 +35,6 @@ import { ITEM_DELETED_EVENT } from 'app/config/navigation.constants';
36
35
  imports: [
37
36
  <%_ if (enableTranslation) { _%>
38
37
  TranslateDirective,
39
- TranslateModule,
40
38
  <%_ } _%>
41
39
  FormsModule,
42
40
  FontAwesomeModule,
@@ -31,7 +31,7 @@
31
31
  <dl class="row-md jh-entity-details">
32
32
  <%_ for (const field of fields.filter(field => !field.hidden)) { _%>
33
33
  <%_ const { fieldName, fieldType } = field; _%>
34
- <dt><span<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%- i18nKeyPrefix %>.help.<%- fieldName %>' | translate"<% } else { %> ngbTooltip="<%- field.documentation %>"<% } } %>>__jhiTranslateTag__('<%- field.propertyTranslationKey %>')</span></dt>
34
+ <dt><span<% if (field.documentation && enableTranslation) { %> [ngbTooltip]="'<%- i18nKeyPrefix %>.help.<%- fieldName %>' | translate"<% } else if (field.documentation) { %> ngbTooltip="<%- field.documentation %>"<% } %>>__jhiTranslateTag__('<%- field.propertyTranslationKey %>')</span></dt>
35
35
  <dd>
36
36
  <%_ if (field.fieldIsEnum) { _%>
37
37
  <%# TODO: import enum and use its key as label -%>
@@ -17,16 +17,14 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  <%_ const testEntity = tsPrimaryKeySamples[0]; _%>
20
- <%_ if (clientTestFrameworkVitest) { _%>
21
20
  import { afterEach, beforeEach, describe, expect, it, vitest } from 'vitest';
22
- <%_ } _%>
23
21
  import { ComponentFixture, TestBed } from '@angular/core/testing';
24
22
  import { provideRouter, withComponentInputBinding } from '@angular/router';
25
23
  import { RouterTestingHarness } from '@angular/router/testing';
26
24
  import { FaIconLibrary } from '@fortawesome/angular-fontawesome';
27
25
  import { faArrowLeft, faPencilAlt } from '@fortawesome/free-solid-svg-icons';
28
26
  <%_ if (enableTranslation) { _%>
29
- import { TranslateModule } from '@ngx-translate/core';
27
+ import { provideTranslateService } from '@ngx-translate/core';
30
28
  <%_ } _%>
31
29
  import { of } from 'rxjs';
32
30
 
@@ -45,10 +43,10 @@ describe('<%- entityAngularName %> Management Detail Component', () => {
45
43
 
46
44
  beforeEach(() => {
47
45
  TestBed.configureTestingModule({
46
+ providers: [
48
47
  <%_ if (enableTranslation) { _%>
49
- imports: [TranslateModule.forRoot()],
48
+ provideTranslateService(),
50
49
  <%_ } _%>
51
- providers: [
52
50
  provideRouter(
53
51
  [
54
52
  {
@@ -66,7 +64,7 @@ describe('<%- entityAngularName %> Management Detail Component', () => {
66
64
  library.addIcons(faPencilAlt);
67
65
  <%_ if (anyFieldIsBlobDerived) { _%>
68
66
  dataUtils = TestBed.inject(DataUtils);
69
- <%- clientTestFramework %>.spyOn(window, 'open').mockImplementation(() => null);
67
+ vitest.spyOn(window, 'open').mockImplementation(() => null);
70
68
  <%_ } _%>
71
69
  });
72
70
 
@@ -87,7 +85,7 @@ describe('<%- entityAngularName %> Management Detail Component', () => {
87
85
 
88
86
  describe('PreviousState', () => {
89
87
  it('should navigate to previous state', () => {
90
- <%- clientTestFramework %>.spyOn(globalThis.history, 'back');
88
+ vitest.spyOn(globalThis.history, 'back');
91
89
  comp.previousState();
92
90
  expect(globalThis.history.back).toHaveBeenCalled();
93
91
  });
@@ -97,7 +95,7 @@ describe('<%- entityAngularName %> Management Detail Component', () => {
97
95
  describe('byteSize', () => {
98
96
  it('should call byteSize from DataUtils', () => {
99
97
  // GIVEN
100
- <%- clientTestFramework %>.spyOn(dataUtils, 'byteSize');
98
+ vitest.spyOn(dataUtils, 'byteSize');
101
99
  const fakeBase64 = 'fake base64';
102
100
 
103
101
  // WHEN
@@ -111,15 +109,11 @@ describe('<%- entityAngularName %> Management Detail Component', () => {
111
109
  describe('openFile', () => {
112
110
  it('should call openFile from DataUtils', () => {
113
111
  const newWindow = { ...window };
114
- <%_ if (clientTestFrameworkVitest) { _%>
115
112
  vitest.stubGlobal('open', vitest.fn(() => newWindow));
116
- <%_ } else { _%>
117
- window.open = <%- clientTestFramework %>.fn(() => newWindow);
118
- <%_ } _%>
119
- window.onload = <%- clientTestFramework %>.fn(() => newWindow) as any;
120
- window.URL.createObjectURL = <%- clientTestFramework %>.fn() as any;
113
+ window.onload = vitest.fn(() => newWindow) as any;
114
+ window.URL.createObjectURL = vitest.fn() as any;
121
115
  // GIVEN
122
- <%- clientTestFramework %>.spyOn(dataUtils, 'openFile');
116
+ vitest.spyOn(dataUtils, 'openFile');
123
117
  const fakeContentType = 'fake content type';
124
118
  const fakeBase64 = 'fake base64';
125
119
 
@@ -29,7 +29,7 @@ import { NgbTooltip } from '@ng-bootstrap/ng-bootstrap/tooltip';
29
29
  <%_ } _%>
30
30
  <%_ if (enableTranslation) { _%>
31
31
  import { TranslateDirective } from 'app/shared/language';
32
- import { TranslateModule } from '@ngx-translate/core';
32
+ import { TranslatePipe } from '@ngx-translate/core';
33
33
  <%_ } _%>
34
34
  import { DurationPipe, FormatMediumDatetimePipe, FormatMediumDatePipe } from 'app/shared/date';
35
35
  import { I<%- entityAngularName %> } from '../<%- entityFileName %>.model';
@@ -50,7 +50,7 @@ import { DataUtils } from 'app/core/util/data-util.service';
50
50
  AlertError,
51
51
  <%_ if (enableTranslation) { _%>
52
52
  TranslateDirective,
53
- TranslateModule,
53
+ TranslatePipe,
54
54
  <%_ } _%>
55
55
  <%_ if (entityFileName !== 'authority' && updatableEntity) { _%>
56
56
  RouterLink,
@@ -71,9 +71,7 @@ export class <%- entityAngularName %>Detail {
71
71
 
72
72
  <%_ if (anyFieldIsBlobDerived) { _%>
73
73
  protected dataUtils = inject(DataUtils);
74
- <%_ } _%>
75
74
 
76
- <%_ if (anyFieldIsBlobDerived) { _%>
77
75
  byteSize(base64String: string): string {
78
76
  return this.dataUtils.byteSize(base64String);
79
77
  }
@@ -20,9 +20,7 @@
20
20
  const testEntityPrimaryKey = tsPrimaryKeySamples[0];
21
21
  const testEntityPrimaryKey2 = tsPrimaryKeySamples[1];
22
22
  _%>
23
- <%_ if (clientTestFrameworkVitest) { _%>
24
23
  import { MockInstance, afterEach, beforeEach, describe, expect, it, vitest } from 'vitest';
25
- <%_ } _%>
26
24
  import { provideHttpClientTesting, HttpTestingController } from '@angular/common/http/testing';
27
25
  import {
28
26
  ComponentFixture, TestBed,
@@ -35,7 +33,7 @@ import { ActivatedRoute, convertToParamMap } from '@angular/router';
35
33
  import { FaIconLibrary } from '@fortawesome/angular-fontawesome';
36
34
  import { faEye, faPencilAlt, faPlus<%- searchEngineAny ? ', faSearch' : '' %>, faSort, faSortDown, faSortUp, faSync, faTimes } from '@fortawesome/free-solid-svg-icons';
37
35
  <%_ if (enableTranslation) { _%>
38
- import { TranslateModule } from '@ngx-translate/core';
36
+ import { provideTranslateService } from '@ngx-translate/core';
39
37
  <%_ } _%>
40
38
  import {
41
39
  of,
@@ -45,9 +43,7 @@ import {
45
43
  } from 'rxjs';
46
44
  <%_ if (!readOnly) { _%>
47
45
  import { NgbModal } from '@ng-bootstrap/ng-bootstrap/modal';
48
- <%_ } _%>
49
46
 
50
- <%_ if (!readOnly) { _%>
51
47
  import { sampleWithRequiredData } from '../<%- entityFileName %>.test-samples';
52
48
  <%_ } _%>
53
49
  import { <%- entityAngularName %>Service } from '../service/<%- entityFileName %>.service';
@@ -65,10 +61,10 @@ describe('<%- entityAngularName %> Management Component', () => {
65
61
 
66
62
  beforeEach(() => {
67
63
  TestBed.configureTestingModule({
64
+ providers: [
68
65
  <%_ if (enableTranslation) { _%>
69
- imports: [TranslateModule.forRoot()],
66
+ provideTranslateService(),
70
67
  <%_ } _%>
71
- providers: [
72
68
  provideHttpClientTesting(),
73
69
  {
74
70
  provide: ActivatedRoute,
@@ -105,7 +101,7 @@ describe('<%- entityAngularName %> Management Component', () => {
105
101
  fixture = TestBed.createComponent(<%- entityAngularName %>);
106
102
  comp = fixture.componentInstance;
107
103
  service = TestBed.inject(<%- entityAngularName %>Service);
108
- routerNavigateSpy = <%- clientTestFramework %>.spyOn(comp.router, 'navigate');
104
+ routerNavigateSpy = vitest.spyOn(comp.router, 'navigate');
109
105
 
110
106
  const library = TestBed.inject(FaIconLibrary);
111
107
  library.addIcons(faEye, faPencilAlt, faPlus<%- searchEngineAny ? ', faSearch' : '' %>, faSort, faSortDown, faSortUp, faSync, faTimes);
@@ -184,7 +180,7 @@ describe('<%- entityAngularName %> Management Component', () => {
184
180
  describe('track<%- primaryKey.nameCapitalized %>', () => {
185
181
  it('should forward to <%- entityInstance %>Service', () => {
186
182
  const entity = <%- tsPrimaryKeySamples[0] %>;
187
- <%- clientTestFramework %>.spyOn(service, 'get<%- entityAngularName %>Identifier');
183
+ vitest.spyOn(service, 'get<%- entityAngularName %>Identifier');
188
184
  const <%- primaryKey.name %> = comp.track<%- primaryKey.nameCapitalized %>(entity);
189
185
  expect(service.get<%- entityAngularName %>Identifier).toHaveBeenCalledWith(entity);
190
186
  expect(<%- primaryKey.name %>).toBe(entity.<%- primaryKey.name %>);
@@ -230,7 +226,7 @@ describe('<%- entityAngularName %> Management Component', () => {
230
226
  let req = httpMock.expectOne({ method: 'GET' });
231
227
  req.flush([<%- testEntityPrimaryKey %>], { headers: { link: '<http://localhost/api/foo?page=1&size=20>; rel="next"' } });
232
228
  await vitest.runAllTimersAsync();
233
- expect(comp.<%- entityInstancePlural %>().length).toEqual(1);
229
+ expect(comp.<%- entityInstancePlural %>()).toHaveLength(1);
234
230
  expect(comp.<%- entityInstancePlural %>()[0]).toEqual(expect.objectContaining(<%- testEntityPrimaryKey %>));
235
231
 
236
232
  // WHEN
@@ -240,7 +236,7 @@ describe('<%- entityAngularName %> Management Component', () => {
240
236
  req = httpMock.expectOne({ method: 'GET' });
241
237
  req.flush([<%- testEntityPrimaryKey2 %>], { headers: { link: '<http://localhost/api/foo?page=0&size=20>; rel="prev",<http://localhost/api/foo?page=2&size=20>; rel="next"' } });
242
238
  await vitest.runAllTimersAsync();
243
- expect(comp.<%- entityInstancePlural %>().length).toEqual(2);
239
+ expect(comp.<%- entityInstancePlural %>()).toHaveLength(2);
244
240
  expect(comp.<%- entityInstancePlural %>()[1]).toEqual(expect.objectContaining(<%- testEntityPrimaryKey2 %>));
245
241
 
246
242
  comp.loadNextPage();
@@ -249,7 +245,7 @@ describe('<%- entityAngularName %> Management Component', () => {
249
245
  req = httpMock.expectOne({ method: 'GET' });
250
246
  req.flush([<%- testEntityPrimaryKey2 %>], { headers: { link: '<http://localhost/api/foo?page=0&size=20>; rel="prev",<http://localhost/api/foo?page=2&size=20>; rel="next"' } });
251
247
  await vitest.runAllTimersAsync();
252
- expect(comp.<%- entityInstancePlural %>().length).toEqual(2);
248
+ expect(comp.<%- entityInstancePlural %>()).toHaveLength(2);
253
249
  expect(comp.<%- entityInstancePlural %>()[1]).toEqual(expect.objectContaining(<%- testEntityPrimaryKey2 %>));
254
250
  });
255
251
  <%_ } _%>
@@ -275,12 +271,12 @@ describe('<%- entityAngularName %> Management Component', () => {
275
271
  // NgbModal is not a singleton using TestBed.inject.
276
272
  // ngbModal = TestBed.inject(NgbModal);
277
273
  ngbModal = (comp as any).modalService;
278
- <%- clientTestFramework %>.spyOn(ngbModal, 'open').mockReturnValue(deleteModalMock);
274
+ vitest.spyOn(ngbModal, 'open').mockReturnValue(deleteModalMock);
279
275
  });
280
276
 
281
277
  it('on confirm should call load', inject([], () => {
282
278
  // GIVEN
283
- <%- clientTestFramework %>.spyOn(comp, 'load');
279
+ vitest.spyOn(comp, 'load');
284
280
 
285
281
  // WHEN
286
282
  comp.delete(sampleWithRequiredData);
@@ -293,7 +289,7 @@ describe('<%- entityAngularName %> Management Component', () => {
293
289
 
294
290
  it('on dismiss should call load', inject([], () => {
295
291
  // GIVEN
296
- <%- clientTestFramework %>.spyOn(comp, 'load');
292
+ vitest.spyOn(comp, 'load');
297
293
 
298
294
  // WHEN
299
295
  comp.delete(sampleWithRequiredData);
@@ -51,7 +51,7 @@ import { Alert } from 'app/shared/alert/alert';
51
51
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
52
52
  <%_ if (enableTranslation) { _%>
53
53
  import { TranslateDirective } from 'app/shared/language';
54
- import { TranslateModule } from '@ngx-translate/core';
54
+ import { TranslatePipe } from '@ngx-translate/core';
55
55
  <%_ } _%>
56
56
  import { sortStateSignal, SortDirective, SortByDirective, type SortState, SortService } from 'app/shared/sort';
57
57
  import { DurationPipe, FormatMediumDatetimePipe, FormatMediumDatePipe } from 'app/shared/date';
@@ -114,7 +114,7 @@ import { InfiniteScrollDirective } from 'ngx-infinite-scroll';
114
114
  SortByDirective,
115
115
  <%_ if (enableTranslation) { _%>
116
116
  TranslateDirective,
117
- TranslateModule,
117
+ TranslatePipe,
118
118
  <%_ } _%>
119
119
  <%_ if (anyFieldIsDuration) { _%>
120
120
  DurationPipe,
@@ -17,9 +17,7 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  <%_ const tsKeyId = primaryKey.tsSampleValues[0]; _%>
20
- <%_ if (clientTestFrameworkVitest) { _%>
21
20
  import { afterEach, beforeEach, describe, expect, it, vitest } from 'vitest';
22
- <%_ } _%>
23
21
 
24
22
  import { HttpErrorResponse } from '@angular/common/http';
25
23
  import { TestBed } from '@angular/core/testing';
@@ -50,7 +48,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
50
48
  ],
51
49
  });
52
50
  mockRouter = TestBed.inject(Router);
53
- <%- clientTestFramework %>.spyOn(mockRouter, 'navigate');
51
+ vitest.spyOn(mockRouter, 'navigate');
54
52
  mockActivatedRouteSnapshot = TestBed.inject(ActivatedRoute).snapshot;
55
53
  service = TestBed.inject(<%- entityAngularName %>Service);
56
54
  });
@@ -58,7 +56,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
58
56
  describe('resolve', () => {
59
57
  it('should return I<%- entityAngularName %> returned by find', async () => {
60
58
  // GIVEN
61
- service.find = <%- clientTestFramework %>.fn(<%- primaryKey.name %> => of({ <%- primaryKey.name %> }));
59
+ service.find = vitest.fn(<%- primaryKey.name %> => of({ <%- primaryKey.name %> }));
62
60
  mockActivatedRouteSnapshot.params = { <%- primaryKey.name %>: <%- tsKeyId %> };
63
61
 
64
62
  // WHEN
@@ -78,7 +76,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
78
76
 
79
77
  it('should return null if id is not provided', async () => {
80
78
  // GIVEN
81
- service.find = <%- clientTestFramework %>.fn();
79
+ service.find = vitest.fn();
82
80
  mockActivatedRouteSnapshot.params = {};
83
81
 
84
82
  // WHEN
@@ -88,7 +86,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
88
86
  next(result) {
89
87
  // THEN
90
88
  expect(service.find).not.toHaveBeenCalled();
91
- expect(result).toEqual(null);
89
+ expect(result).toBeNull();
92
90
  resolve();
93
91
  },
94
92
  });
@@ -98,7 +96,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
98
96
 
99
97
  it('should route to 404 page if data not found in server', async () => {
100
98
  // GIVEN
101
- <%- clientTestFramework %>.spyOn(service, 'find').mockReturnValue(throwError(() => new HttpErrorResponse({ status: 404, statusText: 'Not Found' })));
99
+ vitest.spyOn(service, 'find').mockReturnValue(throwError(() => new HttpErrorResponse({ status: 404, statusText: 'Not Found' })));
102
100
  mockActivatedRouteSnapshot.params = { <%- primaryKey.name %>: <%- tsKeyId %> };
103
101
 
104
102
  // WHEN
@@ -112,7 +110,7 @@ describe('<%- entityAngularName %> routing resolve service', () => {
112
110
 
113
111
  it('should route to error page if server returns an error other than 404', async () => {
114
112
  // GIVEN
115
- <%- clientTestFramework %>.spyOn(service, 'find').mockReturnValue(throwError(() => new HttpErrorResponse({ status: 500, statusText: 'Internal Server Error' })));
113
+ vitest.spyOn(service, 'find').mockReturnValue(throwError(() => new HttpErrorResponse({ status: 500, statusText: 'Internal Server Error' })));
116
114
  mockActivatedRouteSnapshot.params = { <%- primaryKey.name %>: <%- tsKeyId %> };
117
115
 
118
116
  // WHEN
@@ -20,9 +20,7 @@
20
20
  const requiresRestTypeConversion = !builtInUserManagement && anyFieldIsDateDerived || builtInUserManagement && !userManagement.skipClient;
21
21
  const entityRestName = requiresRestTypeConversion ? `Rest${entityAngularName}` : `I${entityAngularName}`;
22
22
  _%>
23
- <%_ if (clientTestFrameworkVitest) { _%>
24
23
  import { afterEach, beforeEach, describe, expect, it, vitest } from 'vitest';
25
- <%_ } _%>
26
24
  import { TestBed } from '@angular/core/testing';
27
25
  import { provideHttpClientTesting, HttpTestingController } from '@angular/common/http/testing';
28
26
 
@@ -134,7 +132,7 @@ describe('<%- entityAngularName %> Service', () => {
134
132
  service.delete(<%- tsKeyId %>).subscribe();
135
133
 
136
134
  const requests = httpMock.match({ method: 'DELETE' });
137
- expect(requests.length).toBe(1);
135
+ expect(requests).toHaveLength(1);
138
136
  });
139
137
  <%_ } _%>
140
138
 
@@ -19,6 +19,8 @@
19
19
  <%_ const searchType = paginationPagination || paginationInfiniteScroll ? 'SearchWithPagination' : 'Search';
20
20
  const requiresRestTypeConversion = !builtInUserManagement && anyFieldIsDateDerived || builtInUserManagement && !userManagement.skipClient;
21
21
  const entityRestName = requiresRestTypeConversion ? `Rest${entityAngularName}` : `I${entityAngularName}`;
22
+ const bodyArg = requiresRestTypeConversion ? 'copy' : entityInstance;
23
+ const convertResponsePipe = requiresRestTypeConversion ? '.pipe(map(res => this.convertResponseFromServer(res)))' : '';
22
24
  _%>
23
25
  import { computed, inject, Injectable, signal } from '@angular/core';
24
26
  import { HttpClient, HttpResponse, httpResource } from '@angular/common/http';
@@ -128,9 +130,9 @@ export class <%- entityAngularName %>Service extends <%- entityAngularNamePlural
128
130
  <%_ } _%>
129
131
  return this.http.post<<%- entityRestName %>>(
130
132
  this.resourceUrl,
131
- <% if (requiresRestTypeConversion) { %> copy <% } else { %> <%- entityInstance %> <% } %>
133
+ <%- bodyArg %>
132
134
  )
133
- <%- requiresRestTypeConversion ? '.pipe(map(res => this.convertResponseFromServer(res)))' : '' %>;
135
+ <%- convertResponsePipe %>;
134
136
  }
135
137
  <%_ } _%>
136
138
  <%_ if (!readOnly && updatableEntity) { _%>
@@ -140,9 +142,9 @@ export class <%- entityAngularName %>Service extends <%- entityAngularNamePlural
140
142
  const copy = this.convertValueFromClient(<%- entityInstance %>);
141
143
  <%_ } _%>
142
144
  return this.http.put<<%- entityRestName %>>(`${this.resourceUrl}/${encodeURIComponent(this.get<%- entityAngularName %>Identifier(<%- entityInstance %>))}`,
143
- <% if (requiresRestTypeConversion) { %> copy <% } else { %> <%- entityInstance %> <% } %>,
145
+ <%- bodyArg %>,
144
146
  )
145
- <%- requiresRestTypeConversion ? '.pipe(map(res => this.convertResponseFromServer(res)))' : '' %>;
147
+ <%- convertResponsePipe %>;
146
148
  }
147
149
 
148
150
  partialUpdate(<%- entityInstance %>: PartialUpdate<%- entityAngularName %>): Observable<I<%- entityAngularName %>> {
@@ -150,15 +152,15 @@ export class <%- entityAngularName %>Service extends <%- entityAngularNamePlural
150
152
  const copy = this.convertValueFromClient(<%- entityInstance %>);
151
153
  <%_ } _%>
152
154
  return this.http.patch<<%- entityRestName %>>(`${this.resourceUrl}/${encodeURIComponent(this.get<%- entityAngularName %>Identifier(<%- entityInstance %>))}`,
153
- <% if (requiresRestTypeConversion) { %> copy <% } else { %> <%- entityInstance %> <% } %>,
155
+ <%- bodyArg %>,
154
156
  )
155
- <%- requiresRestTypeConversion ? '.pipe(map(res => this.convertResponseFromServer(res)))' : '' %>;
157
+ <%- convertResponsePipe %>;
156
158
  }
157
159
  <%_ } _%>
158
160
 
159
161
  find(<%- primaryKey.name %>: <%- tsKeyType %>): Observable<I<%- entityAngularName %>> {
160
162
  return this.http.get<<%- entityRestName %>>(`${this.resourceUrl}/${encodeURIComponent(<%- primaryKey.name %>)}`)
161
- <%- requiresRestTypeConversion ? '.pipe(map(res => this.convertResponseFromServer(res)))' : '' %>;
163
+ <%- convertResponsePipe %>;
162
164
  }
163
165
 
164
166
  query(req?: any): Observable<HttpResponse<I<%- entityAngularName %>[]>> {
@@ -16,9 +16,7 @@
16
16
  See the License for the specific language governing permissions and
17
17
  limitations under the License.
18
18
  -%>
19
- <%_ if (clientTestFrameworkVitest) { _%>
20
19
  import { afterEach, beforeEach, describe, expect, it, vitest } from 'vitest';
21
- <%_ } _%>
22
20
  import { TestBed } from '@angular/core/testing';
23
21
 
24
22
  import { sampleWithRequiredData, sampleWithNewData } from '../<%- entityFileName %>.test-samples';
@@ -24,12 +24,14 @@
24
24
  <div>
25
25
  <<%- jhiPrefixDashed %>-alert-error />
26
26
  <%_ for (const field of fields.filter(field => !field.hidden)) { _%>
27
- <%_ const { fieldName, fieldNameHumanized, fieldType, fieldTypeBlobContent, readonly } = field; _%>
27
+ <%_ const { fieldName, fieldNameHumanized, fieldType, fieldTypeBlobContent, readonly } = field;
28
+ const readonlyAttr = readonly ? ' [readonly]="true"' : '';
29
+ _%>
28
30
 
29
31
  <% if (field.autoGenerate) { %>@if (editForm.controls.<%- field.fieldName %>.value !== null) {<% } %>
30
32
  <% if (field.fieldTypeBinary && !field.blobContentTypeText || field.fieldValidate) { %>@let <%- fieldName %>Ref = editForm.get('<%- fieldName %>')!;<% } %>
31
33
  <div class="mb-3">
32
- <label class="form-label" for="field_<%- fieldName %>"<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%- i18nKeyPrefix %>.help.<%- fieldName %>' | translate"<% } else { %> ngbTooltip="<%- field.documentation %>"<% } } %>>__jhiTranslateTag__('<%- field.propertyTranslationKey %>')</label>
34
+ <label class="form-label" for="field_<%- fieldName %>"<% if (field.documentation && enableTranslation) { %> [ngbTooltip]="'<%- i18nKeyPrefix %>.help.<%- fieldName %>' | translate"<% } else if (field.documentation) { %> ngbTooltip="<%- field.documentation %>"<% } %>>__jhiTranslateTag__('<%- field.propertyTranslationKey %>')</label>
33
35
  <%_ if (field.fieldIsEnum) { _%>
34
36
  <select class="form-control" name="<%- fieldName %>" formControlName="<%- fieldName %>" id="field_<%- fieldName %>" data-cy="<%- fieldName %>">
35
37
  <%_ const enumPrefix = `${frontendAppName}.${fieldType}`; _%>
@@ -64,27 +66,27 @@
64
66
  </button>
65
67
  </div>
66
68
  }
67
- <input type="file" id="file_<%- fieldName %>" data-cy="<%- fieldName %>" (change)="setFileData($event, '<%- fieldName %>', <% if (fieldTypeBlobContent === 'image') { %>true)" accept="image/*"<% if (enableTranslation) { %> <%- jhiPrefix %>Translate="entity.action.addimage"<% } %><% } else { %>false)"<% if (enableTranslation) { %> <%- jhiPrefix %>Translate="entity.action.addblob"<% } %><% } %>/>
69
+ <input type="file" id="file_<%- fieldName %>" data-cy="<%- fieldName %>" (change)="setFileData($event, '<%- fieldName %>', <% if (fieldTypeBlobContent === 'image') { %>true)" accept="image/*"<% if (enableTranslation) { %> <%- jhiPrefix %>Translate="entity.action.addimage"<% } %><% } else { %>false)"<% if (enableTranslation) { %> <%- jhiPrefix %>Translate="entity.action.addblob"<% } %><% } %> aria-label="<%- fieldNameHumanized %>"/>
68
70
  </div>
69
71
  <%_ } _%>
70
72
  <%_ if (field.fieldTypeLocalDate) { _%>
71
73
  <div class="input-group">
72
- <input id="field_<%- fieldName %>" data-cy="<%- fieldName %>" type="text" class="form-control" name="<%- fieldName %>" ngbDatepicker #<%- fieldName %>Dp="ngbDatepicker" formControlName="<%- fieldName %>"<%- readonly ? ' [readonly]="true"' : '' %>/>
74
+ <input id="field_<%- fieldName %>" data-cy="<%- fieldName %>" type="text" class="form-control" name="<%- fieldName %>" ngbDatepicker #<%- fieldName %>Dp="ngbDatepicker" formControlName="<%- fieldName %>"<%- readonlyAttr %>/>
73
75
  <button type="button" class="btn btn-secondary" (click)="<%- fieldName %>Dp.toggle()"><fa-icon icon="calendar-alt" /></button>
74
76
  </div>
75
77
  <%_ } else if (field.fieldTypeTimed) { _%>
76
78
  <div class="d-flex">
77
- <input id="field_<%- fieldName %>" data-cy="<%- fieldName %>" type="<%- field.htmlInputType %>" class="form-control" name="<%- fieldName %>" formControlName="<%- fieldName %>" placeholder="YYYY-MM-DD HH:mm"<%- readonly ? ' [readonly]="true"' : '' %>/>
79
+ <input id="field_<%- fieldName %>" data-cy="<%- fieldName %>" type="<%- field.htmlInputType %>" class="form-control" name="<%- fieldName %>" formControlName="<%- fieldName %>" placeholder="YYYY-MM-DD HH:mm"<%- readonlyAttr %>/>
78
80
  </div>
79
81
  <%_ } else if (field.blobContentTypeText) { _%>
80
82
  <textarea class="form-control" name="<%- fieldName %>" id="field_<%- fieldName %>" data-cy="<%- fieldName %>"
81
- formControlName="<%- fieldName %>"<%- readonly ? ' [readonly]="true"' : '' %>></textarea>
83
+ formControlName="<%- fieldName %>"<%- readonlyAttr %>></textarea>
82
84
  <%_ } else if (field.fieldTypeBoolean) { _%>
83
85
  <input type="<%- field.htmlInputType %>" class="form-check" name="<%- fieldName %>" id="field_<%- fieldName %>"
84
- data-cy="<%- fieldName %>" formControlName="<%- fieldName %>" <%- readonly ? ' [readonly]="true"' : '' %>/>
86
+ data-cy="<%- fieldName %>" formControlName="<%- fieldName %>" <%- readonlyAttr %>/>
85
87
  <%_ } else if (field.fieldTypeLocalTime) { _%>
86
88
  <input type="time" class="form-control" name="<%- fieldName %>" id="field_<%- fieldName %>" data-cy="<%- fieldName %>"
87
- formControlName="<%- fieldName %>"<%- readonly ? ' [readonly]="true"' : '' %>/>
89
+ formControlName="<%- fieldName %>"<%- readonlyAttr %>/>
88
90
  <%_ } else { _%>
89
91
  <input type="<%- field.htmlInputType %>" class="form-control" name="<%- fieldName %>" id="field_<%- fieldName %>" data-cy="<%- fieldName %>"
90
92
  formControlName="<%- fieldName %>"<% if (field.id && !field.autoGenerate) { %> [readonly]="editForm.get('<%- primaryKey.name %>')!.disabled"<% } else if (readonly) { %> [readonly]="true"<% } %>/>
@@ -98,42 +100,42 @@
98
100
  @if (<%- fieldName %>Ref.invalid && (<%- fieldName %>Ref.dirty || <%- fieldName %>Ref.touched)) {
99
101
  <div>
100
102
  <%_ if (field.fieldValidationRequired) { _%>
101
- @if (editForm.get('<%- fieldName %>')?.errors?.required) {
103
+ @if (<%- fieldName %>Ref.errors?.required) {
102
104
  <small class="form-text text-danger">__jhiTranslateTag__('entity.validation.required')</small>
103
105
  }
104
106
  <%_ } _%>
105
107
  <%_ if (field.fieldValidationMinLength) { _%>
106
- @if (editForm.get('<%- fieldName %>')?.errors?.minlength) {
108
+ @if (<%- fieldName %>Ref.errors?.minlength) {
107
109
  <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.minlength', { "min": <%- field.fieldValidateRulesMinlength %> })</small>
108
110
  }
109
111
  <%_ } _%>
110
112
  <%_ if (field.fieldValidationMaxLength) { _%>
111
- @if (editForm.get('<%- fieldName %>')?.errors?.maxlength) {
113
+ @if (<%- fieldName %>Ref.errors?.maxlength) {
112
114
  <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.maxlength', { "max": <%- field.fieldValidateRulesMaxlength %> })</small>
113
115
  }
114
116
  <%_ } _%>
115
117
  <%_ if (field.fieldValidationMin) { _%>
116
- @if (editForm.get('<%- fieldName %>')?.errors?.min) {
118
+ @if (<%- fieldName %>Ref.errors?.min) {
117
119
  <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.min', { "min": <%- field.fieldValidateRulesMin %> })</small>
118
120
  }
119
121
  <%_ } _%>
120
122
  <%_ if (field.fieldValidationMax) { _%>
121
- @if (editForm.get('<%- fieldName %>')?.errors?.max) {
123
+ @if (<%- fieldName %>Ref.errors?.max) {
122
124
  <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.max', { "max": <%- field.fieldValidateRulesMax %> })</small>
123
125
  }
124
126
  <%_ } _%>
125
127
  <%_ if (field.fieldValidationPattern) { _%>
126
- @if (editForm.get('<%- fieldName %>')?.errors?.pattern) {
128
+ @if (<%- fieldName %>Ref.errors?.pattern) {
127
129
  <small class="form-text text-danger">__jhiTranslateValidationTag__('entity.validation.pattern', { "pattern": "<%- fieldNameHumanized %>" })</small>
128
130
  }
129
131
  <%_ } _%>
130
132
  <%_ if (field.fieldTypeNumeric || field.fieldTypeDuration) { _%>
131
133
  <small class="form-text text-danger"
132
- [hidden]="!editForm.get('<%- fieldName %>')?.errors?.number">__jhiTranslateTag__('entity.validation.number')</small>
134
+ [hidden]="!<%- fieldName %>Ref.errors?.number">__jhiTranslateTag__('entity.validation.number')</small>
133
135
  <%_ } _%>
134
136
  <%_ if (field.fieldTypeTimed) { _%>
135
137
  <small class="form-text text-danger"
136
- [hidden]="!editForm.get('<%- fieldName %>')?.errors?.datetimelocal">__jhiTranslateTag__('entity.validation.datetimelocal')</small>
138
+ [hidden]="!<%- fieldName %>Ref.errors?.datetimelocal">__jhiTranslateTag__('entity.validation.datetimelocal')</small>
137
139
  <%_ } _%>
138
140
  </div>
139
141
  }