generator-jhipster 7.6.0 → 7.7.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 (310) hide show
  1. package/README.md +1 -3
  2. package/cli/commands.js +3 -0
  3. package/cli/environment-builder.js +53 -18
  4. package/cli/import-jdl.js +3 -0
  5. package/cli/index.mjs +20 -0
  6. package/cli/jhipster.js +19 -11
  7. package/cli/program.js +94 -38
  8. package/generators/app/esm.mjs +1 -3
  9. package/generators/app/index.js +1 -16
  10. package/generators/aws/esm.mjs +1 -3
  11. package/generators/azure-app-service/esm.mjs +1 -3
  12. package/generators/azure-spring-cloud/esm.mjs +1 -3
  13. package/generators/base/esm.mjs +1 -3
  14. package/generators/bootstrap/esm.mjs +1 -3
  15. package/generators/bootstrap/index.js +36 -86
  16. package/generators/bootstrap-application/esm.mjs +19 -0
  17. package/generators/bootstrap-application/generator.mjs +353 -0
  18. package/generators/bootstrap-application/index.mjs +19 -0
  19. package/generators/ci-cd/esm.mjs +1 -3
  20. package/generators/ci-cd/prompts.js +1 -1
  21. package/generators/ci-cd/templates/github-actions.yml.ejs +2 -2
  22. package/generators/client/esm.mjs +5 -3
  23. package/generators/client/files-angular.js +9 -0
  24. package/generators/client/files-common.js +8 -7
  25. package/generators/client/files-vue.js +7 -6
  26. package/generators/client/index.js +2 -1
  27. package/generators/client/templates/angular/angular.json.ejs +1 -1
  28. package/generators/client/templates/angular/package.json +25 -22
  29. package/generators/client/templates/angular/package.json.ejs +5 -1
  30. package/generators/client/templates/angular/src/main/webapp/app/account/activate/activate.component.html.ejs +1 -1
  31. package/generators/client/templates/angular/src/main/webapp/app/account/password/password.component.html.ejs +7 -7
  32. package/generators/client/templates/angular/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +5 -5
  33. package/generators/client/templates/angular/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +3 -3
  34. package/generators/client/templates/angular/src/main/webapp/app/account/register/register.component.html.ejs +10 -10
  35. package/generators/client/templates/angular/src/main/webapp/app/account/settings/settings.component.html.ejs +8 -8
  36. package/generators/client/templates/angular/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +2 -2
  37. package/generators/client/templates/angular/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +5 -5
  38. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.component.html.ejs +1 -1
  39. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.component.spec.ts.ejs +2 -2
  40. package/generators/client/templates/angular/src/main/webapp/app/admin/health/health.component.ts.ejs +2 -2
  41. package/generators/client/templates/angular/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +6 -6
  42. package/generators/client/templates/angular/src/main/webapp/app/admin/logs/logs.component.html.ejs +51 -49
  43. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +16 -16
  44. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +32 -32
  45. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.html.ejs +4 -4
  46. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +18 -18
  47. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +12 -12
  48. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.ts.ejs +4 -4
  49. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +4 -4
  50. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.html.ejs +8 -8
  51. package/generators/client/templates/angular/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +1 -1
  52. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +1 -1
  53. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +4 -4
  54. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +5 -5
  55. package/generators/client/templates/angular/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +11 -11
  56. package/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +4 -2
  57. package/generators/client/templates/angular/src/main/webapp/app/layouts/navbar/navbar.component.scss.ejs +0 -6
  58. package/generators/client/templates/angular/src/main/webapp/app/layouts/profiles/page-ribbon.component.scss.ejs +0 -6
  59. package/generators/client/templates/angular/src/main/webapp/app/login/login.component.html.ejs +3 -3
  60. package/generators/client/templates/angular/src/main/webapp/content/scss/_bootstrap-variables.scss.ejs +5 -5
  61. package/generators/client/templates/angular/src/main/webapp/content/scss/global.scss.ejs +29 -0
  62. package/generators/client/templates/angular/src/main/webapp/content/scss/vendor.scss.ejs +0 -4
  63. package/generators/client/templates/angular/webpack/webpack.custom.js.ejs +19 -0
  64. package/generators/client/templates/common/package.json +2 -2
  65. package/generators/client/templates/common/src/main/webapp/swagger-ui/index.html.ejs +1 -7
  66. package/generators/client/templates/react/package.json +33 -33
  67. package/generators/client/templates/vue/package.json +23 -23
  68. package/generators/client/templates/vue/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +3 -3
  69. package/generators/client/templates/vue/src/main/webapp/app/entities/user/user.service.ts.ejs +0 -0
  70. package/generators/client/templates/vue/src/main/webapp/app/main.ts.ejs +29 -1
  71. package/generators/client/templates/vue/src/main/webapp/app/shared/config/axios-interceptor.ts.ejs +2 -2
  72. package/generators/client/templates/vue/src/main/webapp/app/shared/config/config.ts.ejs +0 -4
  73. package/generators/cloudfoundry/esm.mjs +1 -3
  74. package/generators/common/esm.mjs +2 -3
  75. package/generators/common/files.js +1 -2
  76. package/generators/common/index.js +6 -0
  77. package/generators/common/templates/.husky/{pre-commit → pre-commit.ejs} +4 -0
  78. package/generators/common/templates/README.md.jhi.ejs +3 -1
  79. package/generators/common/templates/package.json +3 -3
  80. package/generators/common/templates/sonar-project.properties.ejs +1 -1
  81. package/generators/cypress/esm.mjs +2 -3
  82. package/generators/cypress/files.js +2 -1
  83. package/generators/cypress/templates/src/test/javascript/cypress/integration/account/settings-page.spec.ts.ejs +18 -14
  84. package/generators/database-changelog/esm.mjs +1 -3
  85. package/generators/database-changelog/index.js +1 -1
  86. package/generators/database-changelog-liquibase/esm.mjs +2 -3
  87. package/generators/docker-compose/esm.mjs +1 -3
  88. package/generators/entities/esm.mjs +1 -3
  89. package/generators/entities/index.js +2 -2
  90. package/generators/entities-client/esm.mjs +1 -3
  91. package/generators/entity/esm.mjs +1 -3
  92. package/generators/entity/index.js +11 -15
  93. package/generators/entity/prompts.js +4 -1
  94. package/generators/entity-client/esm.mjs +2 -3
  95. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/delete/entity-management-delete-dialog.component.html.ejs +1 -1
  96. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/detail/entity-management-detail.component.html.ejs +2 -2
  97. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/list/entity-management.component.html.ejs +20 -21
  98. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.html.ejs +14 -16
  99. package/generators/entity-client/templates/angular/src/main/webapp/app/entities/update/entity-management-update.component.ts.ejs +2 -2
  100. package/generators/entity-client/templates/common/src/test/javascript/cypress/integration/entity/entity.spec.ts.ejs +1 -1
  101. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-reducer.spec.ts.ejs +1 -1
  102. package/generators/entity-client/templates/react/src/main/webapp/app/entities/entity-update.tsx.ejs +1 -1
  103. package/generators/entity-client/templates/react/src/test/javascript/e2e/entities/entity-update-page-object.ts.ejs +1 -1
  104. package/generators/entity-client/templates/vue/src/test/javascript/e2e/entities/entity-update-page-object.ts.ejs +1 -1
  105. package/generators/entity-client/templates/vue/src/test/javascript/e2e/entities/entity.spec.ts.ejs +1 -1
  106. package/generators/entity-i18n/esm.mjs +2 -3
  107. package/generators/entity-server/esm.mjs +2 -3
  108. package/generators/entity-server/files-couchbase.js +23 -2
  109. package/generators/entity-server/files.js +16 -2
  110. package/generators/entity-server/index.js +8 -1
  111. package/generators/entity-server/templates/couchbase/src/main/java/package/domain/Entity.java.jhi.spring_data_couchbase.ejs +11 -13
  112. package/generators/entity-server/templates/couchbase/src/main/java/package/repository/EntityRepository.java.ejs +23 -59
  113. package/generators/entity-server/templates/couchbase/src/main/resources/config/couchmove/changelog/entity.fts.ejs +5 -6
  114. package/generators/entity-server/templates/couchbase/src/main/resources/config/couchmove/changelog/entity.n1ql.ejs +5 -0
  115. package/generators/entity-server/templates/partials/it_patch_update.partial.java.ejs +2 -2
  116. package/generators/entity-server/templates/partials/save_template.ejs +1 -1
  117. package/generators/entity-server/templates/src/main/java/package/common/get_all_template.ejs +1 -1
  118. package/generators/entity-server/templates/src/main/java/package/common/inject_template.ejs +4 -4
  119. package/generators/entity-server/templates/src/main/java/package/common/patch_template.ejs +3 -3
  120. package/generators/entity-server/templates/src/main/java/package/common/search_stream_template.ejs +1 -1
  121. package/generators/entity-server/templates/src/main/java/package/common/search_template.ejs +1 -1
  122. package/generators/entity-server/templates/src/main/java/package/domain/Entity.java.jhi.ejs +2 -2
  123. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository.java.ejs +31 -18
  124. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryInternalImpl_reactive.java.ejs +3 -3
  125. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationships.java.ejs +37 -0
  126. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepositoryWithBagRelationshipsImpl.java.ejs +90 -0
  127. package/generators/entity-server/templates/src/main/java/package/repository/EntityRepository_reactive.java.ejs +2 -2
  128. package/generators/entity-server/templates/src/main/java/package/repository/rowmapper/EntityRowMapper.java.ejs +1 -1
  129. package/generators/entity-server/templates/src/main/java/package/repository/search/EntitySearchRepository.java.ejs +3 -5
  130. package/generators/entity-server/templates/src/main/java/package/repository/search/{SortToFieldSortBuilderConverter.java.ejs → SortToSortBuilderListConverter.java.ejs} +4 -3
  131. package/generators/entity-server/templates/src/main/java/package/service/criteria/EntityCriteria.java.ejs +8 -6
  132. package/generators/entity-server/templates/src/main/java/package/service/impl/EntityServiceImpl.java.ejs +1 -1
  133. package/generators/entity-server/templates/src/main/java/package/service/mapper/EntityMapper.java.ejs +6 -6
  134. package/generators/entity-server/templates/src/main/java/package/web/rest/EntityResource.java.ejs +1 -1
  135. package/generators/entity-server/templates/src/test/java/package/web/rest/EntityResourceIT.java.ejs +5 -5
  136. package/generators/export-jdl/esm.mjs +1 -3
  137. package/generators/gae/esm.mjs +1 -3
  138. package/generators/generate-blueprint/constants.mjs +146 -0
  139. package/generators/generate-blueprint/esm.mjs +19 -0
  140. package/generators/generate-blueprint/files.mjs +81 -0
  141. package/generators/generate-blueprint/generator.mjs +363 -0
  142. package/generators/generate-blueprint/index.mjs +20 -0
  143. package/generators/generate-blueprint/templates/.eslintrc.json.ejs +41 -0
  144. package/generators/generate-blueprint/templates/.github/workflows/generator.yml.ejs +32 -0
  145. package/generators/generate-blueprint/templates/.mocharc.cjs.ejs +29 -0
  146. package/generators/{server/templates/couchbase/src/main/java/package/config/couchbase/package-info.java.ejs → generate-blueprint/templates/.prettierignore.jhi.blueprint.ejs} +4 -7
  147. package/generators/generate-blueprint/templates/README.md.ejs +75 -0
  148. package/generators/generate-blueprint/templates/cli/cli.mjs.ejs +35 -0
  149. package/generators/generate-blueprint/templates/cli/commands.cjs.ejs +25 -0
  150. package/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +98 -0
  151. package/generators/generate-blueprint/templates/generators/generator/generator.spec.mjs.ejs +42 -0
  152. package/generators/generate-blueprint/templates/generators/generator/index.mjs.ejs +19 -0
  153. package/generators/generate-blueprint/templates/generators/generator/templates/template-file.ejs +0 -0
  154. package/generators/generate-blueprint/templates/test/utils.mjs.ejs +17 -0
  155. package/generators/generator-base-blueprint.js +29 -0
  156. package/generators/generator-base-docker.js +1 -0
  157. package/generators/generator-base-entities.cjs +368 -0
  158. package/generators/generator-base.js +128 -23
  159. package/generators/generator-constants.js +18 -16
  160. package/generators/generator-list.js +2 -0
  161. package/generators/gradle/esm.mjs +19 -0
  162. package/generators/heroku/esm.mjs +1 -3
  163. package/generators/info/esm.mjs +1 -3
  164. package/generators/init/esm.mjs +19 -0
  165. package/generators/init/files.cjs +9 -3
  166. package/generators/init/index.cjs +5 -0
  167. package/generators/init/templates/.gitignore.jhi.ejs +5 -0
  168. package/generators/init/templates/{.lintstagedrc.js.ejs → .lintstagedrc.cjs.ejs} +0 -0
  169. package/generators/java/esm.mjs +19 -0
  170. package/generators/java/index.cjs +58 -2
  171. package/generators/kubernetes/esm.mjs +1 -3
  172. package/generators/kubernetes-helm/esm.mjs +1 -3
  173. package/generators/kubernetes-knative/esm.mjs +1 -3
  174. package/generators/languages/esm.mjs +2 -3
  175. package/generators/languages/templates/src/test/resources/i18n/messages_fr.properties.ejs +4 -1
  176. package/generators/maven/esm.mjs +19 -0
  177. package/generators/openapi-client/esm.mjs +1 -3
  178. package/generators/openapi-client/index.js +11 -4
  179. package/generators/openshift/esm.mjs +1 -3
  180. package/generators/page/esm.mjs +1 -3
  181. package/generators/project-name/esm.mjs +19 -0
  182. package/generators/server/esm.mjs +2 -2
  183. package/generators/server/files-couchbase.js +28 -31
  184. package/generators/server/files.js +14 -1
  185. package/generators/server/index.js +13 -13
  186. package/generators/server/needle-api/needle-server-maven.js +1 -1
  187. package/generators/server/templates/couchbase/src/main/java/package/repository/CouchbaseSearchRepository.java.ejs +91 -0
  188. package/generators/server/templates/couchbase/src/main/java/package/repository/JHipsterCouchbaseRepository.java.ejs +43 -64
  189. package/generators/server/templates/couchbase/src/main/java/package/repository/PersistentTokenRepository_couchbase.java.ejs +2 -2
  190. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/authority/ROLE_ADMIN.json.ejs +3 -0
  191. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/authority/ROLE_USER.json.ejs +3 -0
  192. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/{user__admin.json.ejs → user/admin.json.ejs} +2 -2
  193. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/{user__user.json.ejs → user/user.json.ejs} +2 -2
  194. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.2__create_indexes.n1ql.ejs +34 -0
  195. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0__create_collections.n1ql.ejs +8 -0
  196. package/generators/server/templates/couchbase/src/test/java/package/CouchbaseTestContainerExtension.java.ejs +4 -3
  197. package/generators/server/templates/couchbase/src/test/java/package/repository/{JHipsterCouchbaseRepositoryTest.java.ejs → CouchbaseSearchRepositoryTest.java.ejs} +2 -2
  198. package/generators/server/templates/gradle/profile_prod.gradle.ejs +4 -0
  199. package/generators/server/templates/gradle.properties.ejs +6 -6
  200. package/generators/server/templates/npmw +14 -5
  201. package/generators/server/templates/pom.xml.ejs +47 -42
  202. package/generators/server/templates/src/main/docker/app.yml.ejs +4 -2
  203. package/generators/server/templates/src/main/docker/zipkin.yml.ejs +25 -0
  204. package/generators/server/templates/src/main/java/package/config/DatabaseConfiguration_couchbase.java.ejs +26 -16
  205. package/generators/server/templates/src/main/java/package/config/LocaleConfiguration_reactive.java.ejs +1 -1
  206. package/generators/server/templates/src/main/java/package/config/SecurityConfiguration_reactive.java.ejs +2 -1
  207. package/generators/server/templates/src/main/java/package/domain/Authority.java.ejs +11 -0
  208. package/generators/server/templates/src/main/java/package/domain/PersistentToken.java.ejs +6 -6
  209. package/generators/server/templates/src/main/java/package/domain/User.java.ejs +9 -7
  210. package/generators/server/templates/src/main/java/package/repository/AuthorityRepository.java.ejs +1 -11
  211. package/generators/server/templates/src/main/java/package/repository/UserRepository.java.ejs +48 -72
  212. package/generators/server/templates/src/main/java/package/security/oauth2/CustomClaimConverter.java.ejs +1 -1
  213. package/generators/server/templates/src/main/java/package/service/UserService.java.ejs +8 -6
  214. package/generators/server/templates/src/main/java/package/web/filter/OAuth2ReactiveRefreshTokensWebFilter.java.ejs +0 -1
  215. package/generators/server/templates/src/main/java/package/web/rest/AccountResource.java.ejs +1 -1
  216. package/generators/server/templates/src/main/java/package/web/rest/LogoutResource_reactive.java.ejs +1 -1
  217. package/generators/server/templates/src/main/java/package/web/rest/PublicUserResource.java.ejs +2 -2
  218. package/generators/server/templates/src/main/resources/config/application-dev.yml.ejs +8 -0
  219. package/generators/server/templates/src/main/resources/config/application-prod.yml.ejs +6 -0
  220. package/generators/server/templates/src/main/resources/config/application.yml.ejs +2 -0
  221. package/generators/server/templates/src/test/java/package/IntegrationTest.java.ejs +3 -1
  222. package/generators/server/templates/src/test/java/package/TechnicalStructureTest.java.ejs +21 -15
  223. package/generators/server/templates/src/test/java/package/config/JHipsterBlockHoundIntegration.java.ejs +2 -0
  224. package/generators/server/templates/src/test/java/package/cucumber/stepdefs/StepDefs.java.ejs +8 -0
  225. package/generators/server/templates/src/test/java/package/cucumber/stepdefs/UserStepDefs.java.ejs +17 -3
  226. package/generators/server/templates/src/test/java/package/security/SecurityUtilsUnitTest_reactive.java.ejs +1 -1
  227. package/generators/server/templates/src/test/java/package/security/oauth2/CustomClaimConverterIT.java.ejs +1 -1
  228. package/generators/server/templates/src/test/java/package/service/mapper/UserMapperTest.java.ejs +1 -1
  229. package/generators/server/templates/src/test/java/package/web/rest/AccountResourceIT.java.ejs +13 -6
  230. package/generators/server/templates/src/test/java/package/web/rest/TestUtil.java.ejs +1 -6
  231. package/generators/server/templates/src/test/java/package/web/rest/UserResourceIT.java.ejs +40 -42
  232. package/generators/server/templates/src/test/java/package/web/rest/errors/ExceptionTranslatorIT_reactive.java.ejs +1 -1
  233. package/generators/spring-boot/esm.mjs +19 -0
  234. package/generators/spring-controller/esm.mjs +1 -3
  235. package/generators/spring-service/esm.mjs +1 -3
  236. package/generators/upgrade/esm.mjs +1 -3
  237. package/generators/upgrade-config/esm.mjs +1 -3
  238. package/generators/workspaces/esm.mjs +1 -3
  239. package/lib/constants/logo.cjs +30 -0
  240. package/lib/constants/priorities.cjs +216 -2
  241. package/lib/constants/priorities.mjs +29 -1
  242. package/lib/index.mjs +6 -0
  243. package/lib/support/mixin.cjs +5 -1
  244. package/lib/support/shared-data.cjs +34 -1
  245. package/package.json +27 -23
  246. package/utils/entity.js +19 -2
  247. package/utils/faker.js +3 -3
  248. package/utils/field.js +61 -49
  249. package/utils/relationship.js +5 -3
  250. package/utils/user.js +109 -0
  251. package/generators/app/generator.spec.mjs +0 -47
  252. package/generators/aws/generator.spec.mjs +0 -47
  253. package/generators/azure-app-service/generator.spec.mjs +0 -47
  254. package/generators/azure-spring-cloud/generator.spec.mjs +0 -47
  255. package/generators/base/generator.spec.mjs +0 -44
  256. package/generators/bootstrap/generator.spec.mjs +0 -44
  257. package/generators/ci-cd/generator.spec.mjs +0 -47
  258. package/generators/client/__workflow/devserver-angular.json +0 -13
  259. package/generators/client/__workflow/devserver-react.json +0 -13
  260. package/generators/client/__workflow/devserver-vue.json +0 -13
  261. package/generators/client/generator.spec.mjs +0 -47
  262. package/generators/cloudfoundry/generator.spec.mjs +0 -47
  263. package/generators/common/generator.spec.mjs +0 -47
  264. package/generators/cypress/generator.spec.mjs +0 -47
  265. package/generators/database-changelog/generator.spec.mjs +0 -47
  266. package/generators/database-changelog-liquibase/generator.spec.mjs +0 -47
  267. package/generators/docker-compose/generator.spec.mjs +0 -44
  268. package/generators/entities/generator.spec.mjs +0 -47
  269. package/generators/entities-client/generator.spec.mjs +0 -47
  270. package/generators/entity/generator.spec.mjs +0 -47
  271. package/generators/entity-client/generator.spec.mjs +0 -47
  272. package/generators/entity-i18n/generator.spec.mjs +0 -47
  273. package/generators/entity-server/generator.spec.mjs +0 -47
  274. package/generators/export-jdl/generator.spec.mjs +0 -44
  275. package/generators/gae/generator.spec.mjs +0 -47
  276. package/generators/gradle/__snapshots__/generator.spec.cjs.snap +0 -59
  277. package/generators/gradle/generator.spec.cjs +0 -71
  278. package/generators/heroku/generator.spec.mjs +0 -47
  279. package/generators/info/generator.spec.mjs +0 -44
  280. package/generators/init/__snapshots__/generator.spec.cjs.snap +0 -65
  281. package/generators/init/generator.spec.cjs +0 -112
  282. package/generators/java/__snapshots__/generator.spec.cjs.snap +0 -118
  283. package/generators/java/generator.spec.cjs +0 -87
  284. package/generators/kubernetes/generator.spec.mjs +0 -44
  285. package/generators/kubernetes-helm/generator.spec.mjs +0 -44
  286. package/generators/kubernetes-knative/generator.spec.mjs +0 -44
  287. package/generators/languages/generator.spec.mjs +0 -47
  288. package/generators/maven/__snapshots__/generator.spec.cjs.snap +0 -53
  289. package/generators/maven/generator.spec.cjs +0 -78
  290. package/generators/openapi-client/generator.spec.mjs +0 -47
  291. package/generators/openshift/generator.spec.mjs +0 -44
  292. package/generators/page/generator.spec.mjs +0 -47
  293. package/generators/project-name/generator.spec.cjs +0 -43
  294. package/generators/server/__snapshots__/generator.spec.mjs.snap +0 -1931
  295. package/generators/server/generator.spec.mjs +0 -52
  296. package/generators/server/templates/couchbase/src/main/java/package/config/couchbase/CustomCouchbaseRepositoryFactory.java.ejs +0 -83
  297. package/generators/server/templates/couchbase/src/main/java/package/config/couchbase/CustomCouchbaseRepositoryFactoryBean.java.ejs +0 -40
  298. package/generators/server/templates/couchbase/src/main/java/package/config/couchbase/CustomCouchbaseRepositoryQuery.java.ejs +0 -44
  299. package/generators/server/templates/couchbase/src/main/java/package/config/couchbase/CustomN1qlQueryCreator.java.ejs +0 -162
  300. package/generators/server/templates/couchbase/src/main/java/package/config/couchbase/CustomN1qlRepositoryQueryExecutor.java.ejs +0 -104
  301. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/ROLE_ADMIN.json.ejs +0 -3
  302. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0.1__initial_setup/ROLE_USER.json.ejs +0 -3
  303. package/generators/server/templates/couchbase/src/main/resources/config/couchmove/changelog/V0__create_indexes.n1ql.ejs +0 -19
  304. package/generators/spring-boot/__snapshots__/generator.spec.cjs.snap +0 -80
  305. package/generators/spring-boot/generator.spec.cjs +0 -64
  306. package/generators/spring-controller/generator.spec.mjs +0 -47
  307. package/generators/spring-service/generator.spec.mjs +0 -47
  308. package/generators/upgrade/generator.spec.mjs +0 -44
  309. package/generators/upgrade-config/generator.spec.mjs +0 -44
  310. package/generators/workspaces/generator.spec.mjs +0 -47
