generator-jhipster 8.0.0 → 8.1.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 (258) hide show
  1. package/README.md +61 -57
  2. package/dist/cli/environment-builder.mjs +11 -4
  3. package/dist/cli/program.mjs +1 -1
  4. package/dist/generators/angular/cleanup.mjs +7 -0
  5. package/dist/generators/angular/files-angular.mjs +3 -4
  6. package/dist/generators/angular/generator.mjs +2 -15
  7. package/dist/generators/angular/needle-api/needle-client-angular.mjs +2 -8
  8. package/dist/generators/angular/resources/package.json +23 -23
  9. package/dist/generators/angular/support/translate-angular.mjs +2 -2
  10. package/dist/generators/angular/templates/README.md.jhi.client.angular.ejs +1 -1
  11. package/dist/generators/angular/templates/angular.json.ejs +3 -7
  12. package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.html.ejs +6 -4
  13. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.ts.ejs +1 -1
  14. package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +39 -33
  15. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +44 -36
  16. package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +24 -23
  17. package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +74 -62
  18. package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.html.ejs +12 -4
  19. package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +54 -48
  20. package/dist/generators/angular/templates/src/main/webapp/app/admin/admin.routes.ts.ejs +74 -0
  21. package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +15 -5
  22. package/dist/generators/angular/templates/src/main/webapp/app/admin/docs/docs.component.ts.ejs +1 -1
  23. package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +20 -7
  24. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.html.ejs +10 -7
  25. package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +9 -3
  26. package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.html.ejs +12 -4
  27. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +13 -7
  28. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +6 -2
  29. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +3 -1
  30. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.html.ejs +13 -9
  31. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +13 -5
  32. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +21 -7
  33. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +6 -2
  34. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.html.ejs +3 -1
  35. package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +16 -7
  36. package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +3 -1
  37. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +3 -1
  38. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +11 -4
  39. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +20 -11
  40. package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +48 -34
  41. package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +73 -0
  42. package/dist/generators/angular/templates/src/main/webapp/app/app.config.ts.ejs +67 -0
  43. package/dist/generators/angular/templates/src/main/webapp/app/app.routes.ts.ejs +85 -0
  44. package/dist/generators/angular/templates/src/main/webapp/app/core/microfrontend/index.ts.ejs +5 -4
  45. package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.spec.ts.ejs +1 -1
  46. package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.ts.ejs +2 -2
  47. package/dist/generators/angular/templates/src/main/webapp/app/core/util/event-manager.service.spec.ts.ejs +12 -12
  48. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.model.ts.ejs +4 -4
  49. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +3 -1
  50. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +26 -14
  51. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +38 -25
  52. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.ts.ejs +1 -1
  53. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.spec.ts.ejs +2 -2
  54. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +5 -12
  55. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +55 -21
  56. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +2 -2
  57. package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.ts.ejs +10 -10
  58. package/dist/generators/angular/templates/src/main/webapp/app/entities/entity.routes.ts.ejs +25 -0
  59. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +21 -17
  60. package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.ts.ejs +1 -1
  61. package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.html.ejs +3 -3
  62. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.spec.ts.ejs +5 -2
  63. package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +5 -1
  64. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +97 -78
  65. package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.ts.ejs +1 -1
  66. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.scss.ejs +1 -1
  67. package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +6 -4
  68. package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +3 -3
  69. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.html.ejs +6 -2
  70. package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.html.ejs +6 -2
  71. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +11 -7
  72. package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.model.spec.ts.ejs +1 -1
  73. package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.spec.ts.ejs +3 -3
  74. package/dist/generators/angular/templates/src/main/webapp/bootstrap.ts.ejs +5 -5
  75. package/dist/generators/angular/templates/src/main/webapp/content/scss/global.scss.ejs +1 -1
  76. package/dist/generators/angular/templates/webpack/webpack.microfrontend.js.ejs +2 -2
  77. package/dist/generators/app/README.md +108 -0
  78. package/dist/generators/app/USAGE +3 -0
  79. package/dist/generators/app/command.mjs +3 -3
  80. package/dist/generators/app/generator.mjs +11 -0
  81. package/dist/generators/base/command.mjs +0 -11
  82. package/dist/generators/base-application/generator.mjs +5 -6
  83. package/dist/generators/base-application/support/entities.mjs +2 -2
  84. package/dist/generators/base-application/support/index.mjs +1 -0
  85. package/dist/generators/base-application/support/prepare-entity.mjs +0 -1
  86. package/dist/generators/base-application/support/prepare-relationship.mjs +4 -0
  87. package/dist/generators/base-application/support/update-application-entities-transform.mjs +52 -0
  88. package/dist/generators/base-core/generator.mjs +17 -4
  89. package/dist/generators/base-entity-changes/generator.mjs +1 -1
  90. package/dist/generators/bootstrap/command.mjs +6 -0
  91. package/dist/generators/bootstrap/generator.mjs +27 -9
  92. package/dist/generators/bootstrap-application/generator.mjs +1 -19
  93. package/dist/generators/bootstrap-application-base/command.mjs +30 -0
  94. package/dist/generators/bootstrap-application-base/generator.mjs +27 -5
  95. package/dist/generators/bootstrap-application-base/index.mjs +1 -0
  96. package/dist/generators/bootstrap-application-base/support/export-jdl-transform.mjs +61 -0
  97. package/dist/generators/bootstrap-application-base/support/import-jdl-transform.mjs +64 -0
  98. package/dist/generators/bootstrap-application-base/support/index.mjs +2 -0
  99. package/dist/generators/client/command.mjs +2 -0
  100. package/dist/generators/client/resources/package.json +4 -4
  101. package/dist/generators/client/support/entity-definition.mjs +3 -3
  102. package/dist/generators/client/templates/README.md.jhi.client.ejs +2 -2
  103. package/dist/generators/client/templates/src/main/webapp/index.html.ejs +2 -2
  104. package/dist/generators/common/command.mjs +2 -0
  105. package/dist/generators/common/resources/package.json +3 -3
  106. package/dist/generators/common/templates/sonar-project.properties.ejs +1 -1
  107. package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +0 -1
  108. package/dist/generators/docker/generator.mjs +1 -1
  109. package/dist/generators/docker/templates/docker/cassandra.yml.ejs +2 -2
  110. package/dist/generators/docker/templates/docker/keycloak.yml.ejs +1 -1
  111. package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +4 -1
  112. package/dist/generators/docker-compose/generator.mjs +4 -11
  113. package/dist/generators/docker-compose/templates/docker-compose.yml.ejs +1 -1
  114. package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +4 -1
  115. package/dist/generators/export-jdl/generator.mjs +1 -1
  116. package/dist/generators/feign-client/cleanup.mjs +12 -0
  117. package/dist/generators/feign-client/files.mjs +35 -0
  118. package/dist/generators/feign-client/generator.mjs +65 -0
  119. package/dist/generators/feign-client/index.mjs +19 -0
  120. package/dist/generators/feign-client/templates/src/main/java/_package_/client/AuthorizationHeaderUtil.java.ejs +174 -0
  121. package/dist/generators/feign-client/templates/src/main/java/_package_/client/AuthorizedFeignClient.java.ejs +72 -0
  122. package/dist/generators/feign-client/templates/src/main/java/_package_/client/OAuth2InterceptedFeignConfiguration.java.ejs +35 -0
  123. package/dist/generators/feign-client/templates/src/main/java/_package_/client/OAuthIdpTokenResponseDTO.java.ejs +161 -0
  124. package/dist/generators/feign-client/templates/src/main/java/_package_/client/TokenRelayRequestInterceptor.java.ejs +42 -0
  125. package/dist/generators/feign-client/templates/src/main/java/_package_/client/UserFeignClientInterceptor_jwt.java.ejs +36 -0
  126. package/dist/generators/feign-client/templates/src/main/java/_package_/config/FeignConfiguration.java.ejs +45 -0
  127. package/dist/generators/feign-client/templates/src/test/java/_package_/client/AuthorizationHeaderUtilTest.java.ejs +263 -0
  128. package/dist/generators/generate-blueprint/command.mjs +1 -1
  129. package/dist/generators/generate-blueprint/resources/package.json +1 -1
  130. package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +1 -1
  131. package/dist/generators/generator-constants.mjs +9 -5
  132. package/dist/generators/generator-list.mjs +1 -0
  133. package/dist/generators/git/generator.mjs +3 -5
  134. package/dist/generators/gradle/constants.mjs +1 -1
  135. package/dist/generators/java/command.mjs +6 -0
  136. package/dist/generators/java/entity-files.mjs +4 -0
  137. package/dist/generators/java/generator.mjs +3 -2
  138. package/dist/generators/java/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jackson_identity_info.ejs +30 -0
  139. package/dist/generators/jdl/generator.mjs +18 -23
  140. package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +4 -1
  141. package/dist/generators/kubernetes/templates/keycloak/keycloak.yml.ejs +1 -1
  142. package/dist/generators/languages/generator.mjs +24 -15
  143. package/dist/generators/languages/prompts.mjs +3 -1
  144. package/dist/generators/languages/support/translate.mjs +1 -1
  145. package/dist/generators/languages/templates/entity/i18n/entity_pt-br.json.ejs +1 -1
  146. package/dist/generators/liquibase/README.md +19 -0
  147. package/dist/generators/project-name/generator.mjs +14 -19
  148. package/dist/generators/project-name/support/name-resolver.mjs +35 -6
  149. package/dist/generators/react/resources/package.json +24 -24
  150. package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.spec.ts.ejs +4 -4
  151. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-detail.tsx.ejs +1 -2
  152. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.tsx.ejs +12 -13
  153. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.tsx.ejs +3 -8
  154. package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityModel_.model.ts.ejs +1 -1
  155. package/dist/generators/react/templates/src/main/webapp/app/shared/layout/header/header.scss.ejs +1 -1
  156. package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +1 -1
  157. package/dist/generators/react/templates/src/main/webapp/app/shared/util/date-utils.ts.ejs +1 -1
  158. package/dist/generators/server/cleanup.mjs +5 -0
  159. package/dist/generators/server/command.mjs +13 -2
  160. package/dist/generators/server/entity-files.mjs +3 -3
  161. package/dist/generators/server/files.mjs +2 -38
  162. package/dist/generators/server/generator.mjs +35 -19
  163. package/dist/generators/server/jdl/application-definition.mjs +5 -2
  164. package/dist/generators/server/options/feign-client.mjs +24 -0
  165. package/dist/generators/server/options/index.mjs +1 -0
  166. package/dist/generators/server/resources/Dockerfile +16 -16
  167. package/dist/generators/server/resources/gradle/libs.versions.toml +4 -4
  168. package/dist/generators/server/resources/pom.xml +11 -11
  169. package/dist/generators/server/support/config.mjs +1 -0
  170. package/dist/generators/server/support/prepare-entity.mjs +4 -1
  171. package/dist/generators/server/templates/build.gradle.ejs +1 -2
  172. package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -21
  173. package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +5 -15
  174. package/dist/generators/server/templates/pom.xml.ejs +1 -4
  175. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/get_all_template.ejs +7 -7
  176. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/search_template.ejs +4 -4
  177. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/repository/_entityClass_Repository.java.ejs +1 -1
  178. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/service/mapper/_entityClass_Mapper.java.ejs +2 -2
  179. package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/web/rest/_entityClass_Resource.java.ejs +3 -3
  180. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +20 -2
  181. package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +4 -1
  182. package/dist/generators/server/templates/src/main/java/_package_/security/oauth2/CustomClaimConverter.java.ejs +1 -5
  183. package/dist/generators/server/templates/src/main/java/_package_/service/MailService.java.ejs +48 -12
  184. package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +1 -1
  185. package/dist/generators/server/templates/src/main/java/_package_/web/rest/LogoutResource_imperative.java.ejs +4 -13
  186. package/dist/generators/server/templates/src/main/java/_package_/web/rest/LogoutResource_reactive.java.ejs +5 -11
  187. package/dist/generators/server/templates/src/main/java/_package_/web/rest/PublicUserResource.java.ejs +3 -3
  188. package/dist/generators/server/templates/src/main/java/_package_/web/rest/UserResource.java.ejs +6 -6
  189. package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +8 -7
  190. package/dist/generators/server/templates/src/test/java/_package_/TechnicalStructureTest.java.ejs +1 -1
  191. package/dist/generators/server/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +8 -8
  192. package/dist/generators/server/templates/src/test/java/_package_/web/rest/errors/ExceptionTranslatorTestController.java.ejs +2 -2
  193. package/dist/generators/spring-cache/internal/dependencies.mjs +1 -1
  194. package/dist/generators/spring-cache/templates/gradle/cache.gradle.ejs +1 -1
  195. package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheFactoryConfiguration.java.ejs +1 -1
  196. package/dist/generators/spring-cloud-stream/templates/src/main/java/_package_/web/rest/KafkaResource_imperative.java.ejs +1 -1
  197. package/dist/generators/spring-cloud-stream/templates/src/main/java/_package_/web/rest/KafkaResource_reactive.java.ejs +1 -1
  198. package/dist/generators/spring-cloud-stream/templates/src/test/java/_package_/web/rest/KafkaResourceIT_reactive.java.ejs +3 -0
  199. package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.elastic_search.ejs +1 -1
  200. package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/_entityPackage_/repository/search/_entityClass_SearchRepository.java.ejs +1 -1
  201. package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/repository/search/UserSearchRepository.java.ejs +4 -4
  202. package/dist/generators/spring-data-neo4j/generator.mjs +43 -1
  203. package/dist/generators/spring-data-neo4j/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_neo4j.ejs +1 -1
  204. package/dist/generators/spring-data-relational/README.md +7 -0
  205. package/dist/generators/spring-data-relational/generator.mjs +2 -1
  206. package/dist/generators/spring-data-relational/internal/dependencies.mjs +29 -8
  207. package/dist/generators/spring-data-relational/support/database-data.mjs +4 -0
  208. package/dist/generators/spring-data-relational/templates/src/main/java/_package_/repository/EntityManager_reactive.java.ejs +49 -8
  209. package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +1 -1
  210. package/dist/generators/upgrade/generator.mjs +3 -3
  211. package/dist/generators/vue/resources/package.json +21 -21
  212. package/dist/generators/vue/templates/package.json.ejs +1 -0
  213. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-details.vue.ejs +1 -2
  214. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.component.spec.ts.ejs +1 -1
  215. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.component.ts.ejs +3 -3
  216. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +2 -15
  217. package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.vue.ejs +2 -7
  218. package/dist/jdl/converters/jdl-to-json/jdl-to-json-basic-entity-converter.js +1 -0
  219. package/dist/jdl/converters/json-to-jdl-converter.js +1 -1
  220. package/dist/jdl/converters/json-to-jdl-entity-converter.js +1 -0
  221. package/dist/jdl/converters/parsed-jdl-to-jdl-object/entity-converter.js +5 -0
  222. package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +0 -27
  223. package/dist/jdl/exporters/jhipster-entity-exporter.js +3 -2
  224. package/dist/jdl/jhipster/default-application-options.js +1 -1
  225. package/dist/jdl/jhipster/field-types.js +1 -1
  226. package/dist/jdl/jhipster/json-entity.js +6 -0
  227. package/dist/jdl/models/jdl-entity.js +16 -1
  228. package/dist/jdl/models/jdl-field.js +13 -0
  229. package/dist/jdl/models/jdl-object.js +3 -3
  230. package/dist/jdl/models/jdl-relationship.js +23 -5
  231. package/dist/jdl/parsing/lexer/application-tokens.js +1 -1
  232. package/dist/testing/helpers.mjs +10 -3
  233. package/dist/types/cli/environment-builder.d.mts +2 -0
  234. package/dist/types/generators/angular/needle-api/needle-client-angular.d.mts +0 -1
  235. package/dist/types/generators/base/api.d.mts +12 -0
  236. package/dist/types/generators/base/support/needles.d.mts +1 -1
  237. package/dist/types/generators/base-application/generator.d.mts +2 -2
  238. package/dist/types/generators/base-application/support/index.d.mts +1 -0
  239. package/dist/types/generators/base-application/support/update-application-entities-transform.d.mts +4 -0
  240. package/dist/types/generators/base-application/types/relationship.d.mts +4 -0
  241. package/dist/types/generators/base-core/generator.d.mts +7 -1
  242. package/dist/types/generators/bootstrap-application-base/support/export-jdl-transform.d.mts +8 -0
  243. package/dist/types/generators/bootstrap-application-base/support/import-jdl-transform.d.mts +6 -0
  244. package/dist/types/generators/bootstrap-application-base/support/index.d.mts +2 -0
  245. package/dist/types/generators/client/support/entity-definition.d.mts +2 -2
  246. package/dist/types/generators/feign-client/types-export.d.ts +1 -0
  247. package/dist/types/generators/generator-constants.d.mts +52 -48
  248. package/dist/types/generators/generator-list.d.mts +1 -0
  249. package/dist/types/generators/project-name/support/name-resolver.d.mts +9 -1
  250. package/dist/types/generators/server/options/feign-client.d.mts +21 -0
  251. package/dist/types/generators/server/options/index.d.mts +1 -0
  252. package/dist/types/jdl/converters/json-to-jdl-converter.d.ts +1 -0
  253. package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/option-converter.d.ts +1 -1
  254. package/dist/types/jdl/jhipster/json-entity.d.ts +2 -0
  255. package/dist/types/jdl/models/jdl-entity.d.ts +1 -0
  256. package/dist/types/jdl/models/jdl-relationship.d.ts +0 -18
  257. package/dist/types/jdl/types/types.d.mts +2 -2
  258. package/package.json +27 -27
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![NPM version][npm-image]][npm-url] [![Downloads][npmcharts-image]][npmcharts-url] [![Gitter][gitter-badge-image]][gitter-badge-url] [![Known Vulnerabilities][snyk-image]][snyk-url] [![Package Health][health-image]][health-url]
4
4
 
