generator-jhipster 8.7.1 → 8.7.3

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 (300) hide show
  1. package/README.md +3 -3
  2. package/dist/cli/commands.d.mts +89 -89
  3. package/dist/cli/environment-builder.d.mts +7 -6
  4. package/dist/cli/environment-builder.mjs +5 -3
  5. package/dist/cli/jhipster-command.d.mts +2 -2
  6. package/dist/cli/jhipster-command.mjs +13 -4
  7. package/dist/cli/program.d.mts +53 -36
  8. package/dist/cli/program.mjs +41 -32
  9. package/dist/cli/utils.d.mts +2 -3
  10. package/dist/cli/utils.mjs +11 -21
  11. package/dist/generators/angular/generator.js +2 -2
  12. package/dist/generators/angular/resources/package.json +13 -13
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +2 -2
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.service.ts.ejs +2 -2
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.ts.ejs +2 -2
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +2 -2
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.service.ts.ejs +2 -2
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +2 -2
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.service.ts.ejs +2 -2
  20. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +2 -2
  21. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.service.ts.ejs +2 -2
  22. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +2 -2
  23. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.service.ts.ejs +2 -2
  24. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.ts.ejs +2 -2
  25. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.service.ts.ejs +2 -2
  26. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.ts.ejs +2 -2
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.ts.ejs +2 -2
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +2 -2
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway-routes.service.ts.ejs +2 -2
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.ts.ejs +1 -1
  31. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.ts.ejs +2 -2
  32. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.model.ts.ejs +1 -3
  33. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.service.ts.ejs +2 -2
  34. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.ts.ejs +1 -1
  35. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.ts.ejs +3 -3
  36. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.service.ts.ejs +2 -2
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.ts.ejs +1 -1
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.ts.ejs +2 -2
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.model.ts.ejs +1 -6
  40. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.service.ts.ejs +2 -2
  41. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.ts.ejs +1 -1
  42. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.ts.ejs +2 -2
  43. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.ts.ejs +5 -5
  44. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/service/user-management.service.ts.ejs +3 -3
  45. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.ts.ejs +2 -2
  46. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +4 -4
  47. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/account.service.ts.ejs +7 -7
  48. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-jwt.service.ts.ejs +3 -3
  49. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-session.service.ts.ejs +2 -2
  50. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/csrf.service.ts.ejs +1 -1
  51. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/state-storage.service.ts.ejs +3 -3
  52. package/dist/generators/angular/templates/src/main/webapp/app/core/interceptor/notification.interceptor.ts.ejs +1 -1
  53. package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +5 -5
  54. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.ts.ejs +2 -2
  55. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.ts.ejs +4 -4
  56. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.ts.ejs +2 -2
  57. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.ts.ejs +3 -3
  58. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +7 -7
  59. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.ts.ejs +7 -7
  60. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
  61. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/profile.service.ts.ejs +3 -3
  62. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +3 -3
  63. package/dist/generators/angular/templates/src/main/webapp/app/login/login.service.ts.ejs +4 -4
  64. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.ts.ejs +3 -3
  65. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.ts.ejs +1 -1
  66. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.ts.ejs +2 -2
  67. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translate.directive.ts.ejs +2 -2
  68. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translation.module.ts.ejs +3 -3
  69. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.ts.ejs +1 -1
  70. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.service.ts.ejs +1 -1
  71. package/dist/generators/base/api.d.ts +10 -4
  72. package/dist/generators/base/generator.d.ts +4 -0
  73. package/dist/generators/base/generator.js +10 -1
  74. package/dist/generators/base/shared-data.js +2 -0
  75. package/dist/generators/base/support/faker.d.ts +1 -1
  76. package/dist/generators/base/support/faker.js +1 -1
  77. package/dist/generators/base/support/timestamp.js +10 -2
  78. package/dist/generators/base-application/support/prepare-entity.js +6 -1
  79. package/dist/generators/base-application/support/prepare-field.js +40 -16
  80. package/dist/generators/base-application/support/prepare-relationship.d.ts +1 -1
  81. package/dist/generators/base-application/support/task-type-inference.d.ts +18 -18
  82. package/dist/generators/base-application/types.d.ts +4 -0
  83. package/dist/generators/base-core/generator.d.ts +7 -4
  84. package/dist/generators/base-core/generator.js +31 -35
  85. package/dist/generators/base-workspaces/generator.d.ts +34 -1
  86. package/dist/generators/base-workspaces/generator.js +1 -1
  87. package/dist/generators/base-workspaces/internal/docker-base.js +1 -3
  88. package/dist/generators/bootstrap/support/eslint-transform.js +2 -2
  89. package/dist/generators/bootstrap/support/java-unused-imports-transform.js +2 -2
  90. package/dist/generators/bootstrap/support/prettier-support.js +2 -2
  91. package/dist/generators/bootstrap-application-base/generator.d.ts +2 -2
  92. package/dist/generators/bootstrap-application-base/generator.js +19 -5
  93. package/dist/generators/bootstrap-application-base/utils.d.ts +3 -3
  94. package/dist/generators/bootstrap-application-base/utils.js +9 -3
  95. package/dist/generators/bootstrap-workspaces/command.d.ts +12 -2
  96. package/dist/generators/bootstrap-workspaces/command.js +5 -3
  97. package/dist/generators/bootstrap-workspaces/generator.d.ts +8 -2
  98. package/dist/generators/bootstrap-workspaces/generator.js +0 -2
  99. package/dist/generators/bootstrap-workspaces/index.d.ts +1 -0
  100. package/dist/generators/bootstrap-workspaces/index.js +1 -0
  101. package/dist/generators/client/command.d.ts +22 -0
  102. package/dist/generators/client/command.js +22 -0
  103. package/dist/generators/client/files-common.js +1 -1
  104. package/dist/generators/client/generator.js +4 -5
  105. package/dist/generators/client/prompts.js +10 -9
  106. package/dist/generators/client/resources/package.json +3 -3
  107. package/dist/generators/client/templates/webpack/webpack.microfrontend.js.jhi.ejs +16 -5
  108. package/dist/generators/common/generator.js +2 -2
  109. package/dist/generators/common/resources/package.json +1 -1
  110. package/dist/generators/common/templates/sonar-project.properties.ejs +13 -7
  111. package/dist/generators/cypress/files.js +6 -0
  112. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/login-page.cy.ts.ejs +2 -2
  113. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/logout.cy.ts.ejs +39 -0
  114. package/dist/generators/docker/generator.d.ts +1 -1
  115. package/dist/generators/docker/templates/docker/keycloak.yml.ejs +2 -1
  116. package/dist/generators/docker-compose/command.js +9 -1
  117. package/dist/generators/docker-compose/generator.d.ts +11 -53
  118. package/dist/generators/docker-compose/generator.js +24 -23
  119. package/dist/generators/generate-blueprint/command.d.ts +97 -20
  120. package/dist/generators/generate-blueprint/command.js +28 -0
  121. package/dist/generators/generate-blueprint/constants.d.ts +2 -2
  122. package/dist/generators/generate-blueprint/files.d.ts +1 -42
  123. package/dist/generators/generate-blueprint/files.js +27 -29
  124. package/dist/generators/generate-blueprint/generator.d.ts +5 -2
  125. package/dist/generators/generate-blueprint/generator.js +78 -22
  126. package/dist/generators/generate-blueprint/resources/package.json +3 -3
  127. package/dist/generators/generate-blueprint/templates/.github/workflows/samples.yml.ejs +6 -8
  128. package/dist/generators/generate-blueprint/templates/README.md.ejs +12 -2
  129. package/dist/generators/generate-blueprint/templates/cli/cli-customizations.cjs.ejs +2 -0
  130. package/dist/generators/generate-blueprint/templates/cli/cli.cjs.ejs +2 -1
  131. package/dist/generators/generate-blueprint/templates/cli/commands.cjs.ejs +1 -1
  132. package/dist/generators/generate-blueprint/templates/eslint.config.js.jhi.blueprint.ejs +3 -2
  133. package/dist/generators/generate-blueprint/templates/generators/generator/command.mjs.ejs +8 -12
  134. package/dist/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +8 -11
  135. package/dist/generators/generate-blueprint/templates/generators/generator/generator.spec.mjs.ejs +2 -2
  136. package/dist/generators/generate-blueprint/templates/generators/generator/index.mjs.ejs +2 -4
  137. package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +0 -1
  138. package/dist/generators/generator-constants.d.ts +2 -2
  139. package/dist/generators/generator-constants.js +3 -3
  140. package/dist/generators/git/command.d.ts +10 -0
  141. package/dist/generators/git/command.js +10 -0
  142. package/dist/generators/git/generator.d.ts +5 -4
  143. package/dist/generators/git/generator.js +6 -4
  144. package/dist/generators/gradle/generators/node-gradle/templates/buildSrc/src/main/groovy/jhipster.node-gradle-conventions.gradle.ejs +16 -10
  145. package/dist/generators/gradle/internal/needles.d.ts +3 -1
  146. package/dist/generators/gradle/internal/needles.js +10 -5
  147. package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  148. package/dist/generators/gradle/types.d.ts +3 -2
  149. package/dist/generators/init/command.d.ts +4 -20
  150. package/dist/generators/init/command.js +1 -1
  151. package/dist/generators/init/resources/.node-version +1 -1
  152. package/dist/generators/java/command.d.ts +3 -5
  153. package/dist/generators/java/command.js +1 -20
  154. package/dist/generators/java/generators/bootstrap/command.d.ts +7 -0
  155. package/dist/generators/java/generators/bootstrap/command.js +7 -0
  156. package/dist/generators/java/generators/build-tool/generator.js +37 -13
  157. package/dist/generators/java/generators/graalvm/command.d.ts +5 -0
  158. package/dist/generators/java/generators/graalvm/command.js +5 -0
  159. package/dist/generators/java/generators/graalvm/generator.d.ts +9 -0
  160. package/dist/generators/java/generators/graalvm/generator.js +222 -0
  161. package/dist/generators/java/generators/graalvm/index.d.ts +20 -0
  162. package/dist/generators/java/generators/graalvm/index.js +20 -0
  163. package/dist/generators/java/generators/graalvm/internal/maven-definition.d.ts +8 -0
  164. package/dist/generators/java/generators/graalvm/internal/maven-definition.js +130 -0
  165. package/dist/generators/java/generators/graalvm/resources/build.gradle +1 -0
  166. package/dist/generators/java/generators/graalvm/resources/gradle/libs.versions.toml +5 -0
  167. package/dist/generators/java/generators/graalvm/templates/README.md.jhi.native.ejs +53 -0
  168. package/dist/generators/java/generators/graalvm/templates/gradle/native.gradle.ejs +44 -0
  169. package/dist/generators/java/generators/graalvm/templates/src/main/java/_package_/config/NativeConfiguration.java.ejs +14 -0
  170. package/dist/generators/java/generators/node/generator.d.ts +6 -18
  171. package/dist/generators/java/generators/node/generator.js +31 -0
  172. package/dist/generators/java/generators/openapi-generator/generator.js +2 -2
  173. package/dist/generators/java/support/util.d.ts +1 -1
  174. package/dist/generators/java/types.d.ts +4 -1
  175. package/dist/generators/javascript/generators/bootstrap/command.d.ts +21 -20
  176. package/dist/generators/javascript/generators/bootstrap/generator.d.ts +1 -2
  177. package/dist/generators/javascript/generators/bootstrap/generator.js +9 -5
  178. package/dist/generators/javascript/types.d.ts +9 -2
  179. package/dist/generators/kubernetes/command.d.ts +12 -0
  180. package/dist/generators/kubernetes/command.js +12 -0
  181. package/dist/generators/kubernetes/index.d.ts +1 -0
  182. package/dist/generators/kubernetes/index.js +1 -0
  183. package/dist/generators/kubernetes-helm/index.d.ts +1 -0
  184. package/dist/generators/kubernetes-helm/index.js +1 -0
  185. package/dist/generators/kubernetes-knative/generator.d.ts +1 -1
  186. package/dist/generators/kubernetes-knative/index.d.ts +1 -0
  187. package/dist/generators/kubernetes-knative/index.js +1 -0
  188. package/dist/generators/languages/entity-files.d.ts +3 -2
  189. package/dist/generators/languages/entity-files.js +0 -1
  190. package/dist/generators/languages/generator.d.ts +1 -0
  191. package/dist/generators/languages/generator.js +1 -0
  192. package/dist/generators/liquibase/files.js +8 -0
  193. package/dist/generators/liquibase/generator.d.ts +1 -1
  194. package/dist/generators/liquibase/generator.js +15 -0
  195. package/dist/generators/liquibase/templates/src/main/resources/META-INF/native-image/liquibase/reflect-config.json +145 -0
  196. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/add_relationship_constraints.ejs +81 -0
  197. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity_constraints.xml.ejs +2 -62
  198. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +3 -60
  199. package/dist/generators/maven/generators/frontend-plugin/generator.js +10 -5
  200. package/dist/generators/maven/types.d.ts +3 -6
  201. package/dist/generators/project-name/command.d.ts +25 -20
  202. package/dist/generators/project-name/command.js +20 -4
  203. package/dist/generators/project-name/generator.d.ts +3 -12
  204. package/dist/generators/project-name/generator.js +6 -38
  205. package/dist/generators/react/generator.d.ts +1 -1
  206. package/dist/generators/react/generator.js +15 -2
  207. package/dist/generators/react/resources/package.json +26 -25
  208. package/dist/generators/react/templates/package.json.ejs +0 -3
  209. package/dist/generators/server/generator.d.ts +1 -7
  210. package/dist/generators/server/generator.js +22 -50
  211. package/dist/generators/server/resources/Dockerfile +12 -12
  212. package/dist/generators/server/resources/gradle/libs.versions.toml +10 -7
  213. package/dist/generators/server/resources/pom.xml +11 -11
  214. package/dist/generators/server/types.d.ts +8 -0
  215. package/dist/generators/spring-boot/cleanup.js +2 -2
  216. package/dist/generators/spring-boot/command.d.ts +19 -0
  217. package/dist/generators/spring-boot/command.js +19 -0
  218. package/dist/generators/spring-boot/generator.d.ts +2 -2
  219. package/dist/generators/spring-boot/generator.js +5 -9
  220. package/dist/generators/spring-boot/prompts.js +12 -12
  221. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +107 -106
  222. package/dist/generators/spring-boot/templates/README.md.jhi.spring-boot.ejs +22 -16
  223. package/dist/generators/spring-boot/templates/gradle/profile_dev.gradle.ejs +2 -46
  224. package/dist/generators/spring-boot/templates/gradle/profile_prod.gradle.ejs +1 -47
  225. package/dist/generators/spring-boot/templates/src/main/java/_package_/Application.java.ejs +4 -1
  226. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +29 -6
  227. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +32 -6
  228. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/WebConfigurer.java.ejs +13 -8
  229. package/dist/generators/spring-boot/templates/src/main/java/_package_/domain/User.java.ejs +2 -3
  230. package/dist/generators/spring-boot/templates/src/main/resources/config/application-dev.yml.ejs +8 -3
  231. package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +4 -2
  232. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +8 -7
  233. package/dist/generators/spring-cache/generator.d.ts +2 -1
  234. package/dist/generators/spring-cache/generator.js +22 -0
  235. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
  236. package/dist/generators/spring-cloud/generators/gateway/generator.js +2 -2
  237. package/dist/generators/spring-data-couchbase/generator.js +2 -2
  238. package/dist/generators/spring-data-mongodb/generator.d.ts +1 -1
  239. package/dist/generators/spring-data-relational/files.d.ts +1 -0
  240. package/dist/generators/spring-data-relational/files.js +6 -0
  241. package/dist/generators/spring-data-relational/generator.d.ts +2 -1
  242. package/dist/generators/spring-data-relational/generator.js +63 -2
  243. package/dist/generators/spring-data-relational/internal/dependencies.d.ts +87 -7
  244. package/dist/generators/spring-data-relational/internal/dependencies.js +30 -18
  245. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_persistable.ejs +6 -0
  246. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_reactive.ejs +1 -2
  247. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/config/DatabaseConfiguration.java.ejs +8 -3
  248. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/config/JacksonNativeConfiguration.java.ejs +98 -0
  249. package/dist/generators/vue/files-vue.js +4 -1
  250. package/dist/generators/vue/generator.d.ts +1 -1
  251. package/dist/generators/vue/generator.js +84 -3
  252. package/dist/generators/vue/resources/package.json +21 -20
  253. package/dist/generators/vue/support/update-languages.js +1 -1
  254. package/dist/generators/vue/templates/module-federation.config.cjs.ejs +55 -0
  255. package/dist/generators/vue/templates/package.json.ejs +11 -62
  256. package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +1 -1
  257. package/dist/generators/vue/templates/vite.config.mts.ejs +15 -21
  258. package/dist/generators/workspaces/generator.d.ts +20 -9
  259. package/dist/generators/workspaces/generator.js +3 -3
  260. package/dist/lib/application/field-types.d.ts +2 -1
  261. package/dist/lib/command/converter.d.ts +6 -2
  262. package/dist/lib/command/converter.js +4 -1
  263. package/dist/lib/command/load.js +1 -0
  264. package/dist/lib/command/lookup-commands-configs.js +9 -12
  265. package/dist/lib/command/support/merge-union.d.ts +17 -6
  266. package/dist/lib/command/types.d.ts +38 -11
  267. package/dist/lib/eslint/index.d.ts +6 -14
  268. package/dist/lib/eslint/index.js +1 -2
  269. package/dist/lib/index.d.ts +1 -0
  270. package/dist/lib/index.js +7 -3
  271. package/dist/lib/jdl/core/linters/rules.d.ts +1 -3
  272. package/dist/lib/jdl/core/parsing/validator.js +2 -2
  273. package/dist/lib/jhipster/default-application-options.d.ts +83 -15
  274. package/dist/lib/jhipster/default-application-options.js +28 -28
  275. package/dist/lib/testing/get-generator.d.ts +1 -0
  276. package/dist/lib/testing/get-generator.js +6 -2
  277. package/dist/lib/testing/github-group.d.ts +6 -0
  278. package/dist/lib/testing/github-group.js +56 -0
  279. package/dist/lib/testing/github-matrix.d.ts +38 -0
  280. package/dist/lib/testing/github-matrix.js +72 -0
  281. package/dist/lib/testing/github.d.ts +1 -0
  282. package/dist/lib/testing/github.js +6 -2
  283. package/dist/lib/testing/helpers.d.ts +41 -3
  284. package/dist/lib/testing/helpers.js +74 -12
  285. package/dist/lib/testing/index.d.ts +2 -0
  286. package/dist/lib/testing/index.js +2 -0
  287. package/dist/lib/testing/support/matcher.d.ts +2 -2
  288. package/dist/lib/testing/support/matcher.js +3 -3
  289. package/dist/lib/types/application/application.d.ts +6 -1
  290. package/dist/lib/types/application/entity.d.ts +3 -1
  291. package/dist/lib/types/application/field.d.ts +16 -4
  292. package/dist/lib/types/application/options.d.ts +4 -0
  293. package/dist/lib/types/application/relationship.d.ts +1 -0
  294. package/dist/lib/types/application/yo-rc.d.ts +4 -0
  295. package/dist/lib/types/base/entity.d.ts +1 -0
  296. package/dist/lib/utils/logger.d.ts +1 -1
  297. package/dist/lib/utils/yo-rc.d.ts +27 -3
  298. package/package.json +33 -31
  299. package/dist/generators/generate-blueprint/templates/vitest.test-setup.ts.ejs +0 -6
  300. package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -45
