generator-jhipster 7.8.1 → 7.9.2

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 (516) hide show
  1. package/README.md +1 -1
  2. package/cli/environment-builder.js +3 -1
  3. package/cli/import-jdl.js +61 -35
  4. package/cli/jdl.js +5 -4
  5. package/cli/jhipster-command.js +1 -1
  6. package/cli/program.js +5 -3
  7. package/generators/app/index.js +11 -0
  8. package/generators/app/prompts.js +60 -12
  9. package/generators/azure-app-service/templates/github/workflows/azure-app-service.yml.ejs +3 -3
  10. package/generators/azure-spring-cloud/templates/github/workflows/azure-spring-cloud.yml.ejs +3 -3
  11. package/generators/bootstrap/index.js +1 -0
  12. package/generators/bootstrap-application/generator.mjs +1 -0
  13. package/generators/ci-cd/templates/.gitlab-ci.yml.ejs +2 -3
  14. package/generators/client/files-angular.js +72 -89
  15. package/generators/client/files-react.js +63 -74
  16. package/generators/client/files-vue.js +8 -54
  17. package/generators/client/index.js +18 -11
  18. package/generators/client/needle-api/needle-client-angular.js +1 -4
  19. package/generators/client/needle-api/needle-client-react.js +2 -2
  20. package/generators/client/prompts.js +1 -0
  21. package/generators/client/templates/angular/.eslintrc.json.ejs +10 -1
  22. package/generators/client/templates/angular/angular.json.ejs +0 -1
  23. package/generators/client/templates/angular/jest.conf.js.ejs +3 -1
  24. package/generators/client/templates/angular/package.json +31 -31
  25. package/generators/client/templates/angular/package.json.ejs +23 -22
  26. package/generators/client/templates/angular/src/main/webapp/app/account/activate/activate.component.html.ejs +4 -4
  27. package/generators/client/templates/angular/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.html.ejs +1 -1
  28. package/generators/client/templates/angular/src/main/webapp/app/account/password/password.component.html.ejs +15 -15
  29. package/generators/client/templates/angular/src/main/webapp/app/account/password/password.component.ts.ejs +17 -11
  30. package/generators/client/templates/angular/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +16 -16
  31. package/generators/client/templates/angular/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +14 -9
  32. package/generators/client/templates/angular/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +9 -9
  33. package/generators/client/templates/angular/src/main/webapp/app/account/register/register.component.html.ejs +27 -27
  34. package/generators/client/templates/angular/src/main/webapp/app/account/register/register.component.ts.ejs +28 -13
  35. package/generators/client/templates/angular/src/main/webapp/app/account/sessions/sessions.component.html.ejs +7 -7
  36. package/generators/client/templates/angular/src/main/webapp/app/account/settings/settings.component.html.ejs +19 -19
  37. package/generators/client/templates/angular/src/main/webapp/app/account/settings/settings.component.spec.ts.ejs +1 -1
  38. package/generators/client/templates/angular/src/main/webapp/app/account/settings/settings.component.ts.ejs +35 -37
  39. package/generators/client/templates/angular/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +4 -4
  40. package/generators/client/templates/angular/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +7 -7
  41. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.component.html.ejs +6 -6
  42. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.module.ts.ejs +0 -1
  43. package/generators/client/templates/angular/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +3 -3
  44. package/generators/client/templates/angular/src/main/webapp/app/admin/logs/logs.component.html.ejs +5 -5
  45. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +1 -1
  46. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.component.html.ejs +5 -5
  47. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +10 -10
  48. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +10 -10
  49. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +9 -9
  50. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +8 -8
  51. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +5 -5
  52. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +4 -4
  53. package/generators/client/templates/angular/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +5 -5
  54. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +4 -4
  55. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +14 -14
  56. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +16 -16
  57. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.ts.ejs +2 -1
  58. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +133 -138
  59. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.spec.ts.ejs +22 -24
  60. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.ts.ejs +40 -49
  61. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/user-management.model.ts.ejs +2 -2
  62. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/user-management.module.ts.ejs +0 -1
  63. package/generators/client/templates/angular/src/main/webapp/app/config/navigation.constants.ts.ejs +23 -0
  64. package/generators/client/templates/angular/src/main/webapp/app/config/pagination.constants.ts.ejs +2 -3
  65. package/generators/client/templates/angular/src/main/webapp/app/core/request/request-util.ts.ejs +1 -1
  66. package/generators/client/templates/angular/src/main/webapp/app/entities/user/user.model.ts.ejs +2 -2
  67. package/generators/client/templates/angular/src/main/webapp/app/entities/user/user.service.ts.ejs +7 -3
  68. package/generators/client/templates/angular/src/main/webapp/app/home/home.component.html.ejs +14 -14
  69. package/generators/client/templates/angular/src/main/webapp/app/layouts/error/error.component.html.ejs +1 -1
  70. package/generators/client/templates/angular/src/main/webapp/app/layouts/footer/footer.component.html.ejs +1 -1
  71. package/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +21 -21
  72. package/generators/client/templates/angular/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
  73. package/generators/client/templates/angular/src/main/webapp/app/login/login.component.html.ejs +9 -9
  74. package/generators/client/templates/angular/src/main/webapp/app/login/login.component.ts.ejs +16 -27
  75. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.component.html.ejs +10 -0
  76. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.component.ts.ejs +23 -0
  77. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.model.spec.ts.ejs +40 -0
  78. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.model.ts.ejs +95 -0
  79. package/generators/client/templates/angular/src/main/webapp/app/shared/pagination/item-count.component.ts.ejs +1 -1
  80. package/generators/client/templates/angular/src/main/webapp/app/shared/shared.module.ts.ejs +3 -0
  81. package/generators/client/templates/angular/src/main/webapp/app/shared/sort/sort.service.ts.ejs +31 -0
  82. package/generators/client/templates/angular/src/main/webapp/declarations.d.ts.ejs +3 -8
  83. package/generators/client/templates/angular/tsconfig.json.ejs +6 -0
  84. package/generators/client/templates/angular/tsconfig.spec.json.ejs +1 -1
  85. package/generators/client/templates/angular/webpack/webpack.custom.js.ejs +6 -2
  86. package/generators/client/templates/angular/webpack/webpack.microfrontend.js.ejs +1 -1
  87. package/generators/client/templates/common/package.json +6 -6
  88. package/generators/client/templates/common/src/main/webapp/swagger-ui/index.html.ejs +2 -0
  89. package/generators/client/templates/react/.eslintrc.json.ejs +10 -1
  90. package/generators/client/templates/react/jest.conf.js.ejs +3 -1
  91. package/generators/client/templates/react/package.json +57 -57
  92. package/generators/client/templates/react/package.json.ejs +3 -3
  93. package/generators/client/templates/react/src/main/webapp/app/app.tsx.ejs +3 -3
  94. package/generators/client/templates/react/src/main/webapp/app/entities/menu.tsx.ejs +1 -1
  95. package/generators/client/templates/react/src/main/webapp/app/entities/routes.tsx.ejs +7 -5
  96. package/generators/client/templates/react/src/main/webapp/app/index.tsx.ejs +4 -5
  97. package/generators/client/templates/react/src/main/webapp/app/modules/account/activate/activate.tsx.ejs +8 -4
  98. package/generators/client/templates/react/src/main/webapp/app/modules/account/index.tsx.ejs +9 -6
  99. package/generators/client/templates/react/src/main/webapp/app/modules/account/password/password.tsx.ejs +1 -0
  100. package/generators/client/templates/react/src/main/webapp/app/modules/account/password-reset/finish/password-reset-finish.tsx.ejs +8 -5
  101. package/generators/client/templates/react/src/main/webapp/app/modules/administration/administration.reducer.ts.ejs +6 -7
  102. package/generators/client/templates/react/src/main/webapp/app/modules/administration/health/health-modal.tsx.ejs +3 -2
  103. package/generators/client/templates/react/src/main/webapp/app/modules/administration/health/health.tsx.ejs +4 -4
  104. package/generators/client/templates/react/src/main/webapp/app/modules/administration/index.tsx.ejs +14 -11
  105. package/generators/client/templates/react/src/main/webapp/app/modules/administration/metrics/metrics.tsx.ejs +8 -2
  106. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/index.tsx.ejs +13 -13
  107. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-delete-dialog.tsx.ejs +7 -4
  108. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-detail.tsx.ejs +5 -3
  109. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-update.tsx.ejs +10 -6
  110. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management.tsx.ejs +18 -26
  111. package/generators/client/templates/react/src/main/webapp/app/modules/login/login-redirect.tsx.ejs +6 -3
  112. package/generators/client/templates/react/src/main/webapp/app/modules/login/login.tsx.ejs +6 -5
  113. package/generators/client/templates/react/src/main/webapp/app/routes.tsx.ejs +53 -25
  114. package/generators/client/templates/react/src/main/webapp/app/shared/auth/private-route.spec.tsx.ejs +30 -27
  115. package/generators/client/templates/react/src/main/webapp/app/shared/auth/private-route.tsx.ejs +35 -34
  116. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-routes.spec.tsx.ejs +55 -0
  117. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-routes.tsx.ejs +21 -0
  118. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary.spec.tsx.ejs +1 -1
  119. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary.tsx.ejs +1 -1
  120. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-loading.tsx.ejs +8 -10
  121. package/generators/client/templates/react/src/main/webapp/app/shared/error/page-not-found.tsx.ejs +9 -13
  122. package/generators/client/templates/react/src/main/webapp/app/shared/layout/header/header.spec.tsx.ejs +3 -5
  123. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/account.spec.tsx.ejs +5 -8
  124. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/entities.tsx.ejs +1 -1
  125. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/menu-item.tsx.ejs +12 -11
  126. package/generators/client/templates/react/src/main/webapp/app/typings.d.ts.ejs +2 -2
  127. package/generators/client/templates/react/tsconfig.json.ejs +2 -4
  128. package/generators/client/templates/react/tsconfig.test.json.ejs +1 -0
  129. package/generators/client/templates/react/webpack/webpack.common.js.ejs +7 -3
  130. package/generators/client/templates/react/webpack/webpack.microfrontend.js.jhi.react.ejs +4 -4
  131. package/generators/client/templates/vue/.eslintrc.js.ejs +10 -1
  132. package/generators/client/templates/vue/package.json +40 -39
  133. package/generators/client/templates/vue/package.json.ejs +3 -3
  134. package/generators/client/templates/vue/src/main/webapp/app/account/login-form/login-form.component.ts.ejs +2 -2
  135. package/generators/client/templates/vue/src/main/webapp/app/admin/metrics/metrics.vue.ejs +1 -1
  136. package/generators/client/templates/vue/src/main/webapp/app/admin/user-management/user-management-edit.component.ts.ejs +2 -2
  137. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +5 -3
  138. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.vue.ejs +2 -2
  139. package/generators/client/templates/vue/src/main/webapp/app/shared/alert/alert.service.ts.ejs +1 -1
  140. package/generators/client/templates/vue/src/main/webapp/app/shared/date/filters.ts.ejs +0 -6
  141. package/generators/client/templates/vue/src/test/javascript/jest.conf.js.ejs +5 -0
  142. package/generators/client/templates/vue/src/test/javascript/spec/app/account/register/register.component.spec.ts.ejs +1 -1
  143. package/generators/client/templates/vue/tsconfig.json.ejs +1 -1
  144. package/generators/client/templates/vue/tsconfig.spec.json.ejs +2 -2
  145. package/generators/client/templates/vue/webpack/webpack.dev.js.ejs +4 -0
  146. package/generators/client/templates/vue/webpack/webpack.prod.js.ejs +8 -1
  147. package/generators/client/transform-angular.cjs +117 -0
  148. package/generators/client/transform-react.cjs +126 -0
  149. package/generators/client/transform-vue.cjs +42 -0
  150. package/generators/common/files.js +2 -9
  151. package/generators/common/templates/README.md.jhi.ejs +21 -5
  152. package/generators/common/templates/package.json +3 -3
  153. package/generators/cypress/files.js +34 -22
  154. package/generators/cypress/index.js +42 -19
  155. package/generators/cypress/templates/cypress-audits.config.ts.ejs +28 -0
  156. package/generators/cypress/templates/cypress.config.ts.ejs +57 -0
  157. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/login-page.spec.ts.ejs → e2e/account/login-page.cy.ts.ejs} +0 -0
  158. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/password-page.spec.ts.ejs → e2e/account/password-page.cy.ts.ejs} +0 -0
  159. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/register-page.spec.ts.ejs → e2e/account/register-page.cy.ts.ejs} +0 -0
  160. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/reset-password-page.spec.ts.ejs → e2e/account/reset-password-page.cy.ts.ejs} +0 -0
  161. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/settings-page.spec.ts.ejs → e2e/account/settings-page.cy.ts.ejs} +0 -0
  162. package/generators/cypress/templates/src/test/javascript/cypress/{integration/administration/administration.spec.ts.ejs → e2e/administration/administration.cy.ts.ejs} +1 -1
  163. package/generators/cypress/templates/src/test/javascript/cypress/{integration → e2e}/lighthouse.audits.ts.ejs +0 -0
  164. package/generators/cypress/templates/src/test/javascript/cypress/plugins/global.d.ts.ejs +25 -0
  165. package/generators/cypress/templates/src/test/javascript/cypress/plugins/index.ts.ejs +13 -14
  166. package/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs +4 -4
  167. package/generators/cypress/templates/src/test/javascript/cypress/support/navbar.ts.ejs +1 -1
  168. package/generators/cypress/templates/src/test/javascript/cypress/support/oauth2.ts.ejs +8 -8
  169. package/generators/cypress/templates/src/test/javascript/cypress/tsconfig.json.ejs +8 -5
  170. package/generators/database-changelog-liquibase/files.js +1 -1
  171. package/generators/database-changelog-liquibase/index.js +3 -0
  172. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
  173. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity_constraints.xml.ejs +1 -1
  174. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +1 -1
  175. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +2 -2
  176. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_migrate.xml.ejs +1 -1
  177. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +2 -2
  178. package/generators/docker-base.js +6 -3
  179. package/generators/docker-compose/files.js +5 -2
  180. package/generators/docker-compose/index.js +13 -24
  181. package/generators/docker-compose/templates/README-DOCKER-COMPOSE.md.ejs +1 -1
  182. package/generators/docker-compose/templates/docker-compose.yml.ejs +10 -8
  183. package/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +62 -4
  184. package/generators/docker-prompts.js +1 -2
  185. package/generators/docker-utils.js +0 -1
  186. package/generators/entity/index.js +5 -15
  187. package/generators/entity/prompts.js +1 -52
  188. package/generators/entity-client/files-angular.cjs +169 -0
  189. package/generators/entity-client/files-cypress.cjs +52 -0
  190. package/generators/entity-client/files-react.cjs +113 -0
  191. package/generators/entity-client/files-vue.cjs +140 -0
  192. package/generators/entity-client/files.js +10 -381
  193. package/generators/entity-client/index.js +120 -19
  194. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/delete/entity-management-delete-dialog.component.html.ejs +4 -5
  195. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/delete/entity-management-delete-dialog.component.ts.ejs +2 -1
  196. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/detail/entity-management-detail.component.html.ejs +12 -11
  197. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity-management.module.ts.ejs +0 -5
  198. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity.model.ts.ejs +18 -25
  199. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity.test-samples.ts.ejs +45 -0
  200. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.html.ejs +45 -37
  201. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.spec.ts.ejs +47 -28
  202. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.ts.ejs +292 -94
  203. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/infinite-scroll-template.ejs +5 -106
  204. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/pagination-template.ejs +2 -82
  205. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing-resolve.service.spec.ts.ejs +5 -5
  206. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing-resolve.service.ts.ejs +5 -5
  207. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing.module.ts.ejs +2 -3
  208. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/service/entity.service.spec.ts.ejs +89 -175
  209. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/service/entity.service.ts.ejs +69 -44
  210. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-form.service.spec.ts.ejs +111 -0
  211. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-form.service.ts.ejs +263 -0
  212. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.html.ejs +99 -120
  213. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.spec.ts.ejs +47 -71
  214. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.ts.ejs +79 -195
  215. package/generators/entity-client/templates/{common/src/test/javascript/cypress/integration/entity/entity.spec.ts.ejs → cypress/src/test/javascript/cypress/e2e/entity/entity.cy.ts.ejs} +26 -17
  216. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-delete-dialog.tsx.ejs +10 -5
  217. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-detail.tsx.ejs +5 -3
  218. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-update.tsx.ejs +11 -6
  219. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity.tsx.ejs +11 -10
  220. package/generators/entity-client/templates/react/src/main/webapp/app/entities/index.tsx.ejs +13 -13
  221. package/generators/entity-client/templates/react/src/main/webapp/app/entities/react_validators.ejs +25 -32
  222. package/generators/entity-client/templates/vue/src/main/webapp/app/entities/entity-update.component.ts.ejs +2 -2
  223. package/generators/entity-server/cleanup.js +41 -0
  224. package/generators/entity-server/files.js +118 -53
  225. package/generators/entity-server/index.js +14 -27
  226. package/generators/entity-server/templates/partials/save_template.ejs +1 -1
  227. package/generators/entity-server/templates/partials/update_template.ejs +1 -1
  228. package/generators/entity-server/templates/src/main/java/package/common/get_all_template.ejs +11 -5
  229. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.elastic_search.ejs +17 -0
  230. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.spring_data_cassandra.ejs +3 -1
  231. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository.java.ejs +6 -1
  232. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryInternalImpl_reactive.java.ejs +1 -1
  233. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationships.java.ejs +2 -2
  234. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationshipsImpl.java.ejs +13 -6
  235. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository_reactive.java.ejs +1 -1
  236. package/generators/entity-server/templates/src/main/java/package/repository/search/EntitySearchRepository.java.ejs +46 -9
  237. package/generators/entity-server/templates/src/main/java/package/service/EntityQueryService.java.ejs +3 -3
  238. package/generators/entity-server/templates/src/main/java/package/service/impl/EntityServiceImpl.java.ejs +2 -2
  239. package/generators/entity-server/templates/src/main/java/package/web/rest/EntityResource.java.ejs +2 -5
  240. package/generators/entity-server/templates/src/test/java/package/web/rest/EntityResourceIT.java.ejs +140 -132
  241. package/generators/gae/index.js +1 -1
  242. package/generators/generate-blueprint/constants.mjs +22 -2
  243. package/generators/generate-blueprint/generator.mjs +25 -6
  244. package/generators/generate-blueprint/templates/.github/workflows/generator.yml.ejs +5 -3
  245. package/generators/generate-blueprint/templates/cli/commands.cjs.ejs +2 -1
  246. package/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +6 -5
  247. package/generators/generate-blueprint/templates/generators/generator/generator.spec.mjs.ejs +10 -1
  248. package/generators/generator-base-blueprint.js +19 -20
  249. package/generators/generator-base-private.js +116 -64
  250. package/generators/generator-base.js +241 -91
  251. package/generators/generator-constants.js +118 -66
  252. package/generators/generator-defaults.js +1 -0
  253. package/generators/heroku/index.js +5 -4
  254. package/generators/heroku/templates/application-heroku.yml.ejs +1 -2
  255. package/generators/heroku/templates/heroku.gradle.ejs +28 -1
  256. package/generators/heroku/templates/pom-profile.xml.ejs +29 -0
  257. package/generators/java/index.cjs +2 -2
  258. package/generators/kubernetes/templates/db/couchbase.yml.ejs +1 -2
  259. package/generators/kubernetes/templates/db/mongodb.yml.ejs +1 -2
  260. package/generators/kubernetes/templates/ingress.yml.ejs +11 -4
  261. package/generators/kubernetes/templates/monitoring/jhipster-grafana.yml.ejs +6 -2
  262. package/generators/kubernetes/templates/registry/consul.yml.ejs +1 -2
  263. package/generators/kubernetes/templates/registry/jhipster-registry.yml.ejs +1 -2
  264. package/generators/languages/templates/src/main/webapp/i18n/al/global.json.ejs +7 -1
  265. package/generators/languages/templates/src/main/webapp/i18n/ar-ly/global.json.ejs +7 -1
  266. package/generators/languages/templates/src/main/webapp/i18n/bg/global.json.ejs +7 -1
  267. package/generators/languages/templates/src/main/webapp/i18n/bn/global.json.ejs +7 -1
  268. package/generators/languages/templates/src/main/webapp/i18n/by/global.json.ejs +7 -1
  269. package/generators/languages/templates/src/main/webapp/i18n/ca/global.json.ejs +7 -1
  270. package/generators/languages/templates/src/main/webapp/i18n/cs/global.json.ejs +7 -1
  271. package/generators/languages/templates/src/main/webapp/i18n/da/global.json.ejs +7 -1
  272. package/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +7 -1
  273. package/generators/languages/templates/src/main/webapp/i18n/el/global.json.ejs +7 -1
  274. package/generators/languages/templates/src/main/webapp/i18n/en/global.json.ejs +7 -1
  275. package/generators/languages/templates/src/main/webapp/i18n/en/health.json.ejs +3 -0
  276. package/generators/languages/templates/src/main/webapp/i18n/es/global.json.ejs +7 -1
  277. package/generators/languages/templates/src/main/webapp/i18n/et/global.json.ejs +7 -1
  278. package/generators/languages/templates/src/main/webapp/i18n/fa/global.json.ejs +7 -1
  279. package/generators/languages/templates/src/main/webapp/i18n/fi/global.json.ejs +7 -1
  280. package/generators/languages/templates/src/main/webapp/i18n/fr/global.json.ejs +7 -1
  281. package/generators/languages/templates/src/main/webapp/i18n/gl/global.json.ejs +7 -1
  282. package/generators/languages/templates/src/main/webapp/i18n/hi/global.json.ejs +7 -1
  283. package/generators/languages/templates/src/main/webapp/i18n/hr/global.json.ejs +7 -1
  284. package/generators/languages/templates/src/main/webapp/i18n/hu/global.json.ejs +7 -1
  285. package/generators/languages/templates/src/main/webapp/i18n/hy/global.json.ejs +7 -1
  286. package/generators/languages/templates/src/main/webapp/i18n/in/global.json.ejs +7 -1
  287. package/generators/languages/templates/src/main/webapp/i18n/it/global.json.ejs +7 -1
  288. package/generators/languages/templates/src/main/webapp/i18n/ja/global.json.ejs +7 -1
  289. package/generators/languages/templates/src/main/webapp/i18n/ko/global.json.ejs +7 -1
  290. package/generators/languages/templates/src/main/webapp/i18n/mr/global.json.ejs +7 -1
  291. package/generators/languages/templates/src/main/webapp/i18n/my/global.json.ejs +7 -1
  292. package/generators/languages/templates/src/main/webapp/i18n/nl/global.json.ejs +7 -1
  293. package/generators/languages/templates/src/main/webapp/i18n/pa/global.json.ejs +7 -1
  294. package/generators/languages/templates/src/main/webapp/i18n/pl/global.json.ejs +7 -1
  295. package/generators/languages/templates/src/main/webapp/i18n/pt-br/global.json.ejs +7 -1
  296. package/generators/languages/templates/src/main/webapp/i18n/pt-pt/global.json.ejs +7 -1
  297. package/generators/languages/templates/src/main/webapp/i18n/ro/global.json.ejs +7 -1
  298. package/generators/languages/templates/src/main/webapp/i18n/ru/global.json.ejs +7 -1
  299. package/generators/languages/templates/src/main/webapp/i18n/si/global.json.ejs +7 -1
  300. package/generators/languages/templates/src/main/webapp/i18n/sk/global.json.ejs +7 -1
  301. package/generators/languages/templates/src/main/webapp/i18n/sr/global.json.ejs +7 -1
  302. package/generators/languages/templates/src/main/webapp/i18n/sv/global.json.ejs +7 -1
  303. package/generators/languages/templates/src/main/webapp/i18n/ta/global.json.ejs +7 -1
  304. package/generators/languages/templates/src/main/webapp/i18n/te/global.json.ejs +7 -1
  305. package/generators/languages/templates/src/main/webapp/i18n/th/global.json.ejs +7 -1
  306. package/generators/languages/templates/src/main/webapp/i18n/tr/global.json.ejs +7 -1
  307. package/generators/languages/templates/src/main/webapp/i18n/ua/global.json.ejs +7 -1
  308. package/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +7 -1
  309. package/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/global.json.ejs +7 -1
  310. package/generators/languages/templates/src/main/webapp/i18n/vi/global.json.ejs +7 -1
  311. package/generators/languages/templates/src/main/webapp/i18n/zh-cn/global.json.ejs +7 -1
  312. package/generators/languages/templates/src/main/webapp/i18n/zh-tw/global.json.ejs +7 -1
  313. package/generators/languages/templates/src/test/resources/i18n/messages_al.properties.ejs +4 -1
  314. package/generators/languages/templates/src/test/resources/i18n/messages_ar_LY.properties.ejs +4 -1
  315. package/generators/languages/templates/src/test/resources/i18n/messages_bg.properties.ejs +1 -1
  316. package/generators/languages/templates/src/test/resources/i18n/messages_bn.properties.ejs +4 -1
  317. package/generators/languages/templates/src/test/resources/i18n/messages_by.properties.ejs +4 -1
  318. package/generators/languages/templates/src/test/resources/i18n/messages_ca.properties.ejs +4 -1
  319. package/generators/languages/templates/src/test/resources/i18n/messages_cs.properties.ejs +4 -1
  320. package/generators/languages/templates/src/test/resources/i18n/messages_da.properties.ejs +4 -1
  321. package/generators/languages/templates/src/test/resources/i18n/messages_de.properties.ejs +4 -1
  322. package/generators/languages/templates/src/test/resources/i18n/messages_el.properties.ejs +4 -1
  323. package/generators/languages/templates/src/test/resources/i18n/messages_es.properties.ejs +4 -1
  324. package/generators/languages/templates/src/test/resources/i18n/messages_et.properties.ejs +4 -1
  325. package/generators/languages/templates/src/test/resources/i18n/messages_fa.properties.ejs +4 -1
  326. package/generators/languages/templates/src/test/resources/i18n/messages_fi.properties.ejs +1 -1
  327. package/generators/languages/templates/src/test/resources/i18n/messages_gl.properties.ejs +4 -1
  328. package/generators/languages/templates/src/test/resources/i18n/messages_hi.properties.ejs +4 -1
  329. package/generators/languages/templates/src/test/resources/i18n/messages_hr.properties.ejs +1 -1
  330. package/generators/languages/templates/src/test/resources/i18n/messages_hu.properties.ejs +4 -1
  331. package/generators/languages/templates/src/test/resources/i18n/messages_hy.properties.ejs +4 -1
  332. package/generators/languages/templates/src/test/resources/i18n/messages_in.properties.ejs +4 -1
  333. package/generators/languages/templates/src/test/resources/i18n/messages_it.properties.ejs +4 -1
  334. package/generators/languages/templates/src/test/resources/i18n/messages_ja.properties.ejs +4 -1
  335. package/generators/languages/templates/src/test/resources/i18n/messages_ko.properties.ejs +4 -1
  336. package/generators/languages/templates/src/test/resources/i18n/messages_mr.properties.ejs +4 -1
  337. package/generators/languages/templates/src/test/resources/i18n/messages_my.properties.ejs +4 -1
  338. package/generators/languages/templates/src/test/resources/i18n/messages_nl.properties.ejs +4 -1
  339. package/generators/languages/templates/src/test/resources/i18n/messages_pa.properties.ejs +1 -1
  340. package/generators/languages/templates/src/test/resources/i18n/messages_pl.properties.ejs +4 -1
  341. package/generators/languages/templates/src/test/resources/i18n/messages_pt_BR.properties.ejs +1 -1
  342. package/generators/languages/templates/src/test/resources/i18n/messages_pt_PT.properties.ejs +4 -1
  343. package/generators/languages/templates/src/test/resources/i18n/messages_ro.properties.ejs +4 -1
  344. package/generators/languages/templates/src/test/resources/i18n/messages_ru.properties.ejs +4 -1
  345. package/generators/languages/templates/src/test/resources/i18n/messages_si.properties.ejs +4 -1
  346. package/generators/languages/templates/src/test/resources/i18n/messages_sk.properties.ejs +4 -1
  347. package/generators/languages/templates/src/test/resources/i18n/messages_sr.properties.ejs +4 -1
  348. package/generators/languages/templates/src/test/resources/i18n/messages_sv.properties.ejs +4 -1
  349. package/generators/languages/templates/src/test/resources/i18n/messages_ta.properties.ejs +4 -1
  350. package/generators/languages/templates/src/test/resources/i18n/messages_te.properties.ejs +4 -1
  351. package/generators/languages/templates/src/test/resources/i18n/messages_th.properties.ejs +4 -1
  352. package/generators/languages/templates/src/test/resources/i18n/messages_tr.properties.ejs +4 -1
  353. package/generators/languages/templates/src/test/resources/i18n/messages_ua.properties.ejs +4 -1
  354. package/generators/languages/templates/src/test/resources/i18n/messages_uz_Cyrl_UZ.properties.ejs +4 -1
  355. package/generators/languages/templates/src/test/resources/i18n/messages_uz_Latn_UZ.properties.ejs +4 -1
  356. package/generators/languages/templates/src/test/resources/i18n/messages_vi.properties.ejs +4 -1
  357. package/generators/languages/templates/src/test/resources/i18n/messages_zh_CN.properties.ejs +4 -1
  358. package/generators/languages/templates/src/test/resources/i18n/messages_zh_TW.properties.ejs +4 -1
  359. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  360. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +3 -3
  361. package/generators/maven/templates/pom.xml.jhi.ejs +2 -2
  362. package/generators/openapi-client/files.js +2 -8
  363. package/generators/openapi-client/index.js +2 -0
  364. package/generators/openshift/templates/registry/consul.yml.ejs +1 -2
  365. package/generators/openshift/templates/registry/jhipster-registry.yml.ejs +1 -2
  366. package/generators/project-name/index.cjs +8 -5
  367. package/generators/server/cleanup-angular.js +37 -0
  368. package/generators/server/cleanup-cache-provider.js +46 -0
  369. package/generators/server/cleanup-cassandra.js +49 -0
  370. package/generators/server/cleanup-cucumber.js +40 -0
  371. package/generators/server/cleanup-elasticsearch.js +48 -0
  372. package/generators/server/cleanup-gradle.js +40 -0
  373. package/generators/server/cleanup-kafka.js +41 -0
  374. package/generators/server/cleanup-maven.js +37 -0
  375. package/generators/server/cleanup-mongodb.js +40 -0
  376. package/generators/server/cleanup-oauth2.js +43 -0
  377. package/generators/server/cleanup-reactive.js +38 -0
  378. package/generators/server/cleanup-sql.js +48 -0
  379. package/generators/server/cleanup.js +85 -51
  380. package/generators/server/esm.mjs +1 -0
  381. package/generators/server/files-couchbase.js +11 -10
  382. package/generators/server/files-sql.js +197 -4
  383. package/generators/server/files.js +180 -273
  384. package/generators/server/index.js +32 -86
  385. package/generators/server/needles.cjs +79 -0
  386. package/generators/server/templates/.mvn/jvm.config +1 -1
  387. package/generators/server/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  388. package/generators/server/templates/.mvn/wrapper/maven-wrapper.properties +3 -3
  389. package/generators/server/templates/.npmrc.ejs +1 -0
  390. package/generators/server/templates/build.gradle.ejs +121 -226
  391. package/generators/server/templates/couchbase/src/test/java/package/config/CouchbaseTestContainer.java.ejs +67 -0
  392. package/generators/server/templates/couchbase/src/test/java/package/config/EmbeddedCouchbase.java.ejs +30 -0
  393. package/generators/server/templates/gradle/docker.gradle.ejs +6 -0
  394. package/generators/server/templates/gradle/profile_dev.gradle.ejs +95 -3
  395. package/generators/server/templates/gradle/profile_prod.gradle.ejs +80 -4
  396. package/generators/server/templates/gradle.properties.ejs +17 -13
  397. package/generators/server/templates/pom.xml.ejs +274 -225
  398. package/generators/server/templates/settings.gradle.ejs +2 -1
  399. package/generators/server/templates/sql/common/src/main/docker/config/mariadb/my.cnf +49 -0
  400. package/generators/server/templates/sql/common/src/main/docker/config/mysql/my.cnf +82 -0
  401. package/generators/server/templates/{src → sql/common/src}/main/docker/mariadb.yml.ejs +2 -0
  402. package/generators/server/templates/{src → sql/common/src}/main/docker/mssql.yml.ejs +0 -0
  403. package/generators/server/templates/{src → sql/common/src}/main/docker/mysql.yml.ejs +2 -2
  404. package/generators/server/templates/{src → sql/common/src}/main/docker/postgresql.yml.ejs +0 -0
  405. package/generators/server/templates/{src → sql/common/src}/main/java/package/config/LiquibaseConfiguration.java.ejs +0 -0
  406. package/generators/server/templates/{src → sql/common/src}/main/resources/h2.server.properties.ejs +0 -0
  407. package/generators/server/templates/sql/common/src/test/java/package/config/EmbeddedSQL.java.ejs +30 -0
  408. package/generators/server/templates/sql/common/src/test/java/package/config/MariadbTestContainer.java.ejs +60 -0
  409. package/generators/server/templates/sql/common/src/test/java/package/config/MsSqlTestContainer.java.ejs +59 -0
  410. package/generators/server/templates/sql/common/src/test/java/package/config/MysqlTestContainer.java.ejs +69 -0
  411. package/generators/server/templates/sql/common/src/test/java/package/config/PostgreSqlTestContainer.java.ejs +59 -0
  412. package/generators/server/templates/sql/common/src/test/java/package/config/SqlTestContainer.java.ejs +28 -0
  413. package/generators/server/templates/{src → sql/common/src}/test/java/package/config/timezone/HibernateTimeZoneIT.java.ejs +0 -0
  414. package/generators/server/templates/{src → sql/common/src}/test/java/package/repository/timezone/DateTimeWrapper.java.ejs +0 -0
  415. package/generators/server/templates/{src → sql/common/src}/test/java/package/repository/timezone/DateTimeWrapperRepository.java.ejs +0 -0
  416. package/generators/server/templates/sql/common/src/test/resources/config/application-testdev.yml.ejs +93 -0
  417. package/generators/server/templates/{src/test/resources/config/application-testcontainers.yml.ejs → sql/common/src/test/resources/config/application-testprod.yml.ejs} +17 -33
  418. package/generators/server/templates/sql/common/src/test/resources/testcontainers/mariadb/my.cnf +49 -0
  419. package/generators/server/templates/sql/common/src/test/resources/testcontainers/mysql/my.cnf +83 -0
  420. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/EntityManager.java.ejs +0 -0
  421. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/rowmapper/ColumnConverter.java.ejs +0 -0
  422. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/rowmapper/UserRowMapper.java.ejs +0 -0
  423. package/generators/server/templates/src/main/docker/app.yml.ejs +16 -14
  424. package/generators/server/templates/src/main/docker/cassandra-migration.yml.ejs +1 -0
  425. package/generators/server/templates/src/main/docker/config/realm-config/jhipster-realm.json.ejs +62 -6
  426. package/generators/server/templates/src/main/docker/jhipster-control-center.yml.ejs +1 -1
  427. package/generators/server/templates/src/main/docker/jhipster-registry.yml.ejs +1 -1
  428. package/generators/server/templates/src/main/docker/jib/entrypoint.sh.ejs +36 -1
  429. package/generators/server/templates/src/main/docker/keycloak.yml.ejs +8 -6
  430. package/generators/server/templates/src/main/java/package/config/ApplicationProperties.java.ejs +3 -0
  431. package/generators/server/templates/src/main/java/package/config/AsyncConfiguration.java.ejs +2 -6
  432. package/generators/server/templates/src/main/java/package/config/DatabaseConfiguration_couchbase.java.ejs +1 -1
  433. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration.java.ejs +16 -30
  434. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration_reactive.java.ejs +108 -15
  435. package/generators/server/templates/src/main/java/package/config/WebConfigurer.java.ejs +6 -0
  436. package/generators/server/templates/src/main/java/package/security/DomainUserDetailsService.java.ejs +6 -3
  437. package/generators/server/templates/src/main/java/package/security/oauth2/CustomClaimConverter.java.ejs +10 -3
  438. package/generators/server/templates/src/main/java/package/service/UserService.java.ejs +12 -2
  439. package/generators/server/templates/src/main/java/package/web/rest/LogoutResource.java.ejs +1 -5
  440. package/generators/server/templates/src/main/java/package/web/rest/LogoutResource_reactive.java.ejs +1 -5
  441. package/generators/server/templates/src/main/java/package/web/rest/UserResource.java.ejs +3 -4
  442. package/generators/server/templates/src/main/resources/config/application-dev.yml.ejs +4 -3
  443. package/generators/server/templates/src/main/resources/config/application-prod.yml.ejs +1 -1
  444. package/generators/server/templates/src/main/resources/config/application.yml.ejs +1 -1
  445. package/generators/server/templates/src/main/resources/config/liquibase/changelog/initial_schema.xml.ejs +1 -1
  446. package/generators/server/templates/src/main/resources/config/liquibase/master.xml.ejs +54 -24
  447. package/generators/server/templates/src/main/resources/swagger/api.yml.ejs +3 -3
  448. package/generators/server/templates/src/test/java/package/IntegrationTest.java.ejs +32 -19
  449. package/generators/server/templates/src/test/java/package/{repository/search/UserSearchRepositoryMockConfiguration.java.ejs → config/AsyncSyncConfiguration.java.ejs} +12 -10
  450. package/generators/server/templates/src/test/java/package/config/CassandraTestContainer.java.ejs +20 -1
  451. package/generators/{entity-server/templates/src/test/java/package/repository/search/EntitySearchRepositoryMockConfiguration.java.ejs → server/templates/src/test/java/package/config/ElasticsearchReactiveTestConfiguration.java.ejs} +14 -11
  452. package/generators/server/templates/src/test/java/package/config/ElasticsearchTestContainer.java.ejs +68 -0
  453. package/generators/server/templates/src/test/java/package/config/EmbeddedCassandra.java.ejs +19 -0
  454. package/generators/server/templates/src/test/java/package/config/EmbeddedElasticsearch.java.ejs +30 -0
  455. package/generators/server/templates/src/test/java/package/config/EmbeddedKafka.java.ejs +19 -0
  456. package/generators/server/templates/src/test/java/package/config/EmbeddedMongo.java.ejs +19 -0
  457. package/generators/server/templates/src/test/java/package/config/EmbeddedNeo4j.java.ejs +29 -0
  458. package/generators/server/templates/src/test/java/package/config/EmbeddedRedis.java.ejs +30 -0
  459. package/generators/server/templates/src/test/java/package/config/JHipsterBlockHoundIntegration.java.ejs +11 -2
  460. package/generators/server/templates/src/test/java/package/config/KafkaTestContainer.java.ejs +19 -1
  461. package/generators/server/templates/src/test/java/package/config/MongoDbTestContainer.java.ejs +5 -5
  462. package/generators/server/templates/src/test/java/package/config/Neo4jTestContainer.java.ejs +66 -0
  463. package/generators/server/templates/src/test/java/package/config/RedisTestContainer.java.ejs +57 -0
  464. package/generators/server/templates/src/test/java/package/config/{NoOpMailConfiguration.java.ejs → SpringBootTestClassOrderer.java.ejs} +16 -16
  465. package/generators/server/templates/src/test/java/package/config/TestContainersSpringContextCustomizerFactory.java.ejs +166 -30
  466. package/generators/server/templates/src/test/java/package/config/WebConfigurerTest.java.ejs +0 -23
  467. package/generators/server/templates/src/test/java/package/security/DomainUserDetailsServiceIT.java.ejs +5 -3
  468. package/generators/server/templates/src/test/java/package/service/MailServiceIT.java.ejs +7 -15
  469. package/generators/server/templates/src/test/java/package/service/UserServiceIT.java.ejs +8 -11
  470. package/generators/server/templates/src/test/java/package/service/mapper/UserMapperTest.java.ejs +1 -1
  471. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT.java.ejs +19 -73
  472. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT_skipUserManagement.java.ejs +0 -8
  473. package/generators/server/templates/src/test/java/package/web/rest/TestUtil.java.ejs +13 -10
  474. package/generators/server/templates/src/test/java/package/web/rest/UserResourceIT.java.ejs +76 -51
  475. package/generators/server/templates/src/test/resources/config/application.yml.ejs +13 -62
  476. package/generators/server/templates/src/test/resources/junit-platform.properties.ejs +1 -0
  477. package/generators/server/templates/src/test/resources/templates/mail/activationEmail.html.ejs +19 -0
  478. package/generators/server/templates/src/test/resources/templates/mail/creationEmail.html.ejs +19 -0
  479. package/generators/server/templates/src/test/resources/templates/mail/passwordResetEmail.html.ejs +21 -0
  480. package/generators/spring-controller/index.js +16 -1
  481. package/generators/sql-constants.js +85 -0
  482. package/generators/statistics.js +6 -5
  483. package/generators/upgrade/index.js +1 -1
  484. package/generators/utils.js +32 -30
  485. package/generators/workspaces/index.js +31 -28
  486. package/jdl/converters/jdl-to-json/jdl-to-json-relationship-converter.js +2 -3
  487. package/jdl/converters/json-to-jdl-converter.js +23 -6
  488. package/jdl/exporters/applications/jhipster-application-formatter.js +7 -0
  489. package/jdl/jhipster/application-options.js +8 -0
  490. package/jdl/jhipster/default-application-options.js +2 -2
  491. package/jdl/parsing/lexer/application-tokens.js +6 -0
  492. package/jdl/parsing/validator.js +7 -0
  493. package/jdl/validators/application-validator.js +3 -1
  494. package/jdl/validators/jdl-with-application-validator.js +1 -0
  495. package/jdl/validators/jdl-without-application-validator.js +3 -2
  496. package/lib/support/base.cjs +43 -0
  497. package/lib/support/needles.cjs +221 -0
  498. package/lib/support/shared-data.cjs +2 -2
  499. package/package.json +29 -27
  500. package/utils/blueprint.js +1 -1
  501. package/utils/entity.js +9 -1
  502. package/utils/field.js +24 -11
  503. package/utils/liquibase.js +5 -8
  504. package/utils/relationship.js +3 -2
  505. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-route.spec.tsx.ejs +0 -33
  506. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-route.tsx.ejs +0 -17
  507. package/generators/cypress/templates/cypress-audits.json.ejs +0 -32
  508. package/generators/cypress/templates/cypress.json.ejs +0 -46
  509. package/generators/docker-compose/templates/realm-config/jhipster-users-0.json.ejs +0 -61
  510. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/no-pagination-template.ejs +0 -81
  511. package/generators/server/templates/couchbase/src/test/java/package/CouchbaseTestContainerExtension.java.ejs +0 -56
  512. package/generators/server/templates/src/main/docker/config/realm-config/jhipster-users-0.json.ejs +0 -61
  513. package/generators/server/templates/src/test/java/package/AbstractNeo4jIT.java.ejs +0 -44
  514. package/generators/server/templates/src/test/java/package/ReactiveSqlTestContainerExtension.java.ejs +0 -79
  515. package/generators/server/templates/src/test/java/package/RedisTestContainerExtension.java.ejs +0 -44
  516. package/generators/server/templates/src/test/resources/testcontainers/mariadb/my.cnf +0 -2