5
- [![Generator Build Status][github-actions-generator-image]][github-actions-url] [![Angular Build Status][github-actions-angular-image]][github-actions-url] [![React Build Status][github-actions-react-image]][github-actions-url] [![Vue Build Status][github-actions-vue-image]][github-actions-url] [![Revved up by Gradle Enterprise](https://img.shields.io/badge/Revved%20up%20by-Gradle%20Enterprise-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.jhipster.tech/scans)
5
+ [![Generator Build Status][github-actions-generator-image]][github-actions-url] [![Angular Build Status][github-actions-angular-image]][github-actions-url] [![React Build Status][github-actions-react-image]][github-actions-url] [![Vue Build Status][github-actions-vue-image]][github-actions-url] [![Revved up by Develocity](https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.jhipster.tech/scans)
6
6
 
7
7
  Greetings, Java Hipster!
8
8
 
@@ -29,20 +29,6 @@ Support this project by becoming a sponsor! [Become a sponsor](https://opencolle
29
29
 
30
30
  **Thank you to our sponsors!**
31
31
 
32
- ### Gold Sponsors
33
-
34
- <table>
35
- <tbody>
36
- <tr>
37
- <td align="center" valign="middle">
38
- <a href="https://dev.entando.org/jhipster" target="_blank">
39
- <img width="200em" src="https://www.jhipster.tech/images/open-collective/entandoe.png">
40
- </a>
41
- </td>
42
- </tr>
43
- </tbody>
44
- </table>
45
-
46
32
  ### Bronze sponsors
47
33
 
48
34
  [![BronzeSponsors][bronze-sponsors-image]][bronze-sponsors-url]
@@ -55,56 +41,74 @@ Support this project by becoming a sponsor! [Become a sponsor](https://opencolle
55
41
 
56
42
  <object data="https://opencollective.com/generator-jhipster/tiers/backer.svg?avatarHeight=40&width=890&button=false" type="image/svg+xml"></object>
57
43
 
58
- ## Azure Builds
44
+ ## Daily Builds
59
45
 
60
46
  Additional builds at [hipster-labs/jhipster-daily-builds](https://github.com/hipster-labs/jhipster-daily-builds)
61
47
 
62
- | Pipeline Status |
63
- | :--------------------------------------------------------------------- |
64
- | [![Angular Maven SQL][github-angular-maven-sql]][github-actions] |
65
- | [![Angular Maven NoSQL][github-angular-maven-nosql]][github-actions] |
66
- | [![Angular Gradle SQL][github-angular-gradle-sql]][github-actions] |
67
- | [![Angular Gradle NoSQL][github-angular-gradle-nosql]][github-actions] |
68
- | [![React Maven SQL][github-react-maven-sql]][github-actions] |
69
- | [![React Maven NoSQL][github-react-maven-nosql]][github-actions] |
70
- | [![React Gradle SQL][github-react-gradle-sql]][github-actions] |
71
- | [![React Gradle NoSQL][github-react-gradle-nosql]][github-actions] |
72
- | [![Vue Maven SQL][github-vue-maven-sql]][github-actions] |
73
- | [![Vue Maven NoSQL][github-vue-maven-nosql]][github-actions] |
74
- | [![Vue Gradle SQL][github-vue-gradle-sql]][github-actions] |
75
- | [![Vue Gradle NoSQL][github-vue-gradle-nosql]][github-actions] |
76
- | [![Elasticsearch][github-elasticsearch]][github-actions] |
77
- | [![Monolith OAuth2][github-monolith-oauth2]][github-actions] |
78
- | [![No Database][github-no-database]][github-actions] |
79
- | [![Microservices JWT][github-ms-jwt]][github-actions] |
80
- | [![Microservices OAuth2][github-ms-oauth2]][github-actions] |
81
- | [![Docker Image][github-docker-image]][github-actions] |
82
- | [![Official Windows][github-official-windows]][github-actions] |
48
+ | Pipeline Status |
49
+ | :----------------------------------------------------------------------------------- |
50
+ | [![Angular Maven SQL][ng-maven-sql.yaml-badge]][ng-maven-sql.yaml-link] |
51
+ | [![Angular Maven NoSQL][ng-maven-nosql.yaml-badge]][ng-maven-nosql.yaml-link] |
52
+ | [![Angular Gradle SQL][ng-gradle-sql.yaml-badge]][ng-gradle-sql.yaml-link] |
53
+ | [![Angular Gradle NoSQL][ng-gradle-nosql.yaml-badge]][ng-gradle-nosql.yaml-link] |
54
+ | [![React Maven SQL][react-maven-sql.yaml-badge]][react-maven-sql.yaml-link] |
55
+ | [![React Maven NoSQL][react-maven-nosql.yaml-badge]][react-maven-nosql.yaml-link] |
56
+ | [![React Gradle SQL][react-gradle-sql.yaml-badge]][react-gradle-sql.yaml-link] |
57
+ | [![React Gradle NoSQL][react-gradle-nosql.yaml-badge]][react-gradle-nosql.yaml-link] |
58
+ | [![Vue Maven SQL][vue-maven-sql.yaml-badge]][vue-maven-sql.yaml-link] |
59
+ | [![Vue Maven NoSQL][vue-maven-nosql.yaml-badge]][vue-maven-nosql.yaml-link] |
60
+ | [![Vue Gradle SQL][vue-gradle-sql.yaml-badge]][vue-gradle-sql.yaml-link] |
61
+ | [![Vue Gradle NoSQL][vue-gradle-nosql.yaml-badge]][vue-gradle-nosql.yaml-link] |
62
+ | [![Elasticsearch][elasticsearch.yaml-badge]][elasticsearch.yaml-link] |
63
+ | [![Monolith OAuth 2.0][monolith-oauth2.yaml-badge]][monolith-oauth2.yaml-link] |
64
+ | [![No Database][no-database.yaml-badge]][no-database.yaml-link] |
65
+ | [![Microservices JWT][ms-jwt.yaml-badge]][ms-jwt.yaml-link] |
66
+ | [![Microservices OAuth 2.0][ms-oauth2.yaml-badge]][ms-oauth2.yaml-link] |
67
+ | [![Docker Image][docker-image.yaml-badge]][docker-image.yaml-link] |
68
+ | [![Official Windows][windows.yaml-badge]][windows.yaml-link] |
83
69
 
84
70
  ## Analysis of the sample JHipster project
85
71
 
86
72
  [![sonar-quality-gate][sonar-quality-gate]][sonar-url] [![sonar-coverage][sonar-coverage]][sonar-url] [![sonar-bugs][sonar-bugs]][sonar-url] [![sonar-vulnerabilities][sonar-vulnerabilities]][sonar-url]
87
73
 
88
- [github-actions]: https://github.com/hipster-labs/jhipster-daily-builds/actions
89
- [github-official-windows]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Official%20Windows/badge.svg
90
- [github-angular-maven-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Angular%20Maven%20SQL/badge.svg
91
- [github-angular-maven-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Angular%20Maven%20NoSQL/badge.svg
92
- [github-angular-gradle-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Angular%20Gradle%20SQL/badge.svg
93
- [github-angular-gradle-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Angular%20Gradle%20NoSQL/badge.svg
94
- [github-react-maven-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/React%20Maven%20SQL/badge.svg
95
- [github-react-maven-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/React%20Maven%20NoSQL/badge.svg
96
- [github-react-gradle-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/React%20Gradle%20SQL/badge.svg
97
- [github-react-gradle-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/React%20Gradle%20NoSQL/badge.svg
98
- [github-vue-maven-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Vue%20Maven%20SQL/badge.svg
99
- [github-vue-maven-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Vue%20Maven%20NoSQL/badge.svg
100
- [github-vue-gradle-sql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Vue%20Gradle%20SQL/badge.svg
101
- [github-vue-gradle-nosql]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Vue%20Gradle%20NoSQL/badge.svg
102
- [github-elasticsearch]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Elasticsearch/badge.svg
103
- [github-monolith-oauth2]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Monolith%20OAuth%202.0/badge.svg
104
- [github-no-database]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/No%20Database/badge.svg
105
- [github-ms-jwt]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Microservices%20JWT/badge.svg
106
- [github-ms-oauth2]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Microservices%20OAuth%202.0/badge.svg
107
- [github-docker-image]: https://github.com/hipster-labs/jhipster-daily-builds/workflows/Docker%20Image/badge.svg
74
+ [ng-maven-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-maven-sql.yaml/badge.svg
75
+ [ng-maven-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-maven-sql.yaml
76
+ [ng-maven-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-maven-nosql.yaml/badge.svg
77
+ [ng-maven-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-maven-nosql.yaml
78
+ [ng-gradle-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-gradle-sql.yaml/badge.svg
79
+ [ng-gradle-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-gradle-sql.yaml
80
+ [ng-gradle-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-gradle-nosql.yaml/badge.svg
81
+ [ng-gradle-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ng-gradle-nosql.yaml
82
+ [react-maven-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-maven-sql.yaml/badge.svg
83
+ [react-maven-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-maven-sql.yaml
84
+ [react-maven-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-maven-nosql.yaml/badge.svg
85
+ [react-maven-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-maven-nosql.yaml
86
+ [react-gradle-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-gradle-sql.yaml/badge.svg
87
+ [react-gradle-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-gradle-sql.yaml
88
+ [react-gradle-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-gradle-nosql.yaml/badge.svg
89
+ [react-gradle-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/react-gradle-nosql.yaml
90
+ [vue-maven-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-maven-sql.yaml/badge.svg
91
+ [vue-maven-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-maven-sql.yaml
92
+ [vue-maven-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-maven-nosql.yaml/badge.svg
93
+ [vue-maven-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-maven-nosql.yaml
94
+ [vue-gradle-sql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-gradle-sql.yaml/badge.svg
95
+ [vue-gradle-sql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-gradle-sql.yaml
96
+ [vue-gradle-nosql.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-gradle-nosql.yaml/badge.svg
97
+ [vue-gradle-nosql.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/vue-gradle-nosql.yaml
98
+ [elasticsearch.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/elasticsearch.yaml/badge.svg
99
+ [elasticsearch.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/elasticsearch.yaml
100
+ [monolith-oauth2.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/monolith-oauth2.yaml/badge.svg
101
+ [monolith-oauth2.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/monolith-oauth2.yaml
102
+ [no-database.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/no-database.yaml/badge.svg
103
+ [no-database.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/no-database.yaml
104
+ [ms-jwt.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ms-jwt.yaml/badge.svg
105
+ [ms-jwt.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ms-jwt.yaml
106
+ [ms-oauth2.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ms-oauth2.yaml/badge.svg
107
+ [ms-oauth2.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/ms-oauth2.yaml
108
+ [docker-image.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/docker-image.yaml/badge.svg
109
+ [docker-image.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/docker-image.yaml
110
+ [windows.yaml-badge]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/windows.yaml/badge.svg
111
+ [windows.yaml-link]: https://github.com/hipster-labs/jhipster-daily-builds/actions/workflows/windows.yaml
108
112
  [sonar-url]: https://sonarcloud.io/dashboard?id=jhipster-sample-application
109
113
  [sonar-quality-gate]: https://sonarcloud.io/api/project_badges/measure?project=jhipster-sample-application&metric=alert_status
110
114
  [sonar-coverage]: https://sonarcloud.io/api/project_badges/measure?project=jhipster-sample-application&metric=coverage
@@ -31,6 +31,7 @@ const __filename = fileURLToPath(import.meta.url);
31
31
  const __dirname = dirname(__filename);
32
32
  const jhipsterDevBlueprintPath = process.env.JHIPSTER_DEV_BLUEPRINT === 'true' ? path.join(__dirname, '../.blueprint') : undefined;
33
33
  const devBlueprintNamespace = '@jhipster/jhipster-dev';
34
+ const localBlueprintNamespace = '@jhipster/jhipster-local';
34
35
  function loadYoRc(filePath = '.yo-rc.json') {
35
36
  if (!existsSync(filePath)) {
36
37
  return undefined;
@@ -43,6 +44,8 @@ const createEnvironment = (options = {}) => {
43
44
  };
44
45
  export default class EnvironmentBuilder {
45
46
  devBlueprintPath;
47
+ localBlueprintPath;
48
+ localBlueprintExists;
46
49
  /**
47
50
  * Creates a new EnvironmentBuilder with a new Environment.
48
51
  *
@@ -91,6 +94,8 @@ export default class EnvironmentBuilder {
91
94
  }
92
95
  async prepare({ blueprints, lookups, devBlueprintPath = jhipsterDevBlueprintPath } = {}) {
93
96
  this.devBlueprintPath = existsSync(devBlueprintPath) ? devBlueprintPath : undefined;
97
+ this.localBlueprintPath = path.join(process.cwd(), '.blueprint');
98
+ this.localBlueprintExists = this.localBlueprintPath !== this.devBlueprintPath && existsSync(this.localBlueprintPath);
94
99
  await this._lookupJHipster();
95
100
  await this._lookupLocalBlueprint();
96
101
  await this._lookupDevBlueprint();
@@ -103,7 +108,7 @@ export default class EnvironmentBuilder {
103
108
  getBlueprintsNamespaces() {
104
109
  return [
105
110
  ...Object.keys(this._blueprintsWithVersion).map(packageName => packageNameToNamespace(packageName)),
106
- '@jhipster/jhipster-local',
111
+ localBlueprintNamespace,
107
112
  ...(this.devBlueprintPath ? [devBlueprintNamespace] : []),
108
113
  ];
109
114
  }
@@ -143,10 +148,9 @@ export default class EnvironmentBuilder {
143
148
  return this;
144
149
  }
145
150
  async _lookupLocalBlueprint() {
146
- const localBlueprintPath = path.join(process.cwd(), '.blueprint');
147
- if (existsSync(localBlueprintPath)) {
151
+ if (this.localBlueprintExists) {
148
152
  // Register jhipster generators.
149
- const generators = await this.env.lookup({ packagePaths: [localBlueprintPath], lookups: ['.'] });
153
+ const generators = await this.env.lookup({ packagePaths: [this.localBlueprintPath], lookups: ['.'] });
150
154
  if (generators.length > 0) {
151
155
  this.env.alias(/^@jhipster\/jhipster-local(:(.*))?$/, '.blueprint$1');
152
156
  this.env.sharedOptions.composeWithLocalBlueprint = true;
@@ -233,6 +237,9 @@ export default class EnvironmentBuilder {
233
237
  if (this.devBlueprintPath) {
234
238
  blueprintsPackagePath = blueprintsPackagePath ?? [];
235
239
  blueprintsPackagePath.push([devBlueprintNamespace, this.devBlueprintPath]);
240
+ if (this.localBlueprintExists) {
241
+ blueprintsPackagePath.push([localBlueprintNamespace, this.localBlueprintPath]);
242
+ }
236
243
  }
237
244
  return this._getBlueprintCommands(blueprintsPackagePath);
238
245
  }
@@ -232,7 +232,7 @@ export const buildCommands = async ({ program, commands = {}, envBuilder, env, l
232
232
  };
233
233
  if (options.installPath) {
234
234
  // eslint-disable-next-line no-console
235
- console.log(`Using jhipster at ${path.dirname(__dirname)}`);
235
+ console.log(path.dirname(__dirname));
236
236
  return Promise.resolve();
237
237
  }
238
238
  printLogo();
@@ -273,4 +273,11 @@ export default function cleanupOldFilesTask({ application }) {
273
273
  this.removeFile(`${application.clientSrcDir}app/admin/tracker/tracker.module.ts`);
274
274
  this.removeFile(`${application.clientSrcDir}app/account/account.module.ts`);
275
275
  }
276
+ if (this.isJhipsterVersionLessThan('8.0.1')) {
277
+ this.removeFile(`${application.clientSrcDir}app/layouts/main/main.module.ts`);
278
+ this.removeFile(`${application.clientSrcDir}app/admin/admin-routing.module.ts`);
279
+ this.removeFile(`${application.clientSrcDir}app/app.module.ts`);
280
+ this.removeFile(`${application.clientSrcDir}app/app-routing.module.ts`);
281
+ this.removeFile(`${application.clientSrcDir}app/entities/entity-routing.module.ts`);
282
+ }
276
283
  }
@@ -54,7 +54,7 @@ export const files = {
54
54
  },
55
55
  {
56
56
  ...clientApplicationTemplatesBlock(),
57
- templates: ['app.module.ts', 'app-routing.module.ts', 'app.constants.ts', 'app-page-title-strategy.ts'],
57
+ templates: ['app.config.ts', 'app.component.ts', 'app.routes.ts', 'app.constants.ts', 'app-page-title-strategy.ts'],
58
58
  },
59
59
  ],
60
60
  microfrontend: [
@@ -74,7 +74,7 @@ export const files = {
74
74
  templates: [
75
75
  // entities
76
76
  'entities/entity-navbar-items.ts',
77
- 'entities/entity-routing.module.ts',
77
+ 'entities/entity.routes.ts',
78
78
  // home module
79
79
  'home/home.component.ts',
80
80
  'home/home.component.html',
@@ -84,7 +84,6 @@ export const files = {
84
84
  'layouts/profiles/profile-info.model.ts',
85
85
  'layouts/main/main.component.ts',
86
86
  'layouts/main/main.component.html',
87
- 'layouts/main/main.module.ts',
88
87
  'layouts/navbar/navbar-item.model.d.ts',
89
88
  'layouts/navbar/navbar.component.ts',
90
89
  'layouts/navbar/navbar.component.html',
@@ -170,7 +169,7 @@ export const files = {
170
169
  condition: generator => !generator.applicationTypeMicroservice,
171
170
  ...clientApplicationTemplatesBlock(),
172
171
  templates: [
173
- 'admin/admin-routing.module.ts',
172
+ 'admin/admin.routes.ts',
174
173
  'admin/docs/docs.component.ts',
175
174
  'admin/docs/docs.component.html',
176
175
  'admin/docs/docs.component.scss',
@@ -63,7 +63,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
63
63
  this.addEntitiesToModule({ application, entities });
64
64
  this.addEntitiesToMenu({ application, entities });
65
65
  };
66
- source.addAdminRoute = (args) => this.editFile(`${application.srcMainWebapp}app/admin/admin-routing.module.ts`, addRoute({
66
+ source.addAdminRoute = (args) => this.editFile(`${application.srcMainWebapp}app/admin/admin.routes.ts`, addRoute({
67
67
  needle: 'add-admin-route',
68
68
  ...args,
69
69
  }));
@@ -177,19 +177,6 @@ export default class AngularGenerator extends BaseApplicationGenerator {
177
177
  addVendorSCSSStyle(style, comment) {
178
178
  this.needleApi.clientAngular.addVendorSCSSStyle(style, comment);
179
179
  }
180
- /**
181
- * @private
182
- * Add a new admin in the TS modules file.
183
- *
184
- * @param {string} appName - Angular2 application name.
185
- * @param {string} adminAngularName - The name of the new admin item.
186
- * @param {string} adminFolderName - The name of the folder.
187
- * @param {string} adminFileName - The name of the file.
188
- * @param {boolean} enableTranslation - If translations are enabled or not.
189
- */
190
- addAdminToModule(appName, adminAngularName, adminFolderName, adminFileName, enableTranslation) {
191
- this.needleApi.clientAngular.addToAdminModule(appName, adminAngularName, adminFolderName, adminFileName, enableTranslation);
192
- }
193
180
  /**
194
181
  * @private
195
182
  * Add a new lazy loaded module to admin routing file.
@@ -245,7 +232,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
245
232
  this.editFile(filePath, { ignoreNonExisting }, editCallback);
246
233
  }
247
234
  addEntitiesToModule({ application, entities }) {
248
- const filePath = `${application.clientSrcDir}app/entities/entity-routing.module.ts`;
235
+ const filePath = `${application.clientSrcDir}app/entities/entity.routes.ts`;
249
236
  const ignoreNonExisting = chalk.yellow(`Route(s) not added to ${filePath}.`);
250
237
  const addRouteCallback = addEntitiesRoute({ application, entities });
251
238
  this.editFile(filePath, { ignoreNonExisting }, addRouteCallback);
@@ -34,17 +34,11 @@ export default class extends needleClientBase {
34
34
  super.addStyle(style, comment, filePath, 'jhipster-needle-scss-add-vendor');
35
35
  }
36
36
  addModule(appName, angularName, folderName, fileName, enableTranslation) {
37
- const modulePath = `${this.clientSrcDir}app/app.module.ts`;
37
+ const modulePath = `${this.clientSrcDir}app/app.config.ts`;
38
38
  const importNeedle = 'jhipster-needle-angular-add-module-import';
39
39
  const moduleNeedle = 'jhipster-needle-angular-add-module';
40
40
  this._genericAddModule(appName, angularName, folderName, fileName, enableTranslation, ANGULAR, modulePath, importNeedle, moduleNeedle);
41
41
  }
42
- addToAdminModule(appName, adminAngularName, adminFolderName, adminFileName, enableTranslation) {
43
- const adminModulePath = `${this.clientSrcDir}app/admin/admin-routing.module.ts`;
44
- const importNeedle = 'jhipster-needle-add-admin-module-import';
45
- const moduleNeedle = 'jhipster-needle-add-admin-module';
46
- this._genericAddModule(appName, adminAngularName, adminFolderName, adminFileName, enableTranslation, ANGULAR, adminModulePath, importNeedle, moduleNeedle);
47
- }
48
42
  _genericAddModule(appName, angularName, folderName, fileName, enableTranslation, clientFramework, modulePath, importNeedle, moduleNeedle) {
49
43
  const errorMessage = `${chalk.yellow('Reference to ') + angularName + folderName + fileName + enableTranslation + clientFramework} ${chalk.yellow(`not added to ${modulePath}.\n`)}`;
50
44
  const importRewriteFileModel = this._generateRewriteFileModelWithImportStatement(appName, angularName, folderName, fileName, modulePath, importNeedle);
@@ -130,7 +124,7 @@ export default class extends needleClientBase {
130
124
  }));
131
125
  }
132
126
  addAdminRoute(route, modulePath, moduleName, pageTitle) {
133
- const adminModulePath = `${this.clientSrcDir}app/admin/admin-routing.module.ts`;
127
+ const adminModulePath = `${this.clientSrcDir}app/admin/admin.routes.ts`;
134
128
  this._addRoute(route, modulePath, moduleName, 'jhipster-needle-add-admin-route', adminModulePath, pageTitle);
135
129
  }
136
130
  }
@@ -1,51 +1,51 @@
1
1
  {
2
2
  "dependencies": {
3
- "@angular/common": "16.2.11",
4
- "@fortawesome/angular-fontawesome": "0.13.0",
5
- "@fortawesome/fontawesome-svg-core": "6.4.2",
6
- "@fortawesome/free-solid-svg-icons": "6.4.2",
7
- "@ng-bootstrap/ng-bootstrap": "15.1.2",
3
+ "@angular/common": "17.0.6",
4
+ "@fortawesome/angular-fontawesome": "0.14.0",
5
+ "@fortawesome/fontawesome-svg-core": "6.5.1",
6
+ "@fortawesome/free-solid-svg-icons": "6.5.1",
7
+ "@ng-bootstrap/ng-bootstrap": "16.0.0",
8
8
  "@ngx-translate/core": "15.0.0",
9
9
  "@ngx-translate/http-loader": "8.0.0",
10
10
  "@popperjs/core": "2.11.8",
11
11
  "bootstrap": "5.3.2",
12
12
  "bootswatch": "5.3.2",
13
- "ngx-cookie-service": "16.0.1",
14
- "ngx-infinite-scroll": "16.0.0",
13
+ "ngx-cookie-service": "17.0.1",
14
+ "ngx-infinite-scroll": "17.0.0",
15
15
  "rxjs": "7.8.1",
16
16
  "tslib": "2.6.2",
17
- "zone.js": "0.13.3"
17
+ "zone.js": "0.14.2"
18
18
  },
19
19
  "devDependencies": {
20
- "@angular-architects/module-federation": "16.0.4",
21
- "@angular-architects/module-federation-runtime": "16.0.4",
22
- "@angular-builders/custom-webpack": "16.0.1",
23
- "@angular-builders/jest": "16.0.1",
24
- "@angular-eslint/eslint-plugin": "16.2.0",
25
- "@angular/cli": "16.2.9",
26
- "@types/jest": "29.5.7",
27
- "@types/node": "18.18.8",
28
- "@typescript-eslint/eslint-plugin": "6.9.1",
20
+ "@angular-architects/module-federation": "17.0.1",
21
+ "@angular-architects/module-federation-runtime": "17.0.1",
22
+ "@angular-builders/custom-webpack": "17.0.0",
23
+ "@angular-builders/jest": "17.0.0",
24
+ "@angular-eslint/eslint-plugin": "17.1.1",
25
+ "@angular/cli": "17.0.6",
26
+ "@types/jest": "29.5.11",
27
+ "@types/node": "18.19.3",
28
+ "@typescript-eslint/eslint-plugin": "6.13.2",
29
29
  "browser-sync": "2.29.3",
30
30
  "browser-sync-webpack-plugin": "2.3.0",
31
31
  "buffer": "6.0.3",
32
32
  "copy-webpack-plugin": "11.0.0",
33
- "eslint": "8.52.0",
34
- "eslint-config-prettier": "9.0.0",
33
+ "eslint": "8.55.0",
34
+ "eslint-config-prettier": "9.1.0",
35
35
  "eslint-webpack-plugin": "4.0.1",
36
36
  "folder-hash": "4.0.4",
37
37
  "jest": "29.7.0",
38
38
  "jest-date-mock": "1.0.8",
39
39
  "jest-junit": "16.0.0",
40
- "jest-preset-angular": "13.1.2",
40
+ "jest-preset-angular": "13.1.4",
41
41
  "jest-sonar": "0.2.16",
42
42
  "merge-jsons-webpack-plugin": "2.0.1",
43
- "postcss-rtlcss": "4.0.8",
43
+ "postcss-rtlcss": "4.0.9",
44
44
  "rimraf": "5.0.5",
45
45
  "ts-jest": "29.1.1",
46
- "typescript": "5.1.6",
46
+ "typescript": "5.2.2",
47
47
  "webpack": "5.89.0",
48
- "webpack-bundle-analyzer": "4.9.1",
48
+ "webpack-bundle-analyzer": "4.10.1",
49
49
  "webpack-merge": "5.10.0",
50
50
  "webpack-notifier": "1.15.0"
51
51
  }
@@ -94,8 +94,8 @@ function replaceErrorMessage(getWebappTranslation, content) {
94
94
  * @this {import('../generator-base.js')}
95
95
  */
96
96
  export const createTranslationReplacer = (getWebappTranslation, enableTranslation) => {
97
- const htmlJhiTranslateReplacer = createJhiTransformTranslateReplacer(getWebappTranslation);
98
- const htmlJhiTranslateStringifyReplacer = createJhiTransformTranslateStringifyReplacer(getWebappTranslation);
97
+ const htmlJhiTranslateReplacer = createJhiTransformTranslateReplacer(getWebappTranslation, { escapeHtml: true });
98
+ const htmlJhiTranslateStringifyReplacer = createJhiTransformTranslateStringifyReplacer(getWebappTranslation, { escapeHtml: true });
99
99
  return function replaceAngularTranslations(content, filePath) {
100
100
  if (/\.html$/.test(filePath)) {
101
101
  if (!enableTranslation) {
@@ -39,7 +39,7 @@ will generate few files:
39
39
  ```
40
40
  create <%= clientSrcDir %>app/my-component/my-component.component.html
41
41
  create <%= clientSrcDir %>app/my-component/my-component.component.ts
42
- update <%= clientSrcDir %>app/app.module.ts
42
+ update <%= clientSrcDir %>app/app.config.ts
43
43
  ```
44
44
 
45
45
  <&_ } -&>
@@ -48,11 +48,7 @@
48
48
  <%_ if (communicationSpringWebsocket) { _%>
49
49
  "./<%= this.relativeDir(clientRootDir, clientSrcDir) %>sockjs-client.polyfill",
50
50
  <%_ } _%>
51
- <%_ if (microfrontend) { _%>
52
- "zone.js/dist/zone"
53
- <%_ } else { _%>
54
51
  "zone.js"
55
- <%_ } _%>
56
52
  ],
57
53
  "tsConfig": "tsconfig.app.json",
58
54
  "inlineStyleLanguage": "scss",
@@ -106,15 +102,15 @@
106
102
  "serve": {
107
103
  "builder": "@angular-builders/custom-webpack:dev-server",
108
104
  "options": {
109
- "browserTarget": "<%= dasherizedBaseName %>:build:development",
105
+ "buildTarget": "<%= dasherizedBaseName %>:build:development",
110
106
  "port": <%= devServerPort %>
111
107
  },
112
108
  "configurations": {
113
109
  "production": {
114
- "browserTarget": "<%= dasherizedBaseName %>:build:production"
110
+ "buildTarget": "<%= dasherizedBaseName %>:build:production"
115
111
  },
116
112
  "development": {
117
- "browserTarget": "<%= dasherizedBaseName %>:build:development"
113
+ "buildTarget": "<%= dasherizedBaseName %>:build:development"
118
114
  }
119
115
  },
120
116
  "defaultConfiguration": "development"
@@ -20,13 +20,15 @@
20
20
  <div class="d-flex justify-content-center">
21
21
  <div class="col-md-8">
22
22
  <h1 <%= jhiPrefix %>Translate="activate.title">__jhiTransformTranslate__('activate.title')</h1>
23
-
24
- <div class="alert alert-success" *ngIf="success">
23
+ @if (success) {
24
+ <div class="alert alert-success">
25
25
  <span <%= jhiPrefix %>Translate="activate.messages.success">__jhiTransformTranslate__('activate.messages.success')</span>
26
26
  <a class="alert-link" routerLink="/login" <%= jhiPrefix %>Translate="global.messages.info.authenticated.link">__jhiTransformTranslate__('global.messages.info.authenticated.link')</a>.
27
27
  </div>
28
-
29
- <div class="alert alert-danger" *ngIf="error" <%= jhiPrefix %>Translate="activate.messages.error">__jhiTransformTranslate__('activate.messages.error')</div>
28
+ }
29
+ @if (error) {
30
+ <div class="alert alert-danger" <%= jhiPrefix %>Translate="activate.messages.error">__jhiTransformTranslate__('activate.messages.error')</div>
31
+ }
30
32
  </div>
31
33
  </div>
32
34
  </div>
@@ -25,7 +25,7 @@ import SharedModule from 'app/shared/shared.module';
25
25
  standalone: true,
26
26
  imports: [SharedModule],
27
27
  templateUrl: './password-strength-bar.component.html',
28
- styleUrls: ['./password-strength-bar.component.scss'],
28
+ styleUrl: './password-strength-bar.component.scss',
29
29
  })
30
30
  export default class PasswordStrengthBarComponent {
31
31
  colors = ['#F00', '#F90', '#FF0', '#9F0', '#0F0'];