@@ -3,7 +3,7 @@
3
3
  "@fortawesome/fontawesome-svg-core": "6.6.0",
4
4
  "@fortawesome/free-solid-svg-icons": "6.6.0",
5
5
  "@fortawesome/react-fontawesome": "0.2.2",
6
- "@reduxjs/toolkit": "2.2.7",
6
+ "@reduxjs/toolkit": "2.3.0",
7
7
  "axios": "1.7.7",
8
8
  "bootstrap": "5.3.3",
9
9
  "bootswatch": "5.3.3",
@@ -11,33 +11,34 @@
11
11
  "path-browserify": "1.0.1",
12
12
  "react": "18.3.1",
13
13
  "react-dom": "18.3.1",
14
- "react-hook-form": "7.53.0",
14
+ "react-hook-form": "7.53.1",
15
15
  "react-jhipster": "0.25.3",
16
16
  "react-loadable": "5.5.0",
17
17
  "react-redux": "9.1.2",
18
18
  "react-redux-loading-bar": "5.0.8",
19
- "react-router-dom": "6.26.2",
20
- "react-toastify": "10.0.5",
19
+ "react-router-dom": "6.27.0",
20
+ "react-toastify": "10.0.6",
21
21
  "react-transition-group": "4.4.5",
22
- "reactstrap": "9.2.2",
22
+ "reactstrap": "9.2.3",
23
23
  "redux": "5.0.1",