@@ -11,16 +11,11 @@ declare module '<%= remote.lowercaseBaseName %>/entity-routing' {
11
11
  declare module '<%= remote.lowercaseBaseName %>/entity-navbar-items' {
12
12
  export const EntityNavbarItems : []
13
13
  }
14
- <%_ if (enableTranslation) { _%>
14
+ <%_ if (enableTranslation) { _%>
15
+
15
16
  declare module '<%= remote.lowercaseBaseName %>/translation-module' {
16
17
  export class LazyTranslationModule {}
17
18
  }
18
- <%_ } _%>
19
-
20
- <%_ } _%>
21
- <%_ for (const entity of Object.values(this.configOptions.sharedEntities).filter(entity => entity.microserviceName)) { _%>
22
- declare module '<%= entity.microserviceName %>/<%= entity.entityFileName %>' {
23
- export class <%= entity.microserviceName ? upperFirstCamelCase(entity.microserviceName) : '' %><%= entity.entityAngularName %>Module {}
24
- }
19
+ <%_ } _%>
25
20
  <%_ } _%>
26
21
  <%_ } _%>
@@ -17,11 +17,13 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  {
20
+ "include": [],
20
21
  "compilerOptions": {
21
22
  "baseUrl": "<%= CLIENT_MAIN_SRC_DIR %>",
22
23
  "outDir": "./<%= DIST_DIR %>",
23
24
  "forceConsistentCasingInFileNames": true,
24
25
  "strict": true,
26
+ "strictNullChecks": true,
25
27
  "noImplicitReturns": true,
26
28
  "noFallthroughCasesInSwitch": true,
27
29
  "sourceMap": true,
@@ -35,7 +37,11 @@
35
37
  "importHelpers": true,
36
38
  "esModuleInterop": true,
37
39
  "allowSyntheticDefaultImports": true,
40
+ <%_ if (microfrontend) { _%>
38
41
  "target": "es2017",
42
+ <%_ } else { _%>
43
+ "target": "es2020",
44
+ <%_ } _%>
39
45
  "module": "es2020",
40
46
  "lib": ["es2018", "dom"]
41
47
  },
@@ -23,5 +23,5 @@
23
23
  "types": ["jest", "node"]
24
24
  },
