generator-jhipster 7.8.0 → 7.9.1

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 (519) 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 +32 -32
  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/gateway/gateway.component.ts.ejs +14 -0
  42. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.component.html.ejs +6 -6
  43. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.module.ts.ejs +0 -1
  44. package/generators/client/templates/angular/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +3 -3
  45. package/generators/client/templates/angular/src/main/webapp/app/admin/logs/logs.component.html.ejs +5 -5
  46. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +1 -1
  47. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.component.html.ejs +5 -5
  48. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +10 -10
  49. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +10 -10
  50. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +9 -9
  51. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +8 -8
  52. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +5 -5
  53. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +4 -4
  54. package/generators/client/templates/angular/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +5 -5
  55. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +4 -4
  56. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +14 -14
  57. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +16 -16
  58. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.ts.ejs +2 -1
  59. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +133 -138
  60. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.spec.ts.ejs +22 -24
  61. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.ts.ejs +40 -49
  62. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/user-management.model.ts.ejs +2 -2
  63. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/user-management.module.ts.ejs +0 -1
  64. package/generators/client/templates/angular/src/main/webapp/app/config/navigation.constants.ts.ejs +23 -0
  65. package/generators/client/templates/angular/src/main/webapp/app/config/pagination.constants.ts.ejs +2 -3
  66. package/generators/client/templates/angular/src/main/webapp/app/core/request/request-util.ts.ejs +1 -1
  67. package/generators/client/templates/angular/src/main/webapp/app/entities/user/user.model.ts.ejs +2 -2
  68. package/generators/client/templates/angular/src/main/webapp/app/entities/user/user.service.ts.ejs +7 -3
  69. package/generators/client/templates/angular/src/main/webapp/app/home/home.component.html.ejs +14 -14
  70. package/generators/client/templates/angular/src/main/webapp/app/layouts/error/error.component.html.ejs +1 -1
  71. package/generators/client/templates/angular/src/main/webapp/app/layouts/footer/footer.component.html.ejs +1 -1
  72. package/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +21 -21
  73. package/generators/client/templates/angular/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
  74. package/generators/client/templates/angular/src/main/webapp/app/login/login.component.html.ejs +9 -9
  75. package/generators/client/templates/angular/src/main/webapp/app/login/login.component.ts.ejs +16 -27
  76. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.component.html.ejs +10 -0
  77. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.component.ts.ejs +23 -0
  78. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.model.spec.ts.ejs +40 -0
  79. package/generators/client/templates/angular/src/main/webapp/app/shared/filter/filter.model.ts.ejs +95 -0
  80. package/generators/client/templates/angular/src/main/webapp/app/shared/pagination/item-count.component.ts.ejs +1 -1
  81. package/generators/client/templates/angular/src/main/webapp/app/shared/shared.module.ts.ejs +3 -0
  82. package/generators/client/templates/angular/src/main/webapp/app/shared/sort/sort.service.ts.ejs +31 -0
  83. package/generators/client/templates/angular/src/main/webapp/declarations.d.ts.ejs +3 -8
  84. package/generators/client/templates/angular/tsconfig.json.ejs +6 -0
  85. package/generators/client/templates/angular/tsconfig.spec.json.ejs +1 -1
  86. package/generators/client/templates/angular/webpack/webpack.custom.js.ejs +6 -2
  87. package/generators/client/templates/angular/webpack/webpack.microfrontend.js.ejs +1 -1
  88. package/generators/client/templates/common/package.json +6 -6
  89. package/generators/client/templates/common/src/main/webapp/swagger-ui/index.html.ejs +2 -0
  90. package/generators/client/templates/react/.eslintrc.json.ejs +10 -1
  91. package/generators/client/templates/react/jest.conf.js.ejs +3 -1
  92. package/generators/client/templates/react/package.json +57 -57
  93. package/generators/client/templates/react/package.json.ejs +3 -3
  94. package/generators/client/templates/react/src/main/webapp/app/app.tsx.ejs +3 -3
  95. package/generators/client/templates/react/src/main/webapp/app/entities/menu.tsx.ejs +1 -1
  96. package/generators/client/templates/react/src/main/webapp/app/entities/routes.tsx.ejs +7 -5
  97. package/generators/client/templates/react/src/main/webapp/app/index.tsx.ejs +4 -5
  98. package/generators/client/templates/react/src/main/webapp/app/modules/account/activate/activate.tsx.ejs +8 -4
  99. package/generators/client/templates/react/src/main/webapp/app/modules/account/index.tsx.ejs +9 -6
  100. package/generators/client/templates/react/src/main/webapp/app/modules/account/password/password.tsx.ejs +1 -0
  101. package/generators/client/templates/react/src/main/webapp/app/modules/account/password-reset/finish/password-reset-finish.tsx.ejs +8 -5
  102. package/generators/client/templates/react/src/main/webapp/app/modules/administration/administration.reducer.ts.ejs +6 -7
  103. package/generators/client/templates/react/src/main/webapp/app/modules/administration/gateway/gateway.tsx.ejs +9 -1
  104. package/generators/client/templates/react/src/main/webapp/app/modules/administration/health/health-modal.tsx.ejs +3 -2
  105. package/generators/client/templates/react/src/main/webapp/app/modules/administration/health/health.tsx.ejs +4 -4
  106. package/generators/client/templates/react/src/main/webapp/app/modules/administration/index.tsx.ejs +14 -11
  107. package/generators/client/templates/react/src/main/webapp/app/modules/administration/metrics/metrics.tsx.ejs +8 -2
  108. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/index.tsx.ejs +13 -13
  109. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-delete-dialog.tsx.ejs +7 -4
  110. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-detail.tsx.ejs +5 -3
  111. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management-update.tsx.ejs +10 -6
  112. package/generators/client/templates/react/src/main/webapp/app/modules/administration/user-management/user-management.tsx.ejs +18 -26
  113. package/generators/client/templates/react/src/main/webapp/app/modules/login/login-redirect.tsx.ejs +6 -3
  114. package/generators/client/templates/react/src/main/webapp/app/modules/login/login.tsx.ejs +6 -5
  115. package/generators/client/templates/react/src/main/webapp/app/routes.tsx.ejs +53 -25
  116. package/generators/client/templates/react/src/main/webapp/app/shared/auth/private-route.spec.tsx.ejs +30 -27
  117. package/generators/client/templates/react/src/main/webapp/app/shared/auth/private-route.tsx.ejs +35 -34
  118. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-routes.spec.tsx.ejs +55 -0
  119. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-routes.tsx.ejs +21 -0
  120. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary.spec.tsx.ejs +1 -1
  121. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary.tsx.ejs +1 -1
  122. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-loading.tsx.ejs +8 -10
  123. package/generators/client/templates/react/src/main/webapp/app/shared/error/page-not-found.tsx.ejs +9 -13
  124. package/generators/client/templates/react/src/main/webapp/app/shared/layout/header/header.spec.tsx.ejs +3 -5
  125. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/account.spec.tsx.ejs +5 -8
  126. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/entities.tsx.ejs +1 -1
  127. package/generators/client/templates/react/src/main/webapp/app/shared/layout/menus/menu-item.tsx.ejs +12 -11
  128. package/generators/client/templates/react/src/main/webapp/app/typings.d.ts.ejs +2 -2
  129. package/generators/client/templates/react/tsconfig.json.ejs +2 -4
  130. package/generators/client/templates/react/tsconfig.test.json.ejs +1 -0
  131. package/generators/client/templates/react/webpack/webpack.common.js.ejs +7 -3
  132. package/generators/client/templates/react/webpack/webpack.microfrontend.js.jhi.react.ejs +4 -4
  133. package/generators/client/templates/vue/.eslintrc.js.ejs +10 -1
  134. package/generators/client/templates/vue/package.json +40 -39
  135. package/generators/client/templates/vue/package.json.ejs +3 -3
  136. package/generators/client/templates/vue/src/main/webapp/app/account/login-form/login-form.component.ts.ejs +2 -2
  137. package/generators/client/templates/vue/src/main/webapp/app/admin/gateway/gateway.component.ts.ejs +14 -0
  138. package/generators/client/templates/vue/src/main/webapp/app/admin/metrics/metrics.vue.ejs +1 -1
  139. package/generators/client/templates/vue/src/main/webapp/app/admin/user-management/user-management-edit.component.ts.ejs +2 -2
  140. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +5 -3
  141. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.vue.ejs +2 -2
  142. package/generators/client/templates/vue/src/main/webapp/app/shared/alert/alert.service.ts.ejs +1 -1
  143. package/generators/client/templates/vue/src/main/webapp/app/shared/date/filters.ts.ejs +0 -6
  144. package/generators/client/templates/vue/src/test/javascript/jest.conf.js.ejs +5 -0
  145. package/generators/client/templates/vue/src/test/javascript/spec/app/account/register/register.component.spec.ts.ejs +1 -1
  146. package/generators/client/templates/vue/tsconfig.json.ejs +1 -1
  147. package/generators/client/templates/vue/tsconfig.spec.json.ejs +2 -2
  148. package/generators/client/templates/vue/webpack/webpack.dev.js.ejs +4 -0
  149. package/generators/client/templates/vue/webpack/webpack.prod.js.ejs +8 -1
  150. package/generators/client/transform-angular.cjs +117 -0
  151. package/generators/client/transform-react.cjs +126 -0
  152. package/generators/client/transform-vue.cjs +42 -0
  153. package/generators/common/files.js +2 -9
  154. package/generators/common/templates/README.md.jhi.ejs +21 -5
  155. package/generators/common/templates/package.json +3 -3
  156. package/generators/cypress/files.js +34 -22
  157. package/generators/cypress/index.js +42 -19
  158. package/generators/cypress/templates/cypress-audits.config.ts.ejs +28 -0
  159. package/generators/cypress/templates/cypress.config.ts.ejs +57 -0
  160. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/login-page.spec.ts.ejs → e2e/account/login-page.cy.ts.ejs} +0 -0
  161. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/password-page.spec.ts.ejs → e2e/account/password-page.cy.ts.ejs} +0 -0
  162. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/register-page.spec.ts.ejs → e2e/account/register-page.cy.ts.ejs} +0 -0
  163. 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
  164. package/generators/cypress/templates/src/test/javascript/cypress/{integration/account/settings-page.spec.ts.ejs → e2e/account/settings-page.cy.ts.ejs} +0 -0
  165. package/generators/cypress/templates/src/test/javascript/cypress/{integration/administration/administration.spec.ts.ejs → e2e/administration/administration.cy.ts.ejs} +1 -1
  166. package/generators/cypress/templates/src/test/javascript/cypress/{integration → e2e}/lighthouse.audits.ts.ejs +0 -0
  167. package/generators/cypress/templates/src/test/javascript/cypress/plugins/global.d.ts.ejs +25 -0
  168. package/generators/cypress/templates/src/test/javascript/cypress/plugins/index.ts.ejs +13 -14
  169. package/generators/cypress/templates/src/test/javascript/cypress/support/commands.ts.ejs +4 -4
  170. package/generators/cypress/templates/src/test/javascript/cypress/support/navbar.ts.ejs +1 -1
  171. package/generators/cypress/templates/src/test/javascript/cypress/support/oauth2.ts.ejs +8 -8
  172. package/generators/cypress/templates/src/test/javascript/cypress/tsconfig.json.ejs +8 -5
  173. package/generators/database-changelog-liquibase/files.js +1 -1
  174. package/generators/database-changelog-liquibase/index.js +3 -0
  175. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
  176. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity_constraints.xml.ejs +1 -1
  177. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +1 -1
  178. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +2 -2
  179. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_migrate.xml.ejs +1 -1
  180. package/generators/database-changelog-liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +2 -2
  181. package/generators/docker-base.js +6 -3
  182. package/generators/docker-compose/files.js +5 -2
  183. package/generators/docker-compose/index.js +13 -24
  184. package/generators/docker-compose/templates/README-DOCKER-COMPOSE.md.ejs +1 -1
  185. package/generators/docker-compose/templates/docker-compose.yml.ejs +10 -8
  186. package/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +62 -4
  187. package/generators/docker-prompts.js +1 -2
  188. package/generators/docker-utils.js +0 -1
  189. package/generators/entity/index.js +5 -15
  190. package/generators/entity/prompts.js +1 -52
  191. package/generators/entity-client/files-angular.cjs +169 -0
  192. package/generators/entity-client/files-cypress.cjs +52 -0
  193. package/generators/entity-client/files-react.cjs +113 -0
  194. package/generators/entity-client/files-vue.cjs +140 -0
  195. package/generators/entity-client/files.js +10 -381
  196. package/generators/entity-client/index.js +120 -19
  197. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/delete/entity-management-delete-dialog.component.html.ejs +4 -5
  198. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/delete/entity-management-delete-dialog.component.ts.ejs +2 -1
  199. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/detail/entity-management-detail.component.html.ejs +12 -11
  200. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity-management.module.ts.ejs +0 -5
  201. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity.model.ts.ejs +18 -25
  202. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/entity.test-samples.ts.ejs +45 -0
  203. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.html.ejs +45 -37
  204. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.spec.ts.ejs +47 -28
  205. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.ts.ejs +292 -94
  206. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/infinite-scroll-template.ejs +5 -106
  207. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/pagination-template.ejs +2 -82
  208. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing-resolve.service.spec.ts.ejs +5 -5
  209. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing-resolve.service.ts.ejs +5 -5
  210. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/route/entity-management-routing.module.ts.ejs +2 -3
  211. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/service/entity.service.spec.ts.ejs +89 -175
  212. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/service/entity.service.ts.ejs +69 -44
  213. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-form.service.spec.ts.ejs +111 -0
  214. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-form.service.ts.ejs +263 -0
  215. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.html.ejs +99 -120
  216. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.spec.ts.ejs +47 -71
  217. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.ts.ejs +79 -195
  218. 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
  219. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-delete-dialog.tsx.ejs +10 -5
  220. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-detail.tsx.ejs +5 -3
  221. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-update.tsx.ejs +11 -6
  222. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity.tsx.ejs +11 -10
  223. package/generators/entity-client/templates/react/src/main/webapp/app/entities/index.tsx.ejs +13 -13
  224. package/generators/entity-client/templates/react/src/main/webapp/app/entities/react_validators.ejs +25 -32
  225. package/generators/entity-client/templates/vue/src/main/webapp/app/entities/entity-update.component.ts.ejs +2 -2
  226. package/generators/entity-server/cleanup.js +41 -0
  227. package/generators/entity-server/files.js +118 -53
  228. package/generators/entity-server/index.js +14 -27
  229. package/generators/entity-server/templates/partials/save_template.ejs +1 -1
  230. package/generators/entity-server/templates/partials/update_template.ejs +1 -1
  231. package/generators/entity-server/templates/src/main/java/package/common/get_all_template.ejs +11 -5
  232. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.elastic_search.ejs +17 -0
  233. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.spring_data_cassandra.ejs +3 -1
  234. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository.java.ejs +6 -1
  235. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryInternalImpl_reactive.java.ejs +11 -12
  236. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationships.java.ejs +2 -2
  237. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationshipsImpl.java.ejs +13 -6
  238. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository_reactive.java.ejs +3 -3
  239. package/generators/entity-server/templates/src/main/java/package/repository/search/EntitySearchRepository.java.ejs +46 -9
  240. package/generators/entity-server/templates/src/main/java/package/service/EntityQueryService.java.ejs +3 -3
  241. package/generators/entity-server/templates/src/main/java/package/service/impl/EntityServiceImpl.java.ejs +2 -2
  242. package/generators/entity-server/templates/src/main/java/package/web/rest/EntityResource.java.ejs +2 -5
  243. package/generators/entity-server/templates/src/test/java/package/web/rest/EntityResourceIT.java.ejs +140 -132
  244. package/generators/gae/index.js +1 -1
  245. package/generators/generate-blueprint/constants.mjs +22 -2
  246. package/generators/generate-blueprint/generator.mjs +25 -6
  247. package/generators/generate-blueprint/templates/.github/workflows/generator.yml.ejs +5 -3
  248. package/generators/generate-blueprint/templates/cli/commands.cjs.ejs +2 -1
  249. package/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +6 -5
  250. package/generators/generate-blueprint/templates/generators/generator/generator.spec.mjs.ejs +10 -1
  251. package/generators/generator-base-blueprint.js +19 -20
  252. package/generators/generator-base-private.js +116 -64
  253. package/generators/generator-base.js +241 -91
  254. package/generators/generator-constants.js +118 -66
  255. package/generators/generator-defaults.js +1 -0
  256. package/generators/heroku/index.js +5 -4
  257. package/generators/heroku/templates/application-heroku.yml.ejs +1 -2
  258. package/generators/heroku/templates/heroku.gradle.ejs +28 -1
  259. package/generators/heroku/templates/pom-profile.xml.ejs +29 -0
  260. package/generators/java/index.cjs +2 -2
  261. package/generators/kubernetes/templates/db/couchbase.yml.ejs +1 -2
  262. package/generators/kubernetes/templates/db/mongodb.yml.ejs +1 -2
  263. package/generators/kubernetes/templates/ingress.yml.ejs +11 -4
  264. package/generators/kubernetes/templates/monitoring/jhipster-grafana.yml.ejs +6 -2
  265. package/generators/kubernetes/templates/registry/consul.yml.ejs +1 -2
  266. package/generators/kubernetes/templates/registry/jhipster-registry.yml.ejs +1 -2
  267. package/generators/languages/templates/src/main/webapp/i18n/al/global.json.ejs +7 -1
  268. package/generators/languages/templates/src/main/webapp/i18n/ar-ly/global.json.ejs +7 -1
  269. package/generators/languages/templates/src/main/webapp/i18n/bg/global.json.ejs +7 -1
  270. package/generators/languages/templates/src/main/webapp/i18n/bn/global.json.ejs +7 -1
  271. package/generators/languages/templates/src/main/webapp/i18n/by/global.json.ejs +7 -1
  272. package/generators/languages/templates/src/main/webapp/i18n/ca/global.json.ejs +7 -1
  273. package/generators/languages/templates/src/main/webapp/i18n/cs/global.json.ejs +7 -1
  274. package/generators/languages/templates/src/main/webapp/i18n/da/global.json.ejs +7 -1
  275. package/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +7 -1
  276. package/generators/languages/templates/src/main/webapp/i18n/el/global.json.ejs +7 -1
  277. package/generators/languages/templates/src/main/webapp/i18n/en/global.json.ejs +7 -1
  278. package/generators/languages/templates/src/main/webapp/i18n/en/health.json.ejs +3 -0
  279. package/generators/languages/templates/src/main/webapp/i18n/es/global.json.ejs +7 -1
  280. package/generators/languages/templates/src/main/webapp/i18n/et/global.json.ejs +7 -1
  281. package/generators/languages/templates/src/main/webapp/i18n/fa/global.json.ejs +7 -1
  282. package/generators/languages/templates/src/main/webapp/i18n/fi/global.json.ejs +7 -1
  283. package/generators/languages/templates/src/main/webapp/i18n/fr/global.json.ejs +7 -1
  284. package/generators/languages/templates/src/main/webapp/i18n/gl/global.json.ejs +7 -1
  285. package/generators/languages/templates/src/main/webapp/i18n/hi/global.json.ejs +7 -1
  286. package/generators/languages/templates/src/main/webapp/i18n/hr/global.json.ejs +7 -1
  287. package/generators/languages/templates/src/main/webapp/i18n/hu/global.json.ejs +7 -1
  288. package/generators/languages/templates/src/main/webapp/i18n/hy/global.json.ejs +7 -1
  289. package/generators/languages/templates/src/main/webapp/i18n/in/global.json.ejs +7 -1
  290. package/generators/languages/templates/src/main/webapp/i18n/it/global.json.ejs +7 -1
  291. package/generators/languages/templates/src/main/webapp/i18n/ja/global.json.ejs +7 -1
  292. package/generators/languages/templates/src/main/webapp/i18n/ko/global.json.ejs +7 -1
  293. package/generators/languages/templates/src/main/webapp/i18n/mr/global.json.ejs +7 -1
  294. package/generators/languages/templates/src/main/webapp/i18n/my/global.json.ejs +7 -1
  295. package/generators/languages/templates/src/main/webapp/i18n/nl/global.json.ejs +7 -1
  296. package/generators/languages/templates/src/main/webapp/i18n/pa/global.json.ejs +7 -1
  297. package/generators/languages/templates/src/main/webapp/i18n/pl/global.json.ejs +7 -1
  298. package/generators/languages/templates/src/main/webapp/i18n/pt-br/global.json.ejs +7 -1
  299. package/generators/languages/templates/src/main/webapp/i18n/pt-pt/global.json.ejs +7 -1
  300. package/generators/languages/templates/src/main/webapp/i18n/ro/global.json.ejs +7 -1
  301. package/generators/languages/templates/src/main/webapp/i18n/ru/global.json.ejs +7 -1
  302. package/generators/languages/templates/src/main/webapp/i18n/si/global.json.ejs +7 -1
  303. package/generators/languages/templates/src/main/webapp/i18n/sk/global.json.ejs +7 -1
  304. package/generators/languages/templates/src/main/webapp/i18n/sr/global.json.ejs +7 -1
  305. package/generators/languages/templates/src/main/webapp/i18n/sv/global.json.ejs +7 -1
  306. package/generators/languages/templates/src/main/webapp/i18n/ta/global.json.ejs +7 -1
  307. package/generators/languages/templates/src/main/webapp/i18n/te/global.json.ejs +7 -1
  308. package/generators/languages/templates/src/main/webapp/i18n/th/global.json.ejs +7 -1
  309. package/generators/languages/templates/src/main/webapp/i18n/tr/global.json.ejs +7 -1
  310. package/generators/languages/templates/src/main/webapp/i18n/ua/global.json.ejs +7 -1
  311. package/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +7 -1
  312. package/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/global.json.ejs +7 -1
  313. package/generators/languages/templates/src/main/webapp/i18n/vi/global.json.ejs +7 -1
  314. package/generators/languages/templates/src/main/webapp/i18n/zh-cn/global.json.ejs +7 -1
  315. package/generators/languages/templates/src/main/webapp/i18n/zh-tw/global.json.ejs +7 -1
  316. package/generators/languages/templates/src/test/resources/i18n/messages_al.properties.ejs +4 -1
  317. package/generators/languages/templates/src/test/resources/i18n/messages_ar_LY.properties.ejs +4 -1
  318. package/generators/languages/templates/src/test/resources/i18n/messages_bg.properties.ejs +1 -1
  319. package/generators/languages/templates/src/test/resources/i18n/messages_bn.properties.ejs +4 -1
  320. package/generators/languages/templates/src/test/resources/i18n/messages_by.properties.ejs +4 -1
  321. package/generators/languages/templates/src/test/resources/i18n/messages_ca.properties.ejs +4 -1
  322. package/generators/languages/templates/src/test/resources/i18n/messages_cs.properties.ejs +4 -1
  323. package/generators/languages/templates/src/test/resources/i18n/messages_da.properties.ejs +4 -1
  324. package/generators/languages/templates/src/test/resources/i18n/messages_de.properties.ejs +4 -1
  325. package/generators/languages/templates/src/test/resources/i18n/messages_el.properties.ejs +4 -1
  326. package/generators/languages/templates/src/test/resources/i18n/messages_es.properties.ejs +4 -1
  327. package/generators/languages/templates/src/test/resources/i18n/messages_et.properties.ejs +4 -1
  328. package/generators/languages/templates/src/test/resources/i18n/messages_fa.properties.ejs +4 -1
  329. package/generators/languages/templates/src/test/resources/i18n/messages_fi.properties.ejs +1 -1
  330. package/generators/languages/templates/src/test/resources/i18n/messages_gl.properties.ejs +4 -1
  331. package/generators/languages/templates/src/test/resources/i18n/messages_hi.properties.ejs +4 -1
  332. package/generators/languages/templates/src/test/resources/i18n/messages_hr.properties.ejs +1 -1
  333. package/generators/languages/templates/src/test/resources/i18n/messages_hu.properties.ejs +4 -1
  334. package/generators/languages/templates/src/test/resources/i18n/messages_hy.properties.ejs +4 -1
  335. package/generators/languages/templates/src/test/resources/i18n/messages_in.properties.ejs +4 -1
  336. package/generators/languages/templates/src/test/resources/i18n/messages_it.properties.ejs +4 -1
  337. package/generators/languages/templates/src/test/resources/i18n/messages_ja.properties.ejs +4 -1
  338. package/generators/languages/templates/src/test/resources/i18n/messages_ko.properties.ejs +4 -1
  339. package/generators/languages/templates/src/test/resources/i18n/messages_mr.properties.ejs +4 -1
  340. package/generators/languages/templates/src/test/resources/i18n/messages_my.properties.ejs +4 -1
  341. package/generators/languages/templates/src/test/resources/i18n/messages_nl.properties.ejs +4 -1
  342. package/generators/languages/templates/src/test/resources/i18n/messages_pa.properties.ejs +1 -1
  343. package/generators/languages/templates/src/test/resources/i18n/messages_pl.properties.ejs +4 -1
  344. package/generators/languages/templates/src/test/resources/i18n/messages_pt_BR.properties.ejs +1 -1
  345. package/generators/languages/templates/src/test/resources/i18n/messages_pt_PT.properties.ejs +4 -1
  346. package/generators/languages/templates/src/test/resources/i18n/messages_ro.properties.ejs +4 -1
  347. package/generators/languages/templates/src/test/resources/i18n/messages_ru.properties.ejs +4 -1
  348. package/generators/languages/templates/src/test/resources/i18n/messages_si.properties.ejs +4 -1
  349. package/generators/languages/templates/src/test/resources/i18n/messages_sk.properties.ejs +4 -1
  350. package/generators/languages/templates/src/test/resources/i18n/messages_sr.properties.ejs +4 -1
  351. package/generators/languages/templates/src/test/resources/i18n/messages_sv.properties.ejs +4 -1
  352. package/generators/languages/templates/src/test/resources/i18n/messages_ta.properties.ejs +4 -1
  353. package/generators/languages/templates/src/test/resources/i18n/messages_te.properties.ejs +4 -1
  354. package/generators/languages/templates/src/test/resources/i18n/messages_th.properties.ejs +4 -1
  355. package/generators/languages/templates/src/test/resources/i18n/messages_tr.properties.ejs +4 -1
  356. package/generators/languages/templates/src/test/resources/i18n/messages_ua.properties.ejs +4 -1
  357. package/generators/languages/templates/src/test/resources/i18n/messages_uz_Cyrl_UZ.properties.ejs +4 -1
  358. package/generators/languages/templates/src/test/resources/i18n/messages_uz_Latn_UZ.properties.ejs +4 -1
  359. package/generators/languages/templates/src/test/resources/i18n/messages_vi.properties.ejs +4 -1
  360. package/generators/languages/templates/src/test/resources/i18n/messages_zh_CN.properties.ejs +4 -1
  361. package/generators/languages/templates/src/test/resources/i18n/messages_zh_TW.properties.ejs +4 -1
  362. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  363. package/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +5 -5
  364. package/generators/maven/templates/pom.xml.jhi.ejs +2 -2
  365. package/generators/openapi-client/files.js +2 -8
  366. package/generators/openapi-client/index.js +2 -0
  367. package/generators/openshift/templates/registry/consul.yml.ejs +1 -2
  368. package/generators/openshift/templates/registry/jhipster-registry.yml.ejs +1 -2
  369. package/generators/project-name/index.cjs +8 -5
  370. package/generators/server/cleanup-angular.js +37 -0
  371. package/generators/server/cleanup-cache-provider.js +46 -0
  372. package/generators/server/cleanup-cassandra.js +49 -0
  373. package/generators/server/cleanup-cucumber.js +40 -0
  374. package/generators/server/cleanup-elasticsearch.js +48 -0
  375. package/generators/server/cleanup-gradle.js +40 -0
  376. package/generators/server/cleanup-kafka.js +41 -0
  377. package/generators/server/cleanup-maven.js +37 -0
  378. package/generators/server/cleanup-mongodb.js +40 -0
  379. package/generators/server/cleanup-oauth2.js +43 -0
  380. package/generators/server/cleanup-reactive.js +38 -0
  381. package/generators/server/cleanup-sql.js +48 -0
  382. package/generators/server/cleanup.js +85 -51
  383. package/generators/server/esm.mjs +1 -0
  384. package/generators/server/files-couchbase.js +11 -10
  385. package/generators/server/files-sql.js +197 -4
  386. package/generators/server/files.js +180 -273
  387. package/generators/server/index.js +32 -86
  388. package/generators/server/needles.cjs +79 -0
  389. package/generators/server/templates/.mvn/jvm.config +1 -1
  390. package/generators/server/templates/.mvn/wrapper/maven-wrapper.jar +0 -0
  391. package/generators/server/templates/.mvn/wrapper/maven-wrapper.properties +5 -5
  392. package/generators/server/templates/.npmrc.ejs +1 -0
  393. package/generators/server/templates/build.gradle.ejs +121 -226
  394. package/generators/server/templates/couchbase/src/test/java/package/config/CouchbaseTestContainer.java.ejs +67 -0
  395. package/generators/server/templates/couchbase/src/test/java/package/config/EmbeddedCouchbase.java.ejs +30 -0
  396. package/generators/server/templates/gradle/docker.gradle.ejs +6 -0
  397. package/generators/server/templates/gradle/profile_dev.gradle.ejs +95 -3
  398. package/generators/server/templates/gradle/profile_prod.gradle.ejs +80 -4
  399. package/generators/server/templates/gradle.properties.ejs +17 -13
  400. package/generators/server/templates/pom.xml.ejs +274 -225
  401. package/generators/server/templates/settings.gradle.ejs +2 -1
  402. package/generators/server/templates/sql/common/src/main/docker/config/mariadb/my.cnf +49 -0
  403. package/generators/server/templates/sql/common/src/main/docker/config/mysql/my.cnf +82 -0
  404. package/generators/server/templates/{src → sql/common/src}/main/docker/mariadb.yml.ejs +2 -0
  405. package/generators/server/templates/{src → sql/common/src}/main/docker/mssql.yml.ejs +0 -0
  406. package/generators/server/templates/{src → sql/common/src}/main/docker/mysql.yml.ejs +2 -2
  407. package/generators/server/templates/{src → sql/common/src}/main/docker/postgresql.yml.ejs +0 -0
  408. package/generators/server/templates/{src → sql/common/src}/main/java/package/config/LiquibaseConfiguration.java.ejs +0 -0
  409. package/generators/server/templates/{src → sql/common/src}/main/resources/h2.server.properties.ejs +0 -0
  410. package/generators/server/templates/sql/common/src/test/java/package/config/EmbeddedSQL.java.ejs +30 -0
  411. package/generators/server/templates/sql/common/src/test/java/package/config/MariadbTestContainer.java.ejs +60 -0
  412. package/generators/server/templates/sql/common/src/test/java/package/config/MsSqlTestContainer.java.ejs +59 -0
  413. package/generators/server/templates/sql/common/src/test/java/package/config/MysqlTestContainer.java.ejs +69 -0
  414. package/generators/server/templates/sql/common/src/test/java/package/config/PostgreSqlTestContainer.java.ejs +59 -0
  415. package/generators/server/templates/sql/common/src/test/java/package/config/SqlTestContainer.java.ejs +28 -0
  416. package/generators/server/templates/{src → sql/common/src}/test/java/package/config/timezone/HibernateTimeZoneIT.java.ejs +0 -0
  417. package/generators/server/templates/{src → sql/common/src}/test/java/package/repository/timezone/DateTimeWrapper.java.ejs +0 -0
  418. package/generators/server/templates/{src → sql/common/src}/test/java/package/repository/timezone/DateTimeWrapperRepository.java.ejs +0 -0
  419. package/generators/server/templates/sql/common/src/test/resources/config/application-testdev.yml.ejs +93 -0
  420. package/generators/server/templates/{src/test/resources/config/application-testcontainers.yml.ejs → sql/common/src/test/resources/config/application-testprod.yml.ejs} +17 -33
  421. package/generators/server/templates/sql/common/src/test/resources/testcontainers/mariadb/my.cnf +49 -0
  422. package/generators/server/templates/sql/common/src/test/resources/testcontainers/mysql/my.cnf +83 -0
  423. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/EntityManager.java.ejs +45 -35
  424. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/rowmapper/ColumnConverter.java.ejs +0 -0
  425. package/generators/server/templates/{src → sql/reactive/src}/main/java/package/repository/rowmapper/UserRowMapper.java.ejs +0 -0
  426. package/generators/server/templates/src/main/docker/app.yml.ejs +16 -14
  427. package/generators/server/templates/src/main/docker/cassandra-migration.yml.ejs +1 -0
  428. package/generators/server/templates/src/main/docker/config/realm-config/jhipster-realm.json.ejs +62 -6
  429. package/generators/server/templates/src/main/docker/jhipster-control-center.yml.ejs +1 -1
  430. package/generators/server/templates/src/main/docker/jhipster-registry.yml.ejs +1 -1
  431. package/generators/server/templates/src/main/docker/jib/entrypoint.sh.ejs +36 -1
  432. package/generators/server/templates/src/main/docker/keycloak.yml.ejs +8 -6
  433. package/generators/server/templates/src/main/java/package/config/ApplicationProperties.java.ejs +3 -0
  434. package/generators/server/templates/src/main/java/package/config/AsyncConfiguration.java.ejs +2 -6
  435. package/generators/server/templates/src/main/java/package/config/DatabaseConfiguration_couchbase.java.ejs +1 -1
  436. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration.java.ejs +16 -30
  437. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration_reactive.java.ejs +108 -15
  438. package/generators/server/templates/src/main/java/package/config/WebConfigurer.java.ejs +6 -0
  439. package/generators/server/templates/src/main/java/package/security/DomainUserDetailsService.java.ejs +6 -3
  440. package/generators/server/templates/src/main/java/package/security/oauth2/CustomClaimConverter.java.ejs +10 -3
  441. package/generators/server/templates/src/main/java/package/service/UserService.java.ejs +12 -2
  442. package/generators/server/templates/src/main/java/package/web/rest/LogoutResource.java.ejs +1 -5
  443. package/generators/server/templates/src/main/java/package/web/rest/LogoutResource_reactive.java.ejs +1 -5
  444. package/generators/server/templates/src/main/java/package/web/rest/UserResource.java.ejs +3 -4
  445. package/generators/server/templates/src/main/resources/config/application-dev.yml.ejs +4 -3
  446. package/generators/server/templates/src/main/resources/config/application-prod.yml.ejs +1 -1
  447. package/generators/server/templates/src/main/resources/config/application.yml.ejs +1 -1
  448. package/generators/server/templates/src/main/resources/config/liquibase/changelog/initial_schema.xml.ejs +1 -1
  449. package/generators/server/templates/src/main/resources/config/liquibase/master.xml.ejs +54 -24
  450. package/generators/server/templates/src/main/resources/swagger/api.yml.ejs +3 -3
  451. package/generators/server/templates/src/test/java/package/IntegrationTest.java.ejs +32 -19
  452. package/generators/server/templates/src/test/java/package/{repository/search/UserSearchRepositoryMockConfiguration.java.ejs → config/AsyncSyncConfiguration.java.ejs} +12 -10
  453. package/generators/server/templates/src/test/java/package/config/CassandraTestContainer.java.ejs +20 -1
  454. 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
  455. package/generators/server/templates/src/test/java/package/config/ElasticsearchTestContainer.java.ejs +68 -0
  456. package/generators/server/templates/src/test/java/package/config/EmbeddedCassandra.java.ejs +19 -0
  457. package/generators/server/templates/src/test/java/package/config/EmbeddedElasticsearch.java.ejs +30 -0
  458. package/generators/server/templates/src/test/java/package/config/EmbeddedKafka.java.ejs +19 -0
  459. package/generators/server/templates/src/test/java/package/config/EmbeddedMongo.java.ejs +19 -0
  460. package/generators/server/templates/src/test/java/package/config/EmbeddedNeo4j.java.ejs +29 -0
  461. package/generators/server/templates/src/test/java/package/config/EmbeddedRedis.java.ejs +30 -0
  462. package/generators/server/templates/src/test/java/package/config/JHipsterBlockHoundIntegration.java.ejs +11 -2
  463. package/generators/server/templates/src/test/java/package/config/KafkaTestContainer.java.ejs +19 -1
  464. package/generators/server/templates/src/test/java/package/config/MongoDbTestContainer.java.ejs +5 -5
  465. package/generators/server/templates/src/test/java/package/config/Neo4jTestContainer.java.ejs +66 -0
  466. package/generators/server/templates/src/test/java/package/config/RedisTestContainer.java.ejs +57 -0
  467. package/generators/server/templates/src/test/java/package/config/{NoOpMailConfiguration.java.ejs → SpringBootTestClassOrderer.java.ejs} +16 -16
  468. package/generators/server/templates/src/test/java/package/config/TestContainersSpringContextCustomizerFactory.java.ejs +166 -30
  469. package/generators/server/templates/src/test/java/package/config/WebConfigurerTest.java.ejs +0 -23
  470. package/generators/server/templates/src/test/java/package/security/DomainUserDetailsServiceIT.java.ejs +5 -3
  471. package/generators/server/templates/src/test/java/package/service/MailServiceIT.java.ejs +7 -15
  472. package/generators/server/templates/src/test/java/package/service/UserServiceIT.java.ejs +8 -11
  473. package/generators/server/templates/src/test/java/package/service/mapper/UserMapperTest.java.ejs +1 -1
  474. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT.java.ejs +19 -73
  475. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT_skipUserManagement.java.ejs +0 -8
  476. package/generators/server/templates/src/test/java/package/web/rest/TestUtil.java.ejs +13 -10
  477. package/generators/server/templates/src/test/java/package/web/rest/UserResourceIT.java.ejs +76 -51
  478. package/generators/server/templates/src/test/resources/config/application.yml.ejs +13 -62
  479. package/generators/server/templates/src/test/resources/junit-platform.properties.ejs +1 -0
  480. package/generators/server/templates/src/test/resources/templates/mail/activationEmail.html.ejs +19 -0
  481. package/generators/server/templates/src/test/resources/templates/mail/creationEmail.html.ejs +19 -0
  482. package/generators/server/templates/src/test/resources/templates/mail/passwordResetEmail.html.ejs +21 -0
  483. package/generators/spring-controller/index.js +16 -1
  484. package/generators/sql-constants.js +85 -0
  485. package/generators/statistics.js +6 -5
  486. package/generators/upgrade/index.js +1 -1
  487. package/generators/utils.js +32 -30
  488. package/generators/workspaces/index.js +31 -28
  489. package/jdl/converters/jdl-to-json/jdl-to-json-relationship-converter.js +2 -3
  490. package/jdl/converters/json-to-jdl-converter.js +23 -6
  491. package/jdl/exporters/applications/jhipster-application-formatter.js +7 -0
  492. package/jdl/jhipster/application-options.js +8 -0
  493. package/jdl/jhipster/default-application-options.js +2 -2
  494. package/jdl/parsing/lexer/application-tokens.js +6 -0
  495. package/jdl/parsing/validator.js +7 -0
  496. package/jdl/validators/application-validator.js +3 -1
  497. package/jdl/validators/jdl-with-application-validator.js +1 -0
  498. package/jdl/validators/jdl-without-application-validator.js +3 -2
  499. package/lib/support/base.cjs +43 -0
  500. package/lib/support/needles.cjs +221 -0
  501. package/lib/support/shared-data.cjs +2 -2
  502. package/package.json +29 -27
  503. package/utils/blueprint.js +1 -1
  504. package/utils/entity.js +9 -1
  505. package/utils/field.js +24 -11
  506. package/utils/liquibase.js +5 -8
  507. package/utils/relationship.js +3 -2
  508. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-route.spec.tsx.ejs +0 -33
  509. package/generators/client/templates/react/src/main/webapp/app/shared/error/error-boundary-route.tsx.ejs +0 -17
  510. package/generators/cypress/templates/cypress-audits.json.ejs +0 -32
  511. package/generators/cypress/templates/cypress.json.ejs +0 -46
  512. package/generators/docker-compose/templates/realm-config/jhipster-users-0.json.ejs +0 -61
  513. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/no-pagination-template.ejs +0 -81
  514. package/generators/server/templates/couchbase/src/test/java/package/CouchbaseTestContainerExtension.java.ejs +0 -56
  515. package/generators/server/templates/src/main/docker/config/realm-config/jhipster-users-0.json.ejs +0 -61
  516. package/generators/server/templates/src/test/java/package/AbstractNeo4jIT.java.ejs +0 -44
  517. package/generators/server/templates/src/test/java/package/ReactiveSqlTestContainerExtension.java.ejs +0 -79
  518. package/generators/server/templates/src/test/java/package/RedisTestContainerExtension.java.ejs +0 -44
  519. package/generators/server/templates/src/test/resources/testcontainers/mariadb/my.cnf +0 -2
