generator-jhipster 8.3.0 → 8.5.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 (430) hide show
  1. package/dist/generators/angular/generator.js +34 -0
  2. package/dist/generators/angular/resources/package.json +13 -13
  3. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +1 -1
  4. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +1 -1
  5. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.spec.ts.ejs +2 -2
  6. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +3 -6
  7. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +1 -1
  8. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.spec.ts.ejs +2 -2
  9. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +3 -6
  10. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +1 -1
  11. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +3 -6
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +1 -1
  13. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +11 -11
  14. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +0 -2
  15. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +1 -1
  16. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/user-route-access.service.ts.ejs +1 -1
  17. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +0 -3
  18. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +2 -2
  19. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +2 -2
  20. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +10 -6
  21. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +1 -1
  22. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +3 -3
  23. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.ts.ejs +11 -17
  24. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +6 -6
  25. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/active-menu.directive.ts.ejs +3 -3
  26. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +1 -1
  27. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +2 -2
  28. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +3 -4
  29. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +2 -2
  30. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.spec.ts.ejs +10 -8
  31. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.ts.ejs +3 -8
  32. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +6 -2
  33. package/dist/generators/angular/templates/webpack/webpack.custom.js.ejs +1 -1
  34. package/dist/generators/app/generator.js +6 -33
  35. package/dist/generators/app/support/config.js +1 -3
  36. package/dist/generators/base/generator.js +15 -16
  37. package/dist/generators/base/priorities.js +12 -1
  38. package/dist/generators/base-application/generator.js +14 -2
  39. package/dist/generators/base-application/priorities.js +1 -0
  40. package/dist/generators/base-application/support/prepare-entity.js +7 -8
  41. package/dist/generators/base-application/support/prepare-field.js +1 -1
  42. package/dist/generators/base-application/support/prepare-relationship.js +3 -2
  43. package/dist/generators/base-core/generator.js +45 -11
  44. package/dist/generators/base-entity-changes/generator.js +24 -0
  45. package/dist/generators/bootstrap-application-base/generator.js +46 -1
  46. package/dist/generators/bootstrap-application-server/generator.js +5 -7
  47. package/dist/generators/ci-cd/generator.js +0 -5
  48. package/dist/generators/client/command.js +2 -2
  49. package/dist/generators/client/generator.js +0 -22
  50. package/dist/generators/client/generators/common/command.js +5 -0
  51. package/dist/generators/client/generators/common/generator.js +79 -0
  52. package/dist/generators/{app/prompts.js → client/generators/common/index.js} +2 -15
  53. package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/headers.ts.ejs +57 -0
  54. package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/problem-details.ts.ejs +51 -0
  55. package/dist/generators/client/resources/package.json +6 -6
  56. package/dist/generators/client/templates/src/main/webapp/index.html.ejs +1 -1
  57. package/dist/generators/common/command.js +13 -0
  58. package/dist/generators/common/generator.js +17 -3
  59. package/dist/generators/common/resources/package.json +2 -2
  60. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/login-page.cy.ts.ejs +4 -4
  61. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/password-page.cy.ts.ejs +2 -2
  62. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/register-page.cy.ts.ejs +1 -1
  63. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/reset-password-page.cy.ts.ejs +1 -1
  64. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +10 -10
  65. package/dist/generators/docker/templates/docker/mysql.yml.ejs +1 -1
  66. package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +14 -3
  67. package/dist/generators/docker-compose/generator.js +1 -5
  68. package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +14 -3
  69. package/dist/generators/entity/generator.js +2 -10
  70. package/dist/generators/entity/prompts.js +6 -11
  71. package/dist/generators/export-jdl/generator.js +0 -5
  72. package/dist/generators/gatling/README.md +15 -0
  73. package/dist/generators/gatling/templates/buildSrc/src/main/groovy/jhipster.gatling-conventions.gradle.ejs +1 -1
  74. package/dist/generators/gatling/templates/src/test/java/gatling/simulations/_entityClass_GatlingTest.java.ejs +2 -10
  75. package/dist/generators/generate-blueprint/command.js +16 -0
  76. package/dist/generators/generate-blueprint/files.js +8 -0
  77. package/dist/generators/generate-blueprint/generator.js +17 -10
  78. package/dist/generators/generate-blueprint/resources/package.json +1 -1
  79. package/dist/generators/generate-blueprint/templates/.blueprint/cli/commands.mjs.ejs +6 -0
  80. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +20 -0
  81. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs +9 -13
  82. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/build-matrix.mjs.ejs +22 -0
  83. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/generator.mjs.ejs +24 -0
  84. package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/index.mjs.ejs +1 -0
  85. package/dist/generators/generate-blueprint/templates/.eslintrc.json.ejs +2 -2
  86. package/dist/generators/generate-blueprint/templates/README.md.ejs +16 -8
  87. package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +1 -0
  88. package/dist/generators/generator-constants.js +1 -1
  89. package/dist/generators/heroku/generator.js +0 -5
  90. package/dist/generators/info/generator.js +1 -3
  91. package/dist/generators/init/generator.js +2 -2
  92. package/dist/generators/init/resources/.node-version +1 -1
  93. package/dist/generators/java/generators/build-tool/command.js +4 -1
  94. package/dist/generators/java/generators/domain/generator.js +16 -0
  95. package/dist/generators/java/generators/domain/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +1 -5
  96. package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Asserts.java.ejs +3 -3
  97. package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +3 -3
  98. package/dist/generators/java/support/add-java-annotation.js +28 -7
  99. package/dist/generators/java/support/generated-annotation-transform.js +1 -1
  100. package/dist/generators/java/support/index.js +1 -1
  101. package/dist/generators/jdl/generator.js +1 -5
  102. package/dist/generators/kubernetes/files.js +1 -1
  103. package/dist/generators/kubernetes/generator.js +0 -5
  104. package/dist/generators/kubernetes/templates/db/mysql.yml.ejs +0 -1
  105. package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +14 -3
  106. package/dist/generators/kubernetes-helm/generator.js +0 -5
  107. package/dist/generators/kubernetes-knative/generator.js +0 -5
  108. package/dist/generators/languages/files.js +2 -2
  109. package/dist/generators/languages/generator.js +4 -8
  110. package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json.ejs +19 -0
  111. package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json.ejs +19 -0
  112. package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json.ejs +19 -0
  113. package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json.ejs +19 -0
  114. package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json.ejs +19 -0
  115. package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json.ejs +19 -0
  116. package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json.ejs +19 -0
  117. package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json.ejs +19 -0
  118. package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json.ejs +19 -0
  119. package/dist/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +2 -2
  120. package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json.ejs +19 -0
  121. package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json.ejs +19 -0
  122. package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json.ejs +19 -0
  123. package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json.ejs +19 -0
  124. package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json.ejs +19 -0
  125. package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json.ejs +19 -0
  126. package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json.ejs +19 -0
  127. package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json.ejs +19 -0
  128. package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json.ejs +19 -0
  129. package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json.ejs +19 -0
  130. package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json.ejs +19 -0
  131. package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json.ejs +19 -0
  132. package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json.ejs +19 -0
  133. package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json.ejs +19 -0
  134. package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json.ejs +19 -0
  135. package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json.ejs +19 -0
  136. package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json.ejs +19 -0
  137. package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json.ejs +19 -0
  138. package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json.ejs +19 -0
  139. package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json.ejs +19 -0
  140. package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json.ejs +19 -0
  141. package/dist/generators/languages/templates/src/main/webapp/i18n/pa/{home.json → home.json.ejs} +2 -2
  142. package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json.ejs +19 -0
  143. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json.ejs +19 -0
  144. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json.ejs +19 -0
  145. package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json.ejs +19 -0
  146. package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json.ejs +19 -0
  147. package/dist/generators/languages/templates/src/main/webapp/i18n/si/{home.json → home.json.ejs} +6 -6
  148. package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json.ejs +19 -0
  149. package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json.ejs +19 -0
  150. package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json.ejs +19 -0
  151. package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json.ejs +19 -0
  152. package/dist/generators/languages/templates/src/main/webapp/i18n/te/{home.json → home.json.ejs} +1 -1
  153. package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json.ejs +19 -0
  154. package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json.ejs +19 -0
  155. package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json.ejs +19 -0
  156. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json.ejs +19 -0
  157. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json.ejs +19 -0
  158. package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json.ejs +19 -0
  159. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json.ejs +19 -0
  160. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json.ejs +19 -0
  161. package/dist/generators/liquibase/generator.js +59 -12
  162. package/dist/generators/liquibase/support/prepare-field.js +16 -1
  163. package/dist/generators/liquibase/support/relationship.js +1 -0
  164. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
  165. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +3 -3
  166. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +26 -1
  167. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +3 -3
  168. package/dist/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +2 -2
  169. package/dist/generators/maven/templates/mvnw +185 -243
  170. package/dist/generators/maven/templates/mvnw.cmd +121 -180
  171. package/dist/generators/react/generator.js +10 -0
  172. package/dist/generators/react/resources/package.json +30 -30
  173. package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.spec.ts.ejs +1 -1
  174. package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.ts.ejs +1 -1
  175. package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.spec.ts.ejs +1 -1
  176. package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.ts.ejs +80 -87
  177. package/dist/generators/react/templates/src/main/webapp/app/config/store.ts.ejs +1 -1
  178. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.tsx.ejs +3 -3
  179. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.reducer.ts.ejs +12 -7
  180. package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +7 -7
  181. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +2 -3
  182. package/dist/generators/react/templates/webpack/webpack.microfrontend.js.jhi.react.ejs +0 -8
  183. package/dist/generators/server/command.js +0 -11
  184. package/dist/generators/server/generator.js +19 -115
  185. package/dist/generators/server/jdl/application-definition.js +3 -1
  186. package/dist/generators/server/resources/Dockerfile +15 -15
  187. package/dist/generators/server/resources/gradle/libs.versions.toml +12 -10
  188. package/dist/generators/server/resources/pom.xml +10 -10
  189. package/dist/generators/server/support/config.js +4 -8
  190. package/dist/generators/server/support/prepare-entity.js +5 -6
  191. package/dist/generators/server/support/prepare-field.js +7 -2
  192. package/dist/generators/server/support/prepare-relationship.js +7 -2
  193. package/dist/generators/server/support/relationship.js +5 -2
  194. package/dist/generators/server/templates/build.gradle.ejs +5 -3
  195. package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -2
  196. package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +3 -2
  197. package/dist/generators/server/templates/gradle.properties.ejs +1 -1
  198. package/dist/generators/server/templates/pom.xml.ejs +7 -9
  199. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/service/dto/_dtoClass_.java.ejs +1 -1
  200. package/dist/generators/server/templates/src/main/java/_package_/config/Constants.java.ejs +0 -2
  201. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +57 -24
  202. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +1 -15
  203. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityJwtConfiguration.java.ejs +0 -20
  204. package/dist/generators/server/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +65 -5
  205. package/dist/generators/server/templates/src/main/java/_package_/service/dto/UserDTO.java.ejs +23 -0
  206. package/dist/generators/server/templates/src/main/java/_package_/service/mapper/UserMapper.java.ejs +8 -4
  207. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +43 -9
  208. package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +60 -22
  209. package/dist/generators/server/templates/src/main/resources/config/bootstrap.yml.ejs +1 -1
  210. package/dist/generators/server/templates/src/main/resources/static/index_microservices.html.ejs +8 -8
  211. package/dist/generators/server/templates/src/main/resources/swagger/api.yml.ejs +1 -1
  212. package/dist/generators/server/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +31 -13
  213. package/dist/generators/server/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +84 -17
  214. package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +62 -6
  215. package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +22 -0
  216. package/dist/generators/server/templates/src/test/resources/config/application.yml.ejs +20 -10
  217. package/dist/generators/spring-boot/cleanup.js +3 -0
  218. package/dist/generators/spring-boot/command.js +127 -7
  219. package/dist/generators/spring-boot/files.js +0 -10
  220. package/dist/generators/spring-boot/generator.js +54 -4
  221. package/dist/generators/{server → spring-boot}/prompts.js +8 -72
  222. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +380 -588
  223. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +47 -11
  224. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +60 -24
  225. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +195 -318
  226. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +58 -51
  227. package/dist/generators/spring-cache/internal/dependencies.js +2 -2
  228. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +2 -2
  229. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +4 -0
  230. package/dist/generators/spring-cloud/generators/gateway/command.js +5 -1
  231. package/dist/generators/spring-cloud/generators/gateway/generator.js +13 -0
  232. package/dist/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.js +6 -0
  233. package/dist/generators/spring-data-cassandra/generator.js +2 -2
  234. package/dist/generators/spring-data-relational/support/h2-reserved-keywords.js +22 -0
  235. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +3 -1
  236. package/dist/generators/upgrade/generator.js +0 -4
  237. package/dist/generators/vue/resources/package.json +22 -22
  238. package/dist/generators/vue/templates/src/main/webapp/app/account/change-password/change-password.vue.ejs +1 -1
  239. package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.vue.ejs +1 -1
  240. package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.vue.ejs +1 -1
  241. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.vue.ejs +1 -1
  242. package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/init/reset-password-init.vue.ejs +1 -1
  243. package/dist/generators/vue/templates/src/main/webapp/app/account/settings/settings.vue.ejs +1 -1
  244. package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.spec.ts.ejs +1 -1
  245. package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management-edit.vue.ejs +1 -1
  246. package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +7 -7
  247. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-details.vue.ejs +1 -1
  248. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +2 -2
  249. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.vue.ejs +1 -1
  250. package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.spec.ts.ejs +8 -8
  251. package/dist/generators/vue/templates/src/main/webapp/app/shared/data/data-utils.service.spec.ts.ejs +1 -1
  252. package/dist/generators/vue/templates/tsconfig.app.json.ejs +1 -1
  253. package/dist/generators/vue/templates/vite.config.mts.ejs +5 -4
  254. package/dist/generators/vue/templates/vitest.config.mts.ejs +1 -1
  255. package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -9
  256. package/dist/jdl/converters/jdl-to-json/jdl-to-json-basic-entity-converter.js +1 -1
  257. package/dist/jdl/converters/jdl-to-json/jdl-to-json-field-converter.js +4 -4
  258. package/dist/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.js +9 -9
  259. package/dist/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.js +2 -2
  260. package/dist/jdl/converters/json-to-jdl-application-converter.js +1 -1
  261. package/dist/jdl/converters/json-to-jdl-converter.js +6 -5
  262. package/dist/jdl/converters/json-to-jdl-entity-converter.js +14 -14
  263. package/dist/jdl/converters/json-to-jdl-option-converter.js +1 -2
  264. package/dist/jdl/converters/parsed-jdl-to-jdl-object/application-converter.js +1 -1
  265. package/dist/jdl/converters/parsed-jdl-to-jdl-object/option-converter.js +2 -2
  266. package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +7 -6
  267. package/dist/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.js +1 -1
  268. package/dist/jdl/exporters/applications/jhipster-application-formatter.js +16 -23
  269. package/dist/jdl/exporters/config.js +1 -0
  270. package/dist/jdl/exporters/jhipster-deployment-exporter.js +5 -5
  271. package/dist/jdl/exporters/jhipster-entity-exporter.js +1 -1
  272. package/dist/jdl/jdl-importer.js +22 -20
  273. package/dist/jdl/jhipster/binary-options.js +12 -8
  274. package/dist/jdl/jhipster/json-entity.js +1 -1
  275. package/dist/jdl/models/abstract-jdl-option.js +2 -2
  276. package/dist/jdl/models/jdl-application-configuration-factory.js +2 -0
  277. package/dist/jdl/models/jdl-binary-option.js +2 -2
  278. package/dist/jdl/models/jdl-deployment.js +11 -0
  279. package/dist/jdl/models/jdl-entity.js +1 -1
  280. package/dist/jdl/models/jdl-enum.js +1 -1
  281. package/dist/jdl/models/jdl-enums.js +0 -18
  282. package/dist/jdl/models/jdl-field.js +2 -2
  283. package/dist/jdl/models/jdl-object-wrapper.js +1 -0
  284. package/dist/jdl/models/jdl-object.js +23 -45
  285. package/dist/jdl/models/jdl-options.js +0 -18
  286. package/dist/jdl/models/jdl-relationships.js +8 -16
  287. package/dist/jdl/models/jdl-unary-option.js +1 -1
  288. package/dist/jdl/models/list-jdl-application-configuration-option.js +5 -2
  289. package/dist/jdl/parsing/jdl-ast-builder-visitor.js +12 -0
  290. package/dist/jdl/parsing/jdl-parser.js +14 -0
  291. package/dist/jdl/parsing/lexer/lexer.js +17 -11
  292. package/dist/jdl/parsing/validator.js +16 -2
  293. package/dist/jdl/readers/json-reader.js +1 -1
  294. package/dist/jdl/utils/array-utils.js +6 -0
  295. package/dist/jdl/utils/set-utils.js +3 -2
  296. package/dist/jdl/validators/jdl-without-application-validator.js +2 -2
  297. package/dist/testing/helpers.js +4 -0
  298. package/dist/types/generators/base/api.d.ts +6 -2
  299. package/dist/types/generators/base/generator.d.ts +10 -4
  300. package/dist/types/generators/base/priorities.d.ts +4 -0
  301. package/dist/types/generators/base/shared-data.d.ts +1 -1
  302. package/dist/types/generators/base-application/priorities.d.ts +2 -0
  303. package/dist/types/generators/base-application/support/entity.d.ts +2 -2
  304. package/dist/types/generators/base-application/support/prepare-entity.d.ts +3 -3
  305. package/dist/types/generators/base-application/support/relationship.d.ts +5 -5
  306. package/dist/types/generators/base-application/types.d.ts +15 -0
  307. package/dist/types/generators/base-core/generator.d.ts +16 -1
  308. package/dist/types/generators/base-entity-changes/types.d.ts +2 -0
  309. package/dist/types/generators/generator-constants.d.ts +1 -1
  310. package/dist/types/generators/java/support/add-java-annotation.d.ts +10 -20
  311. package/dist/types/generators/java/support/doc.d.ts +1 -1
  312. package/dist/types/generators/java/support/index.d.ts +1 -1
  313. package/dist/types/generators/server/support/relationship.d.ts +2 -2
  314. package/dist/types/generators/server/types.d.ts +5 -0
  315. package/dist/types/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.d.ts +2 -0
  316. package/dist/types/generators/spring-cloud/generators/gateway/types.d.ts +4 -0
  317. package/dist/types/generators/spring-data-relational/support/h2-reserved-keywords.d.ts +20 -0
  318. package/dist/types/jdl/converters/jdl-to-json/jdl-to-json-field-converter.d.ts +2 -2
  319. package/dist/types/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.d.ts +2 -1
  320. package/dist/types/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.d.ts +3 -1
  321. package/dist/types/jdl/converters/json-to-jdl-application-converter.d.ts +9 -2
  322. package/dist/types/jdl/converters/json-to-jdl-converter.d.ts +3 -3
  323. package/dist/types/jdl/converters/json-to-jdl-entity-converter.d.ts +2 -4
  324. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/application-converter.d.ts +3 -1
  325. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/deployment-converter.d.ts +2 -1
  326. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/entity-converter.d.ts +3 -1
  327. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/enum-converter.d.ts +2 -1
  328. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/field-converter.d.ts +2 -1
  329. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/option-converter.d.ts +3 -3
  330. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.d.ts +2 -1
  331. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/relationship-converter.d.ts +2 -1
  332. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/types.d.ts +110 -0
  333. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.d.ts +2 -1
  334. package/dist/types/jdl/converters/types.d.ts +102 -14
  335. package/dist/types/jdl/exporters/applications/jhipster-application-formatter.d.ts +4 -4
  336. package/dist/types/jdl/exporters/config.d.ts +2 -1
  337. package/dist/types/jdl/exporters/export-utils.d.ts +2 -1
  338. package/dist/types/jdl/exporters/jdl-exporter.d.ts +2 -1
  339. package/dist/types/jdl/exporters/jhipster-deployment-exporter.d.ts +3 -1
  340. package/dist/types/jdl/exporters/jhipster-entity-exporter.d.ts +3 -1
  341. package/dist/types/jdl/exporters/types.d.ts +61 -0
  342. package/dist/types/jdl/jhipster/binary-options.d.ts +8 -26
  343. package/dist/types/jdl/jhipster/field-types.d.ts +2 -2
  344. package/dist/types/jdl/jhipster/json-entity.d.ts +2 -2
  345. package/dist/types/jdl/models/abstract-jdl-option.d.ts +14 -9
  346. package/dist/types/jdl/models/boolean-jdl-application-configuration-option.d.ts +1 -1
  347. package/dist/types/jdl/models/integer-jdl-application-configuration-option.d.ts +1 -1
  348. package/dist/types/jdl/models/jdl-application-configuration-factory.d.ts +1 -1
  349. package/dist/types/jdl/models/jdl-application-configuration-option.d.ts +4 -4
  350. package/dist/types/jdl/models/jdl-application-configuration.d.ts +4 -4
  351. package/dist/types/jdl/models/jdl-application-definition.d.ts +4 -4
  352. package/dist/types/jdl/models/jdl-application-entities.d.ts +4 -4
  353. package/dist/types/jdl/models/jdl-application.d.ts +16 -13
  354. package/dist/types/jdl/models/jdl-binary-option.d.ts +5 -3
  355. package/dist/types/jdl/models/jdl-deployment.d.ts +13 -1
  356. package/dist/types/jdl/models/jdl-entity.d.ts +5 -5
  357. package/dist/types/jdl/models/jdl-enum-value.d.ts +4 -4
  358. package/dist/types/jdl/models/jdl-enum.d.ts +9 -5
  359. package/dist/types/jdl/models/jdl-enums.d.ts +6 -5
  360. package/dist/types/jdl/models/jdl-field.d.ts +10 -8
  361. package/dist/types/jdl/models/jdl-object-wrapper.d.ts +25 -0
  362. package/dist/types/jdl/models/jdl-object.d.ts +23 -19
  363. package/dist/types/jdl/models/jdl-options.d.ts +7 -24
  364. package/dist/types/jdl/models/jdl-relationship.d.ts +16 -10
  365. package/dist/types/jdl/models/jdl-relationships.d.ts +5 -5
  366. package/dist/types/jdl/models/jdl-validation.d.ts +3 -3
  367. package/dist/types/jdl/models/list-jdl-application-configuration-option.d.ts +4 -3
  368. package/dist/types/jdl/models/string-jdl-application-configuration-option.d.ts +2 -2
  369. package/dist/types/jdl/parsing/jdl-ast-builder-visitor.d.ts +1 -0
  370. package/dist/types/jdl/parsing/jdl-parser.d.ts +1 -0
  371. package/dist/types/jdl/parsing/jdl-parsing-types.d.ts +23 -0
  372. package/dist/types/jdl/parsing/lexer/lexer.d.ts +6 -2
  373. package/dist/types/jdl/parsing/validator.d.ts +1 -1
  374. package/dist/types/jdl/utils/array-utils.d.ts +1 -0
  375. package/dist/types/jdl/utils/set-utils.d.ts +1 -19
  376. package/dist/types/jdl/validators/deployment-validator.d.ts +2 -1
  377. package/dist/types/testing/helpers.d.ts +13 -3
  378. package/package.json +30 -30
  379. package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json +0 -19
  380. package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json +0 -19
  381. package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json +0 -19
  382. package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json +0 -19
  383. package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json +0 -19
  384. package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json +0 -19
  385. package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json +0 -19
  386. package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json +0 -19
  387. package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json +0 -19
  388. package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json +0 -19
  389. package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json +0 -19
  390. package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json +0 -19
  391. package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json +0 -19
  392. package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json +0 -19
  393. package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json +0 -19
  394. package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json +0 -19
  395. package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json +0 -19
  396. package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json +0 -19
  397. package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json +0 -19
  398. package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json +0 -19
  399. package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json +0 -19
  400. package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json +0 -19
  401. package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json +0 -19
  402. package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json +0 -19
  403. package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json +0 -19
  404. package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json +0 -19
  405. package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json +0 -19
  406. package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json +0 -19
  407. package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json +0 -19
  408. package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json +0 -19
  409. package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json +0 -19
  410. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json +0 -19
  411. package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json +0 -19
  412. package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json +0 -19
  413. package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json +0 -19
  414. package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json +0 -19
  415. package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json +0 -19
  416. package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json +0 -19
  417. package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json +0 -19
  418. package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json +0 -19
  419. package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json +0 -19
  420. package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json +0 -19
  421. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +0 -148
  422. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json +0 -19
  423. package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json +0 -19
  424. package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json +0 -19
  425. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json +0 -19
  426. package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json +0 -19
  427. package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_imperative.java.ejs +0 -43
  428. package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_reactive.java.ejs +0 -184
  429. package/dist/generators/statistics.js +0 -223
  430. /package/dist/jdl/converters/{types.js → parsed-jdl-to-jdl-object/types.js} +0 -0
