generator-jhipster 8.9.0 → 8.10.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 (211) hide show
  1. package/README.md +2 -2
  2. package/dist/cli/download.mjs +2 -3
  3. package/dist/cli/environment-builder.mjs +2 -2
  4. package/dist/generators/angular/generator.d.ts +10 -1
  5. package/dist/generators/angular/resources/package.json +20 -20
  6. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +1 -1
  7. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +3 -3
  8. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.spec.ts.ejs +1 -1
  9. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +6 -4
  10. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +1 -1
  11. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.spec.ts.ejs +1 -1
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +1 -1
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +1 -1
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.spec.ts.ejs +1 -1
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +1 -1
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.spec.ts.ejs +1 -1
  17. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.spec.ts.ejs +1 -1
  18. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.ts.ejs +1 -1
  19. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.spec.ts.ejs +1 -1
  20. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +8 -13
  21. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +1 -1
  22. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.spec.ts.ejs +1 -1
  23. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.spec.ts.ejs +1 -1
  24. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +3 -3
  25. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +2 -2
  26. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +1 -1
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.spec.ts.ejs +3 -3
  28. package/dist/generators/angular/templates/src/main/webapp/app/app-page-title-strategy.ts.ejs +1 -3
  29. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +1 -1
  30. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.ts.ejs +1 -2
  31. package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.spec.ts.ejs +0 -1
  32. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +1 -1
  33. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.spec.ts.ejs +2 -2
  34. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +2 -2
  35. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +4 -5
  36. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +4 -4
  37. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +2 -2
  38. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.spec.ts.ejs +4 -4
  39. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +1 -1
  40. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +7 -7
  41. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.spec.ts.ejs +4 -4
  42. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.html.ejs +4 -4
  43. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +3 -3
  44. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.spec.ts.ejs +1 -1
  45. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +8 -6
  46. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +3 -3
  47. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +8 -8
  48. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.spec.ts.ejs +2 -2
  49. package/dist/generators/angular/templates/src/main/webapp/app/shared/pagination/item-count.component.ts.ejs +1 -1
  50. package/dist/generators/app/generator.d.ts +4 -1
  51. package/dist/generators/base/support/contents.d.ts +1 -1
  52. package/dist/generators/base/support/needles.d.ts +14 -5
  53. package/dist/generators/base/support/needles.js +25 -17
  54. package/dist/generators/base-application/support/prepare-entity.js +14 -26
  55. package/dist/generators/base-application/support/update-application-entities-transform.js +3 -2
  56. package/dist/generators/base-application/types.d.ts +5 -0
  57. package/dist/generators/bootstrap/generator.d.ts +6 -1
  58. package/dist/generators/bootstrap/support/eslint-worker.js +5 -2
  59. package/dist/generators/bootstrap-application/generator.d.ts +4 -1
  60. package/dist/generators/bootstrap-application-base/generator.d.ts +12 -2
  61. package/dist/generators/bootstrap-application-base/generator.js +3 -0
  62. package/dist/generators/bootstrap-application-client/generator.d.ts +3 -1
  63. package/dist/generators/bootstrap-application-server/generator.d.ts +8 -1
  64. package/dist/generators/bootstrap-workspaces/generator.d.ts +9 -1
  65. package/dist/generators/ci-cd/generator.d.ts +6 -1
  66. package/dist/generators/client/generator.d.ts +13 -1
  67. package/dist/generators/client/generators/common/generator.d.ts +1 -1
  68. package/dist/generators/client/resources/package.json +5 -5
  69. package/dist/generators/client/templates/src/main/webapp/swagger-ui/index.html.ejs +8 -6
  70. package/dist/generators/common/generator.d.ts +8 -1
  71. package/dist/generators/common/resources/package.json +2 -2
  72. package/dist/generators/cucumber/generator.d.ts +2 -1
  73. package/dist/generators/cypress/generator.d.ts +7 -1
  74. package/dist/generators/docker/generator.d.ts +4 -1
  75. package/dist/generators/docker-compose/generator.d.ts +23 -1
  76. package/dist/generators/entities/generator.d.ts +4 -1
  77. package/dist/generators/entity/generator.d.ts +5 -1
  78. package/dist/generators/export-jdl/generator.d.ts +3 -1
  79. package/dist/generators/feign-client/generator.d.ts +2 -1
  80. package/dist/generators/feign-client/templates/src/test/java/_package_/client/AuthorizationHeaderUtilTest.java.ejs +1 -1
  81. package/dist/generators/gatling/generator.d.ts +3 -1
  82. package/dist/generators/generate-blueprint/constants.d.ts +1 -1
  83. package/dist/generators/generate-blueprint/constants.js +1 -1
  84. package/dist/generators/generate-blueprint/files.js +2 -2
  85. package/dist/generators/generate-blueprint/generator.d.ts +10 -1
  86. package/dist/generators/generate-blueprint/generator.js +16 -16
  87. package/dist/generators/generate-blueprint/resources/package.json +3 -3
  88. package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +1 -1
  89. package/dist/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +1 -0
  90. package/dist/generators/generator-constants.d.ts +1 -1
  91. package/dist/generators/generator-constants.js +2 -2
  92. package/dist/generators/git/generator.d.ts +5 -1
  93. package/dist/generators/gradle/generator.d.ts +5 -1
  94. package/dist/generators/gradle/generators/code-quality/generator.d.ts +2 -1
  95. package/dist/generators/gradle/generators/jib/generator.d.ts +2 -1
  96. package/dist/generators/gradle/generators/node-gradle/generator.d.ts +2 -1
  97. package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
  98. package/dist/generators/heroku/generator.d.ts +6 -1
  99. package/dist/generators/info/generator.d.ts +1 -1
  100. package/dist/generators/init/generator.d.ts +2 -1
  101. package/dist/generators/init/resources/.node-version +1 -1
  102. package/dist/generators/java/generators/bootstrap/generator.d.ts +8 -2
  103. package/dist/generators/java/generators/bootstrap/generator.js +17 -3
  104. package/dist/generators/java/generators/build-tool/generator.d.ts +2 -1
  105. package/dist/generators/java/generators/code-quality/generator.d.ts +2 -1
  106. package/dist/generators/java/generators/domain/generator.d.ts +6 -1
  107. package/dist/generators/java/generators/graalvm/generator.d.ts +6 -1
  108. package/dist/generators/java/generators/graalvm/internal/constants.d.ts +1 -1
  109. package/dist/generators/java/generators/graalvm/internal/constants.js +2 -2
  110. package/dist/generators/java/generators/graalvm/resources/gradle/libs.versions.toml +1 -1
  111. package/dist/generators/java/generators/jib/generator.d.ts +2 -1
  112. package/dist/generators/java/generators/node/generator.d.ts +4 -1
  113. package/dist/generators/java/generators/openapi-generator/generator.d.ts +2 -1
  114. package/dist/generators/java/generators/server/generator.d.ts +1 -1
  115. package/dist/generators/java/support/index.d.ts +2 -0
  116. package/dist/generators/java/support/index.js +2 -0
  117. package/dist/generators/java/support/java-enum.d.ts +8 -0
  118. package/dist/generators/java/support/java-enum.js +20 -0
  119. package/dist/generators/java/support/java-file-edit.d.ts +18 -0
  120. package/dist/generators/java/support/java-file-edit.js +94 -0
  121. package/dist/generators/java/types.d.ts +37 -1
  122. package/dist/generators/javascript/generators/bootstrap/generator.d.ts +4 -1
  123. package/dist/generators/javascript/generators/eslint/generator.d.ts +4 -1
  124. package/dist/generators/javascript/generators/husky/generator.d.ts +3 -1
  125. package/dist/generators/javascript/generators/prettier/generator.d.ts +4 -1
  126. package/dist/generators/javascript/resources/package.json +3 -3
  127. package/dist/generators/jdl/generator.d.ts +3 -1
  128. package/dist/generators/kubernetes/generator.d.ts +25 -19
  129. package/dist/generators/kubernetes-helm/generator.d.ts +18 -12
  130. package/dist/generators/kubernetes-knative/generator.d.ts +14 -8
  131. package/dist/generators/languages/generator.d.ts +9 -1
  132. package/dist/generators/liquibase/generator.d.ts +9 -1
  133. package/dist/generators/liquibase/generator.js +3 -19
  134. package/dist/generators/maven/generator.d.ts +6 -1
  135. package/dist/generators/maven/generators/code-quality/generator.d.ts +1 -1
  136. package/dist/generators/maven/generators/frontend-plugin/generator.d.ts +1 -1
  137. package/dist/generators/maven/generators/jib/generator.d.ts +1 -1
  138. package/dist/generators/project-name/generator.d.ts +3 -1
  139. package/dist/generators/react/generator.d.ts +15 -1
  140. package/dist/generators/react/resources/package.json +26 -26
  141. package/dist/generators/react/templates/src/main/webapp/app/entities/menu.tsx.ejs +2 -2
  142. package/dist/generators/react/templates/src/main/webapp/app/entities/routes.tsx.ejs +1 -1
  143. package/dist/generators/server/generator.d.ts +7 -1
  144. package/dist/generators/server/resources/Dockerfile +15 -15
  145. package/dist/generators/server/resources/gradle/libs.versions.toml +13 -13
  146. package/dist/generators/server/resources/pom.xml +13 -13
  147. package/dist/generators/server/types.d.ts +22 -0
  148. package/dist/generators/spring-boot/generator.d.ts +14 -2
  149. package/dist/generators/spring-boot/generator.js +33 -1
  150. package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +143 -143
  151. package/dist/generators/spring-boot/templates/src/main/java/_package_/Application.java.ejs +11 -0
  152. package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/_entityClass_QueryService.java.ejs +12 -23
  153. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +7 -6
  154. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_oauth2.java.ejs +8 -6
  155. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +8 -6
  156. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AuthenticateController.java.ejs +6 -6
  157. package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/errors/ExceptionTranslator.java.ejs +8 -3
  158. package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +3 -0
  159. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +3 -3
  160. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +4 -4
  161. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +4 -4
  162. package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +3 -3
  163. package/dist/generators/spring-boot/templates/src/test/java/_package_/config/JHipsterBlockHoundIntegration.java.ejs +0 -2
  164. package/dist/generators/spring-boot/templates/src/test/java/_package_/config/WebConfigurerTest.java.ejs +1 -1
  165. package/dist/generators/spring-boot/templates/src/test/java/_package_/management/SecurityMetersServiceTests.java.ejs +1 -1
  166. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +2 -2
  167. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TestAuthenticationResource.java.ejs +5 -5
  168. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationIT.java.ejs +2 -2
  169. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationSecurityMetersIT.java.ejs +1 -4
  170. package/dist/generators/spring-boot/templates/src/test/java/_package_/security/oauth2/CustomClaimConverterIT.java.ejs +1 -1
  171. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/MailServiceIT.java.ejs +1 -1
  172. package/dist/generators/spring-boot/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +1 -1
  173. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_imperative.java.ejs +1 -1
  174. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_reactive.java.ejs +1 -2
  175. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +9 -15
  176. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +8 -17
  177. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_skipUserManagement.java.ejs +6 -15
  178. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/LogoutResourceIT.java.ejs +1 -1
  179. package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/errors/ExceptionTranslatorIT_reactive.java.ejs +1 -1
  180. package/dist/generators/spring-cache/cleanup.d.ts +2 -20
  181. package/dist/generators/spring-cache/cleanup.js +24 -2
  182. package/dist/generators/spring-cache/files.js +0 -6
  183. package/dist/generators/spring-cache/generator.d.ts +5 -1
  184. package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
  185. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +0 -14
  186. package/dist/generators/spring-cloud/generators/gateway/generator.d.ts +5 -1
  187. package/dist/generators/spring-cloud-stream/generator.d.ts +2 -1
  188. package/dist/generators/spring-cloud-stream/generators/kafka/generator.d.ts +2 -1
  189. package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/test/java/_package_/web/rest/KafkaResourceIT_reactive.java.ejs +1 -1
  190. package/dist/generators/spring-cloud-stream/generators/pulsar/generator.d.ts +2 -1
  191. package/dist/generators/spring-data-cassandra/generator.d.ts +4 -1
  192. package/dist/generators/spring-data-couchbase/generator.d.ts +9 -1
  193. package/dist/generators/spring-data-elasticsearch/generator.d.ts +10 -1
  194. package/dist/generators/spring-data-mongodb/generator.d.ts +9 -1
  195. package/dist/generators/spring-data-neo4j/generator.d.ts +11 -1
  196. package/dist/generators/spring-data-relational/generator.d.ts +11 -1
  197. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/timezone/HibernateTimeZoneIT.java.ejs +2 -2
  198. package/dist/generators/spring-websocket/generator.d.ts +2 -1
  199. package/dist/generators/upgrade/generator.d.ts +3 -1
  200. package/dist/generators/vue/generator.d.ts +9 -1
  201. package/dist/generators/vue/resources/package.json +29 -29
  202. package/dist/generators/workspaces/generator.d.ts +7 -1
  203. package/dist/generators/workspaces/support/applications-lookup.js +2 -2
  204. package/dist/lib/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +1 -1
  205. package/dist/lib/jdl/core/built-in-options/binary-options.d.ts +12 -1
  206. package/dist/lib/testing/github.js +6 -3
  207. package/dist/lib/testing/helpers.d.ts +1 -0
  208. package/dist/lib/testing/helpers.js +15 -0
  209. package/dist/lib/utils/yo-rc.d.ts +3 -219
  210. package/package.json +27 -28
  211. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheFactoryConfiguration.java.ejs +0 -49