@@ -20,6 +20,7 @@
20
20
  pluginManagement {
21
21
  repositories {
22
22
  <%_ if (!SPRING_BOOT_VERSION.endsWith('RELEASE')) { _%>
23
+ mavenCentral()
23
24
  maven { url 'https://repo.spring.io/milestone' }
24
25
  gradlePluginPortal()
25
26
  <%_ } _%>
@@ -35,7 +36,7 @@ pluginManagement {
35
36
  <%_ if (!skipClient) { _%>
36
37
  id 'com.github.node-gradle.node' version "${gradleNodePluginVersion}"
37
38
  <%_ } _%>
38
- <%_ if (databaseTypeSql && !reactive) { _%>
39
+ <%_ if (databaseTypeSql) { _%>
39
40
  id 'org.liquibase.gradle' version "${liquibasePluginVersion}"
40
41
  <%_ } _%>
41
42
  id 'org.sonarqube' version "${sonarqubePluginVersion}"
@@ -0,0 +1,49 @@
1
+ [mysqld]
2
+ port = 3306
3
+ #socket = /tmp/mysql.sock
4
+ skip-external-locking
5
+ key_buffer_size = 16K
6
+ max_allowed_packet = 1M
7
+ table_open_cache = 4
8
+ sort_buffer_size = 64K
9
+ read_buffer_size = 256K
10
+ read_rnd_buffer_size = 256K
11
+ net_buffer_length = 2K
12
+ thread_stack = 512K
13
+ skip-host-cache
14
+ skip-name-resolve
15
+
16
+ # Don't listen on a TCP/IP port at all. This can be a security enhancement,
17
+ # if all processes that need to connect to mysqld run on the same host.
18
+ # All interaction with mysqld must be made via Unix sockets or named pipes.
19
+ # Note that using this option without enabling named pipes on Windows
20
+ # (using the "enable-named-pipe" option) will render mysqld useless!
21
+ #
22
+ #skip-networking
23
+ #server-id = 1
24
+
25
+ # Uncomment the following if you want to log updates
26
+ #log-bin=mysql-bin
27
+
28
+ # binary logging format - mixed recommended
29
+ #binlog_format=mixed
30
+
31
+ # Causes updates to non-transactional engines using statement format to be
32
+ # written directly to binary log. Before using this option make sure that
33
+ # there are no dependencies between transactional and non-transactional
34
+ # tables such as in the statement INSERT INTO t_myisam SELECT * FROM
35
+ # t_innodb; otherwise, slaves may diverge from the master.
36
+ #binlog_direct_non_transactional_updates=TRUE
37
+
38
+ # Uncomment the following if you are using InnoDB tables
39
+ innodb_data_file_path = ibdata1:10M:autoextend
40
+ # You can set .._buffer_pool_size up to 50 - 80 %
41
+ # of RAM but beware of setting memory usage too high
42
+ innodb_buffer_pool_size = 16M
43
+ #innodb_additional_mem_pool_size = 2M
44
+ # Set .._log_file_size to 25 % of buffer pool size
45
+ innodb_log_file_size = 5M
46
+ innodb_log_buffer_size = 8M
47
+ innodb_flush_log_at_trx_commit = 1
48
+ innodb_lock_wait_timeout = 200
49
+ character-set-server = utf8mb4
@@ -0,0 +1,82 @@
1
+ # For advice on how to change settings please see
2
+ # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
3
+ [mysqld]
4
+ user = mysql
5
+ datadir = /var/lib/mysql
6
+ port = 3306
7
+ #socket = /tmp/mysql.sock
8
+ skip-external-locking
9
+ key_buffer_size = 16K
10
+ max_allowed_packet = 1M
11
+ table_open_cache = 4
12
+ sort_buffer_size = 64K
13
+ read_buffer_size = 256K
14
+ read_rnd_buffer_size = 256K
15
+ net_buffer_length = 2K
16
+ skip-host-cache
17
+ skip-name-resolve
18
+
19
+ # Don't listen on a TCP/IP port at all. This can be a security enhancement,
20
+ # if all processes that need to connect to mysqld run on the same host.
21
+ # All interaction with mysqld must be made via Unix sockets or named pipes.
22
+ # Note that using this option without enabling named pipes on Windows
23
+ # (using the "enable-named-pipe" option) will render mysqld useless!
24
+ #
25
+ #skip-networking
26
+ #server-id = 1
27
+
28
+ # Uncomment the following if you want to log updates
29
+ #log-bin=mysql-bin
30
+
31
+ # binary logging format - mixed recommended
32
+ #binlog_format=mixed
33
+
34
+ # Causes updates to non-transactional engines using statement format to be
35
+ # written directly to binary log. Before using this option make sure that
36
+ # there are no dependencies between transactional and non-transactional
37
+ # tables such as in the statement INSERT INTO t_myisam SELECT * FROM
38
+ # t_innodb; otherwise, slaves may diverge from the master.
39
+ #binlog_direct_non_transactional_updates=TRUE
40
+
41
+ # Uncomment the following if you are using InnoDB tables
42
+ innodb_data_file_path = ibdata1:10M:autoextend
43
+ # You can set .._buffer_pool_size up to 50 - 80 %
44
+ # of RAM but beware of setting memory usage too high
45
+ innodb_buffer_pool_size = 16M
46
+ #innodb_additional_mem_pool_size = 2M
47
+ # Set .._log_file_size to 25 % of buffer pool size
48
+ innodb_log_file_size = 5M
49
+ innodb_log_buffer_size = 8M
50
+ innodb_flush_log_at_trx_commit = 1
51
+ innodb_lock_wait_timeout = 50
52
+
53
+ symbolic-links=0
54
+ innodb_buffer_pool_size=5M
55
+ innodb_log_buffer_size=256K
56
+ max_connections=20
57
+ key_buffer_size=8
58
+ thread_cache_size=0
59
+ host_cache_size=0
60
+ innodb_ft_cache_size=1600000
61
+ innodb_ft_total_cache_size=32000000
62
+ #### These optimize the memory use of MySQL
63
+ #### http://www.tocker.ca/2014/03/10/configuring-mysql-to-use-minimal-memory.html
64
+
65
+ # per thread or per operation settings
66
+ thread_stack=131072
67
+ sort_buffer_size=32K
68
+ read_buffer_size=8200
69
+ read_rnd_buffer_size=8200
70
+ max_heap_table_size=16K
71
+ tmp_table_size=1K
72
+ bulk_insert_buffer_size=0
73
+ join_buffer_size=128
74
+ net_buffer_length=1K
75
+ innodb_sort_buffer_size=64K
76
+
77
+ #settings that relate to the binary log (if enabled)
78
+ binlog_cache_size=4K
79
+ binlog_stmt_cache_size=4K
80
+
81
+ performance_schema = off
82
+ character-set-server = utf8mb4
@@ -21,6 +21,8 @@ version: '<%= DOCKER_COMPOSE_FORMAT_VERSION %>'
21
21
  services:
22
22
  <%= baseName.toLowerCase() %>-mariadb:
23
23
  image: <%= DOCKER_MARIADB %>
24
+ volumes:
25
+ - ./config/mariadb:/etc/mysql/conf.d
24
26
  # volumes:
25
27
  # - ~/volumes/jhipster/<%= baseName %>/mysql/:/var/lib/mysql/
26
28
  environment:
@@ -21,8 +21,8 @@ version: '<%= DOCKER_COMPOSE_FORMAT_VERSION %>'
21
21
  services:
22
22
  <%= baseName.toLowerCase() %>-mysql:
23
23
  image: <%= DOCKER_MYSQL %>
24
- platform: linux/x86_64
25
- # volumes:
24
+ volumes:
25
+ - ./config/mysql:/etc/mysql/conf.d
26
26
  # - ~/volumes/jhipster/<%= baseName %>/mysql/:/var/lib/mysql/
27
27
  environment:
28
28
  - MYSQL_ALLOW_EMPTY_PASSWORD=yes
@@ -0,0 +1,30 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+
22
+ import java.lang.annotation.ElementType;
23
+ import java.lang.annotation.Retention;
24
+ import java.lang.annotation.RetentionPolicy;
25
+ import java.lang.annotation.Target;
26
+
27
+ @Target(ElementType.TYPE)
28
+ @Retention(RetentionPolicy.RUNTIME)
29
+ public @interface EmbeddedSQL {
30
+ }
@@ -0,0 +1,60 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+ import org.testcontainers.containers.JdbcDatabaseContainer;
22
+ import org.slf4j.Logger;
23
+ import org.slf4j.LoggerFactory;
24
+ import org.testcontainers.containers.MariaDBContainer;
25
+ import org.testcontainers.containers.output.Slf4jLogConsumer;
26
+
27
+ import java.util.Collections;
28
+
29
+ public class MariadbTestContainer implements SqlTestContainer {
30
+
31
+ private static final Logger log = LoggerFactory.getLogger(MariadbTestContainer.class);
32
+
33
+ private MariaDBContainer<?> mariaDBContainer;
34
+
35
+ @Override
36
+ public void destroy() {
37
+ if (null != mariaDBContainer && mariaDBContainer.isRunning()) {
38
+ mariaDBContainer.stop();
39
+ }
40
+ }
41
+
42
+ @Override
43
+ public void afterPropertiesSet() {
44
+ if (null == mariaDBContainer) {
45
+ mariaDBContainer = new MariaDBContainer<>("<%= DOCKER_MARIADB %>")
46
+ .withDatabaseName("<%= baseName %>")
47
+ .withTmpFs(Collections.singletonMap("/testtmpfs", "rw"))
48
+ .withLogConsumer(new Slf4jLogConsumer(log))
49
+ .withReuse(true)
50
+ .withConfigurationOverride("testcontainers/mariadb");
51
+ }
52
+ if (!mariaDBContainer.isRunning()) {
53
+ mariaDBContainer.start();
54
+ }
55
+ }
56
+ @Override
57
+ public JdbcDatabaseContainer<?> getTestContainer() {
58
+ return mariaDBContainer;
59
+ }
60
+ }
@@ -0,0 +1,59 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+ import org.testcontainers.containers.JdbcDatabaseContainer;
22
+ import org.slf4j.Logger;
23
+ import org.slf4j.LoggerFactory;
24
+ import org.testcontainers.containers.MSSQLServerContainer;
25
+ import org.testcontainers.containers.output.Slf4jLogConsumer;
26
+
27
+ import java.util.Collections;
28
+
29
+ public class MsSqlServerContainer implements SqlTestContainer {
30
+
31
+ private static final Logger log = LoggerFactory.getLogger(MsSqlServerContainer.class);
32
+
33
+ private MSSQLServerContainer<?> mSSQLServerContainer;
34
+
35
+ @Override
36
+ public void destroy() {
37
+ if (null != mSSQLServerContainer && mSSQLServerContainer.isRunning()) {
38
+ mSSQLServerContainer.stop();
39
+ }
40
+ }
41
+ @Override
42
+ public void afterPropertiesSet() {
43
+ if (null == mSSQLServerContainer) {
44
+ mSSQLServerContainer = new MSSQLServerContainer<>("<%= DOCKER_MSSQL %>")
45
+ .withDatabaseName("<%= baseName %>")
46
+ .withTmpFs(Collections.singletonMap("/testtmpfs", "rw"))
47
+ .withLogConsumer(new Slf4jLogConsumer(log))
48
+ .withReuse(true);
49
+ }
50
+ if (!mSSQLServerContainer.isRunning()) {
51
+ mSSQLServerContainer.start();
52
+ }
53
+ }
54
+
55
+ @Override
56
+ public JdbcDatabaseContainer<?> getTestContainer() {
57
+ return mSSQLServerContainer;
58
+ }
59
+ }
@@ -0,0 +1,69 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+ import org.testcontainers.containers.JdbcDatabaseContainer;
22
+ import org.slf4j.Logger;
23
+ import org.slf4j.LoggerFactory;
24
+ import org.testcontainers.containers.MySQLContainer;
25
+ import org.testcontainers.containers.output.Slf4jLogConsumer;
26
+
27
+ import java.util.Collections;
28
+
29
+ public class MysqlTestContainer implements SqlTestContainer {
30
+
31
+ private static final Logger log = LoggerFactory.getLogger(MysqlTestContainer.class);
32
+ private long memoryInBytes = 100 * 1024 * 1024;
33
+ private long memorySwapInBytes = 200 * 1024 * 1024;
34
+
35
+ private MySQLContainer<?> mysqlContainer;
36
+
37
+ @Override
38
+ public void destroy() {
39
+ if (null != mysqlContainer && mysqlContainer.isRunning()) {
40
+ mysqlContainer.stop();
41
+ }
42
+ }
43
+ @Override
44
+ public void afterPropertiesSet() {
45
+ if (null == mysqlContainer) {
46
+ mysqlContainer = new MySQLContainer<>("<%= DOCKER_MYSQL %>-debian")
47
+ .withDatabaseName("<%= baseName %>")
48
+ .withTmpFs(Collections.singletonMap("/testtmpfs", "rw"))
49
+ .withLogConsumer(new Slf4jLogConsumer(log))
50
+ .withReuse(true)
51
+ .withPrivilegedMode(true)
52
+ .withConfigurationOverride("testcontainers/mysql")
53
+ .withCreateContainerCmdModifier(cmd ->
54
+ cmd.getHostConfig()
55
+ .withMemory(memoryInBytes)
56
+ .withMemorySwap(memorySwapInBytes)
57
+ );
58
+
59
+ }
60
+ if (!mysqlContainer.isRunning()) {
61
+ mysqlContainer.start();
62
+ }
63
+ }
64
+
65
+ @Override
66
+ public JdbcDatabaseContainer<?> getTestContainer() {
67
+ return mysqlContainer;
68
+ }
69
+ }
@@ -0,0 +1,59 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+ import org.testcontainers.containers.JdbcDatabaseContainer;
22
+ import org.slf4j.Logger;
23
+ import org.slf4j.LoggerFactory;
24
+ import org.testcontainers.containers.PostgreSQLContainer;
25
+ import org.testcontainers.containers.output.Slf4jLogConsumer;
26
+ import java.util.Collections;
27
+
28
+ public class PostgreSqlTestContainer implements SqlTestContainer {
29
+
30
+ private static final Logger log = LoggerFactory.getLogger(PostgreSqlTestContainer.class);
31
+
32
+
33
+ private PostgreSQLContainer<?> postgreSQLContainer;
34
+
35
+ @Override
36
+ public void destroy() {
37
+ if (null != postgreSQLContainer && postgreSQLContainer.isRunning()) {
38
+ postgreSQLContainer.stop();
39
+ }
40
+ }
41
+ @Override
42
+ public void afterPropertiesSet() {
43
+ if (null == postgreSQLContainer) {
44
+ postgreSQLContainer = new PostgreSQLContainer<>("<%= DOCKER_POSTGRESQL %>")
45
+ .withDatabaseName("<%= baseName %>")
46
+ .withTmpFs(Collections.singletonMap("/testtmpfs", "rw"))
47
+ .withLogConsumer(new Slf4jLogConsumer(log))
48
+ .withReuse(true);
49
+ }
50
+ if (!postgreSQLContainer.isRunning()) {
51
+ postgreSQLContainer.start();
52
+ }
53
+ }
54
+
55
+ @Override
56
+ public JdbcDatabaseContainer<?> getTestContainer() {
57
+ return postgreSQLContainer;
58
+ }
59
+ }
@@ -0,0 +1,28 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ package <%= packageName %>.config;
20
+
21
+ import org.springframework.beans.factory.DisposableBean;
22
+ import org.springframework.beans.factory.InitializingBean;
23
+ import org.testcontainers.containers.JdbcDatabaseContainer;
24
+
25
+ public interface SqlTestContainer extends InitializingBean, DisposableBean {
26
+
27
+ JdbcDatabaseContainer<?> getTestContainer();
28
+ }
@@ -0,0 +1,93 @@
1
+ <%#
2
+ Copyright 2013-2022 the original author or authors from the JHipster project.
3
+
4
+ This file is part of the JHipster project, see https://www.jhipster.tech/
5
+ for more information.
6
+
7
+ Licensed under the Apache License, Version 2.0 (the "License");
8
+ you may not use this file except in compliance with the License.
9
+ You may obtain a copy of the License at
10
+
11
+ https://www.apache.org/licenses/LICENSE-2.0
12
+
13
+ Unless required by applicable law or agreed to in writing, software
14
+ distributed under the License is distributed on an "AS IS" BASIS,
15
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ See the License for the specific language governing permissions and
17
+ limitations under the License.
18
+ -%>
19
+ # ===================================================================
20
+ # Spring Boot configuration.
21
+ #
22
+ # This configuration is used for unit/integration tests with testcontainers database containers.
23
+ #
24
+ # To activate this configuration launch integration tests with the 'testcontainers' profile
25
+ #
26
+ # More information on database containers: https://www.testcontainers.org/modules/databases/
27
+ <%_ if (devDatabaseTypeMssql) { _%>
28
+ #
29
+ # You are required to accept EULA license for SQL server containers.
30
+ # Follow the instructions at https://www.testcontainers.org/modules/databases/mssqlserver/
31
+ <%_ } _%>
32
+ <%_ if (devDatabaseTypeOracle) { _%>
33
+ #
34
+ # You have to specify an Oracle image name in a classpath file named testcontainers.properties.
35
+ # Follow the instructions at https://www.testcontainers.org/modules/databases/oraclexe/
36
+ <%_ } _%>
37
+ # ===================================================================
38
+
39
+ spring:
40
+ <%_ if (reactive) { _%>
41
+ <%_ if (devDatabaseTypeH2Any) { _%>
42
+ r2dbc:
43
+ <%_ if (devDatabaseTypeH2Memory) { _%>
44
+ url: <%- getR2DBCUrl(devDatabaseType, { databaseName: lowercaseBaseName, itests: true }) %>
45
+ <%_ } else { _%>
46
+ url: <%- getR2DBCUrl(devDatabaseType, { databaseName: lowercaseBaseName, localDirectory: `././${BUILD_DIR}h2db/testdb` }) %>
47
+ <%_ } _%>
48
+ username: <%= lowercaseBaseName %>
49
+ password:
50
+ liquibase:
51
+ <%_ if (devDatabaseTypeH2Memory) { _%>
52
+ url: <%- getJDBCUrl(devDatabaseType, { databaseName: lowercaseBaseName, itests: true }) %>
53
+ <%_ } else { _%>
54
+ url: <%- getJDBCUrl(devDatabaseType, { databaseName: lowercaseBaseName, localDirectory: `./${BUILD_DIR}h2db/testdb` }) %>
55
+ <%_ } _%>
56
+ <%_ } _%>
57
+ <%_ } else { _%>
58
+ datasource:
59
+ type: com.zaxxer.hikari.HikariDataSource
60
+ hikari:
61
+ auto-commit: false
62
+ <%_ if (!devDatabaseTypeH2Any) { _%>
63
+ poolName: Hikari
64
+ maximum-pool-size: 1
65
+ <%_ if (devDatabaseTypeMysql || devDatabaseTypeMariadb || devDatabaseTypeMssql) { _%>
66
+ data-source-properties:
67
+ cachePrepStmts: true
68
+ prepStmtCacheSize: 250
69
+ prepStmtCacheSqlLimit: 2048
70
+ useServerPrepStmts: true
71
+ <%_ } _%>
72
+ <%_ } _%>
73
+ jpa:
74
+ <%_ if (devDatabaseTypePostgres) { _%>
75
+ database-platform: tech.jhipster.domain.util.FixedPostgreSQL10Dialect
76
+ <%_ } _%>
77
+ open-in-view: false
78
+ hibernate:
79
+ ddl-auto: none
80
+ naming:
81
+ physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
82
+ implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
83
+ properties:
84
+ hibernate.id.new_generator_mappings: true
85
+ hibernate.connection.provider_disables_autocommit: true
86
+ hibernate.cache.use_second_level_cache: false
87
+ hibernate.cache.use_query_cache: false
88
+ hibernate.generate_statistics: false
89
+ hibernate.hbm2ddl.auto: validate
90
+ hibernate.jdbc.time_zone: UTC
91
+ hibernate.query.fail_on_pagination_over_collection_fetch: true
92
+ <%_ } _%>
93
+
@@ -39,31 +39,10 @@
39
39
  spring:
40
40
  datasource:
41
41
  type: com.zaxxer.hikari.HikariDataSource
42
- driver-class-name: org.testcontainers.jdbc.ContainerDatabaseDriver
43
- <%_ if (prodDatabaseTypeMysql) { _%>
44
- url: jdbc:tc:mysql:<%= containerVersion %>:///<%= baseName %>?useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=${user.timezone}&TC_TMPFS=/testtmpfs:rw
45
- username: root
46
- password:
47
- <%_ } else if (prodDatabaseTypeMariadb) { _%>
48
- url: jdbc:tc:mariadb:<%= containerVersion %>:///<%= baseName %>?TC_MY_CNF=testcontainers/mariadb&useLegacyDatetimeCode=false&serverTimezone=${user.timezone}&TC_TMPFS=/testtmpfs:rw
49
- username: root
50
- password:
51
- <%_ } else if (prodDatabaseTypePostgres) { _%>
52
- url: jdbc:tc:postgresql:<%= containerVersion %>:///<%= baseName %>?TC_TMPFS=/testtmpfs:rw
53
- username: <%= baseName %>
54
- password:
55
- <%_ } else if (prodDatabaseTypeMssql) { _%>
56
- url: jdbc:tc:sqlserver:<%= containerVersion %>://;database=<%= baseName %>?TC_TMPFS=/testtmpfs:rw
57
- username: SA
58
- password: yourStrong(!)Password
59
- <%_ } else if (prodDatabaseTypeOracle) { _%>
60
- url: jdbc:tc:oracle:thin:@///ORCL?TC_TMPFS=/testtmpfs:rw
61
- username: system
62
- password: oracle
63
- <%_ } _%>
64
42
  hikari:
65
43
  poolName: Hikari
66
44
  auto-commit: false
45
+ maximum-pool-size: 1
67
46
  <%_ if (prodDatabaseTypeMysql || prodDatabaseTypeMariadb || prodDatabaseTypeMssql) { _%>
68
47
  data-source-properties:
69
48
  cachePrepStmts: true
@@ -72,16 +51,21 @@ spring:
72
51
  useServerPrepStmts: true
73
52
  <%_ } _%>
74
53
  jpa:
75
- <%_ if (prodDatabaseTypeMysql) { _%>
76
- database-platform: org.hibernate.dialect.MySQL8Dialect
77
- <%_ } else if (prodDatabaseTypeMariadb) { _%>
78
- database-platform: org.hibernate.dialect.MariaDB103Dialect
79
- <%_ } else if (prodDatabaseTypePostgres) { _%>
54
+ <%_ if (prodDatabaseTypePostgres) { _%>
80
55
  database-platform: tech.jhipster.domain.util.FixedPostgreSQL10Dialect
81
- <%_ } else if (prodDatabaseTypeOracle) { _%>
82
- database-platform: org.hibernate.dialect.Oracle12cDialect
83
- <%_ } else if (prodDatabaseTypeMssql) { _%>
84
- database-platform: org.hibernate.dialect.SQLServer2012Dialect
85
- <%_ } else { _%>
86
- database-platform: tech.jhipster.domain.util.FixedH2Dialect
87
56
  <%_ } _%>
57
+ open-in-view: false
58
+ hibernate:
59
+ ddl-auto: none
60
+ naming:
61
+ physical-strategy: org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy
62
+ implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
63
+ properties:
64
+ hibernate.id.new_generator_mappings: true
65
+ hibernate.connection.provider_disables_autocommit: true
66
+ hibernate.cache.use_second_level_cache: false
67
+ hibernate.cache.use_query_cache: false
68
+ hibernate.generate_statistics: false
69
+ hibernate.hbm2ddl.auto: validate
70
+ hibernate.jdbc.time_zone: UTC
71
+ hibernate.query.fail_on_pagination_over_collection_fetch: true