@@ -19,7 +19,7 @@
19
19
  jest.mock('app/core/auth/account.service');
20
20
  jest.mock('app/login/login.service');
21
21
 
22
- import { ElementRef } from '@angular/core';
22
+ import { ElementRef, signal } from '@angular/core';
23
23
  import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
24
24
  import { FormBuilder } from '@angular/forms';
25
25
  import { Router, Navigation } from '@angular/router';
@@ -110,7 +110,7 @@ describe('LoginComponent', () => {
110
110
  const node = {
111
111
  focus: jest.fn(),
112
112
  };
113
- comp.username = new ElementRef(node);
113
+ comp.username = signal<ElementRef>(new ElementRef(node));
114
114
 
115
115
  // WHEN
116
116
  comp.ngAfterViewInit();
@@ -16,7 +16,7 @@
16
16
  See the License for the specific language governing permissions and
17
17
  limitations under the License.
18
18
  -%>
19
- import { Component, ViewChild, OnInit, AfterViewInit, ElementRef, inject, signal } from '@angular/core';
19
+ import { Component, OnInit, AfterViewInit, ElementRef, inject, signal, viewChild } from '@angular/core';
20
20
  import { FormGroup, FormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
21
21
  import { Router, RouterModule } from '@angular/router';
22
22
 
@@ -31,8 +31,7 @@ import { AccountService } from 'app/core/auth/account.service';
31
31
  templateUrl: './login.component.html',
32
32
  })
33
33
  export default class LoginComponent implements OnInit, AfterViewInit {
34
- @ViewChild('username', { static: false })
35
- username!: ElementRef;
34
+ username = viewChild.required<ElementRef>('username');
36
35
 
37
36
  authenticationError = signal(false);
38
37
 
@@ -56,7 +55,7 @@ export default class LoginComponent implements OnInit, AfterViewInit {
56
55
  }
57
56
 
58
57
  ngAfterViewInit(): void {
59
- this.username.nativeElement.focus();
58
+ this.username().nativeElement.focus();
60
59
  }
61
60
 
62
61
  login(): void {
@@ -100,7 +100,7 @@ describe('Alert Error Component', () => {
100
100
  status: 400,
101
101
  statusText: 'Bad Request',
102
102
  error: {
103
- type: 'https://www.jhipster.tech/problem/constraint-violation',
103
+ type: 'https://www.jhipster.tech/problem/problem-with-message',
104
104
  title: 'Bad Request',
105
105
  status: 400,
106
106
  path: '/api/foos',
@@ -135,7 +135,7 @@ describe('Alert Error Component', () => {
135
135
  status: 400,
136
136
  statusText: 'Bad Request',
137
137
  error: {
138
- type: 'https://www.jhipster.tech/problem/constraint-violation',
138
+ type: 'https://www.jhipster.tech/problem/problem-with-message',
139
139
  title: 'Method argument not valid',
140
140
  status: 400,
141
141
  path: '/api/foos',
@@ -18,9 +18,12 @@
18
18
  -%>
19
19
  jest.mock('app/core/auth/account.service');
20
20
 
21
- import { Component, ElementRef, Signal, ViewChild, WritableSignal, signal } from '@angular/core';
21
+ import { Component, ElementRef, WritableSignal, signal, viewChild } from '@angular/core';
22
+ import { HttpClientTestingModule } from '@angular/common/http/testing';
22
23
  import { TestBed, waitForAsync } from '@angular/core/testing';
23
- import { Subject } from 'rxjs';
24
+ <%_ if (enableTranslation) { _%>
25
+ import { TranslateModule } from '@ngx-translate/core';
26
+ <%_ } _%>
24
27
 
25
28
  import { AccountService } from 'app/core/auth/account.service';
26
29
  import { Account } from 'app/core/auth/account.model';
@@ -31,8 +34,7 @@ import HasAnyAuthorityDirective from './has-any-authority.directive';
31
34
  template: ` <div *<%= jhiPrefix %>HasAnyAuthority="'ROLE_ADMIN'" #content></div> `,
32
35
  })
33
36
  class TestHasAnyAuthorityDirectiveComponent {
34
- @ViewChild('content', { static: false })
35
- content?: ElementRef;
37
+ content = viewChild<ElementRef>('content');
36
38
  }
37
39
 
38
40
  describe('HasAnyAuthorityDirective tests', () => {
@@ -41,7 +43,7 @@ describe('HasAnyAuthorityDirective tests', () => {
41
43
 
42
44
  beforeEach(waitForAsync(() => {
43
45
  TestBed.configureTestingModule({
44
- imports: [HasAnyAuthorityDirective],
46
+ imports: [HasAnyAuthorityDirective, HttpClientTestingModule<%_ if (enableTranslation) { _%>, TranslateModule.forRoot()<%_ } _%>],
45
47
  declarations: [TestHasAnyAuthorityDirectiveComponent],
46
48
  providers: [AccountService],
47
49
  });
@@ -79,7 +81,7 @@ describe('HasAnyAuthorityDirective tests', () => {
79
81
  fixture.detectChanges();
80
82
 
81
83
  // THEN
82
- expect(comp.content).toBeUndefined();
84
+ expect(comp.content()).toBeUndefined();
83
85
  });
84
86
  });
85
87
 
@@ -95,7 +97,7 @@ describe('HasAnyAuthorityDirective tests', () => {
95
97
  fixture.detectChanges();
96
98
 
97
99
  // THEN
98
- expect(comp.content).toBeDefined();
100
+ expect(comp.content()).toBeDefined();
99
101
 
100
102
  // GIVEN
101
103
  currentAccount.set(null);
@@ -104,7 +106,7 @@ describe('HasAnyAuthorityDirective tests', () => {
104
106
  fixture.detectChanges();
105
107
 
106
108
  // THEN
107
- expect(comp.content).toBeUndefined();
109
+ expect(comp.content()).toBeUndefined();
108
110
 
109
111
  // WHEN
110
112
  currentAccount.set({ activated: true, authorities: ['foo'] } as any);
@@ -16,7 +16,7 @@
16
16
  See the License for the specific language governing permissions and
17
17
  limitations under the License.
18
18
  -%>
19
- import { Directive, inject, Input, TemplateRef, ViewContainerRef, effect, signal, computed } from '@angular/core';
19
+ import { Directive, inject, input, TemplateRef, ViewContainerRef, effect, computed } from '@angular/core';
20
20
 
21
21
  import { AccountService } from 'app/core/auth/account.service';
22
22
 
@@ -36,7 +36,7 @@ import { AccountService } from 'app/core/auth/account.service';
36
36
  selector: '[<%= jhiPrefix %>HasAnyAuthority]',
37
37
  })
38
38
  export default class HasAnyAuthorityDirective {
39
- private authorities = signal<string | string[]>([]);
39
+ public authorities = input<string | string[]>([], { alias: '<%= jhiPrefix %>HasAnyAuthority' });
40
40
 
41
41
  private templateRef = inject(TemplateRef<any>);
42
42
  private viewContainerRef = inject(ViewContainerRef);
@@ -52,11 +52,6 @@ export default class HasAnyAuthorityDirective {
52
52
  } else {
53
53
  this.viewContainerRef.clear();
54
54
  }
55
- });
56
- }
57
-
58
- @Input()
59
- set <%= jhiPrefix %>HasAnyAuthority(value: string | string[]) {
60
- this.authorities.set(value);
55
+ }, { allowSignalWrites: true });
61
56
  }
62
57
  }
@@ -1,13 +1,17 @@
1
1
  @if (filters.hasAnyFilterSet()) {
2
2
  <div class="filter-display">
3
3
  <span>__jhiTranslateTag__('entity.filters.set')</span>
4
- <fa-icon icon="times" (click)="clearAllFilters()" title="__jhiTranslatePipe__('entity.filters.clearAll')"></fa-icon>
4
+ <button class="btn" (click)="clearAllFilters()" (keydown.enter)="clearAllFilters()">
5
+ <fa-icon icon="times" title="__jhiTranslatePipe__('entity.filters.clearAll')"></fa-icon>
6
+ </button>
5
7
  <ul>
6
8
  @for (filterOption of filters.filterOptions; track filterOption.name) {
7
9
  @for (value of filterOption.values; track value) {
8
10
  <li>
9
11
  <span>{{ filterOption.name }}:</span> {{ value }}
10
- <fa-icon icon="times" (click)="clearFilter(filterOption.name, value)" title="__jhiTranslatePipe__('entity.filters.clear')"></fa-icon>
12
+ <button class="btn" (click)="clearFilter(filterOption.name, value)" (keydown.enter)="clearFilter(filterOption.name, value)">
13
+ <fa-icon icon="times" title="__jhiTranslatePipe__('entity.filters.clear')"></fa-icon>
14
+ </button>
11
15
  </li>
12
16
  }
13
17
  }
@@ -62,7 +62,7 @@ module.exports = async (config, options, targetOptions) => {
62
62
  }
63
63
 
64
64
  // configuring proxy for back end service
65
- const tls = Boolean(config.devServer && config.devServer.https);
65
+ const tls = config.devServer?.server?.type === 'https';
66
66
  if (config.devServer) {
67
67
  config.devServer.proxy = proxyConfig({ tls });
68
68
  }
@@ -18,19 +18,16 @@
18
18
  */
19
19
  /* eslint-disable consistent-return, import/no-named-as-default-member */
20
20
  import chalk from 'chalk';
21
- import { camelCase, omit } from 'lodash-es';
21
+ import { camelCase } from 'lodash-es';
22
22
  import BaseApplicationGenerator from '../base-application/index.js';
23
23
  import { checkNode, loadStoredAppOptions } from './support/index.js';
24
24
  import cleanupOldFilesTask from './cleanup.js';
25
- import { askForInsightOptIn } from './prompts.js';
26
- import statistics from '../statistics.js';
27
25
  import { GENERATOR_COMMON, GENERATOR_CLIENT, GENERATOR_SERVER } from '../generator-list.js';
28
26
  import { getDefaultAppName } from '../project-name/support/index.js';
29
27
  import { packageJson } from '../../lib/index.js';
30
- import { applicationTypes, applicationOptions } from '../../jdl/jhipster/index.js';
28
+ import { applicationTypes } from '../../jdl/jhipster/index.js';
31
29
  import command from './command.js';
32
30
  const { MICROSERVICE } = applicationTypes;
33
- const { JHI_PREFIX, BASE_NAME, JWT_SECRET_KEY, PACKAGE_NAME, PACKAGE_FOLDER, REMEMBER_ME_KEY } = applicationOptions.OptionNames;
34
31
  export default class JHipsterAppGenerator extends BaseApplicationGenerator {
35
32
  command = command;
36
33
  async beforeQueue() {
@@ -70,7 +67,6 @@ export default class JHipsterAppGenerator extends BaseApplicationGenerator {
70
67
  }
71
68
  get prompting() {
72
69
  return this.asPromptingTaskGroup({
73
- askForInsightOptIn,
74
70
  async prompting({ control }) {
75
71
  if (control.existingProject && this.options.askAnswered !== true)
76
72
  return;
@@ -118,8 +114,8 @@ export default class JHipsterAppGenerator extends BaseApplicationGenerator {
118
114
  get [BaseApplicationGenerator.CONFIGURING]() {
119
115
  return this.delegateTasksToBlueprint(() => this.configuring);
120
116
  }
121
- get composing() {
122
- return this.asComposingTaskGroup({
117
+ get composingComponent() {
118
+ return this.asComposingComponentTaskGroup({
123
119
  /**
124
120
  * Composing with others generators, must be executed after `configuring` priority to let others
125
121
  * generators `configuring` priority to run.
@@ -142,33 +138,10 @@ export default class JHipsterAppGenerator extends BaseApplicationGenerator {
142
138
  await this.composeWithJHipster(GENERATOR_CLIENT);
143
139
  }
144
140
  },
145
- /**
146
- * At this point every other generator should already be configured, so, enforce defaults fallback.
147
- */
148
- saveConfigWithDefaults() {
149
- const config = this.jhipsterConfigWithDefaults;
150
- if (config.entitySuffix === config.dtoSuffix) {
151
- throw new Error('Entities cannot be generated as the entity suffix and DTO suffix are equals !');
152
- }
153
- },
154
- });
155
- }
156
- get [BaseApplicationGenerator.COMPOSING]() {
157
- return this.delegateTasksToBlueprint(() => this.composing);
158
- }
159
- get default() {
160
- return this.asDefaultTaskGroup({
161
- insight({ control }) {
162
- const yorc = {
163
- ...omit(this.jhipsterConfig, [JHI_PREFIX, BASE_NAME, JWT_SECRET_KEY, PACKAGE_NAME, PACKAGE_FOLDER, REMEMBER_ME_KEY]),
164
- };
165
- yorc.applicationType = this.jhipsterConfig.applicationType;
166
- statistics.sendYoRc(yorc, control.existingProject, this.jhipsterConfig.jhipsterVersion);
167
- },
168
141
  });
169
142
  }
170
- get [BaseApplicationGenerator.DEFAULT]() {
171
- return this.delegateTasksToBlueprint(() => this.default);
143
+ get [BaseApplicationGenerator.COMPOSING_COMPONENT]() {
144
+ return this.delegateTasksToBlueprint(() => this.composingComponent);
172
145
  }
173
146
  get writing() {
174
147
  return this.asWritingTaskGroup({
@@ -10,7 +10,7 @@ import { packageJson } from '../../../lib/index.js';
10
10
  const { GATLING, CUCUMBER, CYPRESS } = testFrameworkTypes;
11
11
  const { GATEWAY, MONOLITH } = applicationTypes;
12
12
  const { JWT, OAUTH2, SESSION } = authenticationTypes;
13
- const { CASSANDRA, NO: NO_DATABASE } = databaseTypes;
13
+ const { NO: NO_DATABASE } = databaseTypes;
14
14
  /**
15
15
  * Load common options to be stored.
16
16
  * @deprecated
@@ -159,6 +159,4 @@ export const loadDerivedAppConfig = ({ application }) => {
159
159
  application.generateUserManagement =
160
160
  !application.skipUserManagement && application.databaseType !== NO_DATABASE && authenticationApiWithUserManagement;
161
161
  application.generateInMemoryUserCredentials = !application.generateUserManagement && authenticationApiWithUserManagement;
162
- application.generateBuiltInUserEntity = application.generateUserManagement || application.syncUserWithIdp;
163
- application.generateBuiltInAuthorityEntity = application.generateBuiltInUserEntity && application.databaseType !== CASSANDRA;
164
162
  };
@@ -20,14 +20,12 @@ import fs from 'fs';
20
20
  import path from 'path';
21
21
  import chalk from 'chalk';
22
22
  import semver from 'semver';
23
- import { defaults } from 'lodash-es';
24
23
  import { packageJson } from '../../lib/index.js';
25
- import { packageNameToNamespace, removeFieldsWithNullishValues } from './support/index.js';
24
+ import { packageNameToNamespace } from './support/index.js';
26
25
  import { mergeBlueprints, parseBluePrints, loadBlueprintsFromConfiguration, normalizeBlueprintName } from './internal/index.js';
27
26
  import { PRIORITY_NAMES } from './priorities.js';
28
27
  import CoreGenerator from '../base-core/index.js';
29
28
  import { LOCAL_BLUEPRINT_PACKAGE_NAMESPACE } from './support/constants.js';
30
- import { getConfigWithDefaults } from '../../jdl/index.js';
31
29
  import { loadStoredAppOptions } from '../app/support/index.js';
32
30
  /**
33
31
  * Base class that contains blueprints support.
@@ -160,6 +158,20 @@ export default class JHipsterBaseBlueprintGenerator extends CoreGenerator {
160
158
  asComposingTaskGroup(taskGroup) {
161
159
  return taskGroup;
162
160
  }
161
+ /**
162
+ * Priority API stub for blueprints.
163
+ *
164
+ * ComposingComponent priority should be used to handle component configuration order.
165
+ */
166
+ get composingComponent() {
167
+ return {};
168
+ }
169
+ /**
170
+ * Utility method to get typed objects for autocomplete.
171
+ */
172
+ asComposingComponentTaskGroup(taskGroup) {
173
+ return taskGroup;
174
+ }
163
175
  /**
164
176
  * Priority API stub for blueprints.
165
177
  *
@@ -343,19 +355,6 @@ export default class JHipsterBaseBlueprintGenerator extends CoreGenerator {
343
355
  asEndTaskGroup(taskGroup) {
344
356
  return taskGroup;
345
357
  }
346
- /**
347
- * JHipster config with default values fallback
348
- */
349
- get jhipsterConfigWithDefaults() {
350
- const configWithDefaults = getConfigWithDefaults(removeFieldsWithNullishValues(this.config.getAll()));
351
- defaults(configWithDefaults, {
352
- skipFakeData: false,
353
- skipCheckLengthOfIdentifier: false,
354
- enableGradleEnterprise: false,
355
- pages: [],
356
- });
357
- return configWithDefaults;
358
- }
359
358
  /**
360
359
  * @protected
361
360
  * Composes with blueprint generators, if any.
@@ -32,6 +32,8 @@ const END = 'end';
32
32
  /** Custom priorities */
33
33
  const COMPOSING = 'composing';
34
34
  const COMPOSING_QUEUE = `${QUEUE_PREFIX}${COMPOSING}`;
35
+ const COMPOSING_COMPONENT = 'composingComponent';
36
+ const COMPOSING_COMPONENT_QUEUE = `${QUEUE_PREFIX}${COMPOSING_COMPONENT}`;
35
37
  const LOADING = 'loading';
36
38
  const LOADING_QUEUE = `${QUEUE_PREFIX}${LOADING}`;
37
39
  const PREPARING = 'preparing';
@@ -70,9 +72,15 @@ export const CUSTOM_PRIORITIES = [
70
72
  {
71
73
  priorityName: COMPOSING,
72
74
  queueName: COMPOSING_QUEUE,
73
- before: LOADING,
75
+ before: COMPOSING_COMPONENT,
74
76
  args: generator => generator.getArgsForPriority(COMPOSING),
75
77
  },
78
+ {
79
+ priorityName: COMPOSING_COMPONENT,
80
+ queueName: COMPOSING_COMPONENT_QUEUE,
81
+ before: LOADING,
82
+ args: generator => generator.getArgsForPriority(COMPOSING_COMPONENT),
83
+ },
76
84
  {
77
85
  priorityName: LOADING,
78
86
  queueName: LOADING_QUEUE,
@@ -140,6 +148,7 @@ export const PRIORITY_NAMES = {
140
148
  PROMPTING,
141
149
  CONFIGURING,
142
150
  COMPOSING,
151
+ COMPOSING_COMPONENT,
143
152
  LOADING,
144
153
  PREPARING,
145
154
  POST_PREPARING,
@@ -158,6 +167,7 @@ export const PRIORITY_NAMES_LIST = [
158
167
  PROMPTING,
159
168
  CONFIGURING,
160
169
  COMPOSING,
170
+ COMPOSING_COMPONENT,
161
171
  LOADING,
162
172
  PREPARING,
163
173
  POST_PREPARING,
@@ -175,6 +185,7 @@ export const QUEUES = {
175
185
  PROMPTING_QUEUE: PROMPTING,
176
186
  CONFIGURING_QUEUE: CONFIGURING,
177
187
  COMPOSING_QUEUE,
188
+ COMPOSING_COMPONENT_QUEUE,
178
189
  LOADING_QUEUE,
179
190
  PREPARING_QUEUE,
180
191
  POST_PREPARING_QUEUE,
@@ -448,6 +448,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
448
448
  taskName: 'queueConfiguringEachEntity',
449
449
  cancellable: true,
450
450
  method: () => {
451
+ if (this.options.skipPriorities?.includes(CONFIGURING_EACH_ENTITY))
452
+ return;
451
453
  this.log.debug(`Queueing entity tasks ${CONFIGURING_EACH_ENTITY}`);
452
454
  const tasks = this.extractTasksFromPriority(CONFIGURING_EACH_ENTITY, { skip: false });
453
455
  this.getEntitiesDataToConfigure().forEach(({ entityName, entityStorage, entityConfig }) => {
@@ -467,6 +469,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
467
469
  taskName: 'queueLoadingEntities',
468
470
  cancellable: true,
469
471
  method: () => {
472
+ if (this.options.skipPriorities?.includes(LOADING_ENTITIES))
473
+ return;
470
474
  this.log.debug(`Queueing entity tasks ${LOADING_ENTITIES}`);
471
475
  const tasks = this.extractTasksFromPriority(LOADING_ENTITIES, { skip: false });
472
476
  this.log.debug(`Queueing entity tasks ${LOADING_ENTITIES}`);
@@ -484,6 +488,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
484
488
  taskName: 'queuePreparingEachEntity',
485
489
  cancellable: true,
486
490
  method: () => {
491
+ if (this.options.skipPriorities?.includes(PREPARING_EACH_ENTITY))
492
+ return;
487
493
  this.log.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY}`);
488
494
  const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY, { skip: false });
489
495
  this.getEntitiesDataToPrepare().forEach(({ description, ...data }) => {
@@ -503,6 +509,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
503
509
  taskName: 'queuePreparingEachEntityField',
504
510
  cancellable: true,
505
511
  method: () => {
512
+ if (this.options.skipPriorities?.includes(PREPARING_EACH_ENTITY_FIELD))
513
+ return;
506
514
  const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY_FIELD, { skip: false });
507
515
  this.getEntitiesFieldsDataToPrepare().forEach(({ description, ...data }) => {
508
516
  this.log.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY_FIELD} for ${description}`);
@@ -521,6 +529,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
521
529
  taskName: 'queuePreparingEachEntityRelationship',
522
530
  cancellable: true,
523
531
  method: () => {
532
+ if (this.options.skipPriorities?.includes(PREPARING_EACH_ENTITY_RELATIONSHIP))
533
+ return;
524
534
  const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY_RELATIONSHIP, { skip: false });
525
535
  this.getEntitiesRelationshipsDataToPrepare().forEach(({ description, ...data }) => {
526
536
  this.log.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY_RELATIONSHIP} for ${description}`);
@@ -539,6 +549,8 @@ export default class BaseApplicationGenerator extends BaseGenerator {
539
549
  taskName: 'queuePostPreparingEachEntity',
540
550
  cancellable: true,
541
551
  method: () => {
552
+ if (this.options.skipPriorities?.includes(POST_PREPARING_EACH_ENTITY))
553
+ return;
542
554
  const tasks = this.extractTasksFromPriority(POST_PREPARING_EACH_ENTITY, { skip: false });
543
555
  this.getEntitiesDataToPostPrepare().forEach(({ description, ...data }) => {
544
556
  this.log.debug(`Queueing entity tasks ${POST_PREPARING_EACH_ENTITY} for ${description}`);
@@ -557,7 +569,7 @@ export default class BaseApplicationGenerator extends BaseGenerator {
557
569
  taskName: 'queueWritingEachEntity',
558
570
  cancellable: true,
559
571
  method: () => {
560
- if (this.options.skipWriting)
572
+ if (this.options.skipWriting || this.options.skipPriorities?.includes(WRITING_ENTITIES))
561
573
  return;
562
574
  const tasks = this.extractTasksFromPriority(WRITING_ENTITIES, { skip: false });
563
575
  const args = this.getArgsForPriority(WRITING_ENTITIES);
@@ -574,7 +586,7 @@ export default class BaseApplicationGenerator extends BaseGenerator {
574
586
  taskName: 'queuePostWritingEachEntity',
575
587
  cancellable: true,
576
588
  method: () => {
577
- if (this.options.skipWriting)
589
+ if (this.options.skipWriting || this.options.skipPriorities?.includes(POST_WRITING_ENTITIES))
578
590
  return;
579
591
  const tasks = this.extractTasksFromPriority(POST_WRITING_ENTITIES, { skip: false });
580
592
  const args = this.getArgsForPriority(POST_WRITING_ENTITIES);
@@ -126,6 +126,7 @@ export const PRIORITY_NAMES_LIST = [
126
126
  PRIORITY_NAMES.PROMPTING,
127
127
  PRIORITY_NAMES.CONFIGURING,
128
128
  PRIORITY_NAMES.COMPOSING,
129
+ PRIORITY_NAMES.COMPOSING_COMPONENT,
129
130
  PRIORITY_NAMES.LOADING,
130
131
  PRIORITY_NAMES.PREPARING,
131
132
  CONFIGURING_EACH_ENTITY,
@@ -22,12 +22,11 @@ import { getDatabaseTypeData, hibernateSnakeCase } from '../../server/support/in
22
22
  import { createFaker, parseChangelog, stringHashCode, upperFirstCamelCase, getMicroserviceAppName, mutateData, } from '../../base/support/index.js';
23
23
  import { fieldToReference } from './prepare-field.js';
24
24
  import { getTypescriptKeyType, getEntityParentPathAddition } from '../../client/support/index.js';
25
- import { applicationTypes, authenticationTypes, binaryOptions, databaseTypes, entityOptions, fieldTypes, searchEngineTypes, } from '../../../jdl/jhipster/index.js';
25
+ import { applicationTypes, binaryOptions, databaseTypes, entityOptions, fieldTypes, searchEngineTypes, } from '../../../jdl/jhipster/index.js';
26
26
  import { fieldIsEnum } from './field-utils.js';
27
27
  const NO_SEARCH_ENGINE = searchEngineTypes.NO;
28
28
  const { PaginationTypes, ServiceTypes, MapperTypes } = entityOptions;
29
29
  const { GATEWAY, MICROSERVICE } = applicationTypes;
30
- const { OAUTH2 } = authenticationTypes;
31
30
  const { CommonDBTypes } = fieldTypes;
32
31
  const { BOOLEAN, LONG, STRING, UUID, INTEGER } = CommonDBTypes;
33
32
  const { NO: NO_DTO, MAPSTRUCT } = MapperTypes;
@@ -191,10 +190,16 @@ export default function prepareEntity(entityWithConfig, generator, application)
191
190
  ? `${entityWithConfig.clientRootFolder}-${entityWithConfig.entityStateName}`
192
191
  : entityWithConfig.entityStateName);
193
192
  mutateData(entityWithConfig, {
193
+ __override__: false,
194
194
  i18nKeyPrefix: data => data.i18nKeyPrefix ?? `${data.frontendAppName}.${data.entityTranslationKey}`,
195
195
  i18nAlertHeaderPrefix: data => data.i18nAlertHeaderPrefix ?? data.microserviceAppName
196
196
  ? `${data.microserviceAppName}.${data.entityTranslationKey}`
197
197
  : data.i18nKeyPrefix,
198
+ hasRelationshipWithBuiltInUser: ({ relationships }) => relationships.some(relationship => relationship.otherEntity.builtInUser),
199
+ saveUserSnapshot: ({ hasRelationshipWithBuiltInUser, dto }) => application.applicationTypeMicroservice &&
200
+ application.authenticationTypeOauth2 &&
201
+ hasRelationshipWithBuiltInUser &&
202
+ dto === NO_MAPPER,
198
203
  });
199
204
  const { microserviceName, entityFileName, microfrontend } = entityWithConfig;
200
205
  entityWithConfig.entityApi = microserviceName ? `services/${microserviceName.toLowerCase()}/` : '';
@@ -203,12 +208,6 @@ export default function prepareEntity(entityWithConfig, generator, application)
203
208
  (microfrontend && microserviceName && entityWithConfig.applicationType === MICROSERVICE
204
209
  ? `${microserviceName.toLowerCase()}/${entityFileName}`
205
210
  : `${entityFileName}`);
206
- const hasBuiltInUserField = entityWithConfig.relationships.some(relationship => relationship.otherEntity.builtInUser);
207
- entityWithConfig.saveUserSnapshot =
208
- application.applicationType === MICROSERVICE &&
209
- application.authenticationType === OAUTH2 &&
210
- hasBuiltInUserField &&
211
- entityWithConfig.dto === NO_MAPPER;
212
211
  entityWithConfig.generateFakeData = type => {
213
212
  const fieldsToGenerate = type === 'cypress' ? entityWithConfig.fields.filter(field => !field.id || !field.autoGenerate) : entityWithConfig.fields;
214
213
  const fieldEntries = fieldsToGenerate.map(field => {
@@ -247,7 +247,7 @@ function _derivedProperties(field) {
247
247
  fieldTypeNumeric: fieldType === INTEGER || fieldType === LONG || fieldType === FLOAT || fieldType === DOUBLE || fieldType === BIG_DECIMAL,
248
248
  fieldTypeBinary: fieldType === BYTES || fieldType === BYTE_BUFFER,
249
249
  fieldTypeTimed: fieldType === ZONED_DATE_TIME || fieldType === INSTANT,
250
- fieldTypeCharSequence: fieldType === STRING || fieldType === UUID,
250
+ fieldTypeCharSequence: fieldType === STRING || fieldType === UUID || fieldType === TEXT_BLOB,
251
251
  fieldTypeTemporal: fieldType === ZONED_DATE_TIME || fieldType === INSTANT || fieldType === LOCAL_DATE,
252
252
  fieldValidationRequired: validationRules.includes(REQUIRED),
253
253
  fieldValidationMin: validationRules.includes(MIN),
@@ -71,9 +71,9 @@ export default function prepareRelationship(entityWithConfig, relationship, gene
71
71
  otherEntityNameCapitalized: upperFirst(otherEntityName),
72
72
  // let ownerSide true when type is 'many-to-one' for convenience.
73
73
  // means that this side should control the reference.
74
- ownerSide: relationshipManyToOne || (relationshipLeftSide && !relationshipOneToMany),
74
+ ownerSide: relationship.otherEntity.embedded || relationshipManyToOne || (relationshipLeftSide && !relationshipOneToMany),
75
75
  persistableRelationship: ({ ownerSide }) => ownerSide,
76
- relationshipUpdateBackReference: ({ ownerSide, relationshipRightSide }) => entityWithConfig.databaseType === 'neo4j' ? relationshipRightSide : !ownerSide,
76
+ relationshipUpdateBackReference: ({ ownerSide, relationshipRightSide, otherEntity }) => !otherEntity.embedded && (entityWithConfig.databaseType === NEO4J ? relationshipRightSide : !ownerSide),
77
77
  // DB properties
78
78
  columnName: hibernateSnakeCase(relationshipName),
79
79
  columnNamePrefix: relationship.id && relationshipOneToOne ? '' : `${hibernateSnakeCase(relationshipName)}_`,
@@ -94,6 +94,7 @@ export default function prepareRelationship(entityWithConfig, relationship, gene
94
94
  relationship.otherSideReferenceExists = true;
95
95
  }
96
96
  else if (!ignoreMissingRequiredRelationship &&
97
+ !relationship.otherEntity.embedded &&
97
98
  !relationship.relationshipIgnoreBackReference &&
98
99
  entityWithConfig.databaseType !== NEO4J &&
99
100
  entityWithConfig.databaseType !== DATABASE_NO &&