@@ -0,0 +1,98 @@
1
+ <%#
2
+ Copyright 2013-2022 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 chalk from 'chalk';
20
+ <&_
21
+ // Register sections and max allowed fragments, 0 for unlimited.
22
+ fragments.registerSections({
23
+ <%_ for (const priority of priorities) { _%>
24
+ <%- priority.name %>Section: 1,
25
+ <%_ } _%>
26
+ });
27
+ -&>
28
+ <%_ if (!application.dynamic) { _%>
29
+ import <%= generatorClass %>Generator from 'generator-jhipster/esm/generators/<%= jhipsterGenerator %>';
30
+ import {
31
+ PRIORITY_PREFIX,
32
+ <%_ for (const priority of priorities) { _%>
33
+ <%= priority.constant %>,
34
+ <%_ } _%>
35
+ } from 'generator-jhipster/esm/priorities';
36
+ <%_ } _%>
37
+
38
+
39
+ <%_ if (application.dynamic) { _%>
40
+ // eslint-disable-next-line import/prefer-default-export
41
+ export async function createGenerator(env) {
42
+ const jhipsterGenerator = 'jhipster:<%= generator %>';
43
+ const jhipsterPath = env.getPackagePath(jhipsterGenerator);
44
+ const constants = (await import(`${jhipsterPath}/generators/generator-constants.js`)).default;
45
+ const {
46
+ PRIORITY_PREFIX,
47
+ <%_ for (const priority of priorities) { _%>
48
+ <%= priority.constant %>,
49
+ <%_ } _%>
50
+ } = await import(`${jhipsterPath}/lib/constants/priorities.mjs`);
51
+ const ParentClass = await env.requireGenerator(jhipsterGenerator);
52
+ return class <%= generatorClass %>Generator extends ParentClass {
53
+ <%_ } else { _%>
54
+ export default class extends <%= generatorClass %>Generator {
55
+ <%_ } _%>
56
+ constructor(args, opts, features) {
57
+ super(args, opts, { taskPrefix: PRIORITY_PREFIX, ...features });
58
+
59
+ if (this.options.help) return;
60
+
61
+ if (!this.options.jhipsterContext) {
62
+ throw new Error(`This is a JHipster blueprint and should be used only like ${chalk.yellow('jhipster --blueprints <%= application.baseName %>')}`);
63
+ }
64
+ <%_ if (sbs) { _%>
65
+
66
+ this.sbsBlueprint = true
67
+ <%_ } _%>
68
+ }
69
+
70
+ <% for (const priority of priorities) { %>
71
+ <&- fragments.<%- priority.name %>Section() -&>
72
+ <& if (!fragments.<%- priority.name %>Section()) { -&>
73
+
74
+ get [<%= priority.constant %>]() {
75
+ return {
76
+ async <%= priority.name %>TemplateTask() {
77
+ <%_ if (priority.name == 'writing') { %>
78
+ await this.writeFiles({
79
+ sections: {
80
+ files: [
81
+ { templates: ['template-file-<%= jhipsterGenerator %>'] },
82
+ ],
83
+ },
84
+ context: this,
85
+ });
86
+ <%_ } %>
87
+ },
88
+ <%_ if (!sbs) { _%>
89
+ ...super._<%= priority.name %>(),
90
+ <%_ } _%>
91
+ };
92
+ }
93
+ <& } -&>
94
+ <% } %>
95
+ };
96
+ <%_ if (application.dynamic) { _%>
97
+ }
98
+ <%_ } _%>
@@ -0,0 +1,42 @@
1
+ <%#
2
+ Copyright 2013-2022 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 expect from 'expect';
20
+
21
+ import { helpers, lookups } from '#test-utils';
22
+
23
+ describe('SubGenerator <%= subGenerator %> of <%= application.baseName %> JHipster blueprint', () => {
24
+ describe('run', () => {
25
+ let result;
26
+ before(async function() {
27
+ result = await helpers
28
+ .create('jhipster:<%= subGenerator %>')
29
+ .withOptions({
30
+ reproducible: true,
31
+ defaults: true,
32
+ blueprint: '<%= application.baseName %>',
33
+ })
34
+ .withLookups(lookups)
35
+ .run();
36
+ });
37
+
38
+ it('should succeed', () => {
39
+ expect(result.getStateSnapshot()).toMatchSnapshot();
40
+ });
41
+ });
42
+ });
@@ -0,0 +1,19 @@
1
+ <%#
2
+ Copyright 2013-2022 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
+ export { default } from './generator.mjs';
@@ -0,0 +1,17 @@
1
+ import yeomanTest from 'yeoman-test';
2
+ import { join, dirname } from 'path';
3
+ import { fileURLToPath } from 'url';
4
+ // eslint-disable-next-line import/no-unresolved
5
+ import { EnvironmentBuilder } from 'generator-jhipster/esm/cli';
6
+
7
+ const { createHelpers } = yeomanTest;
8
+ const packageRoot = join(dirname(fileURLToPath(import.meta.url)), '..');
9
+ const jhipsterPath = join(packageRoot, 'node_modules', 'generator-jhipster');
10
+
11
+ export function createTestHelpers(options = {}) {
12
+ return createHelpers({ ...options, createEnv: EnvironmentBuilder.createEnv });
13
+ }
14
+
15
+ export const helpers = createTestHelpers();
16
+
17
+ export const lookups = { packagePaths: [packageRoot, jhipsterPath], lookups: ['generators'] };
@@ -130,6 +130,35 @@ module.exports = class JHipsterBaseBlueprintGenerator extends BaseGenerator {
130
130
  return {};
131
131
  }
132
132
 
133
+ /**
134
+ * Configuring entities task argument
135
+ *
136
+ * @typedef {object} ConfiguringEntityArgument
137
+ * @property {string} entityName - Entity name.
138
+ * @property {import('yeoman-generator/lib/util/storage')} entityStorage - Storage for entity.
139
+ * @property {object} entityConfig - Proxy object for entityStorage.
140
+ */
141
+
142
+ /**
143
+ * Configuring entities task definition
144
+ *
145
+ * @async
146
+ * @function ConfiguringEntityTask
147
+ * @param {ConfiguringEntityArgument} taskData
148
+ * @return {Promise<any>}.
149
+ */
150
+
151
+ /**
152
+ * Priority API stub for blueprints.
153
+ *
154
+ * Configuring each entity priority is used to customize and validate the entity configuration.
155
+ *
156
+ * @returns {Object.<string, ConfiguringEntityTask>} taskGroup
157
+ */
158
+ get configuringEachEntity() {
159
+ return {};
160
+ }
161
+
133
162
  /**
134
163
  * Priority API stub for blueprints.
135
164
  *
@@ -85,6 +85,7 @@ module.exports = class extends BlueprintBaseGenerator {
85
85
  this.DOCKER_ELASTICSEARCH = constants.DOCKER_ELASTICSEARCH;
86
86
  this.DOCKER_PROMETHEUS_OPERATOR = constants.DOCKER_PROMETHEUS_OPERATOR;
87
87
  this.DOCKER_GRAFANA_WATCHER = constants.DOCKER_GRAFANA_WATCHER;
88
+ this.DOCKER_ZIPKIN = constants.DOCKER_ZIPKIN;
88
89
 
89
90
  this.DOCKER_CASSANDRA = constants.DOCKER_CASSANDRA;
90
91
  this.DOCKER_GRAFANA = constants.DOCKER_GRAFANA;
@@ -0,0 +1,368 @@
1
+ /**
2
+ * Copyright 2013-2021 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
+ const BaseBlueprintGenerator = require('./generator-base-blueprint');
20
+ const { CUSTOM_PRIORITIES_ENTITIES, PRIORITY_NAMES, QUEUES } = require('../lib/constants/priorities.cjs');
21
+
22
+ const {
23
+ CONFIGURING_EACH_ENTITY,
24
+ LOADING_EACH_ENTITY,
25
+ PREPARING_EACH_ENTITY,
26
+ PREPARING_EACH_ENTITY_FIELD,
27
+ PREPARING_EACH_ENTITY_RELATIONSHIP,
28
+ POST_PREPARING_EACH_ENTITY,
29
+ WRITING_ENTITIES,
30
+ POST_WRITING_ENTITIES,
31
+ } = PRIORITY_NAMES;
32
+
33
+ const {
34
+ CONFIGURING_EACH_ENTITY_QUEUE,
35
+ LOADING_EACH_ENTITY_QUEUE,
36
+ PREPARING_EACH_ENTITY_QUEUE,
37
+ PREPARING_EACH_ENTITY_FIELD_QUEUE,
38
+ PREPARING_EACH_ENTITY_RELATIONSHIP_QUEUE,
39
+ POST_PREPARING_EACH_ENTITY_QUEUE,
40
+ WRITING_ENTITIES_QUEUE,
41
+ POST_WRITING_ENTITIES_QUEUE,
42
+ } = QUEUES;
43
+
44
+ /**
45
+ * This is the base class for a generator that generates entities.
46
+ */
47
+ class JHipsterBaseEntitiesGenerator extends BaseBlueprintGenerator {
48
+ constructor(args, options, features) {
49
+ super(args, options, { priorityArgs: true, ...features });
50
+
51
+ if (this.options.help) {
52
+ return;
53
+ }
54
+
55
+ this.registerPriorities(CUSTOM_PRIORITIES_ENTITIES);
56
+
57
+ /* Add tasks allowing entities priorities to match normal priorities pattern */
58
+ this.on('queueOwnTasks', () => {
59
+ this.debug('Queueing entity tasks');
60
+ this.queueEntityTasks();
61
+ });
62
+ }
63
+
64
+ get configuringEachEntity() {
65
+ return this._configuringEachEntity();
66
+ }
67
+
68
+ _configuringEachEntity() {
69
+ return {};
70
+ }
71
+
72
+ get preparingEachEntity() {
73
+ return this._preparingEachEntity();
74
+ }
75
+
76
+ _preparingEachEntity() {
77
+ return {};
78
+ }
79
+
80
+ get preparingEachEntityField() {
81
+ return this._preparingEachEntityField();
82
+ }
83
+
84
+ _preparingEachEntityField() {
85
+ return {};
86
+ }
87
+
88
+ get preparingEachEntityRelationship() {
89
+ return this._preparingEachEntityRelationship();
90
+ }
91
+
92
+ _preparingEachEntityRelationship() {
93
+ return {};
94
+ }
95
+
96
+ get writingEachEntity() {
97
+ return this._writingEachEntity();
98
+ }
99
+
100
+ _writingEachEntity() {
101
+ return {};
102
+ }
103
+
104
+ getDataArgForPriority(priorityName) {
105
+ const dataArg = super.getDataArgForPriority(priorityName);
106
+ if (priorityName === WRITING_ENTITIES || priorityName === POST_WRITING_ENTITIES) {
107
+ return {
108
+ ...dataArg,
109
+ ...this.getEntitiesDataToWrite(),
110
+ };
111
+ }
112
+ return dataArg;
113
+ }
114
+
115
+ /**
116
+ * @private
117
+ * Get entities to configure.
118
+ * This method doesn't filter entities. An filtered config can be changed at thie priority.
119
+ * @returns {string[]}
120
+ */
121
+ getEntitiesDataToConfigure() {
122
+ return this.getExistingEntityNames().map(entityName => {
123
+ const entityStorage = this.getEntityConfig(entityName, true);
124
+ return { entityName, entityStorage, entityConfig: entityStorage.createProxy() };
125
+ });
126
+ }
127
+
128
+ /**
129
+ * @private
130
+ * Get entities to load.
131
+ * This method doesn't filter entities. An filtered config can be changed at thie priority.
132
+ * @returns {string[]}
133
+ */
134
+ getEntitiesDataToLoad() {
135
+ return this.getExistingEntityNames().map(entityName => ({ entityName, entityStorage: this.getEntityConfig(entityName, true) }));
136
+ }
137
+
138
+ /**
139
+ * @private
140
+ * Get entities to prepare.
141
+ * @returns {object[]}
142
+ */
143
+ getEntitiesDataToPrepare() {
144
+ return this.sharedData.getEntities().map(({ entityName, ...data }) => ({
145
+ description: entityName,
146
+ entityName,
147
+ ...data,
148
+ }));
149
+ }
150
+
151
+ /**
152
+ * @private
153
+ * Get entities and fields to prepare.
154
+ * @returns {object[]}
155
+ */
156
+ getEntitiesFieldsDataToPrepare() {
157
+ return this.getEntitiesDataToPrepare()
158
+ .map(({ entity, entityName, ...data }) => {
159
+ if (!entity.fields) return [];
160
+
161
+ return entity.fields.map(field => ({
162
+ entity,
163
+ entityName,
164
+ ...data,
165
+ field,
166
+ fieldName: field.fieldName,
167
+ description: `${entityName}#${field.fieldName}`,
168
+ }));
169
+ })
170
+ .flat();
171
+ }
172
+
173
+ /**
174
+ * @private
175
+ * Get entities and relationships to prepare.
176
+ * @returns {object[]}
177
+ */
178
+ getEntitiesRelationshipsDataToPrepare() {
179
+ return this.getEntitiesDataToPrepare()
180
+ .map(({ entity, entityName, ...data }) => {
181
+ if (!entity.relationships) return [];
182
+
183
+ return entity.relationships.map(relationship => ({
184
+ entity,
185
+ entityName,
186
+ ...data,
187
+ relationship,
188
+ relationshipName: relationship.relationshipName,
189
+ description: `${entityName}#${relationship.relationshipName}`,
190
+ }));
191
+ })
192
+ .flat();
193
+ }
194
+
195
+ /**
196
+ * @private
197
+ * Get entities to post prepare.
198
+ * @returns {object[]}
199
+ */
200
+ getEntitiesDataToPostPrepare() {
201
+ return this.getEntitiesDataToPrepare();
202
+ }
203
+
204
+ /**
205
+ * @private
206
+ * Get entities to write.
207
+ * @returns {object[]}
208
+ */
209
+ getEntitiesDataToWrite() {
210
+ const { entities = [] } = this.options;
211
+ let entitiesDefinitions = this.sharedData.getEntities();
212
+ if (entities.length > 0) {
213
+ entitiesDefinitions = entitiesDefinitions.filter(({ entityName }) => entities.includes(entityName));
214
+ }
215
+ return { entities: entitiesDefinitions.map(({ entity }) => entity) };
216
+ }
217
+
218
+ /**
219
+ * @private
220
+ * Queue entity tasks.
221
+ */
222
+ queueEntityTasks() {
223
+ this.queueTask({
224
+ queueName: CONFIGURING_EACH_ENTITY_QUEUE,
225
+ taskName: 'queueConfiguringEachEntity',
226
+ cancellable: true,
227
+ method: () => {
228
+ this.debug(`Queueing entity tasks ${CONFIGURING_EACH_ENTITY}`);
229
+ const tasks = this.extractTasksFromPriority(CONFIGURING_EACH_ENTITY, { skip: false });
230
+ this.getEntitiesDataToConfigure().forEach(({ entityName, entityStorage, entityConfig }) => {
231
+ this.debug(`Queueing entity tasks ${CONFIGURING_EACH_ENTITY} for ${entityName}`);
232
+ tasks.forEach(task => {
233
+ this.queueTask({
234
+ ...task,
235
+ args: [{ ...this.getDataArgForPriority(CONFIGURING_EACH_ENTITY), entityName, entityStorage, entityConfig }],
236
+ });
237
+ });
238
+ });
239
+ },
240
+ });
241
+
242
+ this.queueTask({
243
+ queueName: LOADING_EACH_ENTITY_QUEUE,
244
+ taskName: 'queueLoadingEachEntity',
245
+ cancellable: true,
246
+ method: () => {
247
+ this.debug(`Queueing entity tasks ${LOADING_EACH_ENTITY}`);
248
+ const tasks = this.extractTasksFromPriority(LOADING_EACH_ENTITY, { skip: false });
249
+ this.getEntitiesDataToLoad().forEach(({ entityName, entityStorage }) => {
250
+ this.debug(`Queueing entity tasks ${LOADING_EACH_ENTITY} for ${entityName}`);
251
+ tasks.forEach(task => {
252
+ this.queueTask({
253
+ ...task,
254
+ args: [{ ...this.getDataArgForPriority(LOADING_EACH_ENTITY), entityName, entityStorage }],
255
+ });
256
+ });
257
+ });
258
+ },
259
+ });
260
+
261
+ this.queueTask({
262
+ queueName: PREPARING_EACH_ENTITY_QUEUE,
263
+ taskName: 'queuePreparingEachEntity',
264
+ cancellable: true,
265
+ method: () => {
266
+ this.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY}`);
267
+ const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY, { skip: false });
268
+ this.getEntitiesDataToPrepare().forEach(({ description, ...data }) => {
269
+ this.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY} for ${description}`);
270
+ tasks.forEach(task => {
271
+ this.queueTask({
272
+ ...task,
273
+ args: [{ ...this.getDataArgForPriority(PREPARING_EACH_ENTITY), description, ...data }],
274
+ });
275
+ });
276
+ });
277
+ },
278
+ });
279
+
280
+ this.queueTask({
281
+ queueName: PREPARING_EACH_ENTITY_FIELD_QUEUE,
282
+ taskName: 'queuePreparingEachEntityField',
283
+ cancellable: true,
284
+ method: () => {
285
+ const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY_FIELD, { skip: false });
286
+ this.getEntitiesFieldsDataToPrepare().forEach(({ description, ...data }) => {
287
+ this.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY_FIELD} for ${description}`);
288
+ tasks.forEach(task => {
289
+ this.queueTask({
290
+ ...task,
291
+ args: [{ ...this.getDataArgForPriority(PREPARING_EACH_ENTITY_FIELD), description, ...data }],
292
+ });
293
+ });
294
+ });
295
+ },
296
+ });
297
+
298
+ this.queueTask({
299
+ queueName: PREPARING_EACH_ENTITY_RELATIONSHIP_QUEUE,
300
+ taskName: 'queuePreparingEachEntityRelationship',
301
+ cancellable: true,
302
+ method: () => {
303
+ const tasks = this.extractTasksFromPriority(PREPARING_EACH_ENTITY_RELATIONSHIP, { skip: false });
304
+ this.getEntitiesRelationshipsDataToPrepare().forEach(({ description, ...data }) => {
305
+ this.debug(`Queueing entity tasks ${PREPARING_EACH_ENTITY_RELATIONSHIP} for ${description}`);
306
+ tasks.forEach(task => {
307
+ this.queueTask({
308
+ ...task,
309
+ args: [{ ...this.getDataArgForPriority(PREPARING_EACH_ENTITY_RELATIONSHIP), description, ...data }],
310
+ });
311
+ });
312
+ });
313
+ },
314
+ });
315
+
316
+ this.queueTask({
317
+ queueName: POST_PREPARING_EACH_ENTITY_QUEUE,
318
+ taskName: 'queuePostPreparingEachEntity',
319
+ cancellable: true,
320
+ method: () => {
321
+ const tasks = this.extractTasksFromPriority(POST_PREPARING_EACH_ENTITY, { skip: false });
322
+ this.getEntitiesDataToPostPrepare().forEach(({ description, ...data }) => {
323
+ this.debug(`Queueing entity tasks ${POST_PREPARING_EACH_ENTITY} for ${description}`);
324
+ tasks.forEach(task => {
325
+ this.queueTask({
326
+ ...task,
327
+ args: [{ ...this.getDataArgForPriority(POST_PREPARING_EACH_ENTITY), description, ...data }],
328
+ });
329
+ });
330
+ });
331
+ },
332
+ });
333
+
334
+ this.queueTask({
335
+ queueName: WRITING_ENTITIES_QUEUE,
336
+ taskName: 'queueWritingEachEntity',
337
+ cancellable: true,
338
+ method: () => {
339
+ if (this.options.skipWriting) return;
340
+ const tasks = this.extractTasksFromPriority(WRITING_ENTITIES, { skip: false });
341
+ tasks.forEach(task => {
342
+ this.queueTask({
343
+ ...task,
344
+ args: this.getArgsForPriority(WRITING_ENTITIES),
345
+ });
346
+ });
347
+ },
348
+ });
349
+
350
+ this.queueTask({
351
+ queueName: POST_WRITING_ENTITIES_QUEUE,
352
+ taskName: 'queuePostWritingEachEntity',
353
+ cancellable: true,
354
+ method: () => {
355
+ if (this.options.skipWriting) return;
356
+ const tasks = this.extractTasksFromPriority(POST_WRITING_ENTITIES, { skip: false });
357
+ tasks.forEach(task => {
358
+ this.queueTask({
359
+ ...task,
360
+ args: this.getArgsForPriority(POST_WRITING_ENTITIES),
361
+ });
362
+ });
363
+ },
364
+ });
365
+ }
366
+ }
367
+
368
+ module.exports = JHipsterBaseEntitiesGenerator;