generator-jhipster 8.7.1 → 8.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/README.md +3 -3
  2. package/dist/cli/commands.d.mts +89 -89
  3. package/dist/cli/environment-builder.d.mts +7 -6
  4. package/dist/cli/environment-builder.mjs +5 -3
  5. package/dist/cli/jhipster-command.d.mts +2 -2
  6. package/dist/cli/jhipster-command.mjs +13 -4
  7. package/dist/cli/program.d.mts +53 -36
  8. package/dist/cli/program.mjs +41 -32
  9. package/dist/cli/utils.d.mts +2 -3
  10. package/dist/cli/utils.mjs +11 -21
  11. package/dist/generators/angular/generator.js +2 -2
  12. package/dist/generators/angular/resources/package.json +13 -13
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +2 -2
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.service.ts.ejs +2 -2
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.ts.ejs +2 -2
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +2 -2
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.service.ts.ejs +2 -2
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +2 -2
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.service.ts.ejs +2 -2
  20. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +2 -2
  21. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.service.ts.ejs +2 -2
  22. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +2 -2
  23. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.service.ts.ejs +2 -2
  24. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.ts.ejs +2 -2
  25. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.service.ts.ejs +2 -2
  26. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.ts.ejs +2 -2
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.ts.ejs +2 -2
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +2 -2
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway-routes.service.ts.ejs +2 -2
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.ts.ejs +1 -1
  31. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.ts.ejs +2 -2
  32. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.model.ts.ejs +1 -3
  33. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.service.ts.ejs +2 -2
  34. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.ts.ejs +1 -1
  35. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.ts.ejs +3 -3
  36. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.service.ts.ejs +2 -2
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.ts.ejs +1 -1
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.ts.ejs +2 -2
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.model.ts.ejs +1 -6
  40. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.service.ts.ejs +2 -2
  41. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.ts.ejs +1 -1
  42. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.ts.ejs +2 -2
  43. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.ts.ejs +5 -5
  44. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/service/user-management.service.ts.ejs +3 -3
  45. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.ts.ejs +2 -2
  46. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +4 -4
  47. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/account.service.ts.ejs +7 -7
  48. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-jwt.service.ts.ejs +3 -3
  49. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/auth-session.service.ts.ejs +2 -2
  50. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/csrf.service.ts.ejs +1 -1
  51. package/dist/generators/angular/templates/src/main/webapp/app/core/auth/state-storage.service.ts.ejs +3 -3
  52. package/dist/generators/angular/templates/src/main/webapp/app/core/interceptor/notification.interceptor.ts.ejs +1 -1
  53. package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +5 -5
  54. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.ts.ejs +2 -2
  55. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.ts.ejs +4 -4
  56. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.ts.ejs +2 -2
  57. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.ts.ejs +3 -3
  58. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +7 -7
  59. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.ts.ejs +7 -7
  60. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
  61. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/profile.service.ts.ejs +3 -3
  62. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +3 -3
  63. package/dist/generators/angular/templates/src/main/webapp/app/login/login.service.ts.ejs +4 -4
  64. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.ts.ejs +3 -3
  65. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.ts.ejs +1 -1
  66. package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.ts.ejs +2 -2
  67. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translate.directive.ts.ejs +2 -2
  68. package/dist/generators/angular/templates/src/main/webapp/app/shared/language/translation.module.ts.ejs +3 -3
  69. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.ts.ejs +1 -1
  70. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.service.ts.ejs +1 -1
  71. package/dist/generators/base/api.d.ts +10 -4
  72. package/dist/generators/base/generator.d.ts +4 -0
  73. package/dist/generators/base/generator.js +10 -1
  74. package/dist/generators/base/shared-data.js +2 -0
  75. package/dist/generators/base/support/faker.d.ts +1 -1
  76. package/dist/generators/base/support/faker.js +1 -1
  77. package/dist/generators/base/support/timestamp.js +10 -2
  78. package/dist/generators/base-application/support/prepare-entity.js +6 -1
  79. package/dist/generators/base-application/support/prepare-field.js +40 -16
  80. package/dist/generators/base-application/support/prepare-relationship.d.ts +1 -1
  81. package/dist/generators/base-application/support/task-type-inference.d.ts +18 -18
  82. package/dist/generators/base-application/types.d.ts +4 -0
  83. package/dist/generators/base-core/generator.d.ts +7 -4
  84. package/dist/generators/base-core/generator.js +31 -35
  85. package/dist/generators/base-workspaces/generator.d.ts +34 -1
  86. package/dist/generators/base-workspaces/generator.js +1 -1
  87. package/dist/generators/base-workspaces/internal/docker-base.js +1 -3
  88. package/dist/generators/bootstrap/support/eslint-transform.js +2 -2
  89. package/dist/generators/bootstrap/support/java-unused-imports-transform.js +2 -2
  90. package/dist/generators/bootstrap/support/prettier-support.js +2 -2
  91. package/dist/generators/bootstrap-application-base/generator.d.ts +2 -2
  92. package/dist/generators/bootstrap-application-base/generator.js +19 -5
  93. package/dist/generators/bootstrap-application-base/utils.d.ts +3 -3
  94. package/dist/generators/bootstrap-application-base/utils.js +9 -3
  95. package/dist/generators/bootstrap-workspaces/command.d.ts +12 -2
  96. package/dist/generators/bootstrap-workspaces/command.js +5 -3
  97. package/dist/generators/bootstrap-workspaces/generator.d.ts +8 -2
  98. package/dist/generators/bootstrap-workspaces/generator.js +0 -2
  99. package/dist/generators/bootstrap-workspaces/index.d.ts +1 -0
  100. package/dist/generators/bootstrap-workspaces/index.js +1 -0
  101. package/dist/generators/client/command.d.ts +22 -0
  102. package/dist/generators/client/command.js +22 -0
  103. package/dist/generators/client/files-common.js +1 -1
  104. package/dist/generators/client/generator.js +4 -5
  105. package/dist/generators/client/prompts.js +10 -9
  106. package/dist/generators/client/resources/package.json +3 -3
  107. package/dist/generators/client/templates/webpack/webpack.microfrontend.js.jhi.ejs +16 -5
  108. package/dist/generators/common/generator.js +2 -2
  109. package/dist/generators/common/resources/package.json +1 -1
  110. package/dist/generators/common/templates/sonar-project.properties.ejs +13 -7
  111. package/dist/generators/cypress/files.js +6 -0
  112. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/login-page.cy.ts.ejs +2 -2
  113. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/logout.cy.ts.ejs +39 -0
  114. package/dist/generators/docker/generator.d.ts +1 -1
  115. package/dist/generators/docker/templates/docker/keycloak.yml.ejs +2 -1
  116. package/dist/generators/docker-compose/command.js +9 -1
  117. package/dist/generators/docker-compose/generator.d.ts +11 -53
  118. package/dist/generators/docker-compose/generator.js +24 -23
  119. package/dist/generators/generate-blueprint/command.d.ts +97 -20
  120. package/dist/generators/generate-blueprint/command.js +28 -0
  121. package/dist/generators/generate-blueprint/constants.d.ts +2 -2
  122. package/dist/generators/generate-blueprint/files.d.ts +1 -42
  123. package/dist/generators/generate-blueprint/files.js +27 -29
  124. package/dist/generators/generate-blueprint/generator.d.ts +5 -2
  125. package/dist/generators/generate-blueprint/generator.js +78 -22
  126. package/dist/generators/generate-blueprint/resources/package.json +3 -3
  127. package/dist/generators/generate-blueprint/templates/.github/workflows/samples.yml.ejs +6 -8
  128. package/dist/generators/generate-blueprint/templates/README.md.ejs +12 -2
  129. package/dist/generators/generate-blueprint/templates/cli/cli-customizations.cjs.ejs +2 -0
  130. package/dist/generators/generate-blueprint/templates/cli/cli.cjs.ejs +2 -1
  131. package/dist/generators/generate-blueprint/templates/cli/commands.cjs.ejs +1 -1
  132. package/dist/generators/generate-blueprint/templates/eslint.config.js.jhi.blueprint.ejs +3 -2
  133. package/dist/generators/generate-blueprint/templates/generators/generator/command.mjs.ejs +8 -12
  134. package/dist/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +8 -11
  135. package/dist/generators/generate-blueprint/templates/generators/generator/generator.spec.mjs.ejs +2 -2
  136. package/dist/generators/generate-blueprint/templates/generators/generator/index.mjs.ejs +2 -4
  137. package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +0 -1
  138. package/dist/generators/generator-constants.d.ts +2 -2
  139. package/dist/generators/generator-constants.js +3 -3
  140. package/dist/generators/git/command.d.ts +10 -0
  141. package/dist/generators/git/command.js +10 -0
  142. package/dist/generators/git/generator.d.ts +5 -4
  143. package/dist/generators/git/generator.js +6 -4
  144. package/dist/generators/gradle/generators/node-gradle/templates/buildSrc/src/main/groovy/jhipster.node-gradle-conventions.gradle.ejs +16 -10
  145. package/dist/generators/gradle/internal/needles.d.ts +3 -1
  146. package/dist/generators/gradle/internal/needles.js +10 -5
  147. package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  148. package/dist/generators/gradle/types.d.ts +3 -2
  149. package/dist/generators/init/command.d.ts +4 -20
  150. package/dist/generators/init/command.js +1 -1
  151. package/dist/generators/init/resources/.node-version +1 -1
  152. package/dist/generators/java/command.d.ts +3 -5
  153. package/dist/generators/java/command.js +1 -20
  154. package/dist/generators/java/generators/bootstrap/command.d.ts +7 -0
  155. package/dist/generators/java/generators/bootstrap/command.js +7 -0
  156. package/dist/generators/java/generators/build-tool/generator.js +37 -13
  157. package/dist/generators/java/generators/graalvm/command.d.ts +5 -0
  158. package/dist/generators/java/generators/graalvm/command.js +5 -0
  159. package/dist/generators/java/generators/graalvm/generator.d.ts +9 -0
  160. package/dist/generators/java/generators/graalvm/generator.js +222 -0
  161. package/dist/generators/java/generators/graalvm/index.d.ts +20 -0
  162. package/dist/generators/java/generators/graalvm/index.js +20 -0
  163. package/dist/generators/java/generators/graalvm/internal/maven-definition.d.ts +8 -0
  164. package/dist/generators/java/generators/graalvm/internal/maven-definition.js +130 -0
  165. package/dist/generators/java/generators/graalvm/resources/build.gradle +1 -0
  166. package/dist/generators/java/generators/graalvm/resources/gradle/libs.versions.toml +5 -0
  167. package/dist/generators/java/generators/graalvm/templates/README.md.jhi.native.ejs +53 -0
  168. package/dist/generators/java/generators/graalvm/templates/gradle/native.gradle.ejs +44 -0
  169. package/dist/generators/java/generators/graalvm/templates/src/main/java/_package_/config/NativeConfiguration.java.ejs +14 -0
  170. package/dist/generators/java/generators/node/generator.d.ts +6 -18
  171. package/dist/generators/java/generators/node/generator.js +31 -0
  172. package/dist/generators/java/generators/openapi-generator/generator.js +2 -2
  173. package/dist/generators/java/support/util.d.ts +1 -1
  174. package/dist/generators/java/types.d.ts +4 -1
  175. package/dist/generators/javascript/generators/bootstrap/command.d.ts +21 -20
  176. package/dist/generators/javascript/generators/bootstrap/generator.d.ts +1 -2
  177. package/dist/generators/javascript/generators/bootstrap/generator.js +9 -5
  178. package/dist/generators/javascript/types.d.ts +9 -2
  179. package/dist/generators/kubernetes/command.d.ts +12 -0
  180. package/dist/generators/kubernetes/command.js +12 -0
  181. package/dist/generators/kubernetes/index.d.ts +1 -0
  182. package/dist/generators/kubernetes/index.js +1 -0
  183. package/dist/generators/kubernetes-helm/index.d.ts +1 -0
  184. package/dist/generators/kubernetes-helm/index.js +1 -0
  185. package/dist/generators/kubernetes-knative/generator.d.ts +1 -1
  186. package/dist/generators/kubernetes-knative/index.d.ts +1 -0
  187. package/dist/generators/kubernetes-knative/index.js +1 -0
  188. package/dist/generators/languages/entity-files.d.ts +3 -2
  189. package/dist/generators/languages/entity-files.js +0 -1
  190. package/dist/generators/languages/generator.d.ts +1 -0
  191. package/dist/generators/languages/generator.js +1 -0
  192. package/dist/generators/liquibase/files.js +8 -0
  193. package/dist/generators/liquibase/generator.d.ts +1 -1
  194. package/dist/generators/liquibase/generator.js +15 -0
  195. package/dist/generators/liquibase/templates/src/main/resources/META-INF/native-image/liquibase/reflect-config.json +145 -0
  196. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/add_relationship_constraints.ejs +81 -0
  197. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity_constraints.xml.ejs +2 -62
  198. package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +3 -60
  199. package/dist/generators/maven/generators/frontend-plugin/generator.js +10 -5
  200. package/dist/generators/maven/types.d.ts +3 -6
  201. package/dist/generators/project-name/command.d.ts +25 -20
  202. package/dist/generators/project-name/command.js +20 -4
  203. package/dist/generators/project-name/generator.d.ts +3 -12
  204. package/dist/generators/project-name/generator.js +6 -38
  205. package/dist/generators/react/generator.d.ts +1 -1
  206. package/dist/generators/react/generator.js +15 -2
  207. package/dist/generators/react/resources/package.json +26 -25
  208. package/dist/generators/react/templates/package.json.ejs +0 -3
  209. package/dist/generators/server/generator.d.ts +1 -7
  210. package/dist/generators/server/generator.js +22 -50
  211. package/dist/generators/server/resources/Dockerfile +12 -12
  212. package/dist/generators/server/resources/gradle/libs.versions.toml +10 -7
  213. package/dist/generators/server/resources/pom.xml +11 -11
  214. package/dist/generators/server/types.d.ts +8 -0
  215. package/dist/generators/spring-boot/cleanup.js +2 -2
  216. package/dist/generators/spring-boot/command.d.ts +19 -0
  217. package/dist/generators/spring-boot/command.js +19 -0
  218. package/dist/generators/spring-boot/generator.d.ts +2 -2
  219. package/dist/generators/spring-boot/generator.js +5 -9
  220. package/dist/generators/spring-boot/prompts.js +12 -12
  221. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +107 -106
  222. package/dist/generators/spring-boot/templates/README.md.jhi.spring-boot.ejs +22 -16
  223. package/dist/generators/spring-boot/templates/gradle/profile_dev.gradle.ejs +2 -46
  224. package/dist/generators/spring-boot/templates/gradle/profile_prod.gradle.ejs +1 -47
  225. package/dist/generators/spring-boot/templates/src/main/java/_package_/Application.java.ejs +4 -1
  226. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +29 -6
  227. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +32 -6
  228. package/dist/generators/spring-boot/templates/src/main/java/_package_/config/WebConfigurer.java.ejs +13 -8
  229. package/dist/generators/spring-boot/templates/src/main/java/_package_/domain/User.java.ejs +2 -3
  230. package/dist/generators/spring-boot/templates/src/main/resources/config/application-dev.yml.ejs +8 -3
  231. package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +4 -2
  232. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +8 -7
  233. package/dist/generators/spring-cache/generator.d.ts +2 -1
  234. package/dist/generators/spring-cache/generator.js +22 -0
  235. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
  236. package/dist/generators/spring-cloud/generators/gateway/generator.js +2 -2
  237. package/dist/generators/spring-data-couchbase/generator.js +2 -2
  238. package/dist/generators/spring-data-mongodb/generator.d.ts +1 -1
  239. package/dist/generators/spring-data-relational/files.d.ts +1 -0
  240. package/dist/generators/spring-data-relational/files.js +6 -0
  241. package/dist/generators/spring-data-relational/generator.d.ts +2 -1
  242. package/dist/generators/spring-data-relational/generator.js +63 -2
  243. package/dist/generators/spring-data-relational/internal/dependencies.d.ts +87 -7
  244. package/dist/generators/spring-data-relational/internal/dependencies.js +30 -18
  245. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_persistable.ejs +6 -0
  246. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_reactive.ejs +1 -2
  247. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/config/DatabaseConfiguration.java.ejs +8 -3
  248. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/config/JacksonNativeConfiguration.java.ejs +98 -0
  249. package/dist/generators/vue/files-vue.js +4 -1
  250. package/dist/generators/vue/generator.d.ts +1 -1
  251. package/dist/generators/vue/generator.js +84 -3
  252. package/dist/generators/vue/resources/package.json +21 -20
  253. package/dist/generators/vue/support/update-languages.js +1 -1
  254. package/dist/generators/vue/templates/module-federation.config.cjs.ejs +55 -0
  255. package/dist/generators/vue/templates/package.json.ejs +11 -62
  256. package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +1 -1
  257. package/dist/generators/vue/templates/vite.config.mts.ejs +15 -21
  258. package/dist/generators/workspaces/generator.d.ts +20 -9
  259. package/dist/generators/workspaces/generator.js +3 -3
  260. package/dist/lib/application/field-types.d.ts +2 -1
  261. package/dist/lib/command/converter.d.ts +6 -2
  262. package/dist/lib/command/converter.js +4 -1
  263. package/dist/lib/command/load.js +1 -0
  264. package/dist/lib/command/lookup-commands-configs.js +9 -12
  265. package/dist/lib/command/support/merge-union.d.ts +17 -6
  266. package/dist/lib/command/types.d.ts +38 -11
  267. package/dist/lib/eslint/index.d.ts +6 -14
  268. package/dist/lib/eslint/index.js +1 -2
  269. package/dist/lib/index.d.ts +1 -0
  270. package/dist/lib/index.js +7 -3
  271. package/dist/lib/jdl/core/linters/rules.d.ts +1 -3
  272. package/dist/lib/jdl/core/parsing/validator.js +2 -2
  273. package/dist/lib/jhipster/default-application-options.d.ts +83 -15
  274. package/dist/lib/jhipster/default-application-options.js +28 -28
  275. package/dist/lib/testing/get-generator.d.ts +1 -0
  276. package/dist/lib/testing/get-generator.js +6 -2
  277. package/dist/lib/testing/github-group.d.ts +6 -0
  278. package/dist/lib/testing/github-group.js +56 -0
  279. package/dist/lib/testing/github-matrix.d.ts +38 -0
  280. package/dist/lib/testing/github-matrix.js +72 -0
  281. package/dist/lib/testing/github.d.ts +1 -0
  282. package/dist/lib/testing/github.js +6 -2
  283. package/dist/lib/testing/helpers.d.ts +41 -3
  284. package/dist/lib/testing/helpers.js +74 -12
  285. package/dist/lib/testing/index.d.ts +2 -0
  286. package/dist/lib/testing/index.js +2 -0
  287. package/dist/lib/testing/support/matcher.d.ts +2 -2
  288. package/dist/lib/testing/support/matcher.js +3 -3
  289. package/dist/lib/types/application/application.d.ts +6 -1
  290. package/dist/lib/types/application/entity.d.ts +3 -1
  291. package/dist/lib/types/application/field.d.ts +16 -4
  292. package/dist/lib/types/application/options.d.ts +4 -0
  293. package/dist/lib/types/application/relationship.d.ts +1 -0
  294. package/dist/lib/types/application/yo-rc.d.ts +4 -0
  295. package/dist/lib/types/base/entity.d.ts +1 -0
  296. package/dist/lib/utils/logger.d.ts +1 -1
  297. package/dist/lib/utils/yo-rc.d.ts +27 -3
  298. package/package.json +33 -31
  299. package/dist/generators/generate-blueprint/templates/vitest.test-setup.ts.ejs +0 -6
  300. package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -45