@@ -22,7 +22,11 @@ import BaseGenerator from '../base/index.js';
22
22
  * @extends {BaseGenerator}
23
23
  */
24
24
  export default class GitGenerator extends BaseGenerator {
25
- [x: string]: any;
25
+ [BaseGenerator.INITIALIZING]: any;
26
+ [BaseGenerator.PREPARING]: any;
27
+ [BaseGenerator.WRITING]: any;
28
+ [BaseGenerator.POST_WRITING]: any;
29
+ [BaseGenerator.END]: any;
26
30
  gitInitialized: boolean;
27
31
  skipGit: boolean;
28
32
  forceGit: boolean;
@@ -18,7 +18,11 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../base-application/index.js';
20
20
  export default class GradleGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.CONFIGURING]: any;
22
+ [BaseApplicationGenerator.LOADING]: any;
23
+ [BaseApplicationGenerator.PREPARING]: any;
24
+ [BaseApplicationGenerator.WRITING]: any;
25
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
26
  gradleVersionFromWrapper: any;
23
27
  beforeQueue(): Promise<void>;
24
28
  get configuring(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "configure">;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class CodeQualityGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.WRITING]: any;
22
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing">;
24
25
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "customize">;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class CodeQualityGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.WRITING]: any;
22
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing">;
24
25
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "customize">;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class NodeGradleGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.WRITING]: any;
22
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing">;
24
25
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "customize">;
@@ -1,5 +1,5 @@
1
1
  distributionBase=GRADLE_USER_HOME