25
25
  "files": ["<%= MAIN_SRC_DIR %>polyfills.ts"],
26
- "include": ["<%= MAIN_SRC_DIR %>**/*.spec.ts", "<%= MAIN_SRC_DIR %>**/*.d.ts"]
26
+ "include": ["<%= MAIN_SRC_DIR %>**/*.ts"]
27
27
  }
@@ -48,7 +48,11 @@ module.exports = async (config, options, targetOptions) => {
48
48
  if (config.mode === 'development') {
49
49
  config.plugins.push(
50
50
  new ESLintPlugin({
51
- extensions: ['js', 'ts'],
51
+ baseConfig: {
52
+ parserOptions: {
53
+ project: ['../tsconfig.app.json'],
54
+ },
55
+ },
52
56
  }),
53
57
  new WebpackNotifierPlugin({
54
58
  title: '<%= humanizedBaseName %>',
@@ -118,7 +122,7 @@ module.exports = async (config, options, targetOptions) => {
118
122
  globOptions: { ignore: ['**/index.html'] },
119
123
  },
120
124
  {
121
- from: require.resolve('axios/dist/axios.min.js'),
125
+ from: require.resolve('axios/dist/axios.min.js'),
122
126
  to: 'swagger-ui/',
123
127
  },
124
128
  { from: './<%= CLIENT_MAIN_SRC_DIR %>swagger-ui/', to: 'swagger-ui/' },
@@ -41,7 +41,7 @@ module.exports = (config, options, targetOptions) => {
41
41
  <%_ if (applicationTypeGateway) { _%>
42
42
  remotes: {
43
43
  <%_ for (const remote of microfrontends) { _%>
44
- '<%= remote.lowercaseBaseName %>': `<%= remote.lowercaseBaseName %>@/<%= remote.endpointPrefix %>/remoteEntry.js`,
44
+ '<%= remote.lowercaseBaseName %>': '<%= remote.lowercaseBaseName %>@/<%= remote.endpointPrefix %>/remoteEntry.js',
45
45
  <%_ } _%>
46
46
  },
47
47
  <%_ } _%>
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "devDependencies": {
3
- "@cypress/code-coverage": "3.9.12",
4
- "babel-loader": "8.2.4",
3
+ "@cypress/code-coverage": "3.10.0",
4
+ "babel-loader": "8.2.5",
5
5
  "babel-plugin-istanbul": "6.1.1",
6
- "cypress": "9.5.3",
6
+ "cypress": "10.4.0",
7
7
  "cypress-audit": "1.1.0",
8
8
  "eslint-plugin-cypress": "2.12.1",
9
- "lighthouse": "9.5.0",
9
+ "lighthouse": "9.6.5",
10
10
  "nyc": "15.1.0",
11
- "swagger-ui-dist": "4.10.3"
11
+ "swagger-ui-dist": "4.13.1"
12
12
  },
13
13
  "dependencies": {
14
- "dayjs": "1.11.0"
14
+ "dayjs": "1.11.4"
15
15
  }
16
16
  }
@@ -116,6 +116,8 @@
116
116
  const response = await axios.get('/management/jhiopenapigroups', axiosConfig);
117
117
  if (Array.isArray(response.data)) {
118
118
  urls = response.data.map(({ group, description }) => ({ name: description, url: `${baseUrl}/${group}` }));
119
+ } else {
120
+ urls = [{ name: 'default', url: baseUrl }];
119
121
  }
120
122
  }
121
123
  console.log(`Swagger urls`, urls);
@@ -34,7 +34,16 @@
34
34
  "ecmaFeatures": {
35
35
  "jsx": true
36
36
  },
37
- "project": "./<% if (protractorTests) { %>tsconfig.e2e.json<% } else { %>tsconfig.test.json<% } %>"
37
+ "project": [
38
+ "./tsconfig.json",
39
+ <%_ if (cypressTests) { _%>
40
+ "./<%= CLIENT_TEST_SRC_DIR %>cypress/tsconfig.json",
41
+ <%_ } _%>
42
+ <%_ if (protractorTests) { _%>
43
+ "./tsconfig.e2e.json",
44
+ <%_ } _%>
45
+ "./tsconfig.test.json"
46
+ ]
38
47
  },
39
48
  "settings": {
40
49
  "react": {
@@ -5,7 +5,9 @@ module.exports = {
5
5
  transform: {
6
6
  '^.+\\.tsx?$': 'ts-jest'
7
7
  },
8
- testURL: 'http://localhost/',
8
+ testEnvironmentOptions: {
9
+ url: 'http://localhost/',
10
+ },
9
11
  cacheDirectory: '<rootDir>/<%= BUILD_DIR %>jest-cache',
10
12
  coverageDirectory: '<rootDir>/<%= BUILD_DIR %>test-results/',
11
13
  testMatch: ['<rootDir>/<%= CLIENT_MAIN_SRC_DIR %>app/**/@(*.)@(spec.ts?(x))'],
@@ -1,88 +1,88 @@
1
1
  {
2
2
  "dependencies": {
3
- "@fortawesome/fontawesome-svg-core": "6.1.1",
4
- "@fortawesome/free-solid-svg-icons": "6.1.1",
5
- "@fortawesome/react-fontawesome": "0.1.18",
6
- "@reduxjs/toolkit": "1.8.1",
7
- "axios": "0.26.1",
8
- "bootstrap": "5.1.3",
9
- "bootswatch": "5.1.3",
3
+ "@fortawesome/fontawesome-svg-core": "6.1.2",
4
+ "@fortawesome/free-solid-svg-icons": "6.1.2",
5
+ "@fortawesome/react-fontawesome": "0.2.0",
6
+ "@reduxjs/toolkit": "1.8.3",
7
+ "axios": "0.27.2",
8
+ "bootstrap": "5.2.0",
9
+ "bootswatch": "5.2.0",
10
10
  "lodash": "4.17.21",
11
11
  "path-browserify": "1.0.1",
12
- "react": "17.0.2",
13
- "react-dom": "17.0.2",
14
- "react-hook-form": "7.29.0",
15
- "react-jhipster": "0.20.0",
12
+ "react": "18.2.0",
13
+ "react-dom": "18.2.0",
14
+ "react-hook-form": "7.30.0",
15
+ "react-jhipster": "0.21.0",
16
16
  "react-loadable": "5.5.0",
17
- "react-redux": "7.2.8",
18
- "react-redux-loading-bar": "5.0.2",
19
- "react-router-dom": "5.3.0",
20
- "react-toastify": "8.2.0",
21
- "react-transition-group": "4.4.2",
22
- "reactstrap": "9.0.1",
23
- "redux": "4.1.2",
17
+ "react-redux": "8.0.2",
18
+ "react-redux-loading-bar": "5.0.4",
19
+ "react-router-dom": "6.3.0",
20
+ "react-toastify": "9.0.7",
21
+ "react-transition-group": "4.4.5",
22
+ "reactstrap": "9.1.2",
23
+ "redux": "4.2.0",
24
24
  "redux-thunk": "2.4.1",
25
25
  "sonar-scanner": "3.1.0",
26
- "tslib": "2.3.1",
26
+ "tslib": "2.4.0",
27
27
  "uuid": "8.3.2"
28
28
  },
29
29
  "devDependencies": {
30
- "@testing-library/react": "12.1.4",
31
- "@types/jest": "27.4.1",
32
- "@types/lodash": "4.14.181",
33
- "@types/node": "16.11.26",
34
- "@types/react": "17.0.43",
35
- "@types/react-dom": "17.0.14",
36
- "@types/react-redux": "7.1.23",
37
- "@types/react-router-dom": "5.3.3",
30
+ "@testing-library/react": "13.3.0",
31
+ "@types/jest": "28.1.6",
32
+ "@types/lodash": "4.14.182",
33
+ "@types/node": "16.11.47",
34
+ "@types/react": "18.0.15",
35
+ "@types/react-dom": "18.0.6",
36
+ "@types/react-redux": "7.1.24",
38
37
  "@types/redux": "3.6.31",
39
- "@types/webpack-env": "1.16.3",
40
- "@typescript-eslint/eslint-plugin": "5.18.0",
41
- "@typescript-eslint/parser": "5.18.0",
42
- "autoprefixer": "10.4.4",
43
- "browser-sync": "2.27.9",
38
+ "@types/webpack-env": "1.17.0",
39
+ "@typescript-eslint/eslint-plugin": "5.32.0",
40
+ "@typescript-eslint/parser": "5.32.0",
41
+ "autoprefixer": "10.4.8",
42
+ "browser-sync": "2.27.10",
44
43
  "browser-sync-webpack-plugin": "2.3.0",
45
- "copy-webpack-plugin": "10.2.4",
46
- "core-js": "3.21.1",
44
+ "copy-webpack-plugin": "11.0.0",
45
+ "core-js": "3.24.1",
47
46
  "cross-env": "7.0.3",
48
47
  "css-loader": "6.7.1",
49
- "css-minimizer-webpack-plugin": "3.4.1",
50
- "eslint": "8.12.0",
48
+ "css-minimizer-webpack-plugin": "4.0.0",
49
+ "eslint": "8.21.0",
51
50
  "eslint-config-prettier": "8.5.0",
52
- "eslint-plugin-react": "7.29.4",
53
- "eslint-webpack-plugin": "3.1.1",
51
+ "eslint-plugin-react": "7.30.1",
52
+ "eslint-webpack-plugin": "3.2.0",
54
53
  "folder-hash": "4.0.2",
55
- "fork-ts-checker-webpack-plugin": "7.2.3",
54
+ "fork-ts-checker-webpack-plugin": "7.2.13",
56
55
  "html-webpack-plugin": "5.5.0",
57
56
  "identity-obj-proxy": "3.0.0",
58
- "jest": "27.5.1",
59
- "jest-junit": "13.1.0",
57
+ "jest": "28.1.3",
58
+ "jest-environment-jsdom": "28.1.3",
59
+ "jest-junit": "14.0.0",
60
60
  "jest-sonar-reporter": "2.0.0",
61
61
  "json-loader": "0.5.7",
62
62
  "merge-jsons-webpack-plugin": "2.0.1",
63
- "mini-css-extract-plugin": "2.6.0",
64
- "postcss-loader": "6.2.1",
65
- "postcss-rtlcss": "3.5.4",
63
+ "mini-css-extract-plugin": "2.6.1",
64
+ "postcss-loader": "7.0.1",
65
+ "postcss-rtlcss": "3.7.2",
66
66
  "react-infinite-scroll-component": "6.1.0",
67
67
  "redux-mock-store": "1.5.4",
68
68
  "rimraf": "3.0.2",
69
- "sass": "1.49.11",
70
- "sass-loader": "12.6.0",
69
+ "sass": "1.54.1",
70
+ "sass-loader": "13.0.2",
71
71
  "simple-progress-webpack-plugin": "2.0.0",
72
- "sinon": "13.0.1",
73
- "source-map-loader": "3.0.1",
72
+ "sinon": "14.0.0",
73
+ "source-map-loader": "4.0.0",
74
74
  "sourcemap-istanbul-instrumenter-loader": "0.2.0",
75
75
  "style-loader": "3.3.1",
76
- "terser-webpack-plugin": "5.3.1",
76
+ "terser-webpack-plugin": "5.3.3",
77
77
  "thread-loader": "3.0.4",
78
- "ts-jest": "27.1.4",
79
- "ts-loader": "9.2.8",
80
- "typescript": "4.6.3",
81
- "webpack": "5.71.0",
82
- "webpack-cli": "4.9.2",
83
- "webpack-dev-server": "4.8.0",
78
+ "ts-jest": "28.0.7",
79
+ "ts-loader": "9.3.1",
80
+ "typescript": "4.7.4",
81
+ "webpack": "5.74.0",
82
+ "webpack-cli": "4.10.0",
83
+ "webpack-dev-server": "4.9.3",
84
84
  "webpack-merge": "5.8.0",
85
85
  "webpack-notifier": "1.15.0",
86
- "workbox-webpack-plugin": "6.5.2"
86
+ "workbox-webpack-plugin": "6.5.4"
87
87
  }
88
- }
88
+ }
@@ -77,7 +77,6 @@
77
77
  "@types/react": "<%= dependabotPackageJson.devDependencies['@types/react'] %>",
78
78
  "@types/react-dom": "<%= dependabotPackageJson.devDependencies['@types/react-dom'] %>",
79
79
  "@types/react-redux": "<%= dependabotPackageJson.devDependencies['@types/react-redux'] %>",
80
- "@types/react-router-dom": "<%= dependabotPackageJson.devDependencies['@types/react-router-dom'] %>",
81
80
  "@types/redux": "<%= dependabotPackageJson.devDependencies['@types/redux'] %>",
82
81
  <%_ if (protractorTests) { _%>
83
82
  "@types/selenium-webdriver": "4.0.9",
@@ -111,6 +110,7 @@
111
110
  "html-webpack-plugin": "<%= dependabotPackageJson.devDependencies['html-webpack-plugin'] %>",
112
111
  "identity-obj-proxy": "<%= dependabotPackageJson.devDependencies['identity-obj-proxy'] %>",
113
112
  "jest": "<%= dependabotPackageJson.devDependencies['jest'] %>",
113
+ "jest-environment-jsdom": "<%= dependabotPackageJson.devDependencies['jest-environment-jsdom'] %>",
114
114
  "jest-junit": "<%= dependabotPackageJson.devDependencies['jest-junit'] %>",
115
115
  "jest-sonar-reporter": "<%= dependabotPackageJson.devDependencies['jest-sonar-reporter'] %>",
116
116
  "json-loader": "<%= dependabotPackageJson.devDependencies['json-loader'] %>",
@@ -194,8 +194,8 @@
194
194
  <%_ } _%>
195
195
  <%_ if (cypressTests) { _%>
196
196
  "e2e:cypress:headed": "<%= clientPackageManager %> run e2e:cypress -- --headed",
197
- "e2e:cypress": "cypress run --browser chrome --record ${CYPRESS_ENABLE_RECORD:-false}",
198
- "cypress": "cypress open",
197
+ "e2e:cypress": "cypress run --e2e --browser chrome --record ${CYPRESS_ENABLE_RECORD:-false}",
198
+ "cypress": "cypress open --e2e",
199
199
  <%_ } _%>
200
200
  <%_ if (protractorTests) { _%>
201
201
  "postinstall": "<%= clientPackageManager %> run e2e:update-webdriver",
@@ -22,7 +22,7 @@ import 'app/config/dayjs.ts';
22
22
 
23
23
  import React, { useEffect } from 'react';
24
24
  import { Card } from 'reactstrap';
25
- import { BrowserRouter as Router } from 'react-router-dom';
25
+ import { BrowserRouter } from 'react-router-dom';
26
26
  import { ToastContainer, toast } from 'react-toastify';
27
27
 
28
28
  import { useAppDispatch, useAppSelector } from 'app/config/store';
@@ -59,7 +59,7 @@ export const App = () => {
59
59
 
60
60
  const paddingTop = '60px';
61
61
  return (
62
- <Router basename={baseHref}>
62
+ <BrowserRouter basename={baseHref}>
63
63
  <div className="app-container" style={{ paddingTop }}>
64
64
  <ToastContainer position={toast.POSITION.TOP_LEFT} className="toastify-container" toastClassName="toastify-toast"/>
65
65
  <ErrorBoundary>
@@ -83,7 +83,7 @@ export const App = () => {
83
83
  <Footer/>
84
84
  </div>
85
85
  </div>
86
- </Router>
86
+ </BrowserRouter>
87
87
  );
88
88
  };
89
89
 
@@ -42,4 +42,4 @@ const EntitiesMenu = () => {
42
42
  );
43
43
  };
44
44
 
45
- export default EntitiesMenu as React.ComponentType<any>;
45
+ export default EntitiesMenu;
@@ -17,13 +17,15 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  import React from 'react';
20
- import { Switch } from 'react-router-dom';
20
+ import { Route } from 'react-router-dom';
21
+
22
+ import ErrorBoundaryRoutes from 'app/shared/error/error-boundary-routes';
23
+
21
24
  <%_ if (microfrontend || applicationTypeGateway) { _%>
22
25
  import { ReducersMapObject, combineReducers } from '@reduxjs/toolkit';
23
26
 
24
27
  import getStore from 'app/config/store';
25
28
  <%_ } _%>
26
- import ErrorBoundaryRoute from 'app/shared/error/error-boundary-route';
27
29
  <%_ if (microfrontend || applicationTypeGateway) { _%>
28
30
 
29
31
  import entitiesReducers from './reducers';
@@ -31,17 +33,17 @@ import entitiesReducers from './reducers';
31
33
 
32
34
  /* jhipster-needle-add-route-import - JHipster will add routes here */
33
35
 
34
- export default ({ match }) => {
36
+ export default () => {
35
37
  <%_ if (microfrontend || applicationTypeGateway) { _%>
36
38
  const store = getStore();
37
39
  store.injectReducer('<%= lowercaseBaseName %>', combineReducers(entitiesReducers as ReducersMapObject));
38
40
  <%_ } _%>
39
41
  return (
40
42
  <div>
41
- <Switch>
43
+ <ErrorBoundaryRoutes>
42
44
  {/* prettier-ignore */}
43
45
  {/* jhipster-needle-add-route-path - JHipster will add routes here */}
44
- </Switch>
46
+ </ErrorBoundaryRoutes>
45
47
  </div>
46
48
  );
47
49
  };
@@ -17,7 +17,7 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  import React from 'react';
20
- import ReactDOM from 'react-dom';
20
+ import { createRoot } from 'react-dom/client';
21
21
  import { Provider } from 'react-redux';
22
22
  import { bindActionCreators } from 'redux';
23
23
 
@@ -42,18 +42,17 @@ setupAxiosInterceptors(() => actions.clearAuthentication('login.error.unauthoriz
42
42
  loadIcons();
43
43
 
44
44
  const rootEl = document.getElementById('root');
45
+ const root = createRoot(rootEl);
45
46
 
46
47
  const render = Component =>
47
- // eslint-disable-next-line react/no-render-return-value
48
- ReactDOM.render(
48
+ root.render(
49
49
  <ErrorBoundary>
50
50
  <Provider store={store}>
51
51
  <div>
52
52
  <Component />
53
53
  </div>
54
54
  </Provider>
55
- </ErrorBoundary>,
56
- rootEl
55
+ </ErrorBoundary>
57
56
  );
58
57
 
59
58
  render(AppComponent);
@@ -17,9 +17,9 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  import React, { useEffect } from 'react';
20
- import { Link, RouteComponentProps } from 'react-router-dom';
20
+ import { Link, useSearchParams } from 'react-router-dom';
21
21
  import { Row, Col, Alert } from 'reactstrap';
22
- import { Translate, getUrlParameter } from 'react-jhipster';
22
+ import { Translate } from 'react-jhipster';
23
23
 
24
24
  import { useAppDispatch, useAppSelector } from 'app/config/store';
25
25
  import { activateAction, reset } from './activate.reducer';
@@ -43,10 +43,14 @@ const failureAlert = (
43
43
  </Alert>
44
44
  );
45
45
 
46
- export const ActivatePage = (props: RouteComponentProps<{ key: any }>) => {
46
+ export const ActivatePage = () => {
47
47
  const dispatch = useAppDispatch();
48
+
49
+ const [searchParams] = useSearchParams();
50
+
48
51
  useEffect(() => {
49
- const key = getUrlParameter('key', props.location.search);
52
+ const key = searchParams.get("key");
53
+
50
54
  dispatch(activateAction(key));
51
55
  return () => {
52
56
  dispatch(reset());
@@ -17,8 +17,9 @@
17
17
  limitations under the License.
18
18
  -%>
19
19
  import React from 'react';
20
+ import { Route } from 'react-router-dom';
20
21
 
21
- import ErrorBoundaryRoute from 'app/shared/error/error-boundary-route';
22
+ import ErrorBoundaryRoutes from 'app/shared/error/error-boundary-routes';
22
23
 
23
24
  import Settings from './settings/settings';
24
25
  import Password from './password/password';
@@ -26,14 +27,16 @@ import Password from './password/password';
26
27
  import Sessions from './sessions/sessions';
27
28
  <%_ } _%>
28
29
 
29
- const Routes = ({ match }) => (
30
+ const AccountRoutes = () => (
30
31
  <div>
31
- <ErrorBoundaryRoute path={`${match.url}/settings`} component={Settings} />
32
- <ErrorBoundaryRoute path={`${match.url}/password`} component={Password} />
32
+ <ErrorBoundaryRoutes>
33
+ <Route path="settings" element={<Settings />} />
34
+ <Route path="password" element={<Password />} />
33
35
  <%_ if (authenticationTypeSession) { _%>
34
- <ErrorBoundaryRoute path={`${match.url}/sessions`} component={Sessions} />
36
+ <Route path="sessions" element={<Sessions />} />
35
37
  <%_ } _%>
38
+ </ErrorBoundaryRoutes>
36
39
  </div>
37
40
  );
38
41
 
39
- export default Routes;
42
+ export default AccountRoutes;
@@ -60,6 +60,7 @@ export const PasswordPage = () => {
60
60
  toast.error(errorMessage);
61
61
  <%_ } _%>
62
62
  }
63
+ dispatch(reset());
63
64
  }, [successMessage, errorMessage]);
64
65
 
65
66
  return (
@@ -18,19 +18,22 @@
18
18
  -%>
19
19
  import React, { useState, useEffect } from 'react';
20
20
  import { Col, Row, Button } from 'reactstrap';
21
- import { Translate, translate, getUrlParameter, ValidatedField, ValidatedForm } from 'react-jhipster';
22
- import { RouteComponentProps } from 'react-router-dom';
21
+ import { Translate, translate, ValidatedField, ValidatedForm } from 'react-jhipster';
22
+ import { useSearchParams } from 'react-router-dom';
23
23
  import { toast } from 'react-toastify';
24
24
 
25
25
  import { handlePasswordResetFinish, reset } from '../password-reset.reducer';
26
26
  import PasswordStrengthBar from 'app/shared/layout/password/password-strength-bar';
27
27
  import { useAppDispatch, useAppSelector } from 'app/config/store';
28
28
 
29
- export const PasswordResetFinishPage = (props: RouteComponentProps<{ key: string }>) => {
30
- const [password, setPassword] = useState('');
31
- const [key] = useState(getUrlParameter('key', props.location.search));
29
+ export const PasswordResetFinishPage = () => {
32
30
  const dispatch = useAppDispatch();
33
31
 
32
+ const [searchParams] = useSearchParams();
33
+ const key = searchParams.get('key');
34
+
35
+ const [password, setPassword] = useState('');
36
+
34
37
  useEffect(
35
38
  () => () => {
36
39
  dispatch(reset());
@@ -113,16 +113,18 @@ export const AdministrationSlice = createSlice({
113
113
  <%_ } _%>
114
114
  },
115
115
  extraReducers(builder) {
116
+ <%_ if (withAdminUi || (applicationTypeGateway && serviceDiscoveryType)) { _%>
117
+ builder
116
118
  <%_ if (applicationTypeGateway && serviceDiscoveryType) { _%>
117
- builder.addCase(getGatewayRoutes.fulfilled, (state, action) => {
119
+ .addCase(getGatewayRoutes.fulfilled, (state, action) => {
118
120
  state.loading = false;
119
121
  state.gateway = {
120
122
  routes: action.payload.data
121
123
  };
122
- });
124
+ })
123
125
  <%_ } _%>
124
126
  <%_ if (withAdminUi) { _%>
125
- builder.addCase(getSystemHealth.fulfilled, (state, action) => {
127
+ .addCase(getSystemHealth.fulfilled, (state, action) => {
126
128
  state.loading = false;
127
129
  state.health = action.payload.data;
128
130
  })
@@ -155,7 +157,6 @@ export const AdministrationSlice = createSlice({
155
157
  };
156
158
  })
157
159
  <%_ } _%>
158
- <%_ if (withAdminUi || (applicationTypeGateway && serviceDiscoveryType)) { _%>
159
160
  .addMatcher(
160
161
  isPending(
161
162
  <%_ if (applicationTypeGateway && serviceDiscoveryType) { _%>
@@ -175,8 +176,6 @@ export const AdministrationSlice = createSlice({
175
176
  state.loading = true;
176
177
  }
177
178
  )
178
- <%_ } _%>
179
- <%_ if (withAdminUi || (applicationTypeGateway && serviceDiscoveryType)) { _%>
180
179
  .addMatcher(
181
180
  isRejected(
182
181
  <%_ if (applicationTypeGateway && serviceDiscoveryType) { _%>
@@ -196,7 +195,7 @@ export const AdministrationSlice = createSlice({
196
195
  state.loading = false;
197
196
  }
198
197
  );
199
- <%_ } _%>
198
+ <%_ } _%>
200
199
  },
201
200
  });
202
201
 
@@ -18,6 +18,7 @@
18
18
  -%>
19
19
  import React from 'react';
20
20
  import { Table, Modal, ModalHeader, ModalBody, ModalFooter, Button } from 'reactstrap';
21
+ import { Translate } from 'react-jhipster';
21
22
 
22
23
  const formatDiskSpaceOutput = rawValue => {
23
24
  // Should display storage space in an human readable unit
@@ -38,8 +39,8 @@ const HealthModal = ({ handleClose, healthObject, showModal }) => {
38
39
  <Table bordered>
39
40
  <thead>
40
41
  <tr>
41
- <th>Name</th>
42
- <th>Value</th>
42
+ <th><Translate contentKey="health.details.name">Name</Translate></th>
43
+ <th><Translate contentKey="health.details.value">Value</Translate></th>
43
44
  </tr>
44
45
  </thead>
45
46
  <tbody>
@@ -59,7 +59,7 @@ export const HealthPage = () => {
59
59
  return (
60
60
  <div>
61
61
  <h2 id="health-page-heading" data-cy="healthPageHeading">
62
- Health Checks
62
+ <Translate contentKey="health.title">Health Checks</Translate>
63
63
  </h2>
64
64
  <p>
65
65
  <Button onClick={fetchSystemHealth} color={isFetching ? 'btn btn-danger' : 'btn btn-primary'} disabled={isFetching}>
@@ -75,9 +75,9 @@ export const HealthPage = () => {
75
75
  <Table bordered aria-describedby="health-page-heading">
76
76
  <thead>
77
77
  <tr>
78
- <th>Service Name</th>
79
- <th>Status</th>
80
- <th>Details</th>
78
+ <th><Translate contentKey="health.table.service">Service Name</Translate></th>
79
+ <th><Translate contentKey="health.table.status">Status</Translate></th>
80
+ <th><Translate contentKey="health.details.details">Details</Translate></th>
81
81
  </tr>
82
82
  </thead>
83
83
  <tbody>