@@ -10,11 +10,15 @@ export const parseIssue = (issue) => {
10
10
  }
11
11
  return undefined;
12
12
  };
13
+ export const getGithubOutputFile = () => {
14
+ const filePath = process.env.GITHUB_OUTPUT;
15
+ return filePath && existsSync(filePath) ? filePath : undefined;
16
+ };
13
17
  export const setGithubTaskOutput = (name, value) => {
14
18
  const delimiter = `delimiter_${randomUUID()}`;
15
19
  const output = `${name}<<${delimiter}${EOL}${value}${EOL}${delimiter}${EOL}`;
16
- const filePath = process.env.GITHUB_OUTPUT;
17
- if (filePath && existsSync(filePath)) {
20
+ const filePath = getGithubOutputFile();
21
+ if (filePath) {
18
22
  appendFileSync(filePath, output, { encoding: 'utf8' });
19
23
  }
20
24
  else {
@@ -1,14 +1,38 @@
1
1
  import type { RunContextSettings, RunResult } from 'yeoman-test';
2
2
  import { RunContext, YeomanTest } from 'yeoman-test';
3
+ import type Environment from 'yeoman-environment';
3
4
  import type { BaseEnvironmentOptions, GetGeneratorConstructor, BaseGenerator as YeomanGenerator } from '@yeoman/types';
4
5
  import type { EmptyObject } from 'type-fest';
5
6
  import type { JHipsterGeneratorOptions } from '../../generators/base/api.js';
6
7
  import type CoreGenerator from '../../generators/base-core/generator.js';
7
8
  import type { ApplicationConfiguration } from '../types/application/yo-rc.js';
8
9
  import type { Entity } from '../types/base/entity.js';
10
+ import type { CliCommand } from '../../cli/types.js';
9
11
  type GeneratorTestType = YeomanGenerator<JHipsterGeneratorOptions>;
10
12
  type GeneratorTestOptions = JHipsterGeneratorOptions;
11
- type JHipsterRunResult<GeneratorType extends CoreGenerator = CoreGenerator> = RunResult<GeneratorType> & {
13
+ type WithJHipsterGenerators = {
14
+ /**
15
+ * Apply default mocks.
16
+ */
17
+ useDefaultMocks?: boolean;
18
+ /**
19
+ * List of generators to don't mock.
20
+ */
21
+ actualGeneratorsList?: string[];
22
+ /**
23
+ * Filter to mock a generator.
24
+ */
25
+ useMock?: (ns: string) => boolean;
26
+ };
27
+ type RunJHipster = WithJHipsterGenerators & {
28
+ /**
29
+ * Use the EnviromentBuilder default preparation to create the environment.
30
+ * Includes local and dev blueprints.
31
+ */
32
+ useEnvironmentBuilder?: boolean;
33
+ };
34
+ type JHipsterRunResult<GeneratorType extends CoreGenerator = CoreGenerator> = Omit<RunResult<GeneratorType>, 'env'> & {
35
+ env: Environment;
12
36
  /**
13
37
  * First argument of mocked source calls.
14
38
  */
@@ -17,11 +41,14 @@ type JHipsterRunResult<GeneratorType extends CoreGenerator = CoreGenerator> = Ru
17
41
  * Composed generators that were mocked.
18
42
  */
19
43
  composedMockedGenerators: string[];
44
+ createJHipster: (ns: string, options?: WithJHipsterGenerators) => JHipsterRunContext;
20
45
  };
21
46
  declare const runResult: JHipsterRunResult;
22
47
  export { runResult, runResult as result };
23
- export declare const defineDefaults: ({ mockFactory, accumulateMockArgs, }?: {
48
+ export declare const defineDefaults: (defaults?: {
49
+ /** @deprecated mock from `node:test` is used internally */
24
50
  mockFactory?: any;
51
+ /** @deprecated mock from `node:test` is used internally */
25
52
  accumulateMockArgs?: (mock: Record<string, any>) => Record<string, any>;
26
53
  }) => Promise<void>;
27
54
  export declare const createJHipsterConfigFiles: (configuration: Record<string, unknown>, entities?: Entity[]) => Record<string, any>;
@@ -50,6 +77,7 @@ declare class JHipsterRunContext extends RunContext<GeneratorTestType> {
50
77
  withWorkspaceApplication(configuration: Record<string, unknown>, entities?: Entity[]): this;
51
78
  withWorkspacesSamples(...appNames: string[]): this;
52
79
  withGenerateWorkspaceApplications(generateWorkspaces?: boolean): this;
80
+ /** @deprecated use withJHipsterGenerators */
53
81
  withJHipsterLookup(): this;
54
82
  /**
55
83
  * Lookup generators at generator-jhipster's parent at a npm repository
@@ -79,14 +107,23 @@ declare class JHipsterRunContext extends RunContext<GeneratorTestType> {
79
107
  except?: string[];
80
108
  filter?: (string: any) => boolean;
81
109
  }): this;
110
+ withJHipsterGenerators(options?: WithJHipsterGenerators): this;
82
111
  withGradleBuildTool(): this;
83
112
  private withSharedData;
84
113
  run(): Promise<RunResult<GeneratorTestType>>;
85
114
  }
86
115
  declare class JHipsterTest extends YeomanTest {
87
116
  constructor();
88
- run<GeneratorType extends YeomanGenerator<GeneratorTestOptions> = YeomanGenerator<GeneratorTestOptions>>(GeneratorOrNamespace: string | GetGeneratorConstructor<GeneratorType>, settings?: RunContextSettings | undefined, envOptions?: BaseEnvironmentOptions | undefined): JHipsterRunContext;
117
+ run<GeneratorType extends YeomanGenerator<GeneratorTestOptions> = YeomanGenerator<GeneratorTestOptions>>(GeneratorOrNamespace: string | GetGeneratorConstructor<GeneratorType>, settings?: RunContextSettings | undefined, envOptions?: (BaseEnvironmentOptions & {
118
+ createEnv?: any;
119
+ }) | undefined): JHipsterRunContext;
89
120
  runJHipster(jhipsterGenerator: string, settings?: RunContextSettings | undefined, envOptions?: BaseEnvironmentOptions | undefined): JHipsterRunContext;
121
+ runJHipster(jhipsterGenerator: string, options?: RunJHipster): JHipsterRunContext;
122
+ runCli(command: string | string[], options?: {
123
+ commands?: Record<string, CliCommand>;
124
+ useEnvironmentBuilder?: boolean;
125
+ entrypointGenerator?: string;
126
+ }): JHipsterRunContext;
90
127
  /**
91
128
  * Run a generator in current application context.
92
129
  */
@@ -98,6 +135,7 @@ declare class JHipsterTest extends YeomanTest {
98
135
  runJDLInApplication(jdl: string, settings?: RunContextSettings | undefined, envOptions?: BaseEnvironmentOptions | undefined): JHipsterRunContext;
99
136
  runTestBlueprintGenerator(): JHipsterRunContext;
100
137
  create<GeneratorType extends YeomanGenerator<GeneratorTestOptions> = YeomanGenerator<GeneratorTestOptions>>(GeneratorOrNamespace: string | GetGeneratorConstructor<GeneratorType>, settings?: RunContextSettings | undefined, envOptions?: BaseEnvironmentOptions | undefined): JHipsterRunContext;
138
+ /** @deprecated */
101
139
  createJHipster(jhipsterGenerator: string, settings?: RunContextSettings | undefined, envOptions?: BaseEnvironmentOptions | undefined): JHipsterRunContext;
102
140
  generateDeploymentWorkspaces(commonConfig?: Record<string, unknown>): JHipsterRunContext;
103
141
  }
@@ -1,4 +1,4 @@
1
- import { basename, dirname, join } from 'path';
1
+ import { basename, dirname, isAbsolute, join } from 'path';
2
2
  import { mock } from 'node:test';
3
3
  import { merge, set, snakeCase } from 'lodash-es';
4
4
  import { RunContext, YeomanTest, result } from 'yeoman-test';
@@ -8,15 +8,17 @@ import { JHIPSTER_CONFIG_DIR } from '../../generators/generator-constants.js';
8
8
  import { GENERATOR_WORKSPACES } from '../../generators/generator-list.js';
9
9
  import { createJHipsterLogger, normalizePathEnd, parseCreationTimestamp } from '../../generators/base/support/index.js';
10
10
  import BaseGenerator from '../../generators/base/index.js';
11
- import { getPackageRoot, isDistFolder } from '../index.js';
11
+ import { getPackageRoot, getSourceRoot, isDistFolder } from '../index.js';
12
12
  import { getDefaultJDLApplicationConfig } from '../command/jdl.js';
13
- import getGenerator from './get-generator.js';
13
+ import { buildJHipster, createProgram } from '../../cli/program.mjs';
14
+ import getGenerator, { getGeneratorRelativeFolder } from './get-generator.js';
14
15
  const runResult = result;
15
16
  export { runResult, runResult as result };
16
17
  const DEFAULT_TEST_SETTINGS = { forwardCwd: true };
17
18
  const DEFAULT_TEST_OPTIONS = { skipInstall: true };
18
19
  const DEFAULT_TEST_ENV_OPTIONS = { skipInstall: true, dryRun: false };
19
- const generatorsDir = join(getPackageRoot(), 'generators');
20
+ const toJHipsterNamespace = (ns) => (/^jhipster[:-]/.test(ns) ? ns : `jhipster:${ns}`);
21
+ const generatorsDir = getSourceRoot('generators');
20
22
  const allGenerators = [
21
23
  ...globSync('*/index.{j,t}s', { cwd: generatorsDir, posix: true }).map(file => dirname(file)),
22
24
  ...globSync('*/generators/*/index.{j,t}s', { cwd: generatorsDir, posix: true }).map(file => dirname(file).replace('/generators/', ':')),
@@ -30,7 +32,9 @@ const composedGeneratorsToCheck = allGenerators
30
32
  const defaultSharedApplication = Object.fromEntries(['CLIENT_WEBPACK_DIR'].map(key => [key, undefined]));
31
33
  let defaultMockFactory;
32
34
  let defaultAccumulateMockArgs;
33
- export const defineDefaults = async ({ mockFactory, accumulateMockArgs, } = {}) => {
35
+ const createEnvBuilderEnvironment = (...args) => EnvironmentBuilder.createEnv(...args);
36
+ export const defineDefaults = async (defaults = {}) => {
37
+ const { mockFactory, accumulateMockArgs } = defaults;
34
38
  if (mockFactory) {
35
39
  defaultMockFactory = mockFactory;
36
40
  }
@@ -146,15 +150,16 @@ class JHipsterRunContext extends RunContext {
146
150
  this.withOptions({ generateApplications: true, workspacesFolders: this.workspaceApplications, workspaces: generateWorkspaces });
147
151
  });
148
152
  }
153
+ /** @deprecated use withJHipsterGenerators */
149
154
  withJHipsterLookup() {
150
- return this.withLookups([{ packagePaths: [getPackageRoot()], lookups: [`${isDistFolder() ? 'dist/' : ''}generators`] }]);
155
+ return this.withJHipsterGenerators();
151
156
  }
152
157
  /**
153
158
  * Lookup generators at generator-jhipster's parent at a npm repository
154
159
  * @param lookups generators relative folder
155
160
  * @returns
156
161
  */
157
- withParentBlueprintLookup(lookups = ['generators']) {
162
+ withParentBlueprintLookup(lookups = ['generators', 'generators/*/generators']) {
158
163
  const packageRootParent = join(getPackageRoot(), '..');
159
164
  if (basename(packageRootParent) === 'node_modules') {
160
165
  this.withLookups([{ packagePaths: [join(packageRootParent, '..')], lookups }]);
@@ -220,9 +225,26 @@ class JHipsterRunContext extends RunContext {
220
225
  withMockedJHipsterGenerators(options = {}) {
221
226
  const optionsObj = Array.isArray(options) ? { except: options } : options;
222
227
  const { except = [], filter = filterBootstrapGenerators } = optionsObj;
223
- const jhipsterExceptList = except.map(gen => (gen.startsWith('jhipster:') ? gen : `jhipster:${gen}`));
228
+ const jhipsterExceptList = except.map(toJHipsterNamespace);
224
229
  return this.withMockedGenerators(allGenerators.filter(filter).filter(gen => !jhipsterExceptList.includes(gen) && this.Generator !== gen));
225
230
  }
231
+ withJHipsterGenerators(options = {}) {
232
+ const { useDefaultMocks, actualGeneratorsList = [], useMock = useDefaultMocks ? filterBootstrapGenerators : () => false } = options;
233
+ const jhipsterExceptList = actualGeneratorsList.map(toJHipsterNamespace);
234
+ const mockedGenerators = allGenerators
235
+ .filter(useMock)
236
+ .filter(gen => !jhipsterExceptList.includes(gen) && this.Generator !== gen);
237
+ const actualGenerators = allGenerators.filter(gen => !mockedGenerators.includes(gen));
238
+ const prefix = isDistFolder() ? 'dist/' : '';
239
+ const filePatterns = actualGenerators.map(ns => getGeneratorRelativeFolder(ns)).map(path => `${prefix}${path}/index.{j,t}s`);
240
+ return this.withMockedGenerators(mockedGenerators).withLookups({
241
+ packagePaths: [getPackageRoot()],
242
+ // @ts-expect-error lookups is not exported
243
+ lookups: [`${prefix}generators`, `${prefix}generators/*/generators`],
244
+ filePatterns,
245
+ customizeNamespace: ns => ns?.replaceAll(':generators:', ':'),
246
+ });
247
+ }
226
248
  withGradleBuildTool() {
227
249
  return this.withFiles({
228
250
  'build.gradle': `
@@ -276,6 +298,11 @@ plugins {
276
298
  runResult.sourceCallsArg = Object.fromEntries(Object.entries(defaultAccumulateMockArgs(this.sharedSource)).map(([name, args]) => [name, cleanupArguments(args)]));
277
299
  }
278
300
  runResult.composedMockedGenerators = composedGeneratorsToCheck.filter(gen => runResult.mockedGenerators[gen]?.mock.callCount() > 0);
301
+ runResult.createJHipster = (ns, options) => {
302
+ ns = toJHipsterNamespace(ns);
303
+ const context = runResult.create(ns);
304
+ return context.withJHipsterGenerators(options);
305
+ };
279
306
  return runResult;
280
307
  }
281
308
  }
@@ -294,13 +321,48 @@ class JHipsterTest extends YeomanTest {
294
321
  .withAdapterOptions({ log: createJHipsterLogger() });
295
322
  }
296
323
  runJHipster(jhipsterGenerator, settings, envOptions) {
297
- return this.run(getGenerator(jhipsterGenerator), settings, envOptions);
324
+ if (!isAbsolute(jhipsterGenerator) && !jhipsterGenerator.startsWith('@')) {
325
+ jhipsterGenerator = toJHipsterNamespace(jhipsterGenerator);
326
+ }
327
+ const isRunJHipster = (opt) => opt === undefined || 'actualGeneratorsList' in opt || 'useMock' in opt || 'useDefaultMocks' in opt || 'useEnvironmentBuilder' in opt;
328
+ if (isRunJHipster(settings)) {
329
+ const { useEnvironmentBuilder, ...otherOptions } = settings ?? {};
330
+ if (useEnvironmentBuilder) {
331
+ return this.run(jhipsterGenerator, undefined, {
332
+ createEnv: async (...args) => {
333
+ const builder = await EnvironmentBuilder.create(...args).prepare();
334
+ return builder.getEnvironment();
335
+ },
336
+ });
337
+ }
338
+ // If not using EnvironmentBuilder, use the default JHipster generators lookup.
339
+ return this.run(jhipsterGenerator).withJHipsterGenerators(otherOptions);
340
+ }
341
+ return this.run(getGenerator(jhipsterGenerator), settings, envOptions).withJHipsterGenerators();
342
+ }
343
+ runCli(command, options = {}) {
344
+ const { useEnvironmentBuilder, ...buildJHipsterOptions } = options;
345
+ // Use a dummy generator which will not be used to match yeoman-test requirement.
346
+ const context = this.run(this.createDummyGenerator(), { namespace: 'non-used-dummy:generator' }, useEnvironmentBuilder ? { createEnv: createEnvBuilderEnvironment } : undefined);
347
+ if (!useEnvironmentBuilder) {
348
+ // If not using EnvironmentBuilder, use the default JHipster generators lookup.
349
+ context.withJHipsterGenerators();
350
+ }
351
+ return context.withEnvironmentRun(async function (env) {
352
+ // Customize program to throw an error instead of exiting the process on cli parse error.
353
+ const program = createProgram().exitOverride();
354
+ await buildJHipster({ program, env: env, silent: true, ...buildJHipsterOptions });
355
+ await program.parseAsync(['jhipster', 'jhipster', ...(Array.isArray(command) ? command : command.split(' '))]);
356
+ // Put the rootGenerator in context to be used in result assertions.
357
+ this.generator = env.rootGenerator();
358
+ });
298
359
  }
299
360
  /**
300
361
  * Run a generator in current application context.
301
362
  */
302
363
  runJHipsterInApplication(jhipsterGenerator, settings, envOptions) {
303
- return runResult.create(getGenerator(jhipsterGenerator), settings, envOptions);
364
+ const context = runResult.create(getGenerator(jhipsterGenerator), settings, envOptions);
365
+ return context.withJHipsterGenerators();
304
366
  }
305
367
  runJDL(jdl, settings, envOptions) {
306
368
  return this.runJHipster('jdl', settings, envOptions).withOptions({ inline: jdl });
@@ -327,12 +389,13 @@ class JHipsterTest extends YeomanTest {
327
389
  return {};
328
390
  }
329
391
  }
330
- return this.run(blueprintNS).withGenerators([[BlueprintedGenerator, { namespace: blueprintNS }]]);
392
+ return this.runJHipster(blueprintNS).withGenerators([[BlueprintedGenerator, { namespace: blueprintNS }]]);
331
393
  }
332
394
  // @ts-expect-error testing types should be improved
333
395
  create(GeneratorOrNamespace, settings, envOptions) {
334
396
  return super.create(GeneratorOrNamespace, settings, envOptions);
335
397
  }
398
+ /** @deprecated */
336
399
  createJHipster(jhipsterGenerator, settings, envOptions) {
337
400
  return this.create(getGenerator(jhipsterGenerator), settings, envOptions);
338
401
  }
@@ -356,7 +419,6 @@ export function createTestHelpers(options = {}) {
356
419
  helper.settings = { ...DEFAULT_TEST_SETTINGS, ...options.settings };
357
420
  helper.environmentOptions = { ...DEFAULT_TEST_ENV_OPTIONS, ...environmentOptions, sharedOptions };
358
421
  helper.generatorOptions = { ...DEFAULT_TEST_OPTIONS, ...options.generatorOptions };
359
- helper.createEnv = (...args) => EnvironmentBuilder.createEnv(...args);
360
422
  // @ts-expect-error testing types should be improved
361
423
  helper.getRunContextType = () => JHipsterRunContext;
362
424
  return helper;
@@ -1,6 +1,8 @@
1
1
  export { default as getGenerator } from './get-generator.js';
2
2
  export * from './helpers.js';
3
3
  export * from './github.js';
4
+ export * from './github-group.js';
5
+ export * from './github-matrix.js';
4
6
  export * from './sample-config.js';
5
7
  export * from './support/application-samples.js';
6
8
  export * from './support/client-samples.js';
@@ -1,6 +1,8 @@
1
1
  export { default as getGenerator } from './get-generator.js';
2
2
  export * from './helpers.js';
3
3
  export * from './github.js';
4
+ export * from './github-group.js';
5
+ export * from './github-matrix.js';
4
6
  export * from './sample-config.js';
5
7
  // test matrix
6
8
  export * from './support/application-samples.js';
@@ -4,11 +4,11 @@
4
4
  * @example
5
5
  * it(..matchWrittenFiles('eureka', () => ['file'], true));
6
6
  */
7
- export declare const matchWrittenFiles: (title: string, expectedFilesGetter: () => string[], shouldMatch: boolean, runResult?: import("yeoman-test").RunResult<import("@yeoman/types").BaseGenerator>) => [string, () => void];
7
+ export declare const matchWrittenFiles: (title: string, expectedFilesGetter: () => string[], shouldMatch: boolean) => [string, () => void];
8
8
  /**
9
9
  * Requires a global `it` function to be available.
10
10
  *
11
11
  * @example
12
12
  * it(..matchWrittenFiles('eureka', { 'generator-jhipster': { config: true } }, true));
13
13
  */
14
- export declare const matchWrittenConfig: (title: string, config: any, shouldMatch: boolean, runResult?: import("yeoman-test").RunResult<import("@yeoman/types").BaseGenerator>) => [string, () => void];
14
+ export declare const matchWrittenConfig: (title: string, config: any, shouldMatch: boolean) => [string, () => void];
@@ -1,11 +1,11 @@
1
- import { result } from 'yeoman-test';
1
+ import { runResult } from '../helpers.js';
2
2
  /**
3
3
  * Requires a global `it` function to be available.
4
4
  *
5
5
  * @example
6
6
  * it(..matchWrittenFiles('eureka', () => ['file'], true));
7
7
  */
8
- export const matchWrittenFiles = (title, expectedFilesGetter, shouldMatch, runResult = result) => [
8
+ export const matchWrittenFiles = (title, expectedFilesGetter, shouldMatch) => [
9
9
  shouldMatch ? `writes ${title} files` : `doesn't write ${title} files`,
10
10
  () => {
11
11
  if (shouldMatch) {
@@ -22,7 +22,7 @@ export const matchWrittenFiles = (title, expectedFilesGetter, shouldMatch, runRe
22
22
  * @example
23
23
  * it(..matchWrittenFiles('eureka', { 'generator-jhipster': { config: true } }, true));
24
24
  */
25
- export const matchWrittenConfig = (title, config, shouldMatch, runResult = result) => [
25
+ export const matchWrittenConfig = (title, config, shouldMatch) => [
26
26
  shouldMatch ? `writes ${title} config` : `doesn't write ${title} config`,
27
27
  () => {
28
28
  if (shouldMatch) {
@@ -1,7 +1,12 @@
1
+ /* eslint-disable @typescript-eslint/consistent-type-imports */
1
2
  import type { BaseApplication, CommonClientServerApplication } from '../../../generators/base-application/types.js';
2
3
  import type { ClientSourceType } from '../../../generators/client/types.js';
3
4
  import type { LanguagesSource } from '../../../generators/languages/types.js';
4
5
  import type { SpringBootSourceType } from '../../../generators/server/types.js';
6
+ import type { ExportApplicationPropertiesFromCommand } from '../../command/types.js';
7
+
8
+ export type ApplicationType<Entity> = BaseApplication &
9
+ CommonClientServerApplication<Entity> &
10
+ ExportApplicationPropertiesFromCommand<typeof import('../../../generators/spring-boot/command.ts').default>;
5
11
 
6
- export type ApplicationType<Entity> = BaseApplication & Partial<CommonClientServerApplication<Entity>>;
7
12
  export type BaseApplicationSource = SpringBootSourceType & ClientSourceType & LanguagesSource;
@@ -23,6 +23,7 @@ import type { SpringEntity } from '../../../generators/server/types.js';
23
23
  import type { Field as BaseField } from '../base/field.js';
24
24
  import type { Relationship as BaseRelationship } from '../base/relationship.js';
25
25
  import type { FieldType } from '../../application/field-types.ts';
26
+ import type { FakerWithRandexp } from '../../../generators/base/support/faker.ts';
26
27
  import type { Field } from './field.js';
27
28
  import type { Relationship } from './relationship.js';
28
29
 
@@ -54,6 +55,7 @@ export interface Entity<F extends BaseField = Field, R extends BaseRelationship
54
55
 
55
56
  builtIn?: boolean;
56
57
  builtInUser?: boolean;
58
+ builtInUserManagement?: boolean;
57
59
  builtInAuthority?: boolean;
58
60
  adminEntity?: boolean;
59
61
  entityAuthority?: string;
@@ -147,5 +149,5 @@ export interface Entity<F extends BaseField = Field, R extends BaseRelationship
147
149
 
148
150
  propertyJavaFilteredType?: string;
149
151
 
150
- faker: any;
152
+ faker: FakerWithRandexp;
151
153
  }
@@ -8,6 +8,7 @@ export interface Field extends BaseField {
8
8
  enumFileName?: string;
9
9
  enumValues?: { name: string; value: string }[];
10
10
  fieldIsEnum?: boolean;
11
+ columnName?: string;
11
12
 
12
13
  // Annotations
13
14
  skipClient?: boolean;
@@ -17,6 +18,11 @@ export interface Field extends BaseField {
17
18
  transient?: boolean;
18
19
  columnRequired?: boolean;
19
20
  id?: boolean;
21
+ /**
22
+ * Faker template passed to `faker.helpers.fake()`.
23
+ * @see https://fakerjs.dev/api/helpers.html#fake
24
+ */
25
+ fakerTemplate?: string;
20
26
 
21
27
  // Validation
22
28
  fieldValidate?: boolean;
@@ -24,12 +30,19 @@ export interface Field extends BaseField {
24
30
  fieldValidateRules?: string[];
25
31
  fieldValidateRulesPattern?: string | RegExp;
26
32
  fieldValidateRulesMaxlength?: number;
27
- maxlength?: any;
33
+ fieldValidateRulesMax?: number;
34
+ fieldValidateRulesMin?: number;
35
+ fieldValidateRulesMinlength?: number;
36
+ maxlength?: number;
28
37
 
29
- // Faker
38
+ // Temporary fields for Faker
30
39
  uniqueValue?: any[];
40
+ generateFakeDataFromPattern?: () => string | undefined;
41
+ /** @deprecated */
31
42
  createRandexp: () => any;
32
43
 
44
+ generateFakeData?: () => any;
45
+
33
46
  // Java specific
34
47
  propertyJavaBeanName?: string;
35
48
  propertyDtoJavaType?: string;
@@ -43,14 +56,13 @@ export interface Field extends BaseField {
43
56
 
44
57
  propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string };
45
58
 
46
- generateFakeData?: () => any;
47
-
48
59
  // Blob
49
60
  fieldWithContentType?: boolean;
50
61
  contentTypeFieldName?: string;
51
62
  blobContentTypeText?: string;
52
63
 
53
64
  // Derived properties
65
+ fieldTypeBinary?: boolean;
54
66
  fieldTypeDuration?: boolean;
55
67
  fieldTypeBoolean: boolean;
56
68
  /** @deprecated */
@@ -7,12 +7,16 @@ export type ApplicationOptions = Simplify<
7
7
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/base/command.js').default> &
8
8
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/bootstrap-application-base/command.js').default> &
9
9
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/client/command.js').default> &
10
+ ExportGeneratorOptionsFromCommand<typeof import('../../../generators/git/command.js').default> &
10
11
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/java/generators/bootstrap/command.js').default> &
11
12
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/java/generators/build-tool/command.js').default> &
13
+ ExportGeneratorOptionsFromCommand<typeof import('../../../generators/java/generators/graalvm/command.ts').default> &
14
+ ExportGeneratorOptionsFromCommand<typeof import('../../../generators/javascript/generators/bootstrap/command.js').default> &
12
15
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/javascript/generators/prettier/command.js').default> &
13
16
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/jdl/command.js').default> &
14
17
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/languages/command.js').default> &
15
18
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/liquibase/command.js').default> &
19
+ ExportGeneratorOptionsFromCommand<typeof import('../../../generators/project-name/command.js').default> &
16
20
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/server/command.js').default> &
17
21
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/spring-boot/command.js').default> &
18
22
  ExportGeneratorOptionsFromCommand<typeof import('../../../generators/spring-cloud/generators/gateway/command.js').default> &
@@ -25,6 +25,7 @@ export interface Relationship<E extends Entity = Entity> extends BaseRelationshi
25
25
  id?: boolean;
26
26
  ownerSide?: boolean;
27
27
  relationshipEagerLoad?: boolean;
28
+ relationshipRequired?: boolean;
28
29
 
29
30
  propertyJavaBeanName?: string;
30
31
  propertyDtoJavaType?: string;
@@ -16,12 +16,16 @@ export type ApplicationConfiguration = Simplify<
16
16
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/base/command.js').default> &
17
17
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/bootstrap-application-base/command.js').default> &
18
18
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/client/command.js').default> &
19
+ ExportStoragePropertiesFromCommand<typeof import('../../../generators/git/command.js').default> &
19
20
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/java/generators/bootstrap/command.js').default> &
20
21
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/java/generators/build-tool/command.js').default> &
22
+ ExportStoragePropertiesFromCommand<typeof import('../../../generators/java/generators/graalvm/command.ts').default> &
23
+ ExportStoragePropertiesFromCommand<typeof import('../../../generators/javascript/generators/bootstrap/command.js').default> &
21
24
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/javascript/generators/prettier/command.js').default> &
22
25
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/jdl/command.js').default> &
23
26
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/languages/command.js').default> &
24
27
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/liquibase/command.js').default> &
28
+ ExportStoragePropertiesFromCommand<typeof import('../../../generators/project-name/command.js').default> &
25
29
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/server/command.js').default> &
26
30
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/spring-boot/command.js').default> &
27
31
  ExportStoragePropertiesFromCommand<typeof import('../../../generators/spring-cloud/generators/gateway/command.js').default> &
@@ -20,4 +20,5 @@ export type Entity<F extends Field = Field, R extends Relationship = Relationshi
20
20
  skipServer?: boolean;
21
21
 
22
22
  microserviceName?: string;
23
+ clientRootFolder?: string;
23
24
  };
@@ -29,7 +29,7 @@ export declare const createJHipsterLogger: (options?: LoggerOptions & {
29
29
  verboseInfo(this: LoggerApi, format?: any, ...param: any[]): LoggerApi;
30
30
  log(this: LoggerApi, format?: any, ...param: any[]): LoggerApi;
31
31
  error(this: DefaultLogger, msg: any, error: any): void;
32
- fatal(this: any, msg: any, trace: any): never;
32
+ fatal(this: any, msg: any, trace?: any): never;
33
33
  } & {
34
34
  console: Console;
35
35
  };
@@ -24,15 +24,21 @@ export declare const mergeYoRcContent: <const Content = {
24
24
  jdlStore?: string | undefined;
25
25
  skipJhipsterDependencies?: boolean | undefined;
26
26
  clientFramework?: "no" | "angular" | "react" | "vue" | undefined;
27
+ clientTheme?: string | undefined;
28
+ clientThemeVariant?: string | undefined;
29
+ clientBundler?: "webpack" | "vite" | undefined;
27
30
  microfrontend?: boolean | undefined;
28
31
  clientTestFrameworks?: "cypress" | undefined;
29
32
  withAdminUi?: boolean | undefined;
30
33
  clientRootDir?: string | undefined;
34
+ monorepository?: boolean | undefined;
31
35
  packageName?: string | undefined;
36
+ packageFolder?: string | undefined;
32
37
  withGeneratedFlag?: boolean | undefined;
33
38
  buildTool?: string | undefined;
39
+ packageJsonNodeEngine?: unknown;
40
+ packageJsonType?: "commonjs" | "module" | undefined;
34
41
  prettierTabWidth?: number | undefined;
35
- monorepository?: boolean | undefined;
36
42
  languages?: unknown[] | undefined;
37
43
  enableTranslation?: boolean | undefined;
38
44
  nativeLanguage?: string | undefined;
@@ -49,6 +55,7 @@ export declare const mergeYoRcContent: <const Content = {
49
55
  reactive?: boolean | undefined;
50
56
  serverPort?: unknown;
51
57
  serviceDiscoveryType?: "no" | "eureka" | "consul" | undefined;
58
+ jwtSecretKey?: string | undefined;
52
59
  authenticationType?: "session" | "jwt" | "oauth2" | undefined;
53
60
  feignClient?: boolean | undefined;
54
61
  syncUserWithIdp?: boolean | undefined;
@@ -56,6 +63,7 @@ export declare const mergeYoRcContent: <const Content = {
56
63
  databaseType?: "sql" | "mongodb" | "cassandra" | "couchbase" | "neo4j" | "no" | undefined;
57
64
  messageBroker?: "no" | "kafka" | "pulsar" | undefined;
58
65
  databaseMigration?: "liquibase" | undefined;
66
+ graalvmSupport?: boolean | undefined;
59
67
  routes?: unknown[] | undefined;
60
68
  prodDatabaseType?: "mysql" | "mariadb" | "postgresql" | "mssql" | "oracle" | undefined;
61
69
  devDatabaseType?: string | undefined;
@@ -83,15 +91,21 @@ export declare const readYoRcFile: <Content = {
83
91
  jdlStore?: string | undefined;
84
92
  skipJhipsterDependencies?: boolean | undefined;
85
93
  clientFramework?: "no" | "angular" | "react" | "vue" | undefined;
94
+ clientTheme?: string | undefined;
95
+ clientThemeVariant?: string | undefined;
96
+ clientBundler?: "webpack" | "vite" | undefined;
86
97
  microfrontend?: boolean | undefined;
87
98
  clientTestFrameworks?: "cypress" | undefined;
88
99
  withAdminUi?: boolean | undefined;
89
100
  clientRootDir?: string | undefined;
101
+ monorepository?: boolean | undefined;
90
102
  packageName?: string | undefined;
103
+ packageFolder?: string | undefined;
91
104
  withGeneratedFlag?: boolean | undefined;
92
105
  buildTool?: string | undefined;
106
+ packageJsonNodeEngine?: unknown;
107
+ packageJsonType?: "commonjs" | "module" | undefined;
93
108
  prettierTabWidth?: number | undefined;
94
- monorepository?: boolean | undefined;
95
109
  languages?: unknown[] | undefined;
96
110
  enableTranslation?: boolean | undefined;
97
111
  nativeLanguage?: string | undefined;
@@ -108,6 +122,7 @@ export declare const readYoRcFile: <Content = {
108
122
  reactive?: boolean | undefined;
109
123
  serverPort?: unknown;
110
124
  serviceDiscoveryType?: "no" | "eureka" | "consul" | undefined;
125
+ jwtSecretKey?: string | undefined;
111
126
  authenticationType?: "session" | "jwt" | "oauth2" | undefined;
112
127
  feignClient?: boolean | undefined;
113
128
  syncUserWithIdp?: boolean | undefined;
@@ -115,6 +130,7 @@ export declare const readYoRcFile: <Content = {
115
130
  databaseType?: "sql" | "mongodb" | "cassandra" | "couchbase" | "neo4j" | "no" | undefined;
116
131
  messageBroker?: "no" | "kafka" | "pulsar" | undefined;
117
132
  databaseMigration?: "liquibase" | undefined;
133
+ graalvmSupport?: boolean | undefined;
118
134
  routes?: unknown[] | undefined;
119
135
  prodDatabaseType?: "mysql" | "mariadb" | "postgresql" | "mssql" | "oracle" | undefined;
120
136
  devDatabaseType?: string | undefined;
@@ -141,15 +157,21 @@ export declare const readCurrentPathYoRcFile: <Content = {
141
157
  jdlStore?: string | undefined;
142
158
  skipJhipsterDependencies?: boolean | undefined;
143
159
  clientFramework?: "no" | "angular" | "react" | "vue" | undefined;
160
+ clientTheme?: string | undefined;
161
+ clientThemeVariant?: string | undefined;
162
+ clientBundler?: "webpack" | "vite" | undefined;
144
163
  microfrontend?: boolean | undefined;
145
164
  clientTestFrameworks?: "cypress" | undefined;
146
165
  withAdminUi?: boolean | undefined;
147
166
  clientRootDir?: string | undefined;
167
+ monorepository?: boolean | undefined;
148
168
  packageName?: string | undefined;
169
+ packageFolder?: string | undefined;
149
170
  withGeneratedFlag?: boolean | undefined;
150
171
  buildTool?: string | undefined;
172
+ packageJsonNodeEngine?: unknown;
173
+ packageJsonType?: "commonjs" | "module" | undefined;
151
174
  prettierTabWidth?: number | undefined;
152
- monorepository?: boolean | undefined;
153
175
  languages?: unknown[] | undefined;
154
176
  enableTranslation?: boolean | undefined;
155
177
  nativeLanguage?: string | undefined;
@@ -166,6 +188,7 @@ export declare const readCurrentPathYoRcFile: <Content = {
166
188
  reactive?: boolean | undefined;
167
189
  serverPort?: unknown;
168
190
  serviceDiscoveryType?: "no" | "eureka" | "consul" | undefined;
191
+ jwtSecretKey?: string | undefined;
169
192
  authenticationType?: "session" | "jwt" | "oauth2" | undefined;
170
193
  feignClient?: boolean | undefined;
171
194
  syncUserWithIdp?: boolean | undefined;
@@ -173,6 +196,7 @@ export declare const readCurrentPathYoRcFile: <Content = {
173
196
  databaseType?: "sql" | "mongodb" | "cassandra" | "couchbase" | "neo4j" | "no" | undefined;
174
197
  messageBroker?: "no" | "kafka" | "pulsar" | undefined;
175
198
  databaseMigration?: "liquibase" | undefined;
199
+ graalvmSupport?: boolean | undefined;
176
200
  routes?: unknown[] | undefined;
177
201
  prodDatabaseType?: "mysql" | "mariadb" | "postgresql" | "mssql" | "oracle" | undefined;
178
202
  devDatabaseType?: string | undefined;