generator-jhipster 8.9.0 → 8.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/README.md +1 -1
  2. package/dist/cli/cli.mjs +0 -13
  3. package/dist/cli/download.mjs +2 -3
  4. package/dist/cli/environment-builder.mjs +5 -3
  5. package/dist/generators/angular/generator.d.ts +10 -1
  6. package/dist/generators/angular/resources/package.json +27 -27
  7. package/dist/generators/angular/templates/README.md.jhi.client.angular.ejs +1 -1
  8. package/dist/generators/angular/templates/eslint.config.js.jhi.angular.ejs +4 -6
  9. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +1 -1
  10. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +3 -3
  11. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.spec.ts.ejs +1 -1
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +6 -4
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +1 -1
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.spec.ts.ejs +1 -1
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +1 -1
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +1 -1
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.spec.ts.ejs +1 -1
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +1 -1
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.spec.ts.ejs +1 -1
  20. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.spec.ts.ejs +1 -1
  21. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.ts.ejs +1 -1
  22. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.spec.ts.ejs +1 -1
  23. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +8 -13
  24. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +1 -1
  25. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.spec.ts.ejs +1 -1
  26. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.spec.ts.ejs +1 -1
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +3 -3
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +2 -2
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +1 -1
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.spec.ts.ejs +3 -3
  31. package/dist/generators/angular/templates/src/main/webapp/app/app-page-title-strategy.ts.ejs +1 -3
  32. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +1 -1
  33. package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +1 -1
  34. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.ts.ejs +1 -2
  35. package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.spec.ts.ejs +0 -1
  36. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +1 -1
  37. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.spec.ts.ejs +2 -2
  38. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +2 -2
  39. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +4 -5
  40. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +4 -4
  41. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +2 -2
  42. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.spec.ts.ejs +4 -4
  43. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +2 -2
  44. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +7 -7
  45. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.spec.ts.ejs +4 -4
  46. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.html.ejs +4 -4
  47. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +3 -3
  48. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.spec.ts.ejs +1 -1
  49. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +8 -6
  50. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +3 -3
  51. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +8 -8
  52. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.spec.ts.ejs +2 -2
  53. package/dist/generators/angular/templates/src/main/webapp/app/shared/pagination/item-count.component.ts.ejs +1 -1
  54. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.service.ts.ejs +3 -3
  55. package/dist/generators/app/generator.d.ts +4 -1
  56. package/dist/generators/base/api.d.ts +3 -1
  57. package/dist/generators/base/shared-data.js +1 -0
  58. package/dist/generators/base/support/contents.d.ts +10 -1
  59. package/dist/generators/base/support/contents.js +9 -0
  60. package/dist/generators/base/support/index.d.ts +1 -0
  61. package/dist/generators/base/support/index.js +1 -0
  62. package/dist/generators/base/support/needles.d.ts +14 -5
  63. package/dist/generators/base/support/needles.js +21 -17
  64. package/dist/generators/base/support/os.d.ts +1 -0
  65. package/dist/generators/base/support/os.js +20 -0
  66. package/dist/generators/base/support/write-files.d.ts +18 -0
  67. package/dist/generators/base/support/write-files.js +0 -26
  68. package/dist/generators/base-application/support/prepare-entity.js +14 -26
  69. package/dist/generators/base-application/support/update-application-entities-transform.js +3 -2
  70. package/dist/generators/base-application/types.d.ts +5 -0
  71. package/dist/generators/base-core/generator.js +7 -4
  72. package/dist/generators/bootstrap/generator.d.ts +6 -1
  73. package/dist/generators/bootstrap/generator.js +31 -2
  74. package/dist/generators/bootstrap/support/auto-crlf-transform.js +2 -2
  75. package/dist/generators/bootstrap/support/eslint-worker.js +5 -2
  76. package/dist/generators/bootstrap-application/generator.d.ts +4 -1
  77. package/dist/generators/bootstrap-application-base/generator.d.ts +12 -2
  78. package/dist/generators/bootstrap-application-base/generator.js +4 -3
  79. package/dist/generators/bootstrap-application-client/generator.d.ts +3 -1
  80. package/dist/generators/bootstrap-application-server/generator.d.ts +8 -1
  81. package/dist/generators/bootstrap-workspaces/generator.d.ts +9 -1
  82. package/dist/generators/ci-cd/generator.d.ts +6 -1
  83. package/dist/generators/client/generator.d.ts +13 -1
  84. package/dist/generators/client/generators/common/generator.d.ts +1 -1
  85. package/dist/generators/client/resources/package.json +5 -5
  86. package/dist/generators/client/templates/src/main/webapp/swagger-ui/index.html.ejs +8 -6
  87. package/dist/generators/common/generator.d.ts +8 -1
  88. package/dist/generators/common/resources/package.json +2 -2
  89. package/dist/generators/cucumber/generator.d.ts +2 -1
  90. package/dist/generators/cypress/generator.d.ts +7 -1
  91. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/logout.cy.ts.ejs +11 -3
  92. package/dist/generators/cypress/templates/src/test/javascript/cypress/support/oauth2.ts.ejs +4 -4
  93. package/dist/generators/docker/generator.d.ts +4 -1
  94. package/dist/generators/docker-compose/generator.d.ts +23 -1
  95. package/dist/generators/entities/generator.d.ts +4 -1
  96. package/dist/generators/entity/generator.d.ts +5 -1
  97. package/dist/generators/export-jdl/generator.d.ts +3 -1
  98. package/dist/generators/feign-client/generator.d.ts +2 -1
  99. package/dist/generators/feign-client/templates/src/test/java/_package_/client/AuthorizationHeaderUtilTest.java.ejs +1 -1
  100. package/dist/generators/gatling/generator.d.ts +3 -1
  101. package/dist/generators/generate-blueprint/constants.d.ts +1 -1
  102. package/dist/generators/generate-blueprint/constants.js +1 -1
  103. package/dist/generators/generate-blueprint/files.js +2 -2
  104. package/dist/generators/generate-blueprint/generator.d.ts +10 -1
  105. package/dist/generators/generate-blueprint/generator.js +16 -16
  106. package/dist/generators/generate-blueprint/resources/package.json +3 -3
  107. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +1 -1
  108. package/dist/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +1 -0
  109. package/dist/generators/generator-constants.d.ts +1 -1
  110. package/dist/generators/generator-constants.js +2 -2
  111. package/dist/generators/git/generator.d.ts +5 -1
  112. package/dist/generators/gradle/generator.d.ts +5 -1
  113. package/dist/generators/gradle/generators/code-quality/generator.d.ts +2 -1
  114. package/dist/generators/gradle/generators/jib/generator.d.ts +2 -1
  115. package/dist/generators/gradle/generators/node-gradle/generator.d.ts +2 -1
  116. package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  117. package/dist/generators/heroku/generator.d.ts +6 -1
  118. package/dist/generators/info/generator.d.ts +1 -1
  119. package/dist/generators/init/generator.d.ts +2 -1
  120. package/dist/generators/init/resources/.node-version +1 -1
  121. package/dist/generators/java/generators/bootstrap/generator.d.ts +8 -2
  122. package/dist/generators/java/generators/bootstrap/generator.js +17 -3
  123. package/dist/generators/java/generators/build-tool/generator.d.ts +2 -1
  124. package/dist/generators/java/generators/code-quality/generator.d.ts +2 -1
  125. package/dist/generators/java/generators/domain/generator.d.ts +6 -1
  126. package/dist/generators/java/generators/graalvm/generator.d.ts +6 -1
  127. package/dist/generators/java/generators/graalvm/internal/constants.d.ts +1 -1
  128. package/dist/generators/java/generators/graalvm/internal/constants.js +2 -2
  129. package/dist/generators/java/generators/graalvm/resources/gradle/libs.versions.toml +1 -1
  130. package/dist/generators/java/generators/jib/generator.d.ts +2 -1
  131. package/dist/generators/java/generators/node/generator.d.ts +4 -1
  132. package/dist/generators/java/generators/node/generator.js +2 -1
  133. package/dist/generators/java/generators/openapi-generator/generator.d.ts +2 -1
  134. package/dist/generators/java/generators/server/generator.d.ts +1 -1
  135. package/dist/generators/java/support/index.d.ts +2 -0
  136. package/dist/generators/java/support/index.js +2 -0
  137. package/dist/generators/java/support/java-enum.d.ts +8 -0
  138. package/dist/generators/java/support/java-enum.js +20 -0
  139. package/dist/generators/java/support/java-file-edit.d.ts +18 -0
  140. package/dist/generators/java/support/java-file-edit.js +94 -0
  141. package/dist/generators/java/types.d.ts +37 -1
  142. package/dist/generators/javascript/generators/bootstrap/generator.d.ts +4 -1
  143. package/dist/generators/javascript/generators/eslint/generator.d.ts +4 -1
  144. package/dist/generators/javascript/generators/eslint/templates/eslint.config.js.jhi.ejs +8 -0
  145. package/dist/generators/javascript/generators/husky/generator.d.ts +3 -1
  146. package/dist/generators/javascript/generators/prettier/generator.d.ts +4 -1
  147. package/dist/generators/javascript/resources/package.json +3 -3
  148. package/dist/generators/jdl/generator.d.ts +3 -1
  149. package/dist/generators/kubernetes/generator.d.ts +25 -19
  150. package/dist/generators/kubernetes-helm/generator.d.ts +18 -12
  151. package/dist/generators/kubernetes-knative/generator.d.ts +14 -8
  152. package/dist/generators/languages/generator.d.ts +9 -1
  153. package/dist/generators/languages/support/languages.js +1 -0
  154. package/dist/generators/languages/templates/entity/i18n/entity_he.json.ejs +78 -0
  155. package/dist/generators/languages/templates/src/main/resources/i18n/messages_he.properties.ejs +41 -0
  156. package/dist/generators/languages/templates/src/main/webapp/i18n/he/activate.json.ejs +27 -0
  157. package/dist/generators/languages/templates/src/main/webapp/i18n/he/configuration.json +11 -0
  158. package/dist/generators/languages/templates/src/main/webapp/i18n/he/error.json +15 -0
  159. package/dist/generators/languages/templates/src/main/webapp/i18n/he/gateway.json +16 -0
  160. package/dist/generators/languages/templates/src/main/webapp/i18n/he/global.json.ejs +172 -0
  161. package/dist/generators/languages/templates/src/main/webapp/i18n/he/health.json.ejs +75 -0
  162. package/dist/generators/languages/templates/src/main/webapp/i18n/he/home.json.ejs +20 -0
  163. package/dist/generators/languages/templates/src/main/webapp/i18n/he/login.json +20 -0
  164. package/dist/generators/languages/templates/src/main/webapp/i18n/he/logs.json +12 -0
  165. package/dist/generators/languages/templates/src/main/webapp/i18n/he/metrics.json +103 -0
  166. package/dist/generators/languages/templates/src/main/webapp/i18n/he/password.json +13 -0
  167. package/dist/generators/languages/templates/src/main/webapp/i18n/he/register.json +25 -0
  168. package/dist/generators/languages/templates/src/main/webapp/i18n/he/reset.json.ejs +45 -0
  169. package/dist/generators/languages/templates/src/main/webapp/i18n/he/sessions.json +16 -0
  170. package/dist/generators/languages/templates/src/main/webapp/i18n/he/settings.json +33 -0
  171. package/dist/generators/languages/templates/src/main/webapp/i18n/he/tracker.json +13 -0
  172. package/dist/generators/languages/templates/src/main/webapp/i18n/he/user-management.json +32 -0
  173. package/dist/generators/languages/templates/src/test/resources/i18n/messages_he.properties.ejs +4 -0
  174. package/dist/generators/liquibase/generator.d.ts +9 -1
  175. package/dist/generators/liquibase/generator.js +3 -19
  176. package/dist/generators/maven/generator.d.ts +6 -1
  177. package/dist/generators/maven/generators/code-quality/generator.d.ts +1 -1
  178. package/dist/generators/maven/generators/frontend-plugin/generator.d.ts +1 -1
  179. package/dist/generators/maven/generators/jib/generator.d.ts +1 -1
  180. package/dist/generators/project-name/generator.d.ts +3 -1
  181. package/dist/generators/react/generator.d.ts +15 -1
  182. package/dist/generators/react/resources/package.json +34 -34
  183. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-delete-dialog.tsx.ejs +2 -1
  184. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.reducer.ts.ejs +4 -4
  185. package/dist/generators/react/templates/src/main/webapp/app/entities/menu.tsx.ejs +2 -2
  186. package/dist/generators/react/templates/src/main/webapp/app/entities/routes.tsx.ejs +1 -1
  187. package/dist/generators/react/templates/src/main/webapp/app/modules/administration/administration.reducer.spec.ts.ejs +0 -6
  188. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/application-profile.spec.ts.ejs +0 -6
  189. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/locale.spec.ts.ejs +0 -47
  190. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +1 -1
  191. package/dist/generators/react/templates/src/main/webapp/app/shared/util/entity-utils.ts.ejs +1 -1
  192. package/dist/generators/server/generator.d.ts +7 -1
  193. package/dist/generators/server/resources/Dockerfile +17 -17
  194. package/dist/generators/server/resources/gradle/libs.versions.toml +15 -15
  195. package/dist/generators/server/resources/pom.xml +16 -16
  196. package/dist/generators/server/types.d.ts +22 -0
  197. package/dist/generators/spring-boot/generator.d.ts +14 -2
  198. package/dist/generators/spring-boot/generator.js +35 -4
  199. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +158 -148
  200. package/dist/generators/spring-boot/templates/src/main/java/_package_/Application.java.ejs +11 -0
  201. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/_entityClass_QueryService.java.ejs +12 -23
  202. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityJwtConfiguration.java.ejs +0 -1
  203. package/dist/generators/spring-boot/templates/src/main/java/_package_/security/DomainUserDetailsService.java.ejs +61 -5
  204. package/dist/generators/spring-boot/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +29 -1
  205. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +7 -6
  206. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_oauth2.java.ejs +8 -6
  207. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +8 -6
  208. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AuthenticateController.java.ejs +17 -11
  209. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/errors/ExceptionTranslator.java.ejs +8 -3
  210. package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +3 -0
  211. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +3 -3
  212. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +4 -4
  213. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +4 -4
  214. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +3 -3
  215. package/dist/generators/spring-boot/templates/src/test/java/_package_/config/JHipsterBlockHoundIntegration.java.ejs +0 -2
  216. package/dist/generators/spring-boot/templates/src/test/java/_package_/config/WebConfigurerTest.java.ejs +1 -1
  217. package/dist/generators/spring-boot/templates/src/test/java/_package_/management/SecurityMetersServiceTests.java.ejs +1 -1
  218. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +2 -2
  219. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/SecurityUtilsUnitTest_imperative.java.ejs +35 -11
  220. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/SecurityUtilsUnitTest_reactive.java.ejs +35 -6
  221. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/JwtAuthenticationTestUtils.java.ejs +3 -2
  222. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TestAuthenticationResource.java.ejs +5 -5
  223. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationIT.java.ejs +2 -2
  224. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationSecurityMetersIT.java.ejs +1 -4
  225. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/oauth2/CustomClaimConverterIT.java.ejs +1 -1
  226. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/MailServiceIT.java.ejs +1 -1
  227. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +1 -1
  228. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_imperative.java.ejs +1 -1
  229. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_reactive.java.ejs +1 -2
  230. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +9 -15
  231. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +8 -17
  232. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_skipUserManagement.java.ejs +6 -15
  233. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/LogoutResourceIT.java.ejs +1 -1
  234. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/errors/ExceptionTranslatorIT_reactive.java.ejs +1 -1
  235. package/dist/generators/spring-cache/cleanup.d.ts +2 -20
  236. package/dist/generators/spring-cache/cleanup.js +24 -2
  237. package/dist/generators/spring-cache/files.js +0 -6
  238. package/dist/generators/spring-cache/generator.d.ts +5 -1
  239. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
  240. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +0 -14
  241. package/dist/generators/spring-cloud/generators/gateway/generator.d.ts +5 -1
  242. package/dist/generators/spring-cloud-stream/generator.d.ts +2 -1
  243. package/dist/generators/spring-cloud-stream/generators/kafka/generator.d.ts +2 -1
  244. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/test/java/_package_/web/rest/KafkaResourceIT_reactive.java.ejs +1 -1
  245. package/dist/generators/spring-cloud-stream/generators/pulsar/generator.d.ts +2 -1
  246. package/dist/generators/spring-data-cassandra/generator.d.ts +4 -1
  247. package/dist/generators/spring-data-couchbase/generator.d.ts +9 -1
  248. package/dist/generators/spring-data-elasticsearch/generator.d.ts +10 -1
  249. package/dist/generators/spring-data-mongodb/generator.d.ts +9 -1
  250. package/dist/generators/spring-data-neo4j/generator.d.ts +11 -1
  251. package/dist/generators/spring-data-relational/generator.d.ts +11 -1
  252. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/timezone/HibernateTimeZoneIT.java.ejs +2 -2
  253. package/dist/generators/spring-websocket/generator.d.ts +2 -1
  254. package/dist/generators/upgrade/generator.d.ts +3 -1
  255. package/dist/generators/vue/cleanup.js +7 -1
  256. package/dist/generators/vue/files-vue.js +3 -8
  257. package/dist/generators/vue/generator.d.ts +9 -1
  258. package/dist/generators/vue/resources/package.json +31 -31
  259. package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.ts.ejs +9 -9
  260. package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +21 -7
  261. package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +23 -9
  262. package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.service.ts.ejs +1 -1
  263. package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.vue.ejs +1 -1
  264. package/dist/generators/vue/templates/src/main/webapp/app/account/change-password/change-password.vue.ejs +1 -1
  265. package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.component.spec.ts.ejs +22 -10
  266. package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.component.ts.ejs +24 -5
  267. package/dist/generators/vue/templates/src/main/webapp/app/account/login-modal.ts.ejs +38 -0
  268. package/dist/generators/vue/templates/src/main/webapp/app/account/login.service.spec.ts.ejs +0 -4
  269. package/dist/generators/vue/templates/src/main/webapp/app/account/login.service.ts.ejs +3 -25
  270. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.component.spec.ts.ejs +24 -8
  271. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.component.ts.ejs +23 -9
  272. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.service.ts.ejs +1 -1
  273. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.vue.ejs +1 -1
  274. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.component.spec.ts.ejs +20 -4
  275. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.component.ts.ejs +23 -13
  276. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.vue.ejs +1 -1
  277. package/dist/generators/vue/templates/src/main/webapp/app/account/settings/settings.vue.ejs +1 -1
  278. package/dist/generators/vue/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +2 -2
  279. package/dist/generators/vue/templates/src/main/webapp/app/admin/gateway/gateway.service.ts.ejs +1 -1
  280. package/dist/generators/vue/templates/src/main/webapp/app/admin/health/health.service.ts.ejs +10 -10
  281. package/dist/generators/vue/templates/src/main/webapp/app/admin/logs/logs.service.ts.ejs +2 -2
  282. package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics-modal.vue.ejs +2 -2
  283. package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics.service.ts.ejs +2 -2
  284. package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.ts.ejs +5 -5
  285. package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management.service.ts.ejs +6 -6
  286. package/dist/generators/vue/templates/src/main/webapp/app/app.component.ts.ejs +29 -7
  287. package/dist/generators/vue/templates/src/main/webapp/app/app.vue.ejs +19 -1
  288. package/dist/generators/vue/templates/src/main/webapp/app/core/error/error.component.spec.ts.ejs +66 -51
  289. package/dist/generators/vue/templates/src/main/webapp/app/core/error/error.component.ts.ejs +30 -8
  290. package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.component.spec.ts.ejs +41 -11
  291. package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.component.ts.ejs +10 -11
  292. package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +2 -2
  293. package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.spec.ts.ejs +43 -16
  294. package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +14 -9
  295. package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.vue.ejs +1 -1
  296. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.service.ts.ejs +7 -7
  297. package/dist/generators/vue/templates/src/main/webapp/app/entities/user/user.service.ts.ejs +1 -1
  298. package/dist/generators/vue/templates/src/main/webapp/app/locale/translation.service.ts.ejs +5 -5
  299. package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +18 -14
  300. package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.ts.ejs +4 -4
  301. package/dist/generators/workspaces/generator.d.ts +7 -1
  302. package/dist/generators/workspaces/support/applications-lookup.js +2 -2
  303. package/dist/lib/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +1 -1
  304. package/dist/lib/jdl/core/built-in-options/binary-options.d.ts +12 -1
  305. package/dist/lib/testing/apply-patch-to-template.d.ts +13 -0
  306. package/dist/lib/testing/apply-patch-to-template.js +90 -0
  307. package/dist/lib/testing/github.js +6 -3
  308. package/dist/lib/testing/helpers.d.ts +1 -0
  309. package/dist/lib/testing/helpers.js +15 -0
  310. package/dist/lib/utils/yo-rc.d.ts +3 -219
  311. package/package.json +36 -37
  312. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheFactoryConfiguration.java.ejs +0 -49