2
2
  distributionPath=wrapper/dists
3
- distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
3
+ distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
4
4
  zipStoreBase=GRADLE_USER_HOME
5
5
  zipStorePath=wrapper/dists
@@ -18,7 +18,12 @@
18
18
  */
19
19
  import BaseGenerator from '../base-application/index.js';
20
20
  export default class HerokuGenerator extends BaseGenerator {
21
- [x: string]: any;
21
+ [BaseGenerator.INITIALIZING]: any;
22
+ [BaseGenerator.PROMPTING]: any;
23
+ [BaseGenerator.LOADING]: any;
24
+ [BaseGenerator.DEFAULT]: any;
25
+ [BaseGenerator.WRITING]: any;
26
+ [BaseGenerator.END]: any;
22
27
  hasHerokuCli: any;
23
28
  herokuAppName: any;
24
29
  herokuDeployType: any;
@@ -1,7 +1,7 @@
1
1
  import BaseApplicationGenerator from '../base-application/index.js';
2
2
  import type { JHipsterGeneratorFeatures, JHipsterGeneratorOptions } from '../base/api.js';
3
3
  export default class InfoGenerator extends BaseApplicationGenerator {
4
- [x: string]: any;
4
+ [BaseApplicationGenerator.INITIALIZING]: import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "checkDocker" | "sayHello" | "checkGit" | "checkJHipster" | "displayConfiguration" | "checkJava" | "checkNode" | "checkNpm" | "checkApplication" | "displayEntities">;
5
5
  constructor(args: string | string[], options: JHipsterGeneratorOptions, features: JHipsterGeneratorFeatures);
6
6
  checkCommand(command: string, args: string[], printInfo?: (result: {
7
7
  stdout: string;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../base-application/index.js';
20
20
  export default class InitGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.COMPOSING]: any;
22
+ [BaseApplicationGenerator.WRITING]: any;
22
23
  generateReadme: boolean;
23
24
  beforeQueue(): Promise<void>;
24
25
  get composing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "compose">;
@@ -1 +1 @@
1
- 22.13.1
1
+ 22.14.0
@@ -1,12 +1,18 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class BootstrapGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.INITIALIZING]: any;
4
+ [BaseApplicationGenerator.CONFIGURING]: any;
5
+ [BaseApplicationGenerator.LOADING]: any;
6
+ [BaseApplicationGenerator.PREPARING]: any;
7
+ [BaseApplicationGenerator.DEFAULT]: any;
8
+ [BaseApplicationGenerator.WRITING]: any;
9
+ [BaseApplicationGenerator.POST_WRITING]: any;
4
10
  packageInfoFile: boolean;
5
11
  beforeQueue(): Promise<void>;
6
12
  get initializing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "validateJava">;
7
13
  get configuring(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "checkConfig">;
8
14
  get loading(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").TaskParamWithApplicationDefaults<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "loadEnvironmentVariables">;
9
- get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "imperativeOrReactive" | "applicationDefaults" | "prepareJavaApplication" | "needles">;
15
+ get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "imperativeOrReactive" | "applicationDefaults" | "prepareJavaApplication" | "editJavaFileNeedles" | "addItemsToJavaEnumFile">;
10
16
  get default(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").TaskParamWithEntities<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "loadDomains" | "generatedAnnotation" | "generatedPackageInfo">;
11
17
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing">;
12
18
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "addPrettierJava">;
@@ -16,10 +16,11 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
+ import { basename } from 'node:path';
19
20
  import { isFileStateModified } from 'mem-fs-editor/state';
20
21
  import BaseApplicationGenerator from '../../../base-application/index.js';
21
22
  import { JAVA_COMPATIBLE_VERSIONS } from '../../../generator-constants.js';
22
- import { addJavaAnnotation, addJavaImport, checkJava, generatedAnnotationTransform, isReservedJavaKeyword, javaMainPackageTemplatesBlock, matchMainJavaFiles, packageInfoTransform, } from '../../support/index.js';
23
+ import { addJavaAnnotation, addJavaImport, checkJava, createEnumNeedleCallback, generatedAnnotationTransform, injectJavaConstructorParam, injectJavaConstructorSetter, injectJavaField, isReservedJavaKeyword, javaMainPackageTemplatesBlock, matchMainJavaFiles, packageInfoTransform, } from '../../support/index.js';
23
24
  export default class BootstrapGenerator extends BaseApplicationGenerator {
24
25
  packageInfoFile;
25
26
  async beforeQueue() {
@@ -78,8 +79,21 @@ export default class BootstrapGenerator extends BaseApplicationGenerator {
78
79
  source.hasJavaProperty = (property) => application.javaProperties[property] !== undefined;
79
80
  source.hasJavaManagedProperty = (property) => application.javaManagedProperties[property] !== undefined;
80
81
  },
81
- needles({ source }) {
82
- source.editJavaFile = (file, { staticImports = [], imports = [], annotations = [] }, ...editFileCallback) => this.editFile(file, ...staticImports.map(classPath => addJavaImport(classPath, { staticImport: true })), ...imports.map(classPath => addJavaImport(classPath)), ...annotations.map(annotation => addJavaAnnotation(annotation)), ...editFileCallback);
82
+ editJavaFileNeedles({ source }) {
83
+ source.editJavaFile = (file, { staticImports = [], imports = [], annotations = [], constructorParams = [], fields = [], springBeans = [] }, ...editFileCallback) => {
84
+ const className = basename(file, '.java');
85
+ return this.editFile(file, ...staticImports.map(classPath => addJavaImport(classPath, { staticImport: true })), ...imports.map(classPath => addJavaImport(classPath)), ...annotations.map(annotation => addJavaAnnotation(annotation)), constructorParams.length > 0 ? injectJavaConstructorParam({ className, param: constructorParams }) : c => c, fields.length > 0 ? injectJavaField({ className, field: fields }) : c => c, ...springBeans
86
+ .map(({ package: javaPackage, beanClass, beanName }) => [
87
+ addJavaImport(`${javaPackage}.${beanClass}`),
88
+ injectJavaField({ className, field: `private final ${beanClass} ${beanName};` }),
89
+ injectJavaConstructorParam({ className, param: `${beanClass} ${beanName}` }),
90
+ injectJavaConstructorSetter({ className, setter: `this.${beanName} = ${beanName};` }),
91
+ ])
92
+ .flat(), ...editFileCallback);
93
+ };
94
+ },
95
+ addItemsToJavaEnumFile({ source }) {
96
+ source.addItemsToJavaEnumFile = (file, { enumName = basename(file, '.java'), enumValues }) => this.editFile(file, createEnumNeedleCallback({ enumName, enumValues }));
83
97
  },
84
98
  imperativeOrReactive({ applicationDefaults }) {
85
99
  applicationDefaults({
@@ -1,6 +1,7 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class BuildToolGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.COMPOSING]: any;
4
+ [BaseApplicationGenerator.PREPARING]: any;
4
5
  beforeQueue(): Promise<void>;
5
6
  get composing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "composing">;
6
7
  get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "prepareJavaApplication" | "executable">;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class CodeQualityGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.COMPOSING]: any;
22
+ [BaseApplicationGenerator.WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get composing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "compose">;
24
25
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing">;
@@ -18,7 +18,12 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class DomainGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY]: any;
22
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY_FIELD]: any;
23
+ [BaseApplicationGenerator.PREPARING_EACH_ENTITY_RELATIONSHIP]: any;
24
+ [BaseApplicationGenerator.POST_PREPARING_EACH_ENTITY]: any;
25
+ [BaseApplicationGenerator.WRITING]: any;
26
+ [BaseApplicationGenerator.WRITING_ENTITIES]: any;
22
27
  generateEntities: boolean;
23
28
  useJakartaValidation: boolean;
24
29
  useJacksonIdentityInfo: boolean;
@@ -1,6 +1,11 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class GraalvmGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.INITIALIZING]: any;
4
+ [BaseApplicationGenerator.LOADING]: any;
5
+ [BaseApplicationGenerator.PREPARING]: any;
6
+ [BaseApplicationGenerator.DEFAULT]: any;
7
+ [BaseApplicationGenerator.WRITING]: any;
8
+ [BaseApplicationGenerator.POST_WRITING]: any;
4
9
  beforeQueue(): Promise<void>;
5
10
  get initializing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "forceConfig">;
6
11
  get loading(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").TaskParamWithApplicationDefaults<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "loading">;
@@ -1 +1 @@
1
- export declare const GRAALVM_REACHABILITY_METADATA = "0.3.14";
1
+ export declare const GRAALVM_REACHABILITY_METADATA = "0.3.18";
@@ -1,2 +1,2 @@
1
- // renovate: datasource=github-releases depName=graalvm-reachability-metadata oracle/graalvm-reachability-metadata
2
- export const GRAALVM_REACHABILITY_METADATA = '0.3.14';
1
+ // renovate: datasource=github-releases depName=graalvm-reachability-metadata packageName=oracle/graalvm-reachability-metadata
2
+ export const GRAALVM_REACHABILITY_METADATA = '0.3.18';
@@ -1,5 +1,5 @@
1
1
  [versions]
2
- nativeBuildTools = '0.10.5'
2
+ nativeBuildTools = '0.10.6'
3
3
 
4
4
  [libraries]
5
5
  nativeGradlePlugin = { module = 'org.graalvm.buildtools:native-gradle-plugin', version.ref = 'nativeBuildTools' }
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class JibGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.COMPOSING]: any;
22
+ [BaseApplicationGenerator.WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get composing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "compose">;
24
25
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "write">;
@@ -1,6 +1,9 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class NodeGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.COMPOSING]: any;
4
+ [BaseApplicationGenerator.PREPARING]: any;
5
+ [BaseApplicationGenerator.POST_PREPARING]: any;
6
+ [BaseApplicationGenerator.WRITING]: any;
4
7
  beforeQueue(): Promise<void>;
5
8
  get composing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "compose">;
6
9
  get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "javaNodeBuildPaths">;
@@ -18,7 +18,8 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class OpenapiGeneratorGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.WRITING]: any;
22
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
23
  beforeQueue(): Promise<void>;
23
24
  get writing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").WritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "writing" | "cleanup">;
24
25
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "addDependencies">;
@@ -18,7 +18,7 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class ServerGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
22
  beforeQueue(): Promise<void>;
23
23
  get postWriting(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PostWritingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "packageJsonScripts" | "packageJsonBackendScripts" | "packageJsonE2eScripts">;
24
24
  }
@@ -22,6 +22,8 @@ export * from './checks/index.js';
22
22
  export * from './doc.js';
23
23
  export * from './files.js';
24
24
  export { default as generatedAnnotationTransform } from './generated-annotation-transform.js';
25
+ export * from './java-enum.js';
26
+ export * from './java-file-edit.js';
25
27
  export * from './java-formatting.js';
26
28
  export * from './key-store.js';
27
29
  export { default as packageInfoTransform } from './package-info-transform.js';
@@ -22,6 +22,8 @@ export * from './checks/index.js';
22
22
  export * from './doc.js';
23
23
  export * from './files.js';
24
24
  export { default as generatedAnnotationTransform } from './generated-annotation-transform.js';
25
+ export * from './java-enum.js';
26
+ export * from './java-file-edit.js';
25
27
  export * from './java-formatting.js';
26
28
  export * from './key-store.js';
27
29
  export { default as packageInfoTransform } from './package-info-transform.js';
@@ -0,0 +1,8 @@
1
+ type EnumNeedleOptions = {
2
+ enumName: string;
3
+ enumValues: string[];
4
+ needle?: string;
5
+ needleValuePrefix?: string;
6
+ };
7
+ export declare const createEnumNeedleCallback: ({ enumName, enumValues, needle, needleValuePrefix, }: EnumNeedleOptions) => import("../../base/api.js").EditFileCallback<import("../../index.js").GeneratorBaseCore>;
8
+ export {};
@@ -0,0 +1,20 @@
1
+ import { createNeedleCallback } from '../../base/support/needles.js';
2
+ export const createEnumNeedleCallback = ({ enumName, enumValues, needle = 'add-item-to-enum', needleValuePrefix = `${enumName} {\n`, }) => createNeedleCallback({
3
+ needle,
4
+ contentToAdd: (content, needleData) => {
5
+ const needleValueSuffix = `;\n`;
6
+ const needleValueSeparator = `,\n`;
7
+ let beforeContent = content.slice(0, needleData.needleLineIndex);
8
+ const afterContent = content.slice(needleData.needleLineIndex);
9
+ // Drop extra line ending if it exists, can be caused by prettier formatting
10
+ beforeContent = beforeContent.endsWith('/n/n') ? beforeContent.slice(0, -1) : beforeContent;
11
+ if (!beforeContent.includes(needleValuePrefix) || !beforeContent.endsWith(needleValueSuffix)) {
12
+ throw new Error(`Invalid file content ${beforeContent}, expected to contain ${needleValuePrefix}`);
13
+ }
14
+ const beforeNeedleContentIndex = beforeContent.lastIndexOf(needleValuePrefix) + needleValuePrefix.length;
15
+ const beforeNeedleContent = beforeContent.substring(0, beforeNeedleContentIndex);
16
+ let needleContent = beforeContent.substring(beforeNeedleContentIndex).slice(0, -needleValueSuffix.length);
17
+ needleContent = needleContent.trim() ? needleContent : '';
18
+ return `${beforeNeedleContent}${needleContent}${needleContent ? needleValueSeparator : ''}${enumValues.map(value => `${needleData.indentPrefix}${value}`).join(needleValueSeparator)}${needleValueSuffix}${afterContent}`;
19
+ },
20
+ });
@@ -0,0 +1,18 @@
1
+ export type JavaClassName = {
2
+ className: string;
3
+ };
4
+ export type JavaContructorParam = JavaClassName & {
5
+ param: string | string[];
6
+ };
7
+ export type JavaField = JavaClassName & {
8
+ field: string | string[];
9
+ };
10
+ export type JavaContructorSetter = JavaClassName & {
11
+ setter: string | string[];
12
+ };
13
+ export declare function injectJavaConstructorParam(options: JavaContructorParam): (content: string) => string;
14
+ export declare function injectJavaConstructorParam(content: string, options: JavaContructorParam): string;
15
+ export declare function injectJavaField(options: JavaField): (content: string) => string;
16
+ export declare function injectJavaField(content: string, options: JavaField): string;
17
+ export declare function injectJavaConstructorSetter(options: JavaContructorSetter): (content: string) => string;
18
+ export declare function injectJavaConstructorSetter(content: string, options: JavaContructorSetter): string;
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Copyright 2013-2025 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
+ import assert from 'assert';
20
+ import { escapeRegExp } from 'lodash-es';
21
+ const findJavaConstructor = (content, className) => {
22
+ const regex = `(?<before>\\n(?<ident>[^\\S\\r\\n]*)(?:public|protect|private)?\\s*${className}\\s*\\()(?<params>[^(]*)(?<after>\\))\\s*\\{`;
23
+ const result = new RegExp(regex, 'g').exec(content);
24
+ if (!result || result.length === 1) {
25
+ throw new Error(`Constructor not found for ${className}`);
26
+ }
27
+ const paramStartIndex = result.index + result.groups.before.length;
28
+ const { params, ident } = result.groups;
29
+ return {
30
+ newLineIndex: result?.index,
31
+ params,
32
+ ident,
33
+ paramStartIndex,
34
+ paramEndIndex: paramStartIndex + params.length,
35
+ blockStartIndex: result.index + result[0].length,
36
+ };
37
+ };
38
+ export function injectJavaConstructorParam(paramOrAnnotation, options) {
39
+ const injectJavaConstructorParamToContent = (content, opts) => {
40
+ const { className } = opts;
41
+ const paramSpec = Array.isArray(opts.param) ? opts.param : [opts.param];
42
+ const { params: constructorParams, paramStartIndex, paramEndIndex } = findJavaConstructor(content, className);
43
+ const paramsToAdd = paramSpec.filter(param => !constructorParams.split(',').find(existing => existing.trim() === param.trim()));
44
+ if (paramsToAdd.length === 0) {
45
+ return content;
46
+ }
47
+ const newParams = constructorParams ? `${constructorParams}, ${paramsToAdd.join(', ')}` : paramSpec.join(', ');
48
+ return `${content.slice(0, paramStartIndex)}${newParams}${content.slice(paramEndIndex)}`;
49
+ };
50
+ if (typeof paramOrAnnotation === 'string') {
51
+ return injectJavaConstructorParamToContent(paramOrAnnotation, options);
52
+ }
53
+ return (content) => injectJavaConstructorParamToContent(content, paramOrAnnotation);
54
+ }
55
+ export function injectJavaField(paramOrOptions, options) {
56
+ const injectJavaFieldToContent = (content, opts) => {
57
+ assert(opts.className, 'className is required');
58
+ assert(opts.field, 'field is required');
59
+ const { className } = opts;
60
+ let fieldsToAdd = Array.isArray(opts.field) ? opts.field : [opts.field];
61
+ const { newLineIndex, ident } = findJavaConstructor(content, className);
62
+ fieldsToAdd = fieldsToAdd
63
+ .map(field => (field.trim() === field ? `${ident}${field}` : field))
64
+ .filter(field => !new RegExp(escapeRegExp(field)).test(content));
65
+ if (fieldsToAdd.length === 0) {
66
+ return content;
67
+ }
68
+ return `${content.slice(0, newLineIndex)}\n${fieldsToAdd.join('\n')}\n${content.slice(newLineIndex)}`;
69
+ };
70
+ if (typeof paramOrOptions === 'string') {
71
+ return injectJavaFieldToContent(paramOrOptions, options);
72
+ }
73
+ return (content) => injectJavaFieldToContent(content, paramOrOptions);
74
+ }
75
+ export function injectJavaConstructorSetter(paramOrAnnotation, options) {
76
+ const injectJavaConstructorParamToContent = (content, opts) => {
77
+ assert(opts.className, 'className is required');
78
+ assert(opts.setter, 'setter is required');
79
+ const { className } = opts;
80
+ let setterSpec = Array.isArray(opts.setter) ? opts.setter : [opts.setter];
81
+ const { ident, blockStartIndex } = findJavaConstructor(content, className);
82
+ setterSpec = setterSpec
83
+ .map(setter => (setter.trim() === setter ? `${ident.repeat(2)}${setter}` : setter))
84
+ .filter(setter => !new RegExp(escapeRegExp(setter)).test(content));
85
+ if (setterSpec.length === 0) {
86
+ return content;
87
+ }
88
+ return `${content.slice(0, blockStartIndex)}\n${setterSpec.join('\n')}\n${content.slice(blockStartIndex)}`;
89
+ };
90
+ if (typeof paramOrAnnotation === 'string') {
91
+ return injectJavaConstructorParamToContent(paramOrAnnotation, options);
92
+ }
93
+ return (content) => injectJavaConstructorParamToContent(content, paramOrAnnotation);
94
+ }
@@ -80,6 +80,8 @@ export type JavaApplication = JavaBootstrapStorageProperties &
80
80
 
81
81
  export type ConditionalJavaDefinition = JavaDefinition & { condition?: boolean };
82
82
 
83
+ export type SpringBean = { package: string; beanClass: string; beanName: string };
84
+
83
85
  export type JavaSourceType = {
84
86
  /**
85
87
  * Add a JavaDefinition to the application.
@@ -101,7 +103,41 @@ export type JavaSourceType = {
101
103
  */
102
104
  editJavaFile?: (
103
105
  file: string,
104
- { staticImports, imports, annotations }: { staticImports?: string[]; imports?: string[]; annotations?: JavaAnnotation[] },
106
+ options: {
107
+ staticImports?: string[];
108
+ imports?: string[];
109
+ annotations?: JavaAnnotation[];
110
+ /**
111
+ * Constructor parameters to add to the class.
112
+ */
113
+ constructorParams?: string[];
114
+ /**
115
+ * Fields to add to the class.
116
+ * Requires a valid constructor.
117
+ */
118
+ fields?: string[];
119
+ /**
120
+ * Spring beans to add to the class.
121
+ */
122
+ springBeans?: SpringBean[];
123
+ },
105
124
  ...editFileCallback: EditFileCallback[]
106
125
  ) => void;
126
+ /**
127
+ * Add enum values to a Java enum.
128
+ *
129
+ * @example
130
+ * ```js
131
+ * addItemsToJavaEnumFile('src/main/java/my/package/MyEnum.java', {
132
+ * enumValues: ['VALUE1', 'VALUE2'],
133
+ * });
134
+ * ```
135
+ */
136
+ addItemsToJavaEnumFile?: (
137
+ file: string,
138
+ options: {
139
+ enumName?: string;
140
+ enumValues: string[];
141
+ },
142
+ ) => void;
107
143
  };
@@ -1,6 +1,9 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class BootstrapGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.LOADING]: any;
4
+ [BaseApplicationGenerator.PREPARING]: any;
5
+ [BaseApplicationGenerator.WRITING]: any;
6
+ [BaseApplicationGenerator.POST_WRITING]: any;
4
7
  beforeQueue(): Promise<void>;
5
8
  get loading(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").TaskParamWithApplicationDefaults<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "loadNodeDependencies" | "jsExtensions">;
6
9
  get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "addSource">;
@@ -18,7 +18,10 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class EslintGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.LOADING]: any;
22
+ [BaseApplicationGenerator.PREPARING]: any;
23
+ [BaseApplicationGenerator.WRITING]: any;
24
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
25
  beforeQueue(): Promise<void>;
23
26
  get loading(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").TaskParamWithApplicationDefaults<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "loadNodeDependencies">;
24
27
  get preparing(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/application/tasks.js").PreparingTaskParam<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>, import("../../../../lib/types/application/application.js").ApplicationType<import("../../../base-application/index.js").Entity<import("../../../base-application/index.js").Field, never>>>, "source">;
@@ -18,7 +18,9 @@
18
18
  */
19
19
  import BaseApplicationGenerator from '../../../base-application/index.js';
20
20
  export default class HuskyGenerator extends BaseApplicationGenerator {
21
- [x: string]: any;
21
+ [BaseApplicationGenerator.CONFIGURING]: any;
22
+ [BaseApplicationGenerator.WRITING]: any;
23
+ [BaseApplicationGenerator.POST_WRITING]: any;
22
24
  constructor(args: any, options: any, features: any);
23
25
  beforeQueue(): Promise<void>;
24
26
  get configuring(): import("../../../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../../../lib/types/base/tasks.js").TaskParamWithControl, "configureNodeOptions">;
@@ -1,6 +1,9 @@
1
1
  import BaseApplicationGenerator from '../../../base-application/index.js';
2
2
  export default class PrettierGenerator extends BaseApplicationGenerator {
3
- [x: string]: any;
3
+ [BaseApplicationGenerator.LOADING]: any;
4
+ [BaseApplicationGenerator.PREPARING]: any;
5
+ [BaseApplicationGenerator.WRITING]: any;
6
+ [BaseApplicationGenerator.POST_WRITING]: any;
4
7
  fromInit?: boolean;
5
8
  prettierConfigFile: string;
6
9
  monorepositoryRoot?: boolean;
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "dependencies": {
3
- "eslint-config-prettier": "10.0.1",
4
- "eslint-plugin-prettier": "5.2.3",
3
+ "eslint-config-prettier": "10.1.1",
4
+ "eslint-plugin-prettier": "5.2.5",
5
5
  "husky": "9.1.7",
6
- "lint-staged": "15.4.3"
6
+ "lint-staged": "15.5.0"
7
7
  },
8
8
  "packageManager": "npm@11"
9
9
  }
@@ -7,7 +7,9 @@ type ApplicationWithEntitiesAndPath = ApplicationWithEntities & {
7
7
  sharedFs?: MemFs;
8
8
  };
9
9
  export default class JdlGenerator extends BaseGenerator {
10
- [x: string]: any;
10
+ [BaseGenerator.INITIALIZING]: any;
11
+ [BaseGenerator.CONFIGURING]: any;
12
+ [BaseGenerator.END]: any;
11
13
  jdlFiles?: string[];
12
14
  inline?: string;
13
15
  jdlContents: string[];