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
@@ -20,34 +20,26 @@ import { GENERATOR_NAME } from '../export-utils.js';
20
20
  /**
21
21
  * Exports JDL applications to JDL files in separate folders (based on application base names).
22
22
  * @param applications the applications to exporters (key: application name, value: a JDLApplication).
23
- * @param {Object} [configuration]
24
23
  * @return object[] exported applications in their final form.
25
24
  */
26
- export function formatApplicationsToExport(applications, configuration) {
25
+ export function formatApplicationsToExport(applications) {
27
26
  if (!applications) {
28
27
  throw new Error('Applications have to be passed to be exported.');
29
28
  }
30
29
  return Object.values(applications).map(application => {
31
- // TODO: This is probably a bug, too many arguments given.
32
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
33
- // @ts-expect-error
34
- return setUpApplicationStructure(application, configuration);
30
+ return setUpApplicationStructure(application);
35
31
  });
36
32
  }
37
33
  /**
38
34
  * Exports JDL a application to a JDL file in the current directory.
39
35
  * @param {Object} application - the JDL application to export.
40
- * @param {Object} [configuration]
41
36
  * @return {Object} the exported application in its final form.
42
37
  */
43
- export function formatApplicationToExport(application, configuration = {}) {
44
- // TODO: This is probably a bug, too many arguments given.
45
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
46
- // @ts-expect-error
47
- return setUpApplicationStructure(application, configuration);
38
+ export function formatApplicationToExport(application) {
39
+ return setUpApplicationStructure(application);
48
40
  }
49
41
  function setUpApplicationStructure(application) {
50
- let applicationToExport = {
42
+ const applicationToExport = {
51
43
  [GENERATOR_NAME]: {},
52
44
  };
53
45
  applicationToExport[GENERATOR_NAME] = getApplicationConfig(application);
@@ -58,12 +50,12 @@ function setUpApplicationStructure(application) {
58
50
  if (application.hasConfigurationOption('creationTimestamp')) {
59
51
  applicationToExport[GENERATOR_NAME].creationTimestamp = parseInt(application.getConfigurationOptionValue('creationTimestamp'), 10);
60
52
  }
61
- applicationToExport = cleanUpOptions(applicationToExport);
62
- return applicationToExport;
53
+ const postProcessedApplicationToExport = cleanUpOptions(applicationToExport);
54
+ return postProcessedApplicationToExport;
63
55
  }
64
56
  function getApplicationConfig(application) {
65
57
  const result = {};
66
- application.forEachConfigurationOption(option => {
58
+ application.forEachConfigurationOption((option) => {
67
59
  result[option.name] = option.getValue();
68
60
  });
69
61
  return result;
@@ -73,7 +65,7 @@ function getApplicationNamespaceConfig(application) {
73
65
  return undefined;
74
66
  }
75
67
  const result = {};
76
- application.forEachNamespaceConfiguration(configurationOption => {
68
+ application.forEachNamespaceConfiguration((configurationOption) => {
77
69
  result[configurationOption.namespace] = result[configurationOption.namespace] ?? {};
78
70
  configurationOption.forEachOption(option => {
79
71
  result[configurationOption.namespace][option.name] = option.getValue();
@@ -82,19 +74,20 @@ function getApplicationNamespaceConfig(application) {
82
74
  return result;
83
75
  }
84
76
  function cleanUpOptions(application) {
85
- if (!application[GENERATOR_NAME].frontEndBuilder) {
86
- delete application[GENERATOR_NAME].frontEndBuilder;
77
+ const res = structuredClone(application);
78
+ if (res[GENERATOR_NAME].frontEndBuilder) {
79
+ delete res[GENERATOR_NAME].frontEndBuilder;
87
80
  }
88
- delete application.entityNames;
81
+ delete res.entityNames;
89
82
  if (application[GENERATOR_NAME].blueprints) {
90
- application[GENERATOR_NAME].blueprints = application[GENERATOR_NAME].blueprints.map(blueprintName => ({
83
+ res[GENERATOR_NAME].blueprints = application[GENERATOR_NAME].blueprints.map(blueprintName => ({
91
84
  name: blueprintName,
92
85
  }));
93
86
  }
94
87
  if (application[GENERATOR_NAME].microfrontends) {
95
- application[GENERATOR_NAME].microfrontends = application[GENERATOR_NAME].microfrontends.map(baseName => ({
88
+ res[GENERATOR_NAME].microfrontends = application[GENERATOR_NAME].microfrontends.map(baseName => ({
96
89
  baseName,
97
90
  }));
98
91
  }
99
- return application;
92
+ return res;
100
93
  }
@@ -1,5 +1,6 @@
1
1
  import { GENERATOR_NAME } from './export-utils.js';
2
2
  export const mergeYoRcContent = (oldConfig, newConfig) => {
3
+ // @ts-expect-error partial assignment
3
4
  const merged = { [GENERATOR_NAME]: {} };
4
5
  for (const ns of new Set([...Object.keys(oldConfig), ...Object.keys(newConfig)])) {
5
6
  merged[ns] = { ...oldConfig[ns], ...newConfig[ns] };
@@ -31,9 +31,9 @@ export default function exportDeployments(deployments) {
31
31
  }
32
32
  return Object.values(deployments).map(deployment => {
33
33
  checkForErrors(deployment);
34
- deployment = setUpDeploymentStructure(deployment);
35
- writeDeploymentConfigs(deployment);
36
- return deployment;
34
+ const yoRcDeployment = setUpDeploymentStructure(deployment);
35
+ writeDeploymentConfigs(yoRcDeployment);
36
+ return yoRcDeployment;
37
37
  });
38
38
  }
39
39
  function checkForErrors(deployment) {
@@ -49,8 +49,8 @@ function setUpDeploymentStructure(deployment) {
49
49
  return deploymentToExport;
50
50
  }
51
51
  function setUpArrayOptions(deployment) {
52
- deployment[GENERATOR_NAME].appsFolders = Array.from(deployment[GENERATOR_NAME].appsFolders);
53
- deployment[GENERATOR_NAME].clusteredDbApps = Array.from(deployment[GENERATOR_NAME].clusteredDbApps);
52
+ deployment[GENERATOR_NAME].appsFolders = Array.from(deployment[GENERATOR_NAME]?.appsFolders || []);
53
+ deployment[GENERATOR_NAME].clusteredDbApps = Array.from(deployment[GENERATOR_NAME]?.clusteredDbApps || []);
54
54
  return deployment;
55
55
  }
56
56
  /**
@@ -55,7 +55,7 @@ function init(passedConfiguration) {
55
55
  * @param subFolder the folder (to create) in which the JHipster entity folder will be.
56
56
  */
57
57
  function updateEntities(subFolder) {
58
- return configuration.entities.map(entity => {
58
+ return configuration.entities.map((entity) => {
59
59
  const filePath = path.join(subFolder, toFilePath(entity.name));
60
60
  return updateEntityToGenerateWithExistingOne(filePath, entity);
61
61
  });
@@ -29,8 +29,10 @@ import exportEntities from './exporters/jhipster-entity-exporter.js';
29
29
  import createWithApplicationValidator from './validators/jdl-with-application-validator.js';
30
30
  import createWithoutApplicationValidator from './validators/jdl-without-application-validator.js';
31
31
  import { applicationOptions } from './jhipster/index.js';
32
+ import { GENERATOR_NAME } from './exporters/export-utils.js';
32
33
  const { OptionNames } = applicationOptions;
33
34
  const { APPLICATION_TYPE, BASE_NAME } = OptionNames;
35
+ const GENERATOR_JHIPSTER = 'generator-jhipster'; // can't use the one of the generator as it circles
34
36
  /**
35
37
  * Creates a new JDL importer from files.
36
38
  * There are two ways to create an importer:
@@ -99,10 +101,10 @@ function makeJDLImporter(content, configuration) {
99
101
  importState.exportedEntities = importOnlyEntities(jdlObject, configuration);
100
102
  }
101
103
  else if (jdlObject.getApplicationQuantity() === 1) {
102
- importState = importOneApplicationAndEntities(jdlObject, configuration);
104
+ importState = importOneApplicationAndEntities(jdlObject);
103
105
  }
104
106
  else {
105
- importState = importApplicationsAndEntities(jdlObject, configuration);
107
+ importState = importApplicationsAndEntities(jdlObject);
106
108
  }
107
109
  if (jdlObject.getDeploymentQuantity()) {
108
110
  importState.exportedDeployments = importDeployments(jdlObject.deployments);
@@ -119,9 +121,9 @@ function getJDLObject(parsedJDLContent, configuration) {
119
121
  let applicationType = configuration.applicationType;
120
122
  let databaseType = configuration.databaseType;
121
123
  if (configuration.application) {
122
- baseName = configuration.application['generator-jhipster'].baseName;
123
- applicationType = configuration.application['generator-jhipster'].applicationType;
124
- databaseType = configuration.application['generator-jhipster'].databaseType;
124
+ baseName = configuration.application[GENERATOR_JHIPSTER].baseName;
125
+ applicationType = configuration.application[GENERATOR_JHIPSTER].applicationType;
126
+ databaseType = configuration.application[GENERATOR_JHIPSTER].databaseType;
125
127
  }
126
128
  return ParsedJDLToJDLObjectConverter.parseFromConfigurationObject({
127
129
  parsedContent: parsedJDLContent,
@@ -140,15 +142,15 @@ function checkForErrors(jdlObject, configuration, logger = console) {
140
142
  let applicationType = configuration.applicationType;
141
143
  let databaseType = configuration.databaseType;
142
144
  let blueprints = configuration.blueprints;
143
- if (application && application['generator-jhipster']) {
145
+ if (application && application[GENERATOR_JHIPSTER]) {
144
146
  if (applicationType === undefined) {
145
- applicationType = application['generator-jhipster'].applicationType;
147
+ applicationType = application[GENERATOR_JHIPSTER].applicationType;
146
148
  }
147
149
  if (databaseType === undefined) {
148
- databaseType = application['generator-jhipster'].databaseType;
150
+ databaseType = application[GENERATOR_JHIPSTER].databaseType;
149
151
  }
150
152
  if (blueprints === undefined) {
151
- blueprints = application['generator-jhipster'].blueprints;
153
+ blueprints = application[GENERATOR_JHIPSTER].blueprints;
152
154
  }
153
155
  }
154
156
  validator = createWithoutApplicationValidator(jdlObject, {
@@ -168,15 +170,15 @@ function importOnlyEntities(jdlObject, configuration) {
168
170
  if (!configuration.application && doesFileExist('.yo-rc.json')) {
169
171
  application = readJSONFile('.yo-rc.json');
170
172
  }
171
- if (application && application['generator-jhipster']) {
173
+ if (application && application[GENERATOR_JHIPSTER]) {
172
174
  if (applicationType === undefined) {
173
- applicationType = application['generator-jhipster'].applicationType;
175
+ applicationType = application[GENERATOR_JHIPSTER].applicationType;
174
176
  }
175
177
  if (applicationName === undefined) {
176
- applicationName = application['generator-jhipster'].baseName;
178
+ applicationName = application[GENERATOR_JHIPSTER].baseName;
177
179
  }
178
180
  if (databaseType === undefined) {
179
- databaseType = application['generator-jhipster'].databaseType;
181
+ databaseType = application[GENERATOR_JHIPSTER].databaseType;
180
182
  }
181
183
  }
182
184
  const entitiesPerApplicationMap = JDLWithoutApplicationToJSONConverter.convert({
@@ -188,14 +190,14 @@ function importOnlyEntities(jdlObject, configuration) {
188
190
  const jsonEntities = entitiesPerApplicationMap.get(applicationName);
189
191
  return exportJSONEntities(jsonEntities, configuration);
190
192
  }
191
- function importOneApplicationAndEntities(jdlObject, configuration) {
193
+ function importOneApplicationAndEntities(jdlObject) {
192
194
  const importState = {
193
195
  exportedApplications: [],
194
196
  exportedApplicationsWithEntities: {},
195
197
  exportedEntities: [],
196
198
  exportedDeployments: [],
197
199
  };
198
- const formattedApplication = formatApplicationToExport(jdlObject.getApplications()[0], configuration);
200
+ const formattedApplication = formatApplicationToExport(jdlObject.getApplications()[0]);
199
201
  importState.exportedApplications.push(formattedApplication);
200
202
  const jdlApplication = jdlObject.getApplications()[0];
201
203
  const applicationName = jdlApplication.getConfigurationOptionValue(BASE_NAME);
@@ -203,7 +205,7 @@ function importOneApplicationAndEntities(jdlObject, configuration) {
203
205
  jdlObject,
204
206
  });
205
207
  const jsonEntities = entitiesPerApplicationMap.get(applicationName);
206
- const { 'generator-jhipster': config, ...remaining } = formattedApplication;
208
+ const { [GENERATOR_NAME]: config, ...remaining } = formattedApplication;
207
209
  importState.exportedApplicationsWithEntities[applicationName] = {
208
210
  config,
209
211
  ...remaining,
@@ -220,14 +222,14 @@ function importOneApplicationAndEntities(jdlObject, configuration) {
220
222
  }
221
223
  return importState;
222
224
  }
223
- function importApplicationsAndEntities(jdlObject, configuration) {
225
+ function importApplicationsAndEntities(jdlObject) {
224
226
  const importState = {
225
227
  exportedApplications: [],
226
228
  exportedApplicationsWithEntities: {},
227
229
  exportedEntities: [],
228
230
  exportedDeployments: [],
229
231
  };
230
- const formattedApplications = formatApplicationsToExport(jdlObject.applications, configuration);
232
+ const formattedApplications = formatApplicationsToExport(jdlObject.applications);
231
233
  importState.exportedApplications = formattedApplications;
232
234
  const entitiesPerApplicationMap = convert({
233
235
  jdlObject,
@@ -257,8 +259,8 @@ function exportJSONEntities(entities, configuration) {
257
259
  let baseName = configuration.applicationName;
258
260
  let applicationType = configuration.applicationType;
259
261
  if (configuration.application) {
260
- baseName = configuration.application['generator-jhipster'].baseName;
261
- applicationType = configuration.application['generator-jhipster'].applicationType;
262
+ baseName = configuration.application[GENERATOR_JHIPSTER].baseName;
263
+ applicationType = configuration.application[GENERATOR_JHIPSTER].applicationType;
262
264
  }
263
265
  return exportEntities({
264
266
  entities,
@@ -33,15 +33,19 @@ const Options = {
33
33
  CLIENT_ROOT_FOLDER: 'clientRootFolder',
34
34
  };
35
35
  const optionNames = Object.values(Options);
36
+ const dtoValues = { MAPSTRUCT, NO: NO_MAPPER };
37
+ const serviceValues = { SERVICE_CLASS, SERVICE_IMPL, NO: NO_SERVICE };
38
+ const paginationValues = {
39
+ PAGINATION: PaginationTypes.PAGINATION,
40
+ 'INFINITE-SCROLL': PaginationTypes.INFINITE_SCROLL,
41
+ NO: PaginationTypes.NO,
42
+ };
43
+ const searchValues = { ELASTICSEARCH, COUCHBASE, NO: NO_SEARCH };
36
44
  const Values = {
37
- [Options.DTO]: { MAPSTRUCT, NO: NO_MAPPER },
38
- [Options.SERVICE]: { SERVICE_CLASS, SERVICE_IMPL, NO: NO_SERVICE },
39
- [Options.PAGINATION]: {
40
- PAGINATION: PaginationTypes.PAGINATION,
41
- 'INFINITE-SCROLL': PaginationTypes.INFINITE_SCROLL,
42
- NO: PaginationTypes.NO,
43
- },
44
- [Options.SEARCH]: { ELASTICSEARCH, COUCHBASE, NO: NO_SEARCH },
45
+ dto: dtoValues,
46
+ service: serviceValues,
47
+ pagination: paginationValues,
48
+ search: searchValues,
45
49
  };
46
50
  const DefaultValues = {
47
51
  [Options.DTO]: Values[Options.DTO].NO,
@@ -47,7 +47,7 @@ class JSONEntity {
47
47
  const merged = merge(getDefaults(args.entityName), args);
48
48
  this.name = merged.name;
49
49
  this.fields = merged.fields;
50
- this.annotations = merged.annotations;
50
+ this.annotations = merged.annotations ?? {};
51
51
  this.relationships = merged.relationships;
52
52
  this.documentation = merged.documentation;
53
53
  this.entityTableName = merged.entityTableName;
@@ -50,8 +50,8 @@ export default class AbstractJDLOption {
50
50
  if (!option) {
51
51
  return false;
52
52
  }
53
- addAll(this.entityNames, option.entityNames);
54
- addAll(this.excludedNames, option.excludedNames);
53
+ addAll(this.entityNames, Array.from(option.entityNames.values()));
54
+ addAll(this.excludedNames, Array.from(option.excludedNames.values()));
55
55
  return true;
56
56
  }
57
57
  excludeEntityName(entityName) {
@@ -79,6 +79,8 @@ function createJDLConfigurationOption(type, name, value) {
79
79
  return new BooleanJDLApplicationConfigurationOption(name, value);
80
80
  case 'list':
81
81
  return new ListJDLApplicationConfigurationOption(name, value);
82
+ case 'quotedList':
83
+ return new ListJDLApplicationConfigurationOption(name, value, true);
82
84
  /* istanbul ignore next */
83
85
  default:
84
86
  // It should not happen! This is a developer error.
@@ -26,7 +26,7 @@ export default class JDLBinaryOption extends AbstractJDLOption {
26
26
  value;
27
27
  constructor(args) {
28
28
  super(args);
29
- if (args.value == null) {
29
+ if (typeof args.value !== 'string') {
30
30
  throw new Error('A binary option must have a value.');
31
31
  }
32
32
  this.value = args.value;
@@ -46,7 +46,7 @@ export default class JDLBinaryOption extends AbstractJDLOption {
46
46
  return firstPart;
47
47
  }
48
48
  const excludedNames = join(this.excludedNames, ', ');
49
- excludedNames.slice(1, this.excludedNames.length - 1);
49
+ excludedNames.slice(1, this.excludedNames.size - 1);
50
50
  return `${firstPart} except ${excludedNames}`;
51
51
  }
52
52
  }
@@ -24,6 +24,17 @@ const { Options } = deploymentOptions;
24
24
  const arrayTypes = ['appsFolders', 'clusteredDbApps'];
25
25
  const NO_SERVICE_DISCOVERY = serviceDiscoveryTypes.NO;
26
26
  export default class JDLDeployment {
27
+ deploymentType;
28
+ appsFolders;
29
+ directoryPath;
30
+ gatewayType;
31
+ kubernetesServiceType;
32
+ istio;
33
+ ingressDomain;
34
+ ingressType;
35
+ storageType;
36
+ monitoring;
37
+ clusteredDbApps;
27
38
  constructor(args) {
28
39
  if (!args || !args.deploymentType) {
29
40
  throw new Error('The deploymentType is mandatory to create a deployment.');
@@ -32,7 +32,7 @@ export default class JDLEntity {
32
32
  }
33
33
  this.name = merged.name;
34
34
  this.tableName = merged.tableName;
35
- this.fields = merged.fields;
35
+ this.fields = merged.fields ?? {};
36
36
  this.comment = merged.comment;
37
37
  this.annotations = merged.annotations ?? {};
38
38
  }
@@ -29,7 +29,7 @@ export default class JDLEnum {
29
29
  }
30
30
  this.comment = merged.comment;
31
31
  this.name = merged.name;
32
- this.values = new Map(merged.values.map(entry => {
32
+ this.values = new Map(merged.values.map((entry) => {
33
33
  return [entry.key, new JDLEnumValue(entry.key, entry.value, entry.comment)];
34
34
  }));
35
35
  }
@@ -1,21 +1,3 @@
1
- /**
2
- * Copyright 2013-2024 the original author or authors from the JHipster project.
3
- *
4
- * This file is part of the JHipster project, see https://www.jhipster.tech/
5
- * for more information.
6
- *
7
- * Licensed under the Apache License, Version 2.0 (the "License");
8
- * you may not use this file except in compliance with the License.
9
- * You may obtain a copy of the License at
10
- *
11
- * https://www.apache.org/licenses/LICENSE-2.0
12
- *
13
- * Unless required by applicable law or agreed to in writing, software
14
- * distributed under the License is distributed on an "AS IS" BASIS,
15
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- * See the License for the specific language governing permissions and
17
- * limitations under the License.
18
- */
19
1
  export default class JDLEnums {
20
2
  enums;
21
3
  constructor() {
@@ -32,8 +32,8 @@ export default class JDLField {
32
32
  this.name = merged.name;
33
33
  this.type = merged.type;
34
34
  this.comment = merged.comment;
35
- this.validations = merged.validations;
36
- this.options = merged.options;
35
+ this.validations = merged.validations ?? {};
36
+ this.options = merged.options ?? {};
37
37
  }
38
38
  addValidation(validation) {
39
39
  if (!validation) {
@@ -0,0 +1 @@
1
+ export {};
@@ -215,60 +215,38 @@ export default class JDLObject {
215
215
  return this.options.size();
216
216
  }
217
217
  toString() {
218
- let string = '';
219
- if (this.getApplicationQuantity() !== 0) {
220
- string += `${applicationsToString(this.applications)}\n`;
221
- }
222
- if (this.getDeploymentQuantity() !== 0) {
223
- string += `${deploymentsToString(this.deployments)}\n`;
224
- }
225
- if (this.getEntityQuantity() !== 0) {
226
- string += `${entitiesToString(this.entities)}\n`;
227
- }
228
- if (this.getEnumQuantity() !== 0) {
229
- string += `${this.enums.toString()}\n`;
230
- }
231
- if (this.getRelationshipQuantity() !== 0) {
232
- string += `${relationshipsToString(this.relationships)}`;
233
- }
234
- if (this.getOptionQuantity() !== 0) {
235
- string += `\n${optionsToString(this.options)}`;
236
- }
237
- return string;
218
+ return [
219
+ applicationsToString(this.applications),
220
+ deploymentsToString(this.deployments),
221
+ entitiesToString(this.entities),
222
+ this.enums.toString(),
223
+ relationshipsToString(this.relationships),
224
+ optionsToString(this.options),
225
+ ]
226
+ .map(section => section.trim())
227
+ .filter(Boolean)
228
+ .join('\n\n')
229
+ .concat('\n');
238
230
  }
239
231
  }
240
232
  function applicationsToString(applications) {
241
- let string = '';
242
- Object.keys(applications).forEach(applicationName => {
243
- string += `${applications[applicationName].toString()}\n`;
244
- });
245
- return string;
233
+ return Object.values(applications)
234
+ .map(application => application.toString())
235
+ .join('\n');
246
236
  }
247
237
  function deploymentsToString(deployments) {
248
- let string = '';
249
- Object.values(deployments).forEach(deployment => {
250
- string += `${deployment.toString()}\n`;
251
- });
252
- return string;
238
+ return Object.values(deployments)
239
+ .map(deployment => deployment.toString())
240
+ .join('\n');
253
241
  }
254
242
  function entitiesToString(entities) {
255
- let string = '';
256
- Object.keys(entities).forEach(entityName => {
257
- string += `${entities[entityName].toString()}\n`;
258
- });
259
- return string.slice(0, string.length - 1);
243
+ return Object.values(entities)
244
+ .map(entity => entity.toString())
245
+ .join('\n');
260
246
  }
261
247
  function relationshipsToString(relationships) {
262
- const string = relationships.toString();
263
- if (string === '') {
264
- return '';
265
- }
266
- return `${string}\n`;
248
+ return relationships.toString();
267
249
  }
268
250
  function optionsToString(options) {
269
- const string = options.toString();
270
- if (string === '') {
271
- return '';
272
- }
273
- return `${string}\n`;
251
+ return options.toString();
274
252
  }
@@ -1,21 +1,3 @@
1
- /**
2
- * Copyright 2013-2024 the original author or authors from the JHipster project.
3
- *
4
- * This file is part of the JHipster project, see https://www.jhipster.tech/
5
- * for more information.
6
- *
7
- * Licensed under the Apache License, Version 2.0 (the "License");
8
- * you may not use this file except in compliance with the License.
9
- * You may obtain a copy of the License at
10
- *
11
- * https://www.apache.org/licenses/LICENSE-2.0
12
- *
13
- * Unless required by applicable law or agreed to in writing, software
14
- * distributed under the License is distributed on an "AS IS" BASIS,
15
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- * See the License for the specific language governing permissions and
17
- * limitations under the License.
18
- */
19
1
  export default class JDLOptions {
20
2
  options;
21
3
  optionSize;
@@ -91,23 +91,15 @@ export default class JDLRelationships {
91
91
  if (this.size() === 0) {
92
92
  return '';
93
93
  }
94
- let string = '';
95
- Object.keys(this.relationships).forEach(type => {
96
- if (this.relationships[type].size !== 0) {
97
- const result = relationshipTypeToString(this.relationships[type], type);
98
- string += `${result}\n`;
99
- }
100
- });
101
- return string.slice(0, string.length - 1);
94
+ return Object.entries(this.relationships)
95
+ .map(([key, relationships]) => (relationships.size > 0 ? relationshipTypeToString(relationships, key) : undefined))
96
+ .filter(Boolean)
97
+ .join('\n');
102
98
  }
103
99
  }
104
100
  function relationshipTypeToString(relationships, type) {
105
- let relationship = `relationship ${type} {\n`;
106
- relationships.forEach(internalRelationship => {
107
- let lines = internalRelationship.toString().split('\n');
108
- lines = lines.slice(1, lines.length - 1);
109
- relationship += `${lines.join('\n')}\n`;
110
- });
111
- relationship = `${relationship.slice(0, relationship.length - 1)}\n}`;
112
- return relationship;
101
+ const relationshipsLines = [...relationships.values()].map(relationship => relationship.toString().split('\n').slice(1, -1)).flat();
102
+ return `relationship ${type} {
103
+ ${relationshipsLines.join('\n')}
104
+ }`;
113
105
  }
@@ -33,7 +33,7 @@ export default class JDLUnaryOption extends AbstractJDLOption {
33
33
  return firstPart;
34
34
  }
35
35
  const excludedNames = join(this.excludedNames, ', ');
36
- excludedNames.slice(1, this.excludedNames.length - 1);
36
+ excludedNames.slice(1, this.excludedNames.size - 1);
37
37
  return `${firstPart} except ${excludedNames}`;
38
38
  }
39
39
  }
@@ -19,13 +19,16 @@
19
19
  import JDLApplicationConfigurationOption from './jdl-application-configuration-option.js';
20
20
  import { join } from '../utils/set-utils.js';
21
21
  export default class ListJDLApplicationConfigurationOption extends JDLApplicationConfigurationOption {
22
- constructor(name, value) {
22
+ // TODO for v9, use set everywhere
23
+ quoted;
24
+ constructor(name, value, quoted = false) {
23
25
  super(name, new Set(value));
26
+ this.quoted = quoted;
24
27
  }
25
28
  getValue() {
26
29
  return Array.from(this.value);
27
30
  }
28
31
  toString() {
29
- return `${this.name} [${join(this.value, ', ')}]`;
32
+ return `${this.name} [${join(this.value, ', ', this.quoted)}]`;
30
33
  }
31
34
  }
@@ -472,6 +472,9 @@ export default class JDLAstBuilderVisitor extends BaseJDLCSTVisitor {
472
472
  if (context.list) {
473
473
  return this.visit(context.list);
474
474
  }
475
+ if (context.quotedList) {
476
+ return this.visit(context.quotedList);
477
+ }
475
478
  if (context.INTEGER) {
476
479
  return context.INTEGER[0].image;
477
480
  }
@@ -513,6 +516,9 @@ export default class JDLAstBuilderVisitor extends BaseJDLCSTVisitor {
513
516
  if (context.list) {
514
517
  return this.visit(context.list);
515
518
  }
519
+ if (context.quotedList) {
520
+ return this.visit(context.quotedList);
521
+ }
516
522
  if (context.INTEGER) {
517
523
  return context.INTEGER[0].image;
518
524
  }
@@ -535,6 +541,12 @@ export default class JDLAstBuilderVisitor extends BaseJDLCSTVisitor {
535
541
  }
536
542
  return context.NAME.map(namePart => namePart.image, this);
537
543
  }
544
+ quotedList(context) {
545
+ if (!context.STRING) {
546
+ return [];
547
+ }
548
+ return context.STRING.map(namePart => namePart.image.slice(1, -1), this);
549
+ }
538
550
  }
539
551
  function getOptionEntityAndExcludedEntityLists(astResult, option) {
540
552
  let entityList = astResult.list || [];