@@ -1,6 +1,5 @@
1
1
  import axios from 'axios';
2
2
  import sinon from 'sinon';
3
- import { configureStore, createReducer } from '@reduxjs/toolkit';
4
3
  import { TranslatorContext } from 'react-jhipster';
5
4
 
6
5
  import locale, { setLocale, updateLocale, loaded, addTranslationSourcePrefix } from 'app/shared/reducers/locale';
@@ -45,14 +44,7 @@ describe('Locale reducer tests', () => {
45
44
 
46
45
  describe('setLocale reducer', () => {
47
46
  describe('with default language loaded', () => {
48
- let store;
49
- const reducer = createReducer({ locale: { sourcePrefixes: '', loadedLocales: [defaultLocale], loadedKeys: [] } }, builder => {
50
- builder.addDefaultCase(() => {});
51
- });
52
47
  beforeEach(() => {
53
- store = configureStore({
54
- reducer,
55
- });
56
48
  axios.get = sinon.stub().returns(Promise.resolve({ key: 'value' }));
57
49
  });
58
50
 
@@ -71,14 +63,7 @@ describe('Locale reducer tests', () => {
71
63
  });
72
64
 
73
65
  describe('with no language loaded', () => {
74
- let store;
75
- const reducer = createReducer({ locale: { sourcePrefixes: [], loadedLocales: [], loadedKeys: [] } }, builder => {
76
- builder.addDefaultCase(() => {});
77
- });
78
66
  beforeEach(() => {
79
- store = configureStore({
80
- reducer,
81
- });
82
67
  axios.get = sinon.stub().returns(Promise.resolve({ key: 'value' }));
83
68
  });
84
69
 
@@ -101,17 +86,7 @@ describe('Locale reducer tests', () => {
101
86
  const sourcePrefix = 'foo/';
102
87
 
103
88
  describe('with no prefixes and keys loaded', () => {
104
- let store;
105
- const reducer = createReducer(
106
- { locale: { currentLocale: defaultLocale, sourcePrefixes: [], loadedLocales: [], loadedKeys: [] } },
107
- builder => {
108
- builder.addDefaultCase(() => {});
109
- },
110
- );
111
89
  beforeEach(() => {
112
- store = configureStore({
113
- reducer,
114
- });
115
90
  axios.get = sinon.stub().returns(Promise.resolve({ key: 'value' }));
116
91
  });
117
92
 
@@ -129,17 +104,7 @@ describe('Locale reducer tests', () => {
129
104
  });
130
105
 
131
106
  describe('with prefix already added', () => {
132
- let store;
133
- const reducer = createReducer(
134
- { locale: { currentLocale: defaultLocale, sourcePrefixes: [sourcePrefix], loadedLocales: [], loadedKeys: [] } },
135
- builder => {
136
- builder.addDefaultCase(() => {});
137
- },
138
- );
139
107
  beforeEach(() => {
140
- store = configureStore({
141
- reducer,
142
- });
143
108
  axios.get = sinon.stub().returns(Promise.resolve({ key: 'value' }));
144
109
  });
145
110
 
@@ -157,19 +122,7 @@ describe('Locale reducer tests', () => {
157
122
  });
158
123
 
159
124
  describe('with key already loaded', () => {
160
- let store;
161
- const reducer = createReducer(
162
- {
163
- locale: { currentLocale: defaultLocale, sourcePrefixes: [], loadedLocales: [], loadedKeys: [`${sourcePrefix}${defaultLocale}`] },
164
- },
165
- builder => {
166
- builder.addDefaultCase(() => {});
167
- },
168
- );
169
125
  beforeEach(() => {
170
- store = configureStore({
171
- reducer,
172
- });
173
126
  axios.get = sinon.stub().returns(Promise.resolve({ key: 'value' }));
174
127
  });
175
128
 
@@ -132,7 +132,7 @@ export const createEntitySlice = <T, Reducers extends SliceCaseReducers<EntitySt
132
132
  * while calling `createEntitySlice`
133
133
  * */
134
134
  if (!skipRejectionHandling) {
135
- builder.addMatcher(isRejectedAction, (state, action) => {
135
+ builder.addMatcher(isRejectedAction, state => {
136
136
  state.loading = false;
137
137
  state.updating = false;
138
138
  state.updateSuccess = false;
@@ -38,7 +38,7 @@ export const cleanEntity = entity => {
38
38
  * @param idList Elements to map.
39
39
  * @returns The list of objects with mapped ids.
40
40
  */
41
- export const mapIdList = (idList: ReadonlyArray<any>) => idList.filter((id: any) => id !== '').map((id: any) => ({ id }));
41
+ export const mapIdList = (idList: ReadonlyArray<any>) => idList?.filter((id: any) => id !== '').map((id: any) => ({ id }));
42
42
 
43
43
  export const overrideSortStateWithQueryParams = (paginationBaseState: ISortBaseState, locationSearch: string) => {
44
44
  const params = new URLSearchParams(locationSearch);
@@ -18,7 +18,13 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../base-application/index.js';
20
20
  export default class JHipsterServerGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.COMPOSING]: any;
22
+ [BaseApplicationGenerator.LOADING]: any;
23
+ [BaseApplicationGenerator.CONFIGURING_EACH_ENTITY]: any;
24
+ [BaseApplicationGenerator.LOADING_ENTITIES]: any;
25
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY]: any;
26
+ [BaseApplicationGenerator.POST_PREPARING_EACH_ENTITY]: any;
27
+ [BaseApplicationGenerator.DEFAULT]: any;
22
28
  /** @type {string} */
23
29
  jhipsterDependenciesVersion: any;
24
30
  /** @type {string} */
@@ -10,58 +10,58 @@ LABEL ALIAS=jhipster-control-center
10
10
  FROM jhipster/consul-config-loader:v0.4.1
11
11
  LABEL ALIAS=consul-config-loader
12
12
 
13
- FROM postgres:17.2
13
+ FROM postgres:17.4
14
14
  LABEL ALIAS=postgresql
15
15
 
16
- FROM quay.io/keycloak/keycloak:26.1.1
16
+ FROM quay.io/keycloak/keycloak:26.2.3
17
17
  LABEL ALIAS=keycloak
18
18
 
19
19
  FROM mysql:9.2.0
20
20
 
21
- FROM mariadb:11.6.2
21
+ FROM mariadb:11.7.2
22
22
 
23
- FROM mongo:8.0.4
23
+ FROM mongo:8.0.9
24
24
  LABEL ALIAS=mongodb
25
25
 
26
26
  FROM couchbase/server:7.6.5
27
27
  LABEL ALIAS=couchbase
28
28
 
29
- FROM cassandra:5.0
29
+ FROM cassandra:5.0.2
30
30
 
31
31
  FROM mcr.microsoft.com/mssql/server:2019-CU16-GDR1-ubuntu-20.04
32
32
  LABEL ALIAS=mssql
33
33
 
34
- FROM neo4j:5.26.2
34
+ FROM neo4j:5.26.5
35
35
 
36
- FROM hazelcast/management-center:5.6.0
36
+ FROM hazelcast/management-center:5.7.1
37
37
  LABEL ALIAS=hazelcast
38
38
 
39
- FROM memcached:1.6.36-alpine
39
+ FROM memcached:1.6.38-alpine
40
40
 
41
- FROM redis:7.4.2
41
+ FROM redis:8.0.0
42
42
 
43
- FROM apache/kafka-native:3.9.0
43
+ FROM apache/kafka-native:4.0.0
44
44
  LABEL ALIAS=kafka
45
45
 
46
- FROM apachepulsar/pulsar:4.0.2
46
+ FROM apachepulsar/pulsar:4.0.4
47
47
  LABEL ALIAS=pulsar
48
48
 
49
- FROM sonarqube:25.2.0.102705-community
49
+ FROM sonarqube:25.5.0.107428-community
50
50
  LABEL ALIAS=sonar
51
51
 
52
- FROM docker.io/bitnami/consul:1.20.2
52
+ FROM docker.io/bitnami/consul:1.21.0
53
53
  LABEL ALIAS=consul
54
54
 
55
- FROM prom/prometheus:v3.1.0
55
+ FROM prom/prometheus:v3.3.1
56
56
  LABEL ALIAS=prometheus
57
57
 
58
- FROM prom/alertmanager:v0.28.0
58
+ FROM prom/alertmanager:v0.28.1
59
59
  LABEL ALIAS=prometheus-alertmanager
60
60
 
61
61
  FROM quay.io/coreos/prometheus-operator:v0.42.1
62
62
  LABEL ALIAS=prometheus-operator
63
63
 
64
- FROM grafana/grafana:11.5.1
64
+ FROM grafana/grafana:12.0.0
65
65
  LABEL ALIAS=grafana
66
66
 
67
67
  FROM quay.io/coreos/grafana-watcher:v0.0.8
@@ -76,5 +76,5 @@ LABEL ALIAS=java-jre
76
76
  FROM swaggerapi/swagger-editor:latest
77
77
  LABEL ALIAS=swagger-editor
78
78
 
79
- FROM openzipkin/zipkin:3.4.3
79
+ FROM openzipkin/zipkin:3.5.1
80
80
  LABEL ALIAS=zipkin
@@ -1,17 +1,17 @@
1
1
  [libraries]
2
- spring-cloud-dependencies = { module = 'org.springframework.cloud:spring-cloud-dependencies', version = '2024.0.0' }
2
+ spring-cloud-dependencies = { module = 'org.springframework.cloud:spring-cloud-dependencies', version = '2024.0.1' }
3
3
 
4
- springdoc = { module = 'org.springdoc:springdoc-openapi-starter-webmvc-api', version = '2.7.0' }
4
+ springdoc = { module = 'org.springdoc:springdoc-openapi-starter-webmvc-api', version = '2.8.8' }
5
5
 
6
6
  feign-reactor-bom = { module = 'com.playtika.reactivefeign:feign-reactor-bom', version = '4.2.1' }
7
7
 
8
8
  # Cucumber
9
- testng = { module = 'org.testng:testng', version = '7.10.2' }
10
- cucumber-bom = { module = 'io.cucumber:cucumber-bom', version = '7.21.1' }
9
+ testng = { module = 'org.testng:testng', version = '7.11.0' }
10
+ cucumber-bom = { module = 'io.cucumber:cucumber-bom', version = '7.22.1' }
11
11
 
12
- mongock-bom = { module = 'io.mongock:mongock-bom', version = '5.5.0' }
12
+ mongock-bom = { module = 'io.mongock:mongock-bom', version = '5.5.1' }
13
13
 
14
- neo4j-migrations-spring-boot-starter = { module = 'eu.michael-simons.neo4j:neo4j-migrations-spring-boot-starter', version = '2.15.2' }
14
+ neo4j-migrations-spring-boot-starter = { module = 'eu.michael-simons.neo4j:neo4j-migrations-spring-boot-starter', version = '2.17.3' }
15
15
 
16
16
  # Cassandra
17
17
  lz4-java = { module = 'org.lz4:lz4-java', version = '1.8.0' }
@@ -20,26 +20,26 @@ lz4-java = { module = 'org.lz4:lz4-java', version = '1.8.0' }
20
20
  couchmove = { module = 'com.github.differentway:couchmove', version = '3.4.1' }
21
21
 
22
22
  # jib
23
- jib-maven-plugin = { module = 'com.google.cloud.tools:jib-maven-plugin', version = '3.4.4' }
23
+ jib-maven-plugin = { module = 'com.google.cloud.tools:jib-maven-plugin', version = '3.4.5' }
24
24
  jib-spring-boot-extension-maven = { module = 'com.google.cloud.tools:jib-spring-boot-extension-maven', version = '0.1.0' }
25
25
 
26
26
  [plugins]
27
- gradle-git-properties = { id = 'com.gorylenko.gradle-git-properties', version = '2.4.2' }
27
+ gradle-git-properties = { id = 'com.gorylenko.gradle-git-properties', version = '2.5.0' }
28
28
 
29
29
  node-gradle = { id = 'com.github.node-gradle.node', version = '7.1.0' }
30
30
 
31
- gradle-liquibase = { id = 'org.liquibase.gradle', version = '3.0.1' }
31
+ gradle-liquibase = { id = 'org.liquibase.gradle', version = '3.0.2' }
32
32
 
33
- gradle-sonarqube = { id = 'org.sonarqube', version = '6.0.1.5171' }
33
+ gradle-sonarqube = { id = 'org.sonarqube', version = '6.1.0.5360' }
34
34
 
35
- spotless-gradle-plugin = { id = 'com.diffplug.spotless', version = '7.0.2' }
35
+ spotless-gradle-plugin = { id = 'com.diffplug.spotless', version = '7.0.3' }
36
36
 
37
37
  gradle-modernizer-plugin = { id = 'com.github.andygoossens.gradle-modernizer-plugin', version = '1.11.0' }
38
38
 
39
- gradle-enterprise = { id = 'com.gradle.enterprise', version = '3.19.1' }
39
+ gradle-enterprise = { id = 'com.gradle.enterprise', version = '3.19.2' }
40
40
 
41
- common-custom-user-data-gradle-plugin = { id = 'com.gradle.common-custom-user-data-gradle-plugin', version = '2.1' }
41
+ common-custom-user-data-gradle-plugin = { id = 'com.gradle.common-custom-user-data-gradle-plugin', version = '2.2.1' }
42
42
 
43
- gatling-gradle = { id = 'io.gatling.gradle', version = '3.13.3.2' }
43
+ gatling-gradle = { id = 'io.gatling.gradle', version = '3.13.5.4' }
44
44
 
45
- gradle-openapi-generator = { id = 'org.openapi.generator', version = '7.11.0' }
45
+ gradle-openapi-generator = { id = 'org.openapi.generator', version = '7.13.0' }
@@ -8,41 +8,41 @@
8
8
 
9
9
  <properties>
10
10
  <!-- Dependency versions -->
11
- <archunit-junit5.version>1.3.0</archunit-junit5.version>
12
- <blockhound-junit-platform.version>1.0.10.RELEASE</blockhound-junit-platform.version>
13
- <commons-beanutils.version>1.10.0</commons-beanutils.version>
14
- <gatling.version>3.13.3</gatling.version>
11
+ <archunit-junit5.version>1.4.0</archunit-junit5.version>
12
+ <blockhound-junit-platform.version>1.0.11.RELEASE</blockhound-junit-platform.version>
13
+ <commons-beanutils.version>1.10.1</commons-beanutils.version>
14
+ <gatling.version>3.13.5</gatling.version>
15
15
  <jackson-databind-nullable.version>0.2.6</jackson-databind-nullable.version>
16
16
  <mapstruct.version>1.6.3</mapstruct.version>
17
- <micrometer-context-propagation.version>1.1.2</micrometer-context-propagation.version>
18
- <picocli.version>4.7.6</picocli.version>
17
+ <micrometer-context-propagation.version>1.1.3</micrometer-context-propagation.version>
18
+ <picocli.version>4.7.7</picocli.version>
19
19
 
20
20
  <!-- Plugin versions -->
21
- <checkstyle.version>10.21.2</checkstyle.version>
21
+ <checkstyle.version>10.23.1</checkstyle.version>
22
22
  <checksum-maven-plugin.version>1.11</checksum-maven-plugin.version>
23
23
  <frontend-maven-plugin.version>1.15.1</frontend-maven-plugin.version>
24
- <gatling-maven-plugin.version>4.13.0</gatling-maven-plugin.version>
24
+ <gatling-maven-plugin.version>4.16.3</gatling-maven-plugin.version>
25
25
  <git-commit-id-maven-plugin.version>9.0.1</git-commit-id-maven-plugin.version>
26
26
  <lifecycle-mapping.version>1.0.0</lifecycle-mapping.version>
27
- <jacoco-maven-plugin.version>0.8.12</jacoco-maven-plugin.version>
27
+ <jacoco-maven-plugin.version>0.8.13</jacoco-maven-plugin.version>
28
28
  <maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version>
29
29
  <maven-checkstyle-plugin.version>3.6.0</maven-checkstyle-plugin.version>
30
- <maven-clean-plugin.version>3.4.0</maven-clean-plugin.version>
31
- <maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
30
+ <maven-clean-plugin.version>3.4.1</maven-clean-plugin.version>
31
+ <maven-compiler-plugin.version>3.14.0</maven-compiler-plugin.version>
32
32
  <maven-enforcer-plugin.version>3.5.0</maven-enforcer-plugin.version>
33
- <maven-failsafe-plugin.version>3.5.2</maven-failsafe-plugin.version>
33
+ <maven-failsafe-plugin.version>3.5.3</maven-failsafe-plugin.version>
34
34
  <maven-jar-plugin.version>3.4.2</maven-jar-plugin.version>
35
35
  <maven-javadoc-plugin.version>3.11.2</maven-javadoc-plugin.version>
36
36
  <maven-resources-plugin.version>3.3.1</maven-resources-plugin.version>
37
37
  <maven-site-plugin.version>3.21.0</maven-site-plugin.version>
38
- <maven-surefire-plugin.version>3.5.2</maven-surefire-plugin.version>
38
+ <maven-surefire-plugin.version>3.5.3</maven-surefire-plugin.version>
39
39
  <maven-war-plugin.version>3.4.0</maven-war-plugin.version>
40
40
  <modernizer-maven-plugin.version>3.1.0</modernizer-maven-plugin.version>
41
41
  <nohttp-checkstyle.version>0.0.11</nohttp-checkstyle.version>
42
- <openapi-generator-maven-plugin.version>7.11.0</openapi-generator-maven-plugin.version>
42
+ <openapi-generator-maven-plugin.version>7.13.0</openapi-generator-maven-plugin.version>
43
43
  <properties-maven-plugin.version>1.2.1</properties-maven-plugin.version>
44
- <sonar-maven-plugin.version>5.0.0.4389</sonar-maven-plugin.version>
45
- <spotless-maven-plugin.version>2.44.2</spotless-maven-plugin.version>
44
+ <sonar-maven-plugin.version>5.1.0.4751</sonar-maven-plugin.version>
45
+ <spotless-maven-plugin.version>2.44.4</spotless-maven-plugin.version>
46
46
  </properties>
47
47
 
48
48
  <dependencyManagement>
@@ -41,12 +41,34 @@ export type SpringBootSourceType = JavaSourceType &
41
41
  addAllowBlockingCallsInside?({ classPath, method }: { classPath: string; method: string }): void;
42
42
  addApplicationPropertiesContent?(content: ApplicationPropertiesNeedles): void;
43
43
  addApplicationPropertiesProperty?({ propertyName, propertyType }: { propertyName: string; propertyType: string }): void;
44
+ /**
45
+ * @example
46
+ * addApplicationPropertiesClass({
47
+ * propertyType: 'Liquibase',
48
+ * classStructure: { enabled: ['PropertyType', '"default value"'], asyncStart: 'PropertyTypeOnly' },
49
+ * });
50
+ */
51
+ addApplicationPropertiesClass?(opts: {
52
+ propertyName?: string;
53
+ propertyType: string;
54
+ classStructure: Record<string, string | string[]>;
55
+ }): void;
44
56
  addNativeHint?(hints: {
45
57
  advanced?: string[];
46
58
  declaredConstructors?: string[];
47
59
  resources?: string[];
48
60
  publicConstructors?: string[];
49
61
  }): void;
62
+ /**
63
+ * Injects a document into the application.yml file using '---' document separator.
64
+ *
65
+ * @example
66
+ * addApplicationYamlDocument(`
67
+ * spring:
68
+ * key: value
69
+ * `);
70
+ */
71
+ addApplicationYamlDocument?(document: string): void;
50
72
  };
51
73
 
52
74
  type CacheProviderApplication = OptionWithDerivedProperties<
@@ -1,13 +1,25 @@
1
1
  import BaseApplicationGenerator from '../base-application/index.js';
2
2
  export default class SpringBootGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.PROMPTING]: import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "askForServerTestOpts" | "askForServerSideOpts" | "askForOptionalItems">;
4
+ [BaseApplicationGenerator.CONFIGURING]: any;
5
+ [BaseApplicationGenerator.COMPOSING]: any;
6
+ [BaseApplicationGenerator.COMPOSING_COMPONENT]: any;
7
+ [BaseApplicationGenerator.PREPARING]: any;
8
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY]: any;
9
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY_FIELD]: any;
10
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY_RELATIONSHIP]: any;
11
+ [BaseApplicationGenerator.POST_PREPARING_EACH_ENTITY]: any;
12
+ [BaseApplicationGenerator.WRITING]: any;
13
+ [BaseApplicationGenerator.WRITING_ENTITIES]: import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").TaskParamWithEntities<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "writeServerFiles" | "cleanupOldServerFiles">;
14
+ [BaseApplicationGenerator.POST_WRITING]: any;
15
+ [BaseApplicationGenerator.END]: any;
4
16
  fakeKeytool: any;
5
17
  beforeQueue(): Promise<void>;
6
18
  get prompting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "askForServerTestOpts" | "askForServerSideOpts" | "askForOptionalItems">;
7
19
  get configuring(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "feignMigration">;
8
20
  get composing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "composing">;
9
21
  get composingComponent(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "composing" | "composeLanguages">;
10
- get preparing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareForTemplates" | "prepare" | "checksWebsocket" | "loadSpringBootBom" | "registerSpringFactory" | "addSpringIntegrationTest" | "addLogNeedles" | "addApplicationPropertiesNeedles" | "blockhound">;
22
+ get preparing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareForTemplates" | "prepare" | "checksWebsocket" | "loadSpringBootBom" | "registerSpringFactory" | "addSpringIntegrationTest" | "addApplicationYamlDocument" | "addLogNeedles" | "addApplicationPropertiesNeedles" | "blockhound">;
11
23
  get preparingEachEntity(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingEachEntityTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareEntity">;
12
24
  get preparingEachEntityField(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingEachEntityFieldTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareEntity">;
13
25
  get preparingEachEntityRelationship(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingEachEntityRelationshipTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareEntity" | "checkUserRelationships" | "checkDtoRelationships">;
@@ -16,15 +16,14 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
- import os from 'node:os';
20
19
  import chalk from 'chalk';
21
- import { sortedUniqBy } from 'lodash-es';
20
+ import { lowerFirst, sortedUniqBy } from 'lodash-es';
22
21
  import BaseApplicationGenerator from '../base-application/index.js';
23
22
  import { GENERATOR_CUCUMBER, GENERATOR_DOCKER, GENERATOR_FEIGN_CLIENT, GENERATOR_GATLING, GENERATOR_LANGUAGES, GENERATOR_SERVER, GENERATOR_SPRING_CACHE, GENERATOR_SPRING_CLOUD_STREAM, GENERATOR_SPRING_DATA_CASSANDRA, GENERATOR_SPRING_DATA_COUCHBASE, GENERATOR_SPRING_DATA_ELASTICSEARCH, GENERATOR_SPRING_DATA_MONGODB, GENERATOR_SPRING_DATA_NEO4J, GENERATOR_SPRING_DATA_RELATIONAL, GENERATOR_SPRING_WEBSOCKET, } from '../generator-list.js';
24
23
  import { ADD_SPRING_MILESTONE_REPOSITORY } from '../generator-constants.js';
25
24
  import { addSpringFactory, getJavaValueGeneratorForType, getSpecificationBuildForType, insertContentIntoApplicationProperties, javaBeanCase, } from '../server/support/index.js';
26
25
  import { generateKeyStore } from '../java/support/index.js';
27
- import { createNeedleCallback, mutateData } from '../base/support/index.js';
26
+ import { createNeedleCallback, isWin32, mutateData } from '../base/support/index.js';
28
27
  import { APPLICATION_TYPE_MICROSERVICE, applicationTypes, cacheTypes, databaseTypes, fieldTypes, messageBrokerTypes, searchEngineTypes, testFrameworkTypes, websocketTypes, } from '../../lib/jhipster/index.js';
29
28
  import { getPomVersionProperties, parseMavenPom } from '../maven/support/index.js';
30
29
  import { writeFiles as writeEntityFiles } from './entity-files.js';
@@ -222,6 +221,9 @@ export default class SpringBootGenerator extends BaseApplicationGenerator {
222
221
  annotations: [annotation],
223
222
  });
224
223
  },
224
+ addApplicationYamlDocument({ application, source }) {
225
+ source.addApplicationYamlDocument = content => this.editFile(this.destinationPath(`${application.srcMainResources}config/application.yml`), createNeedleCallback({ needle: 'add-application-yaml-document', autoIndent: false, contentToAdd: `---\n${content}` }));
226
+ },
225
227
  addLogNeedles({ source }) {
226
228
  source.addLogbackLogEntry = ({ file, name, level }) => this.editFile(this.destinationPath(file), createNeedleCallback({
227
229
  needle: 'logback-add-log',
@@ -244,6 +246,30 @@ public void set${javaBeanCase(propertyName)}(${propertyType} ${propertyName}) {
244
246
  }
245
247
  `,
246
248
  });
249
+ source.addApplicationPropertiesClass = ({ propertyType, propertyName = lowerFirst(propertyType), classStructure }) => {
250
+ const classProperties = Object.entries(classStructure).map(([name, type]) => ({
251
+ name,
252
+ type: Array.isArray(type) ? type[0] : type,
253
+ defaultVaue: Array.isArray(type) ? ` = ${type[1]}` : '',
254
+ beanName: javaBeanCase(name),
255
+ }));
256
+ return source.addApplicationPropertiesContent({
257
+ property: `private final ${propertyType} ${propertyName} = new ${propertyType}();`,
258
+ propertyGetter: `
259
+ public ${propertyType} get${javaBeanCase(propertyName)}() {
260
+ return ${propertyName};
261
+ }
262
+ `,
263
+ propertyClass: `public static class ${propertyType} {
264
+ ${classProperties.map(({ name, type, defaultVaue }) => `\n private ${type} ${name}${defaultVaue};`).join('\n')}
265
+ ${classProperties.map(({ name, type, beanName }) => `\n public ${type} get${beanName}() {\n return ${name};\n }\n`).join('\n')}
266
+ ${classProperties
267
+ .map(({ name, type, beanName }) => `\n public void set${beanName}(${type} ${name}) {\n this.${name} = ${name};\n }`)
268
+ .join('\n')}
269
+ }
270
+ `,
271
+ });
272
+ };
247
273
  },
248
274
  blockhound({ application, source }) {
249
275
  source.addAllowBlockingCallsInside = ({ classPath, method }) => {
@@ -440,6 +466,11 @@ public void set${javaBeanCase(propertyName)}(${propertyType} ${propertyName}) {
440
466
  source.addJavaDependencies?.([
441
467
  { groupId: 'org.springdoc', artifactId: springdocDependency, version: application.javaDependencies.springdoc },
442
468
  ]);
469
+ if (application.reactive) {
470
+ source.addAllowBlockingCallsInside?.({ classPath: 'org.springdoc.core.service.OpenAPIService', method: 'build' });
471
+ source.addAllowBlockingCallsInside?.({ classPath: 'org.springdoc.core.service.OpenAPIService', method: 'getWebhooks' });
472
+ source.addAllowBlockingCallsInside?.({ classPath: 'org.springdoc.core.service.AbstractRequestService', method: 'build' });
473
+ }
443
474
  },
444
475
  addFeignReactor({ application, source }) {
445
476
  const { applicationTypeGateway, applicationTypeMicroservice, javaDependencies, reactive } = application;
@@ -539,7 +570,7 @@ in your ${chalk.yellow.bold(`${application.srcMainResources}config/application.y
539
570
  `);
540
571
  }
541
572
  let logMsgComment = '';
542
- if (os.platform() === 'win32') {
573
+ if (isWin32) {
543
574
  logMsgComment = ` (${chalk.yellow.bold(buildToolExecutable)} if using Windows Command Prompt)`;
544
575
  }
545
576
  this.log.log(chalk.green(` Run your Spring Boot application:\n ${chalk.yellow.bold(`./${buildToolExecutable}`)}${logMsgComment}`));