24
24
  "rxjs": "7.8.1",
25
25
  "sockjs-client": "1.6.1",
26
26
  "sonar-scanner": "3.1.0",
27
- "tslib": "2.7.0",
28
- "uuid": "10.0.0",
27
+ "tslib": "2.8.0",
28
+ "uuid": "11.0.2",
29
29
  "webstomp-client": "1.2.6"
30
30
  },
31
31
  "devDependencies": {
32
- "@eslint/js": "9.10.0",
33
- "@module-federation/utilities": "3.1.12",
32
+ "@eslint/js": "9.13.0",
33
+ "@module-federation/enhanced": "0.6.13",
34
+ "@module-federation/utilities": "3.1.19",
34
35
  "@testing-library/react": "16.0.1",
35
- "@types/jest": "29.5.13",
36
- "@types/lodash": "4.17.7",
36
+ "@types/jest": "29.5.14",
37
+ "@types/lodash": "4.17.13",
37
38
  "@types/node": "20.11.25",
38
- "@types/react": "18.3.8",
39
- "@types/react-dom": "18.3.0",
40
- "@types/react-redux": "7.1.33",
39
+ "@types/react": "18.3.12",
40
+ "@types/react-dom": "18.3.1",
41
+ "@types/react-redux": "7.1.34",
41
42
  "@types/redux": "3.6.31",
42
43
  "@types/webpack-env": "1.18.5",
43
44
  "autoprefixer": "10.4.20",
@@ -48,14 +49,14 @@
48
49
  "cross-env": "7.0.3",
49
50
  "css-loader": "7.1.2",
50
51
  "css-minimizer-webpack-plugin": "7.0.0",
51
- "eslint": "9.10.0",
52
+ "eslint": "9.13.0",
52
53
  "eslint-config-prettier": "9.1.0",
53
54
  "eslint-plugin-prettier": "5.2.1",
54
- "eslint-plugin-react": "7.36.1",
55
+ "eslint-plugin-react": "7.37.2",
55
56
  "eslint-webpack-plugin": "4.2.0",
56
57
  "folder-hash": "4.0.4",
57
58
  "fork-ts-checker-webpack-plugin": "9.0.2",
58
- "html-webpack-plugin": "5.6.0",
59
+ "html-webpack-plugin": "5.6.3",
59
60
  "identity-obj-proxy": "3.0.0",
60
61
  "jest": "29.7.0",
61
62
  "jest-environment-jsdom": "29.7.0",
@@ -65,12 +66,12 @@
65
66
  "merge-jsons-webpack-plugin": "2.0.1",
66
67
  "mini-css-extract-plugin": "2.9.1",
67
68
  "postcss-loader": "8.1.1",
68
- "postcss-rtlcss": "5.4.0",
69
+ "postcss-rtlcss": "5.5.0",
69
70
  "react-infinite-scroll-component": "6.1.0",
70
- "redux-mock-store": "1.5.4",
71
+ "redux-mock-store": "1.5.5",
71
72
  "rimraf": "5.0.8",
72
- "sass": "1.79.2",
73
- "sass-loader": "16.0.1",
73
+ "sass": "1.77.6",
74
+ "sass-loader": "16.0.2",
74
75
  "simple-progress-webpack-plugin": "2.0.0",
75
76
  "sinon": "19.0.2",
76
77
  "source-map-loader": "5.0.0",
@@ -80,13 +81,13 @@
80
81
  "thread-loader": "4.0.4",
81
82
  "ts-jest": "29.2.5",
82
83
  "ts-loader": "9.5.1",
83
- "typescript": "5.6.2",
84
- "typescript-eslint": "8.6.0",
85
- "webpack": "5.94.0",
84
+ "typescript": "5.6.3",
85
+ "typescript-eslint": "8.12.2",
86
+ "webpack": "5.95.0",
86
87
  "webpack-cli": "5.1.4",
87
88
  "webpack-dev-server": "5.1.0",
88
89
  "webpack-merge": "6.0.1",
89
90
  "webpack-notifier": "1.15.0",
90
- "workbox-webpack-plugin": "7.1.0"
91
+ "workbox-webpack-plugin": "7.3.0"
91
92
  }
92
93
  }
@@ -59,9 +59,6 @@
59
59
  "uuid": "<%= nodeDependencies['uuid'] %>"
60
60
  },
61
61
  "devDependencies": {
62
- <%_ if (applicationTypeGateway && microfrontend) { _%>
63
- "@module-federation/utilities": "<%= nodeDependencies['@module-federation/utilities'] %>",
64
- <%_ } _%>
65
62
  "@testing-library/react": "<%= nodeDependencies['@testing-library/react'] %>",
66
63
  "@types/jest": "<%= nodeDependencies['@types/jest'] %>",
67
64
  "@types/lodash": "<%= nodeDependencies['@types/lodash'] %>",
@@ -26,25 +26,19 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
26
26
  get composing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "composeBackendType">;
27
27
  get loading(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").TaskParamWithApplicationDefaults<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>>>, "loadEnvironmentVariables" | "setupServerconsts">;
28
28
  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>>>, "blockhound">;
29
- get postPreparing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl & {
30
- source: import("../../lib/types/application/application.js").BaseApplicationSource;
31
- } & {
32
- application: import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>;
33
- }, "useNpmWrapper">;
34
29
  get configuringEachEntity(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").ConfiguringEachEntityTaskParam<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>>>, "configureFields" | "configureRelationships" | "configureMicroservice" | "configureGateway" | "configureEntitySearchEngine" | "configureModelFiltering" | "configurePagination" | "configureEntityTable">;
35
30
  get loadingEntities(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").LoadingEntitiesTaskParam<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>>>, "loadEntityConfig">;
36
31
  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">;
37
32
  get postPreparingEachEntity(): 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>>>, "checkForTableName">;
38
33
  /** @inheritdoc */
39
34
  get default(): 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>>>, "checkCompositeIds">;
40
- get postWriting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PostWritingTaskParam<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>>>, "packageJsonE2eScripts" | "packageJsonScripts" | "packageJsonBackendScripts">;
35
+ get postWriting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PostWritingTaskParam<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>>>, "packageJsonScripts" | "packageJsonBackendScripts" | "packageJsonE2eScripts">;
41
36
  /**
42
37
  * Validate the entityTableName
43
38
  * @return {true|string} true for a valid value or error message.
44
39
  */
45
40
  _validateTableName(entityTableName: any, prodDatabaseType: any, entity: any): string | true;
46
41
  _validateField(entityName: any, field: any): void;
47
- useNpmWrapperInstallTask(): void;
48
42
  _validateRelationship(entityName: any, relationship: any): void;
49
43
  /**
50
44
  * @private
@@ -1,4 +1,3 @@
1
- // @ts-nocheck
2
1
  /**
3
2
  * Copyright 2013-2024 the original author or authors from the JHipster project.
4
3
  *
@@ -18,7 +17,6 @@
18
17
  * limitations under the License.
19
18
  */
20
19
  import { existsSync } from 'fs';
21
- import chalk from 'chalk';
22
20
  import { GENERATOR_COMMON, GENERATOR_SPRING_BOOT } from '../generator-list.js';
23
21
  import BaseApplicationGenerator from '../base-application/index.js';
24
22
  import { packageJson } from '../../lib/index.js';
@@ -82,19 +80,24 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
82
80
  this.log.info(`Using ${application.defaultPackaging} as default packaging`);
83
81
  }
84
82
  },
85
- setupServerconsts({ application }) {
83
+ setupServerconsts({ application, applicationDefaults }) {
86
84
  // Make constants available in templates
87
- application.MAIN_DIR = MAIN_DIR;
88
- application.TEST_DIR = TEST_DIR;
89
- application.LOGIN_REGEX = LOGIN_REGEX;
90
- application.CLIENT_WEBPACK_DIR = CLIENT_WEBPACK_DIR;
91
- application.SERVER_MAIN_SRC_DIR = SERVER_MAIN_SRC_DIR;
92
- application.SERVER_MAIN_RES_DIR = SERVER_MAIN_RES_DIR;
93
- application.SERVER_TEST_SRC_DIR = SERVER_TEST_SRC_DIR;
94
- application.SERVER_TEST_RES_DIR = SERVER_TEST_RES_DIR;
95
- application.JAVA_VERSION = this.useVersionPlaceholders ? 'JAVA_VERSION' : JAVA_VERSION;
96
- application.JAVA_COMPATIBLE_VERSIONS = JAVA_COMPATIBLE_VERSIONS;
97
- application.javaCompatibleVersions = JAVA_COMPATIBLE_VERSIONS;
85
+ applicationDefaults({
86
+ MAIN_DIR,
87
+ TEST_DIR,
88
+ LOGIN_REGEX,
89
+ CLIENT_WEBPACK_DIR,
90
+ SERVER_MAIN_SRC_DIR,
91
+ SERVER_MAIN_RES_DIR,
92
+ SERVER_TEST_SRC_DIR,
93
+ SERVER_TEST_RES_DIR,
94
+ JAVA_VERSION: this.useVersionPlaceholders ? 'JAVA_VERSION' : JAVA_VERSION,
95
+ JAVA_COMPATIBLE_VERSIONS,
96
+ javaCompatibleVersions: JAVA_COMPATIBLE_VERSIONS,
97
+ ANGULAR,
98
+ VUE,
99
+ REACT,
100
+ });
98
101
  if (this.projectVersion) {
99
102
  application.projectVersion = this.projectVersion;
100
103
  this.log.info(`Using projectVersion: ${application.projectVersion}`);
@@ -112,10 +115,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
112
115
  else {
113
116
  application.jhipsterDependenciesVersion = JHIPSTER_DEPENDENCIES_VERSION;
114
117
  }
115
- application.ANGULAR = ANGULAR;
116
- application.VUE = VUE;
117
- application.REACT = REACT;
118
- this.packagejs = packageJson;
119
118
  application.jhipsterPackageJson = packageJson;
120
119
  },
121
120
  });
@@ -140,18 +139,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
140
139
  get [BaseApplicationGenerator.PREPARING]() {
141
140
  return this.delegateTasksToBlueprint(() => this.preparing);
142
141
  }
143
- get postPreparing() {
144
- return this.asPostPreparingTaskGroup({
145
- useNpmWrapper({ application }) {
146
- if (application.useNpmWrapper) {
147
- this.useNpmWrapperInstallTask();
148
- }
149
- },
150
- });
151
- }
152
- get [BaseApplicationGenerator.POST_PREPARING]() {
153
- return this.delegateTasksToBlueprint(() => this.postPreparing);
154
- }
155
142
  get configuringEachEntity() {
156
143
  return this.asConfiguringEachEntityTaskGroup({
157
144
  configureMicroservice({ application, entityConfig }) {
@@ -273,9 +260,11 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
273
260
  relationship.relationshipName = relationship.otherEntityName;
274
261
  this.log.warn(`relationshipName is missing in .jhipster/${entityName}.json for relationship ${stringifyApplicationData(relationship)}, using ${relationship.otherEntityName} as fallback`);
275
262
  }
263
+ // @ts-ignore deprecated property
276
264
  if (relationship.useJPADerivedIdentifier) {
277
265
  this.log.verboseInfo('Option useJPADerivedIdentifier is deprecated, use id instead');
278
- relationship.id = true;
266
+ relationship.options ??= {};
267
+ relationship.options.id = true;
279
268
  }
280
269
  });
281
270
  entityConfig.relationships = relationships;
@@ -408,7 +397,8 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
408
397
  packageJsonE2eScripts({ application }) {
409
398
  const scriptsStorage = this.packageJson.createStorage('scripts');
410
399
  const buildCmd = application.buildToolGradle ? 'gradlew' : 'mvnw -ntp';
411
- const applicationWaitTimeout = WAIT_TIMEOUT * (application.applicationTypeGateway ? 2 : 1);
400
+ let applicationWaitTimeout = WAIT_TIMEOUT * (application.applicationTypeGateway ? 2 : 1);
401
+ applicationWaitTimeout = application.authenticationTypeOauth2 ? applicationWaitTimeout * 2 : applicationWaitTimeout;
412
402
  const applicationEndpoint = application.applicationTypeMicroservice
413
403
  ? `http-get://127.0.0.1:${application.gatewayServerPort}/${application.endpointPrefix}/management/health/readiness`
414
404
  : 'http-get://127.0.0.1:$npm_package_config_backend_port/management/health';
@@ -497,24 +487,6 @@ ${instructions}`);
497
487
  }
498
488
  }
499
489
  }
500
- useNpmWrapperInstallTask() {
501
- this.setFeatures({
502
- customInstallTask: async function customInstallTask(preferredPm, defaultInstallTask) {
503
- const buildTool = this.jhipsterConfigWithDefaults.buildTool;
504
- if ((preferredPm && preferredPm !== 'npm') || this.jhipsterConfig.skipClient || (buildTool !== GRADLE && buildTool !== MAVEN)) {
505
- return defaultInstallTask();
506
- }
507
- const npmCommand = process.platform === 'win32' ? 'npmw' : './npmw';
508
- try {
509
- await this.spawnCommand(npmCommand, ['install'], { preferLocal: true });
510
- }
511
- catch (error) {
512
- this.log.error(chalk.red(`Error executing '${npmCommand} install', please execute it yourself. (${error.shortMessage})`));
513
- }
514
- return true;
515
- }.bind(this),
516
- });
517
- }
518
490
  _validateRelationship(entityName, relationship) {
519
491
  if (relationship.otherEntityName === undefined) {
520
492
  throw new Error(`otherEntityName is missing in .jhipster/${entityName}.json for relationship ${stringifyApplicationData(relationship)}`);
@@ -10,17 +10,17 @@ 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:16.4
13
+ FROM postgres:17.0
14
14
  LABEL ALIAS=postgresql
15
15
 
16
16
  FROM quay.io/keycloak/keycloak:25.0.1
17
17
  LABEL ALIAS=keycloak
18
18
 
19
- FROM mysql:9.0.1
19
+ FROM mysql:9.1.0
20
20
 
21
21
  FROM mariadb:11.5.2
22
22
 
23
- FROM mongo:8.0.0
23
+ FROM mongo:8.0.3
24
24
  LABEL ALIAS=mongodb
25
25
 
26
26
  FROM couchbase/server:7.6.3
@@ -31,14 +31,14 @@ FROM cassandra:5.0
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.23.0
34
+ FROM neo4j:5.24.2
35
35
 
36
- FROM hazelcast/management-center:5.5.2
36
+ FROM hazelcast/management-center:5.6.0
37
37
  LABEL ALIAS=hazelcast
38
38
 
39
- FROM memcached:1.6.31-alpine
39
+ FROM memcached:1.6.32-alpine
40
40
 
41
- FROM redis:7.4.0
41
+ FROM redis:7.4.1
42
42
 
43
43
  FROM confluentinc/cp-kafka:7.7.1
44
44
  LABEL ALIAS=kafka
@@ -46,16 +46,16 @@ LABEL ALIAS=kafka
46
46
  FROM confluentinc/cp-zookeeper:7.7.1
47
47
  LABEL ALIAS=zookeeper
48
48
 
49
- FROM apachepulsar/pulsar:3.3.1
49
+ FROM apachepulsar/pulsar:4.0.0
50
50
  LABEL ALIAS=pulsar
51
51
 
52
- FROM sonarqube:10.6.0-community
52
+ FROM sonarqube:10.7.0-community
53
53
  LABEL ALIAS=sonar
54
54
 
55
- FROM docker.io/bitnami/consul:1.19.2
55
+ FROM docker.io/bitnami/consul:1.20.0
56
56
  LABEL ALIAS=consul
57
57
 
58
- FROM prom/prometheus:v2.54.1
58
+ FROM prom/prometheus:v2.55.0
59
59
  LABEL ALIAS=prometheus
60
60
 
61
61
  FROM prom/alertmanager:v0.27.0
@@ -64,7 +64,7 @@ LABEL ALIAS=prometheus-alertmanager
64
64
  FROM quay.io/coreos/prometheus-operator:v0.42.1
65
65
  LABEL ALIAS=prometheus-operator
66
66
 
67
- FROM grafana/grafana:11.2.0
67
+ FROM grafana/grafana:11.3.0
68
68
  LABEL ALIAS=grafana
69
69
 
70
70
  FROM quay.io/coreos/grafana-watcher:v0.0.8
@@ -7,23 +7,26 @@ feign-reactor-bom = { module = 'com.playtika.reactivefeign:feign-reactor-bom', v
7
7
 
8
8
  # Cucumber
9
9
  testng = { module = 'org.testng:testng', version = '7.10.2' }
10
- cucumber-bom = { module = 'io.cucumber:cucumber-bom', version = '7.19.0' }
10
+ cucumber-bom = { module = 'io.cucumber:cucumber-bom', version = '7.20.1' }
11
11
 
12
- mongock-bom = { module = 'io.mongock:mongock-bom', version = '5.4.4' }
12
+ mongock-bom = { module = 'io.mongock:mongock-bom', version = '5.5.0' }
13
13
 
14
- neo4j-migrations-spring-boot-starter = { module = 'eu.michael-simons.neo4j:neo4j-migrations-spring-boot-starter', version = '2.13.0' }
14
+ neo4j-migrations-spring-boot-starter = { module = 'eu.michael-simons.neo4j:neo4j-migrations-spring-boot-starter', version = '2.13.3' }
15
15
 
16
16
  # Cassandra
17
17
  lz4-java = { module = 'org.lz4:lz4-java', version = '1.8.0' }
18
18
 
19
+ # Couchbase
20
+ couchmove = { module = 'com.github.differentway:couchmove', version = '3.4.1' }
21
+
19
22
  # jib
20
- jib-maven-plugin = { module = 'com.google.cloud.tools:jib-maven-plugin', version = '3.4.3' }
23
+ jib-maven-plugin = { module = 'com.google.cloud.tools:jib-maven-plugin', version = '3.4.4' }
21
24
  jib-spring-boot-extension-maven = { module = 'com.google.cloud.tools:jib-spring-boot-extension-maven', version = '0.1.0' }
22
25
 
23
26
  [plugins]
24
27
  gradle-git-properties = { id = 'com.gorylenko.gradle-git-properties', version = '2.4.2' }
25
28
 
26
- node-gradle = { id = 'com.github.node-gradle.node', version = '7.0.2' }
29
+ node-gradle = { id = 'com.github.node-gradle.node', version = '7.1.0' }
27
30
 
28
31
  gradle-liquibase = { id = 'org.liquibase.gradle', version = '3.0.1' }
29
32
 
@@ -37,6 +40,6 @@ gradle-enterprise = { id = 'com.gradle.enterprise', version = '3.18.1' }
37
40
 
38
41
  common-custom-user-data-gradle-plugin = { id = 'com.gradle.common-custom-user-data-gradle-plugin', version = '2.0.2' }
39
42
 
40
- gatling-gradle = { id = 'io.gatling.gradle', version = '3.12.0' }
43
+ gatling-gradle = { id = 'io.gatling.gradle', version = '3.12.0.3' }
41
44
 
42
- gradle-openapi-generator = { id = 'org.openapi.generator', version = '7.8.0' }
45
+ gradle-openapi-generator = { id = 'org.openapi.generator', version = '7.9.0' }
@@ -9,37 +9,37 @@
9
9
  <properties>
10
10
  <!-- Dependency versions -->
11
11
  <archunit-junit5.version>1.3.0</archunit-junit5.version>
12
- <blockhound-junit-platform.version>1.0.9.RELEASE</blockhound-junit-platform.version>
12
+ <blockhound-junit-platform.version>1.0.10.RELEASE</blockhound-junit-platform.version>
13
13
  <commons-beanutils.version>1.9.4</commons-beanutils.version>
14
14
  <gatling.version>3.12.0</gatling.version>
15
15
  <jackson-databind-nullable.version>0.2.6</jackson-databind-nullable.version>
16
16
  <mapstruct.version>1.6.2</mapstruct.version>
17
- <micrometer-context-propagation.version>1.1.1</micrometer-context-propagation.version>
17
+ <micrometer-context-propagation.version>1.1.2</micrometer-context-propagation.version>
18
18
  <picocli.version>4.7.6</picocli.version>
19
19
 
20
20
  <!-- Plugin versions -->
21
- <checkstyle.version>10.18.1</checkstyle.version>
21
+ <checkstyle.version>10.19.0</checkstyle.version>
22
22
  <checksum-maven-plugin.version>1.11</checksum-maven-plugin.version>
23
- <frontend-maven-plugin.version>1.15.0</frontend-maven-plugin.version>
24
- <gatling-maven-plugin.version>4.9.6</gatling-maven-plugin.version>
23
+ <frontend-maven-plugin.version>1.15.1</frontend-maven-plugin.version>
24
+ <gatling-maven-plugin.version>4.10.1</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
27
  <jacoco-maven-plugin.version>0.8.12</jacoco-maven-plugin.version>
28
28
  <maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version>
29
- <maven-checkstyle-plugin.version>3.5.0</maven-checkstyle-plugin.version>
29
+ <maven-checkstyle-plugin.version>3.6.0</maven-checkstyle-plugin.version>
30
30
  <maven-clean-plugin.version>3.4.0</maven-clean-plugin.version>
31
31
  <maven-compiler-plugin.version>3.13.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.0</maven-failsafe-plugin.version>
33
+ <maven-failsafe-plugin.version>3.5.1</maven-failsafe-plugin.version>
34
34
  <maven-jar-plugin.version>3.4.2</maven-jar-plugin.version>
35
- <maven-javadoc-plugin.version>3.10.0</maven-javadoc-plugin.version>
35
+ <maven-javadoc-plugin.version>3.10.1</maven-javadoc-plugin.version>
36
36
  <maven-resources-plugin.version>3.3.1</maven-resources-plugin.version>
37
- <maven-site-plugin.version>3.20.0</maven-site-plugin.version>
38
- <maven-surefire-plugin.version>3.5.0</maven-surefire-plugin.version>
37
+ <maven-site-plugin.version>3.21.0</maven-site-plugin.version>
38
+ <maven-surefire-plugin.version>3.5.1</maven-surefire-plugin.version>
39
39
  <maven-war-plugin.version>3.4.0</maven-war-plugin.version>
40
40
  <modernizer-maven-plugin.version>2.9.0</modernizer-maven-plugin.version>
41
41
  <nohttp-checkstyle.version>0.0.11</nohttp-checkstyle.version>
42
- <openapi-generator-maven-plugin.version>7.8.0</openapi-generator-maven-plugin.version>
42
+ <openapi-generator-maven-plugin.version>7.9.0</openapi-generator-maven-plugin.version>
43
43
  <properties-maven-plugin.version>1.2.1</properties-maven-plugin.version>
44
44
  <sonar-maven-plugin.version>4.0.0.4121</sonar-maven-plugin.version>
45
45
  <spotless-maven-plugin.version>2.43.0</spotless-maven-plugin.version>
@@ -1,3 +1,4 @@
1
+ import type { PackageJson } from 'type-fest';
1
2
  import type { JavaApplication, JavaSourceType } from '../java/types.js';
2
3
  import type { GradleSourceType } from '../gradle/types.js';
3
4
  import type { MavenSourceType } from '../maven/types.js';
@@ -33,6 +34,12 @@ export type SpringBootSourceType = JavaSourceType &
33
34
  addAllowBlockingCallsInside?({ classPath, method }: { classPath: string; method: string }): void;
34
35
  addApplicationPropertiesContent?(content: ApplicationPropertiesNeedles): void;
35
36
  addApplicationPropertiesProperty?({ propertyName, propertyType }: { propertyName: string; propertyType: string }): void;
37
+ addNativeHint?(hints: {
38
+ advanced?: string[];
39
+ declaredConstructors?: string[];
40
+ resources?: string[];
41
+ publicConstructors?: string[];
42
+ }): void;
36
43
  };
37
44
 
38
45
  type CacheProviderApplication = OptionWithDerivedProperties<
@@ -117,6 +124,7 @@ export type SpringBootApplication = JavaApplication &
117
124
  SearchEngine &
118
125
  DatabaseTypeApplication &
119
126
  GatewayApplication & {
127
+ jhipsterPackageJson: PackageJson;
120
128
  jhipsterDependenciesVersion: string;
121
129
  springBootDependencies: Record<string, string>;
122
130
  dockerContainers: Record<string, string>;
@@ -23,7 +23,7 @@ import cleanupOauth2 from './cleanup-oauth2.js';
23
23
  * Removes server files that where generated in previous JHipster versions and therefore
24
24
  * need to be removed.
25
25
  */
26
- export default asWritingTask(function cleanupTask(taskParam) {
26
+ export default asWritingTask(async function cleanupTask(taskParam) {
27
27
  const { application, control } = taskParam;
28
28
  if (application.authenticationTypeOauth2) {
29
29
  cleanupOauth2.call(this, taskParam);
@@ -200,7 +200,7 @@ export default asWritingTask(function cleanupTask(taskParam) {
200
200
  if (this.isJhipsterVersionLessThan('8.4.0')) {
201
201
  this.removeFile(`${application.javaPackageSrcDir}config/LocaleConfiguration.java`);
202
202
  }
203
- control.cleanupFiles({
203
+ await control.cleanupFiles({
204
204
  '8.6.1': [[application.authenticationTypeOauth2, `${application.javaPackageSrcDir}security/oauth2/JwtGrantedAuthorityConverter.java`]],
205
205
  });
206
206
  });
@@ -55,6 +55,14 @@ declare const command: {
55
55
  }];
56
56
  readonly scope: "storage";
57
57
  };
58
+ readonly jwtSecretKey: {
59
+ readonly cli: {
60
+ readonly type: StringConstructor;
61
+ readonly env: "JHI_JWT_SECRET_KEY";
62
+ readonly hide: true;
63
+ };
64
+ readonly scope: "storage";
65
+ };
58
66
  readonly authenticationType: {
59
67
  readonly cli: {
60
68
  readonly name: "auth";
@@ -159,6 +167,17 @@ declare const command: {
159
167
  readonly choices: readonly ["liquibase"];
160
168
  readonly scope: "storage";
161
169
  };
170
+ readonly graalvmSupport: {
171
+ readonly description: "Experimental GraalVM Native support";
172
+ readonly cli: {
173
+ readonly type: BooleanConstructor;
174
+ };
175
+ readonly jdl: {
176
+ readonly type: "boolean";
177
+ readonly tokenType: "BOOLEAN";
178
+ };
179
+ readonly scope: "storage";
180
+ };
162
181
  };
163
182
  readonly import: readonly ["java", "liquibase", "spring-data-relational", "jhipster:spring-cloud:gateway"];
164
183
  };
@@ -79,6 +79,14 @@ const command = {
79
79
  ],
80
80
  scope: 'storage',
81
81
  },
82
+ jwtSecretKey: {
83
+ cli: {
84
+ type: String,
85
+ env: 'JHI_JWT_SECRET_KEY',
86
+ hide: true,
87
+ },
88
+ scope: 'storage',
89
+ },
82
90
  authenticationType: {
83
91
  cli: {
84
92
  name: 'auth',
@@ -206,6 +214,17 @@ const command = {
206
214
  choices: ['liquibase'],
207
215
  scope: 'storage',
208
216
  },
217
+ graalvmSupport: {
218
+ description: 'Experimental GraalVM Native support',
219
+ cli: {
220
+ type: Boolean,
221
+ },
222
+ jdl: {
223
+ type: 'boolean',
224
+ tokenType: 'BOOLEAN',
225
+ },
226
+ scope: 'storage',
227
+ },
209
228
  },
210
229
  import: [GENERATOR_JAVA, GENERATOR_LIQUIBASE, GENERATOR_SPRING_DATA_RELATIONAL, 'jhipster:spring-cloud:gateway'],
211
230
  };
@@ -3,10 +3,10 @@ export default class SpringBootGenerator extends BaseApplicationGenerator {
3
3
  fakeKeytool: any;
4
4
  beforeQueue(): Promise<void>;
5
5
  get prompting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "askForServerTestOpts" | "askForServerSideOpts" | "askForOptionalItems">;
6
- get configuring(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "checks" | "feignMigration">;
6
+ get configuring(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "feignMigration">;
7
7
  get composing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "composing">;
8
8
  get composingComponent(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "composing" | "composeLanguages">;
9
- 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" | "checksWebsocket" | "loadSpringBootBom" | "prepare" | "registerSpringFactory" | "addSpringIntegrationTest" | "addLogNeedles" | "addApplicationPropertiesNeedles">;
9
+ 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">;
10
10
  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">;
11
11
  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">;
12
12
  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">;
@@ -31,7 +31,7 @@ import { writeFiles as writeEntityFiles } from './entity-files.js';
31
31
  import cleanupTask from './cleanup.js';
32
32
  import { serverFiles } from './files.js';
33
33
  import { askForOptionalItems, askForServerSideOpts, askForServerTestOpts } from './prompts.js';
34
- const { CAFFEINE, EHCACHE, HAZELCAST, INFINISPAN, MEMCACHED, REDIS, NO: NO_CACHE } = cacheTypes;
34
+ const { CAFFEINE, EHCACHE, HAZELCAST, INFINISPAN, MEMCACHED, REDIS } = cacheTypes;
35
35
  const { NO: NO_WEBSOCKET, SPRING_WEBSOCKET } = websocketTypes;
36
36
  const { CASSANDRA, COUCHBASE, MONGODB, NEO4J, SQL } = databaseTypes;
37
37
  const { MICROSERVICE, GATEWAY } = applicationTypes;
@@ -63,13 +63,6 @@ export default class SpringBootGenerator extends BaseApplicationGenerator {
63
63
  }
64
64
  get configuring() {
65
65
  return this.asConfiguringTaskGroup({
66
- checks() {
67
- const config = this.jhipsterConfigWithDefaults;
68
- if (config.enableHibernateCache && [NO_CACHE, MEMCACHED].includes(config.cacheProvider)) {
69
- this.log.verboseInfo(`Disabling hibernate cache for cache provider ${config.cacheProvider}`);
70
- this.jhipsterConfig.enableHibernateCache = false;
71
- }
72
- },
73
66
  feignMigration() {
74
67
  const { reactive, applicationType, feignClient } = this.jhipsterConfigWithDefaults;
75
68
  if (feignClient) {
@@ -95,10 +88,13 @@ export default class SpringBootGenerator extends BaseApplicationGenerator {
95
88
  get composing() {
96
89
  return this.asComposingTaskGroup({
97
90
  async composing() {
98
- const { applicationType, databaseType, messageBroker, searchEngine, websocket, cacheProvider, testFrameworks, feignClient, enableSwaggerCodegen, } = this.jhipsterConfigWithDefaults;
91
+ const { applicationType, databaseType, graalvmSupport, messageBroker, searchEngine, websocket, cacheProvider, testFrameworks, feignClient, enableSwaggerCodegen, } = this.jhipsterConfigWithDefaults;
99
92
  await this.composeWithJHipster(GENERATOR_DOCKER);
100
93
  await this.composeWithJHipster('jhipster:java:jib');
101
94
  await this.composeWithJHipster('jhipster:java:code-quality');
95
+ if (graalvmSupport) {
96
+ await this.composeWithJHipster('jhipster:java:graalvm');
97
+ }
102
98
  if (enableSwaggerCodegen) {
103
99
  await this.composeWithJHipster('jhipster:java:openapi-generator');
104
100
  }