generator-jhipster 8.3.0 → 8.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generators/angular/generator.js +34 -0
- package/dist/generators/angular/resources/package.json +13 -13
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +3 -6
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +3 -6
- package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +3 -6
- package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +11 -11
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +0 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/core/auth/user-route-access.service.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +0 -3
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +10 -6
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.ts.ejs +11 -17
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +6 -6
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/active-menu.directive.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +3 -4
- package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.spec.ts.ejs +10 -8
- package/dist/generators/angular/templates/src/main/webapp/app/shared/auth/has-any-authority.directive.ts.ejs +3 -8
- package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +6 -2
- package/dist/generators/angular/templates/webpack/webpack.custom.js.ejs +1 -1
- package/dist/generators/app/generator.js +6 -33
- package/dist/generators/app/support/config.js +1 -3
- package/dist/generators/base/generator.js +15 -16
- package/dist/generators/base/priorities.js +12 -1
- package/dist/generators/base-application/generator.js +14 -2
- package/dist/generators/base-application/priorities.js +1 -0
- package/dist/generators/base-application/support/prepare-entity.js +7 -8
- package/dist/generators/base-application/support/prepare-field.js +1 -1
- package/dist/generators/base-application/support/prepare-relationship.js +3 -2
- package/dist/generators/base-core/generator.js +45 -11
- package/dist/generators/base-entity-changes/generator.js +24 -0
- package/dist/generators/bootstrap-application-base/generator.js +46 -1
- package/dist/generators/bootstrap-application-server/generator.js +5 -7
- package/dist/generators/ci-cd/generator.js +0 -5
- package/dist/generators/client/command.js +2 -2
- package/dist/generators/client/generator.js +0 -22
- package/dist/generators/client/generators/common/command.js +5 -0
- package/dist/generators/client/generators/common/generator.js +79 -0
- package/dist/generators/{app/prompts.js → client/generators/common/index.js} +2 -15
- package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/headers.ts.ejs +57 -0
- package/dist/generators/client/generators/common/templates/src/main/webapp/app/shared/jhipster/problem-details.ts.ejs +51 -0
- package/dist/generators/client/resources/package.json +6 -6
- package/dist/generators/client/templates/src/main/webapp/index.html.ejs +1 -1
- package/dist/generators/common/command.js +13 -0
- package/dist/generators/common/generator.js +17 -3
- package/dist/generators/common/resources/package.json +2 -2
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/login-page.cy.ts.ejs +4 -4
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/password-page.cy.ts.ejs +2 -2
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/register-page.cy.ts.ejs +1 -1
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/reset-password-page.cy.ts.ejs +1 -1
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +10 -10
- package/dist/generators/docker/templates/docker/mysql.yml.ejs +1 -1
- package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +14 -3
- package/dist/generators/docker-compose/generator.js +1 -5
- package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +14 -3
- package/dist/generators/entity/generator.js +2 -10
- package/dist/generators/entity/prompts.js +6 -11
- package/dist/generators/export-jdl/generator.js +0 -5
- package/dist/generators/gatling/README.md +15 -0
- package/dist/generators/gatling/templates/buildSrc/src/main/groovy/jhipster.gatling-conventions.gradle.ejs +1 -1
- package/dist/generators/gatling/templates/src/test/java/gatling/simulations/_entityClass_GatlingTest.java.ejs +2 -10
- package/dist/generators/generate-blueprint/command.js +16 -0
- package/dist/generators/generate-blueprint/files.js +8 -0
- package/dist/generators/generate-blueprint/generator.js +17 -10
- package/dist/generators/generate-blueprint/resources/package.json +1 -1
- package/dist/generators/generate-blueprint/templates/.blueprint/cli/commands.mjs.ejs +6 -0
- package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +20 -0
- package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs +9 -13
- package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/build-matrix.mjs.ejs +22 -0
- package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/generator.mjs.ejs +24 -0
- package/dist/generators/generate-blueprint/templates/.blueprint/github-build-matrix/index.mjs.ejs +1 -0
- package/dist/generators/generate-blueprint/templates/.eslintrc.json.ejs +2 -2
- package/dist/generators/generate-blueprint/templates/README.md.ejs +16 -8
- package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +1 -0
- package/dist/generators/generator-constants.js +1 -1
- package/dist/generators/heroku/generator.js +0 -5
- package/dist/generators/info/generator.js +1 -3
- package/dist/generators/init/generator.js +2 -2
- package/dist/generators/init/resources/.node-version +1 -1
- package/dist/generators/java/generators/build-tool/command.js +4 -1
- package/dist/generators/java/generators/domain/generator.js +16 -0
- package/dist/generators/java/generators/domain/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +1 -5
- package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Asserts.java.ejs +3 -3
- package/dist/generators/java/generators/domain/templates/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +3 -3
- package/dist/generators/java/support/add-java-annotation.js +28 -7
- package/dist/generators/java/support/generated-annotation-transform.js +1 -1
- package/dist/generators/java/support/index.js +1 -1
- package/dist/generators/jdl/generator.js +1 -5
- package/dist/generators/kubernetes/files.js +1 -1
- package/dist/generators/kubernetes/generator.js +0 -5
- package/dist/generators/kubernetes/templates/db/mysql.yml.ejs +0 -1
- package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +14 -3
- package/dist/generators/kubernetes-helm/generator.js +0 -5
- package/dist/generators/kubernetes-knative/generator.js +0 -5
- package/dist/generators/languages/files.js +2 -2
- package/dist/generators/languages/generator.js +4 -8
- package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +2 -2
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pa/{home.json → home.json.ejs} +2 -2
- package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/si/{home.json → home.json.ejs} +6 -6
- package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/te/{home.json → home.json.ejs} +1 -1
- package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json.ejs +19 -0
- package/dist/generators/liquibase/generator.js +59 -12
- package/dist/generators/liquibase/support/prepare-field.js +16 -1
- package/dist/generators/liquibase/support/relationship.js +1 -0
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +3 -3
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +26 -1
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +3 -3
- package/dist/generators/maven/templates/.mvn/wrapper/maven-wrapper.properties +2 -2
- package/dist/generators/maven/templates/mvnw +185 -243
- package/dist/generators/maven/templates/mvnw.cmd +121 -180
- package/dist/generators/react/generator.js +10 -0
- package/dist/generators/react/resources/package.json +30 -30
- package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.spec.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/config/axios-interceptor.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.spec.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.ts.ejs +80 -87
- package/dist/generators/react/templates/src/main/webapp/app/config/store.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.tsx.ejs +3 -3
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.reducer.ts.ejs +12 -7
- package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +7 -7
- package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +2 -3
- package/dist/generators/react/templates/webpack/webpack.microfrontend.js.jhi.react.ejs +0 -8
- package/dist/generators/server/command.js +0 -11
- package/dist/generators/server/generator.js +19 -115
- package/dist/generators/server/jdl/application-definition.js +3 -1
- package/dist/generators/server/resources/Dockerfile +15 -15
- package/dist/generators/server/resources/gradle/libs.versions.toml +12 -10
- package/dist/generators/server/resources/pom.xml +10 -10
- package/dist/generators/server/support/config.js +4 -8
- package/dist/generators/server/support/prepare-entity.js +5 -6
- package/dist/generators/server/support/prepare-field.js +7 -2
- package/dist/generators/server/support/prepare-relationship.js +7 -2
- package/dist/generators/server/support/relationship.js +5 -2
- package/dist/generators/server/templates/build.gradle.ejs +5 -3
- package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -2
- package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +3 -2
- package/dist/generators/server/templates/gradle.properties.ejs +1 -1
- package/dist/generators/server/templates/pom.xml.ejs +7 -9
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/service/dto/_dtoClass_.java.ejs +1 -1
- package/dist/generators/server/templates/src/main/java/_package_/config/Constants.java.ejs +0 -2
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +57 -24
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +1 -15
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityJwtConfiguration.java.ejs +0 -20
- package/dist/generators/server/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +65 -5
- package/dist/generators/server/templates/src/main/java/_package_/service/dto/UserDTO.java.ejs +23 -0
- package/dist/generators/server/templates/src/main/java/_package_/service/mapper/UserMapper.java.ejs +8 -4
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +43 -9
- package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +60 -22
- package/dist/generators/server/templates/src/main/resources/config/bootstrap.yml.ejs +1 -1
- package/dist/generators/server/templates/src/main/resources/static/index_microservices.html.ejs +8 -8
- package/dist/generators/server/templates/src/main/resources/swagger/api.yml.ejs +1 -1
- package/dist/generators/server/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +31 -13
- package/dist/generators/server/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +84 -17
- package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +62 -6
- package/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +22 -0
- package/dist/generators/server/templates/src/test/resources/config/application.yml.ejs +20 -10
- package/dist/generators/spring-boot/cleanup.js +3 -0
- package/dist/generators/spring-boot/command.js +127 -7
- package/dist/generators/spring-boot/files.js +0 -10
- package/dist/generators/spring-boot/generator.js +54 -4
- package/dist/generators/{server → spring-boot}/prompts.js +8 -72
- package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +380 -588
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +47 -11
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +60 -24
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +195 -318
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +58 -51
- package/dist/generators/spring-cache/internal/dependencies.js +2 -2
- package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +2 -2
- package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +4 -0
- package/dist/generators/spring-cloud/generators/gateway/command.js +5 -1
- package/dist/generators/spring-cloud/generators/gateway/generator.js +13 -0
- package/dist/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.js +6 -0
- package/dist/generators/spring-data-cassandra/generator.js +2 -2
- package/dist/generators/spring-data-relational/support/h2-reserved-keywords.js +22 -0
- package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +3 -1
- package/dist/generators/upgrade/generator.js +0 -4
- package/dist/generators/vue/resources/package.json +22 -22
- package/dist/generators/vue/templates/src/main/webapp/app/account/change-password/change-password.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/init/reset-password-init.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/settings/settings.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.spec.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management-edit.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +7 -7
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-details.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.spec.ts.ejs +8 -8
- package/dist/generators/vue/templates/src/main/webapp/app/shared/data/data-utils.service.spec.ts.ejs +1 -1
- package/dist/generators/vue/templates/tsconfig.app.json.ejs +1 -1
- package/dist/generators/vue/templates/vite.config.mts.ejs +5 -4
- package/dist/generators/vue/templates/vitest.config.mts.ejs +1 -1
- package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -9
- package/dist/jdl/converters/jdl-to-json/jdl-to-json-basic-entity-converter.js +1 -1
- package/dist/jdl/converters/jdl-to-json/jdl-to-json-field-converter.js +4 -4
- package/dist/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.js +9 -9
- package/dist/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.js +2 -2
- package/dist/jdl/converters/json-to-jdl-application-converter.js +1 -1
- package/dist/jdl/converters/json-to-jdl-converter.js +6 -5
- package/dist/jdl/converters/json-to-jdl-entity-converter.js +14 -14
- package/dist/jdl/converters/json-to-jdl-option-converter.js +1 -2
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/application-converter.js +1 -1
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/option-converter.js +2 -2
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +7 -6
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.js +1 -1
- package/dist/jdl/exporters/applications/jhipster-application-formatter.js +16 -23
- package/dist/jdl/exporters/config.js +1 -0
- package/dist/jdl/exporters/jhipster-deployment-exporter.js +5 -5
- package/dist/jdl/exporters/jhipster-entity-exporter.js +1 -1
- package/dist/jdl/jdl-importer.js +22 -20
- package/dist/jdl/jhipster/binary-options.js +12 -8
- package/dist/jdl/jhipster/json-entity.js +1 -1
- package/dist/jdl/models/abstract-jdl-option.js +2 -2
- package/dist/jdl/models/jdl-application-configuration-factory.js +2 -0
- package/dist/jdl/models/jdl-binary-option.js +2 -2
- package/dist/jdl/models/jdl-deployment.js +11 -0
- package/dist/jdl/models/jdl-entity.js +1 -1
- package/dist/jdl/models/jdl-enum.js +1 -1
- package/dist/jdl/models/jdl-enums.js +0 -18
- package/dist/jdl/models/jdl-field.js +2 -2
- package/dist/jdl/models/jdl-object-wrapper.js +1 -0
- package/dist/jdl/models/jdl-object.js +23 -45
- package/dist/jdl/models/jdl-options.js +0 -18
- package/dist/jdl/models/jdl-relationships.js +8 -16
- package/dist/jdl/models/jdl-unary-option.js +1 -1
- package/dist/jdl/models/list-jdl-application-configuration-option.js +5 -2
- package/dist/jdl/parsing/jdl-ast-builder-visitor.js +12 -0
- package/dist/jdl/parsing/jdl-parser.js +14 -0
- package/dist/jdl/parsing/lexer/lexer.js +17 -11
- package/dist/jdl/parsing/validator.js +16 -2
- package/dist/jdl/readers/json-reader.js +1 -1
- package/dist/jdl/utils/array-utils.js +6 -0
- package/dist/jdl/utils/set-utils.js +3 -2
- package/dist/jdl/validators/jdl-without-application-validator.js +2 -2
- package/dist/testing/helpers.js +4 -0
- package/dist/types/generators/base/api.d.ts +6 -2
- package/dist/types/generators/base/generator.d.ts +10 -4
- package/dist/types/generators/base/priorities.d.ts +4 -0
- package/dist/types/generators/base/shared-data.d.ts +1 -1
- package/dist/types/generators/base-application/priorities.d.ts +2 -0
- package/dist/types/generators/base-application/support/entity.d.ts +2 -2
- package/dist/types/generators/base-application/support/prepare-entity.d.ts +3 -3
- package/dist/types/generators/base-application/support/relationship.d.ts +5 -5
- package/dist/types/generators/base-application/types.d.ts +15 -0
- package/dist/types/generators/base-core/generator.d.ts +16 -1
- package/dist/types/generators/base-entity-changes/types.d.ts +2 -0
- package/dist/types/generators/generator-constants.d.ts +1 -1
- package/dist/types/generators/java/support/add-java-annotation.d.ts +10 -20
- package/dist/types/generators/java/support/doc.d.ts +1 -1
- package/dist/types/generators/java/support/index.d.ts +1 -1
- package/dist/types/generators/server/support/relationship.d.ts +2 -2
- package/dist/types/generators/server/types.d.ts +5 -0
- package/dist/types/generators/spring-cloud/generators/gateway/jdl/jdl-routes-option.d.ts +2 -0
- package/dist/types/generators/spring-cloud/generators/gateway/types.d.ts +4 -0
- package/dist/types/generators/spring-data-relational/support/h2-reserved-keywords.d.ts +20 -0
- package/dist/types/jdl/converters/jdl-to-json/jdl-to-json-field-converter.d.ts +2 -2
- package/dist/types/jdl/converters/jdl-to-json/jdl-with-applications-to-json-converter.d.ts +2 -1
- package/dist/types/jdl/converters/jdl-to-json/jdl-without-application-to-json-converter.d.ts +3 -1
- package/dist/types/jdl/converters/json-to-jdl-application-converter.d.ts +9 -2
- package/dist/types/jdl/converters/json-to-jdl-converter.d.ts +3 -3
- package/dist/types/jdl/converters/json-to-jdl-entity-converter.d.ts +2 -4
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/application-converter.d.ts +3 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/deployment-converter.d.ts +2 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/entity-converter.d.ts +3 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/enum-converter.d.ts +2 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/field-converter.d.ts +2 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/option-converter.d.ts +3 -3
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.d.ts +2 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/relationship-converter.d.ts +2 -1
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/types.d.ts +110 -0
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/validation-converter.d.ts +2 -1
- package/dist/types/jdl/converters/types.d.ts +102 -14
- package/dist/types/jdl/exporters/applications/jhipster-application-formatter.d.ts +4 -4
- package/dist/types/jdl/exporters/config.d.ts +2 -1
- package/dist/types/jdl/exporters/export-utils.d.ts +2 -1
- package/dist/types/jdl/exporters/jdl-exporter.d.ts +2 -1
- package/dist/types/jdl/exporters/jhipster-deployment-exporter.d.ts +3 -1
- package/dist/types/jdl/exporters/jhipster-entity-exporter.d.ts +3 -1
- package/dist/types/jdl/exporters/types.d.ts +61 -0
- package/dist/types/jdl/jhipster/binary-options.d.ts +8 -26
- package/dist/types/jdl/jhipster/field-types.d.ts +2 -2
- package/dist/types/jdl/jhipster/json-entity.d.ts +2 -2
- package/dist/types/jdl/models/abstract-jdl-option.d.ts +14 -9
- package/dist/types/jdl/models/boolean-jdl-application-configuration-option.d.ts +1 -1
- package/dist/types/jdl/models/integer-jdl-application-configuration-option.d.ts +1 -1
- package/dist/types/jdl/models/jdl-application-configuration-factory.d.ts +1 -1
- package/dist/types/jdl/models/jdl-application-configuration-option.d.ts +4 -4
- package/dist/types/jdl/models/jdl-application-configuration.d.ts +4 -4
- package/dist/types/jdl/models/jdl-application-definition.d.ts +4 -4
- package/dist/types/jdl/models/jdl-application-entities.d.ts +4 -4
- package/dist/types/jdl/models/jdl-application.d.ts +16 -13
- package/dist/types/jdl/models/jdl-binary-option.d.ts +5 -3
- package/dist/types/jdl/models/jdl-deployment.d.ts +13 -1
- package/dist/types/jdl/models/jdl-entity.d.ts +5 -5
- package/dist/types/jdl/models/jdl-enum-value.d.ts +4 -4
- package/dist/types/jdl/models/jdl-enum.d.ts +9 -5
- package/dist/types/jdl/models/jdl-enums.d.ts +6 -5
- package/dist/types/jdl/models/jdl-field.d.ts +10 -8
- package/dist/types/jdl/models/jdl-object-wrapper.d.ts +25 -0
- package/dist/types/jdl/models/jdl-object.d.ts +23 -19
- package/dist/types/jdl/models/jdl-options.d.ts +7 -24
- package/dist/types/jdl/models/jdl-relationship.d.ts +16 -10
- package/dist/types/jdl/models/jdl-relationships.d.ts +5 -5
- package/dist/types/jdl/models/jdl-validation.d.ts +3 -3
- package/dist/types/jdl/models/list-jdl-application-configuration-option.d.ts +4 -3
- package/dist/types/jdl/models/string-jdl-application-configuration-option.d.ts +2 -2
- package/dist/types/jdl/parsing/jdl-ast-builder-visitor.d.ts +1 -0
- package/dist/types/jdl/parsing/jdl-parser.d.ts +1 -0
- package/dist/types/jdl/parsing/jdl-parsing-types.d.ts +23 -0
- package/dist/types/jdl/parsing/lexer/lexer.d.ts +6 -2
- package/dist/types/jdl/parsing/validator.d.ts +1 -1
- package/dist/types/jdl/utils/array-utils.d.ts +1 -0
- package/dist/types/jdl/utils/set-utils.d.ts +1 -19
- package/dist/types/jdl/validators/deployment-validator.d.ts +2 -1
- package/dist/types/testing/helpers.d.ts +13 -3
- package/package.json +30 -30
- package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +0 -148
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json +0 -19
- package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_imperative.java.ejs +0 -43
- package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_reactive.java.ejs +0 -184
- package/dist/generators/statistics.js +0 -223
- /package/dist/jdl/converters/{types.js → parsed-jdl-to-jdl-object/types.js} +0 -0
package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.ts.ejs
CHANGED
|
@@ -16,23 +16,47 @@
|
|
|
16
16
|
See the License for the specific language governing permissions and
|
|
17
17
|
limitations under the License.
|
|
18
18
|
-%>
|
|
19
|
-
|
|
20
19
|
<%_ if (enableTranslation) { _%>
|
|
21
20
|
import { translate } from 'react-jhipster';
|
|
22
21
|
<%_ } _%>
|
|
23
22
|
import { toast } from 'react-toastify';
|
|
24
23
|
import { isFulfilledAction, isRejectedAction } from 'app/shared/reducers/reducer.utils';
|
|
25
|
-
import {
|
|
24
|
+
import { isAxiosError } from 'axios';
|
|
25
|
+
import { FieldErrorVM, isProblemWithMessage } from 'app/shared/jhipster/problem-details';
|
|
26
|
+
import { getMessageFromHeaders } from 'app/shared/jhipster/headers';
|
|
27
|
+
|
|
28
|
+
type TostMessage = {
|
|
29
|
+
message?: string;
|
|
30
|
+
<%_ if (enableTranslation) { _%>
|
|
31
|
+
key?: string;
|
|
32
|
+
data?: any;
|
|
33
|
+
<%_ } _%>
|
|
34
|
+
};
|
|
26
35
|
|
|
27
|
-
const addErrorAlert = (message
|
|
36
|
+
const addErrorAlert = (message: TostMessage) => {
|
|
28
37
|
<%_ if (enableTranslation) { _%>
|
|
29
|
-
key
|
|
30
|
-
toast.error(translate(key, data));
|
|
38
|
+
toast.error(message.key ? translate(message.key, message.data) ?? message.message : message.message);
|
|
31
39
|
<%_ } else { _%>
|
|
32
|
-
toast.error(message);
|
|
40
|
+
toast.error(message.message);
|
|
33
41
|
<%_ } _%>
|
|
34
42
|
};
|
|
35
43
|
|
|
44
|
+
const getFieldErrorsTosts = (fieldErrors: FieldErrorVM[]): TostMessage[] =>
|
|
45
|
+
fieldErrors.map(fieldError => {
|
|
46
|
+
if (['Min', 'Max', 'DecimalMin', 'DecimalMax'].includes(fieldError.message)) {
|
|
47
|
+
fieldError.message = 'Size';
|
|
48
|
+
}
|
|
49
|
+
// convert 'something[14].other[4].id' to 'something[].other[].id' so translations can be written to it
|
|
50
|
+
const convertedField = fieldError.field.replace(/\[\d*\]/g, '[]');
|
|
51
|
+
<%_ if (enableTranslation) { _%>
|
|
52
|
+
const fieldName = translate(`<%= frontendAppName %>.${fieldError.objectName}.${convertedField}`);
|
|
53
|
+
return { message: `Error on field "${fieldName}"`, key: `error.${fieldError.message}`, data: { fieldName } };
|
|
54
|
+
<%_ } else { _%>
|
|
55
|
+
const fieldName = convertedField.charAt(0).toUpperCase() + convertedField.slice(1);
|
|
56
|
+
return { message: `Error on field "${fieldName}"` };
|
|
57
|
+
<%_ } _%>
|
|
58
|
+
});
|
|
59
|
+
|
|
36
60
|
export default () => next => action => {
|
|
37
61
|
const { error, payload } = action;
|
|
38
62
|
|
|
@@ -40,103 +64,72 @@ export default () => next => action => {
|
|
|
40
64
|
*
|
|
41
65
|
* The notification middleware serves to add success and error notifications
|
|
42
66
|
*/
|
|
43
|
-
if (isFulfilledAction(action) && payload
|
|
44
|
-
const
|
|
45
|
-
let alert: string | null = null;
|
|
46
|
-
<%_ if (enableTranslation) { _%>
|
|
47
|
-
let alertParams: string | null = null;
|
|
48
|
-
<%_ } _%>
|
|
49
|
-
headers && Object.entries<string>(headers).forEach(([k, v]) => {
|
|
50
|
-
if (k.toLowerCase().endsWith('app-alert')) {
|
|
51
|
-
alert = v;
|
|
52
|
-
}<% if (enableTranslation) { %> else if (k.toLowerCase().endsWith('app-params')) {
|
|
53
|
-
alertParams = decodeURIComponent(v.replace(/\+/g, ' '));
|
|
54
|
-
}<% } %>
|
|
55
|
-
});
|
|
67
|
+
if (isFulfilledAction(action) && payload?.headers) {
|
|
68
|
+
const { alert<% if (enableTranslation) { %>, param<% } %> } = getMessageFromHeaders(payload.headers);
|
|
56
69
|
if (alert) {
|
|
57
70
|
<%_ if (enableTranslation) { _%>
|
|
58
|
-
|
|
59
|
-
toast.success(translate(alert, { param: alertParam }));
|
|
71
|
+
toast.success(translate(alert, { param }));
|
|
60
72
|
<%_ } else { _%>
|
|
61
73
|
toast.success(alert);
|
|
62
74
|
<%_ } _%>
|
|
63
75
|
}
|
|
64
76
|
}
|
|
65
77
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
(
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
)<% } else { %>convertedField.charAt(0).toUpperCase() + convertedField.slice(1)<% } %>;
|
|
111
|
-
addErrorAlert(`Error on field "${fieldName}"`, `error.${fieldError.message}`, { fieldName });
|
|
112
|
-
}
|
|
113
|
-
} else if (typeof data === 'string' && data !== '') {
|
|
114
|
-
addErrorAlert(data);
|
|
115
|
-
} else {
|
|
116
|
-
toast.error(data?.message || data?.error || data?.title || 'Unknown error!');
|
|
117
|
-
}
|
|
118
|
-
break;
|
|
78
|
+
if (isRejectedAction(action) && isAxiosError(error)) {
|
|
79
|
+
if (error.response) {
|
|
80
|
+
const response = error.response;
|
|
81
|
+
if (response.status === 401) {
|
|
82
|
+
// Ignore, page will be redirected to login.
|
|
83
|
+
} else if (error.config?.url?.endsWith('api/account') || error.config?.url?.endsWith('api/authenticate')) {
|
|
84
|
+
// Ignore, authentication status check and authentication are treated differently.
|
|
85
|
+
} else if (response.status === 0) {
|
|
86
|
+
// connection refused, server not reachable
|
|
87
|
+
addErrorAlert({
|
|
88
|
+
message: 'Server not reachable',
|
|
89
|
+
<%_ if (enableTranslation) { _%>
|
|
90
|
+
key: 'error.server.not.reachable',
|
|
91
|
+
<%_ } _%>
|
|
92
|
+
});
|
|
93
|
+
} else if (response.status === 404) {
|
|
94
|
+
addErrorAlert({
|
|
95
|
+
message: 'Not found',
|
|
96
|
+
<%_ if (enableTranslation) { _%>
|
|
97
|
+
key: 'error.url.not.found',
|
|
98
|
+
<%_ } _%>
|
|
99
|
+
});
|
|
100
|
+
} else {
|
|
101
|
+
const data = response.data;
|
|
102
|
+
const problem = isProblemWithMessage(data) ? data : null;
|
|
103
|
+
if (problem?.fieldErrors) {
|
|
104
|
+
getFieldErrorsTosts(problem.fieldErrors).forEach(message => addErrorAlert(message));
|
|
105
|
+
} else {
|
|
106
|
+
const { error: toastError<% if (enableTranslation) { %>, param<% } %> } = getMessageFromHeaders((response.headers as any) ?? {});
|
|
107
|
+
if (toastError) {
|
|
108
|
+
<%_ if (enableTranslation) { _%>
|
|
109
|
+
const entityName = translate('global.menu.entities.' + param);
|
|
110
|
+
addErrorAlert({ key: toastError, data: { entityName } });
|
|
111
|
+
<%_ } else { _%>
|
|
112
|
+
addErrorAlert({ message: toastError });
|
|
113
|
+
<%_ } _%>
|
|
114
|
+
<%_ if (enableTranslation) { _%>
|
|
115
|
+
} else if (problem?.message) {
|
|
116
|
+
addErrorAlert({ message: problem.detail, key: problem.message });
|
|
117
|
+
<%_ } _%>
|
|
118
|
+
} else if (typeof data === 'string' && data !== '') {
|
|
119
|
+
addErrorAlert({ message: data });
|
|
120
|
+
} else {
|
|
121
|
+
toast.error(data?.detail ?? data?.message ?? data?.error ?? data?.title ?? 'Unknown error!');
|
|
119
122
|
}
|
|
120
|
-
case 404:
|
|
121
|
-
addErrorAlert('Not found', 'error.url.not.found');
|
|
122
|
-
break;
|
|
123
|
-
|
|
124
|
-
default:
|
|
125
|
-
if (typeof data === 'string' && data !== '') {
|
|
126
|
-
addErrorAlert(data);
|
|
127
|
-
} else {
|
|
128
|
-
toast.error(data?.message || data?.error || data?.title || 'Unknown error!');
|
|
129
|
-
}
|
|
130
123
|
}
|
|
131
124
|
}
|
|
132
|
-
} else if (
|
|
125
|
+
} else if (error.config?.url?.endsWith('api/account') && error.config?.method === 'get') {
|
|
133
126
|
/* eslint-disable no-console */
|
|
134
127
|
console.log('Authentication Error: Trying to access url api/account with GET.');
|
|
135
128
|
} else {
|
|
136
|
-
|
|
129
|
+
addErrorAlert({ message: error.message ?? 'Unknown error!' });
|
|
137
130
|
}
|
|
138
131
|
} else if (error) {
|
|
139
|
-
|
|
132
|
+
addErrorAlert({ message: error.message ?? 'Unknown error!' });
|
|
140
133
|
}
|
|
141
134
|
|
|
142
135
|
return next(action);
|
|
@@ -45,7 +45,7 @@ const store = configureStore({
|
|
|
45
45
|
getDefaultMiddleware({
|
|
46
46
|
serializableCheck: {
|
|
47
47
|
// Ignore these field paths in all actions
|
|
48
|
-
ignoredActionPaths: ['payload.config', 'payload.request', 'payload.headers', 'error'
|
|
48
|
+
ignoredActionPaths: ['meta.arg', 'meta.baseQueryMeta', 'payload.config', 'payload.request', 'payload.headers', 'error'],
|
|
49
49
|
},
|
|
50
50
|
}).concat(
|
|
51
51
|
errorMiddleware,
|
|
@@ -143,7 +143,7 @@ _%>
|
|
|
143
143
|
const entity = {
|
|
144
144
|
...<%= entityInstance %>Entity,
|
|
145
145
|
...values,
|
|
146
|
-
<%_ for (const rel of persistableRelationships) { _%>
|
|
146
|
+
<%_ for (const rel of persistableRelationships.filter(rel => !rel.otherEntity.embedded)) { _%>
|
|
147
147
|
<%_ if (rel.collection) { _%>
|
|
148
148
|
<%= rel.propertyName %>: mapIdList(values.<%= rel.propertyName %>),
|
|
149
149
|
<%_ } else { _%>
|
|
@@ -186,7 +186,7 @@ _%>
|
|
|
186
186
|
<%= fieldName %>: convertDateTimeFromServer(<%= entityInstance %>Entity.<%= fieldName %>),
|
|
187
187
|
<%_ } _%>
|
|
188
188
|
<%_ } _%>
|
|
189
|
-
<%_ for (const rel of persistableRelationships) {
|
|
189
|
+
<%_ for (const rel of persistableRelationships.filter(rel => !rel.otherEntity.embedded)) {
|
|
190
190
|
const otherEntityPkName = rel.otherEntity.primaryKey && rel.otherEntity.primaryKey.name || 'id';
|
|
191
191
|
const relationshipFieldName = rel.relationshipFieldName;
|
|
192
192
|
const relationshipFieldNamePlural = rel.relationshipFieldNamePlural;
|
|
@@ -297,7 +297,7 @@ _%>
|
|
|
297
297
|
</UncontrolledTooltip>
|
|
298
298
|
<%_ } _%>
|
|
299
299
|
<%_ } _%>
|
|
300
|
-
<%_ for (const rel of persistableRelationships) {
|
|
300
|
+
<%_ for (const rel of persistableRelationships.filter(rel => !rel.otherEntity.embedded)) {
|
|
301
301
|
const otherEntityPkName = rel.otherEntity.primaryKey && rel.otherEntity.primaryKey.name || 'id';
|
|
302
302
|
const otherEntityNamePlural = rel.otherEntityNamePlural;
|
|
303
303
|
const relationshipName = rel.relationshipName;
|
|
@@ -63,18 +63,23 @@ export const searchEntities = createAsyncThunk(
|
|
|
63
63
|
const requestUrl = `${apiSearchUrl}?query=${query}`;
|
|
64
64
|
<%_ } _%>
|
|
65
65
|
return axios.get<I<%= entityReactName %>[]>(requestUrl);
|
|
66
|
-
}
|
|
66
|
+
},
|
|
67
|
+
{ serializeError: serializeAxiosError },
|
|
67
68
|
);
|
|
68
69
|
|
|
69
70
|
<%_ } _%>
|
|
70
|
-
export const getEntities = createAsyncThunk(
|
|
71
|
+
export const getEntities = createAsyncThunk(
|
|
72
|
+
'<%= entityInstance %>/fetch_entity_list',
|
|
73
|
+
async ({ <%_ if(!paginationNo) { _%>page, size, <%_ } _%>sort }: IQueryParams) => {
|
|
71
74
|
<%_ if (!paginationNo) { _%>
|
|
72
|
-
|
|
75
|
+
const requestUrl = `${apiUrl}?${sort ? `page=${page}&size=${size}&sort=${sort}&` : ''}cacheBuster=${new Date().getTime()}`;
|
|
73
76
|
<%_ } else { _%>
|
|
74
|
-
|
|
77
|
+
const requestUrl = `${apiUrl}?${sort ? `sort=${sort}&` : ''}cacheBuster=${new Date().getTime()}`;
|
|
75
78
|
<%_ } _%>
|
|
76
|
-
|
|
77
|
-
}
|
|
79
|
+
return axios.get<I<%= entityReactName %>[]>(requestUrl);
|
|
80
|
+
},
|
|
81
|
+
{ serializeError: serializeAxiosError },
|
|
82
|
+
);
|
|
78
83
|
|
|
79
84
|
export const getEntity = createAsyncThunk(
|
|
80
85
|
'<%= entityInstance %>/fetch_entity',
|
|
@@ -82,7 +87,7 @@ export const getEntity = createAsyncThunk(
|
|
|
82
87
|
const requestUrl = `${apiUrl}/${id}`;
|
|
83
88
|
return axios.get<I<%= entityReactName %>>(requestUrl);
|
|
84
89
|
},
|
|
85
|
-
{ serializeError: serializeAxiosError }
|
|
90
|
+
{ serializeError: serializeAxiosError },
|
|
86
91
|
);
|
|
87
92
|
|
|
88
93
|
<%_ if (!readOnly) { _%>
|
|
@@ -50,7 +50,7 @@ export const Home = () => {
|
|
|
50
50
|
<span className="hipster rounded" />
|
|
51
51
|
</Col>
|
|
52
52
|
<Col md="9">
|
|
53
|
-
<h1 className="display-4"><Translate contentKey="home.title">Welcome,
|
|
53
|
+
<h1 className="display-4"><Translate contentKey="home.title">Welcome, <%- hipsterName %>!</Translate></h1>
|
|
54
54
|
<p className="lead"><Translate contentKey="home.subtitle">This is your homepage</Translate></p>
|
|
55
55
|
{
|
|
56
56
|
(account?.login) ? (
|
|
@@ -92,27 +92,27 @@ export const Home = () => {
|
|
|
92
92
|
|
|
93
93
|
<ul>
|
|
94
94
|
<li>
|
|
95
|
-
<a href="
|
|
95
|
+
<a href="<%- hipsterDocumentationLink %>" target="_blank" rel="noopener noreferrer">
|
|
96
96
|
<Translate contentKey="home.link.homepage">JHipster homepage</Translate>
|
|
97
97
|
</a>
|
|
98
98
|
</li>
|
|
99
99
|
<li>
|
|
100
|
-
<a href="
|
|
100
|
+
<a href="<%- hipsterStackoverflowLink %>" target="_blank" rel="noopener noreferrer">
|
|
101
101
|
<Translate contentKey="home.link.stackoverflow">JHipster on Stack Overflow</Translate>
|
|
102
102
|
</a>
|
|
103
103
|
</li>
|
|
104
104
|
<li>
|
|
105
|
-
<a href="
|
|
105
|
+
<a href="<%- hipsterBugTrackerLink %>" target="_blank" rel="noopener noreferrer">
|
|
106
106
|
<Translate contentKey="home.link.bugtracker">JHipster bug tracker</Translate>
|
|
107
107
|
</a>
|
|
108
108
|
</li>
|
|
109
109
|
<li>
|
|
110
|
-
<a href="
|
|
110
|
+
<a href="<%- hipsterChatLink %>" target="_blank" rel="noopener noreferrer">
|
|
111
111
|
<Translate contentKey="home.link.chat">JHipster public chat room</Translate>
|
|
112
112
|
</a>
|
|
113
113
|
</li>
|
|
114
114
|
<li>
|
|
115
|
-
<a href="
|
|
115
|
+
<a href="<%- hipsterTwitterLink %>" target="_blank" rel="noopener noreferrer">
|
|
116
116
|
<Translate contentKey="home.link.follow">follow @jhipster on Twitter</Translate>
|
|
117
117
|
</a>
|
|
118
118
|
</li>
|
|
@@ -121,7 +121,7 @@ export const Home = () => {
|
|
|
121
121
|
<p>
|
|
122
122
|
<Translate contentKey="home.like">If you like JHipster, do not forget to give us a star on</Translate>
|
|
123
123
|
{' '}
|
|
124
|
-
<a href="
|
|
124
|
+
<a href="<%- hipsterProjectLink %>" target="_blank" rel="noopener noreferrer">GitHub</a>!
|
|
125
125
|
</p>
|
|
126
126
|
</Col>
|
|
127
127
|
</Row>
|
package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs
CHANGED
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
SliceCaseReducers,
|
|
26
26
|
ValidateSliceCaseReducers,
|
|
27
27
|
} from '@reduxjs/toolkit';
|
|
28
|
-
import { AxiosError } from 'axios';
|
|
28
|
+
import { AxiosError, isAxiosError } from 'axios';
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
31
|
* Model for redux actions with pagination
|
|
@@ -69,7 +69,7 @@ const commonErrorProperties: Array<keyof SerializedError> = ['name', 'message',
|
|
|
69
69
|
*/
|
|
70
70
|
export const serializeAxiosError = (value: any): AxiosError | SerializedError => {
|
|
71
71
|
if (typeof value === 'object' && value !== null) {
|
|
72
|
-
if (value
|
|
72
|
+
if (isAxiosError(value)) {
|
|
73
73
|
return value;
|
|
74
74
|
} else {
|
|
75
75
|
const simpleError: SerializedError = {};
|
|
@@ -143,4 +143,3 @@ export const createEntitySlice = <T, Reducers extends SliceCaseReducers<EntitySt
|
|
|
143
143
|
},
|
|
144
144
|
});
|
|
145
145
|
};
|
|
146
|
-
|
|
@@ -44,11 +44,3 @@ const { DefinePlugin } = require('webpack');
|
|
|
44
44
|
),
|
|
45
45
|
},
|
|
46
46
|
<&_ } -&>
|
|
47
|
-
<&_ if (fragment.pluginsSection) { -&>
|
|
48
|
-
<%_ if (applicationTypeMicroservice) { _%>
|
|
49
|
-
new DefinePlugin({
|
|
50
|
-
<%= this._.upperCase(baseName) %>_I18N_RESOURCES_PREFIX: JSON.stringify(''),
|
|
51
|
-
}),
|
|
52
|
-
<%_ } _%>
|
|
53
|
-
<&_ } -&>
|
|
54
|
-
|
|
@@ -21,12 +21,6 @@ import { GENERATOR_COMMON, GENERATOR_SPRING_BOOT } from '../generator-list.js';
|
|
|
21
21
|
import { APPLICATION_TYPE_GATEWAY, APPLICATION_TYPE_MICROSERVICE, APPLICATION_TYPE_MONOLITH } from '../../jdl/index.js';
|
|
22
22
|
const command = {
|
|
23
23
|
options: {
|
|
24
|
-
authenticationType: {
|
|
25
|
-
name: 'auth',
|
|
26
|
-
description: 'Provide authentication type for the application when skipping server side generation',
|
|
27
|
-
type: String,
|
|
28
|
-
scope: 'storage',
|
|
29
|
-
},
|
|
30
24
|
db: {
|
|
31
25
|
description: 'Provide DB name for the application when skipping server side generation',
|
|
32
26
|
type: String,
|
|
@@ -65,11 +59,6 @@ const command = {
|
|
|
65
59
|
type: String,
|
|
66
60
|
scope: 'storage',
|
|
67
61
|
},
|
|
68
|
-
reactive: {
|
|
69
|
-
description: 'Generate a reactive backend',
|
|
70
|
-
type: Boolean,
|
|
71
|
-
scope: 'storage',
|
|
72
|
-
},
|
|
73
62
|
searchEngine: {
|
|
74
63
|
description: 'Provide search engine for the application when skipping server side generation',
|
|
75
64
|
type: String,
|
|
@@ -20,27 +20,25 @@
|
|
|
20
20
|
/* eslint-disable consistent-return */
|
|
21
21
|
import { existsSync } from 'fs';
|
|
22
22
|
import chalk from 'chalk';
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import { GENERATOR_COMMON, GENERATOR_SERVER, GENERATOR_SPRING_BOOT } from '../generator-list.js';
|
|
23
|
+
import { buildJavaGet as javaGetCall, javaBeanCase as javaBeanClassNameFormat, buildJavaGetter as javaGetter, buildJavaSetter as javaSetter, getJavaValueGeneratorForType as getJavaValueForType, getPrimaryKeyValue as getPKValue, hibernateSnakeCase, } from './support/index.js';
|
|
24
|
+
import { GENERATOR_COMMON, GENERATOR_SPRING_BOOT } from '../generator-list.js';
|
|
26
25
|
import BaseApplicationGenerator from '../base-application/index.js';
|
|
27
26
|
import { packageJson } from '../../lib/index.js';
|
|
28
27
|
import { SERVER_MAIN_SRC_DIR, SERVER_MAIN_RES_DIR, SERVER_TEST_SRC_DIR, SERVER_TEST_RES_DIR, CLIENT_WEBPACK_DIR, MAIN_DIR, LOGIN_REGEX, TEST_DIR, JAVA_VERSION, JAVA_COMPATIBLE_VERSIONS, JHIPSTER_DEPENDENCIES_VERSION, } from '../generator-constants.js';
|
|
29
|
-
import
|
|
30
|
-
import { applicationTypes, authenticationTypes, buildToolTypes, databaseTypes, fieldTypes, entityOptions, validations, reservedKeywords, searchEngineTypes, clientFrameworkTypes, } from '../../jdl/jhipster/index.js';
|
|
28
|
+
import { applicationTypes, buildToolTypes, databaseTypes, fieldTypes, entityOptions, validations, reservedKeywords, searchEngineTypes, clientFrameworkTypes, } from '../../jdl/jhipster/index.js';
|
|
31
29
|
import { stringifyApplicationData } from '../base-application/support/index.js';
|
|
32
|
-
import {
|
|
30
|
+
import { createNeedleCallback, mutateData } from '../base/support/index.js';
|
|
33
31
|
import { isReservedPaginationWords } from '../../jdl/jhipster/reserved-keywords.js';
|
|
34
32
|
import { loadStoredAppOptions } from '../app/support/index.js';
|
|
33
|
+
import { isReservedH2Keyword } from '../spring-data-relational/support/h2-reserved-keywords.js';
|
|
35
34
|
const dbTypes = fieldTypes;
|
|
36
35
|
const { STRING: TYPE_STRING, INTEGER: TYPE_INTEGER, LONG: TYPE_LONG, BIG_DECIMAL: TYPE_BIG_DECIMAL, FLOAT: TYPE_FLOAT, DOUBLE: TYPE_DOUBLE, LOCAL_DATE: TYPE_LOCAL_DATE, ZONED_DATE_TIME: TYPE_ZONED_DATE_TIME, INSTANT: TYPE_INSTANT, DURATION: TYPE_DURATION, } = dbTypes.CommonDBTypes;
|
|
37
36
|
const { SUPPORTED_VALIDATION_RULES } = validations;
|
|
38
37
|
const { isReservedTableName } = reservedKeywords;
|
|
39
38
|
const { ANGULAR, REACT, VUE } = clientFrameworkTypes;
|
|
40
|
-
const { JWT, OAUTH2, SESSION } = authenticationTypes;
|
|
41
39
|
const { GRADLE, MAVEN } = buildToolTypes;
|
|
42
|
-
const { CASSANDRA,
|
|
43
|
-
const {
|
|
40
|
+
const { CASSANDRA, SQL, NO: NO_DATABASE } = databaseTypes;
|
|
41
|
+
const { GATEWAY } = applicationTypes;
|
|
44
42
|
const { NO: NO_SEARCH_ENGINE } = searchEngineTypes;
|
|
45
43
|
const { CommonDBTypes, RelationalOnlyDBTypes } = fieldTypes;
|
|
46
44
|
const { INSTANT } = CommonDBTypes;
|
|
@@ -82,50 +80,11 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
82
80
|
return;
|
|
83
81
|
await this.promptCurrentJHipsterCommand();
|
|
84
82
|
},
|
|
85
|
-
askForServerTestOpts,
|
|
86
|
-
askForServerSideOpts,
|
|
87
|
-
askForOptionalItems,
|
|
88
83
|
});
|
|
89
84
|
}
|
|
90
85
|
get [BaseApplicationGenerator.PROMPTING]() {
|
|
91
86
|
return this.delegateTasksToBlueprint(() => this.prompting);
|
|
92
87
|
}
|
|
93
|
-
get configuring() {
|
|
94
|
-
return this.asConfiguringTaskGroup({
|
|
95
|
-
configServerPort() {
|
|
96
|
-
if (!this.jhipsterConfig.serverPort && this.jhipsterConfig.applicationIndex) {
|
|
97
|
-
this.jhipsterConfig.serverPort = 8080 + this.jhipsterConfig.applicationIndex;
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
configure() {
|
|
101
|
-
this._configureServer();
|
|
102
|
-
},
|
|
103
|
-
syncUserWithIdp() {
|
|
104
|
-
if (this.jhipsterConfig.syncUserWithIdp === undefined && this.jhipsterConfig.authenticationType === OAUTH2) {
|
|
105
|
-
if (this.jhipsterConfig.databaseType === NO_DATABASE) {
|
|
106
|
-
this.jhipsterConfig.syncUserWithIdp = false;
|
|
107
|
-
}
|
|
108
|
-
else if (this.isJhipsterVersionLessThan('8.1.1')) {
|
|
109
|
-
this.jhipsterConfig.syncUserWithIdp = true;
|
|
110
|
-
}
|
|
111
|
-
else if (this.jhipsterConfig.applicationType === GATEWAY) {
|
|
112
|
-
// For compatibility with v8 microservices allow syncUserWithIdp by default.
|
|
113
|
-
// Switch to false at v9.
|
|
114
|
-
this.jhipsterConfig.syncUserWithIdp = true;
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
this.jhipsterConfig.syncUserWithIdp = this.getExistingEntities().some(entity => (entity.definition.relationships ?? []).some(relationship => relationship.otherEntityName.toLowerCase() === 'user'));
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
else if (this.jhipsterConfig.syncUserWithIdp && this.jhipsterConfig.authenticationType !== OAUTH2) {
|
|
121
|
-
throw new Error(`syncUserWithIdp is only supported with authenticationType ${OAUTH2}`);
|
|
122
|
-
}
|
|
123
|
-
},
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
get [BaseApplicationGenerator.CONFIGURING]() {
|
|
127
|
-
return this.delegateTasksToBlueprint(() => this.configuring);
|
|
128
|
-
}
|
|
129
88
|
get composing() {
|
|
130
89
|
return this.asComposingTaskGroup({
|
|
131
90
|
async composeCommand() {
|
|
@@ -143,17 +102,14 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
143
102
|
}
|
|
144
103
|
get loading() {
|
|
145
104
|
return this.asLoadingTaskGroup({
|
|
105
|
+
async loadCommand({ application }) {
|
|
106
|
+
await this.loadCurrentJHipsterCommandConfig(application);
|
|
107
|
+
},
|
|
146
108
|
loadEnvironmentVariables({ application }) {
|
|
147
109
|
application.packageInfoJavadocs?.push({ packageName: `${application.packageName}.aop.logging`, documentation: 'Logging aspect.' }, { packageName: `${application.packageName}.management`, documentation: 'Application management.' }, { packageName: `${application.packageName}.repository.rowmapper`, documentation: 'Webflux database column mapper.' }, { packageName: `${application.packageName}.security`, documentation: 'Application security utilities.' }, { packageName: `${application.packageName}.service.dto`, documentation: 'Data transfer objects for rest mapping.' }, { packageName: `${application.packageName}.service.mapper`, documentation: 'Data transfer objects mappers.' }, { packageName: `${application.packageName}.web.filter`, documentation: 'Request chain filters.' }, { packageName: `${application.packageName}.web.rest.errors`, documentation: 'Rest layer error handling.' }, { packageName: `${application.packageName}.web.rest.vm`, documentation: 'Rest layer visual models.' });
|
|
148
|
-
application.defaultPackaging = process.env.JHI_WAR === '1' ? 'war' : 'jar';
|
|
149
110
|
if (application.defaultPackaging === 'war') {
|
|
150
111
|
this.log.info(`Using ${application.defaultPackaging} as default packaging`);
|
|
151
112
|
}
|
|
152
|
-
const JHI_PROFILE = process.env.JHI_PROFILE;
|
|
153
|
-
application.defaultEnvironment = (JHI_PROFILE || '').includes('dev') ? 'dev' : 'prod';
|
|
154
|
-
if (JHI_PROFILE) {
|
|
155
|
-
this.log.info(`Using ${application.defaultEnvironment} as default profile`);
|
|
156
|
-
}
|
|
157
113
|
},
|
|
158
114
|
setupServerconsts({ application }) {
|
|
159
115
|
// Make constants available in templates
|
|
@@ -264,10 +220,12 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
264
220
|
// Don't touch the configuration for microservice entities published at gateways
|
|
265
221
|
!(applicationTypeGateway && entityConfig.microserviceName) &&
|
|
266
222
|
!application.searchEngineAny &&
|
|
267
|
-
|
|
223
|
+
entityConfig.searchEngine !== NO_SEARCH_ENGINE) {
|
|
224
|
+
if (entityConfig.searchEngine) {
|
|
225
|
+
this.log.warn('Search engine is enabled at entity level, but disabled at application level. Search engine will be disabled');
|
|
226
|
+
}
|
|
268
227
|
// Search engine can only be enabled at entity level and disabled at application level for gateways publishing a microservice entity
|
|
269
228
|
entityConfig.searchEngine = NO_SEARCH_ENGINE;
|
|
270
|
-
this.log.warn('Search engine is enabled at entity level, but disabled at application level. Search engine will be disabled');
|
|
271
229
|
}
|
|
272
230
|
},
|
|
273
231
|
configureModelFiltering({ application, entityConfig }) {
|
|
@@ -296,9 +254,13 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
296
254
|
configureEntityTable({ application, entityName, entityConfig }) {
|
|
297
255
|
if ((application.applicationTypeGateway && entityConfig.microserviceName) || entityConfig.skipServer)
|
|
298
256
|
return;
|
|
257
|
+
const { jhiTablePrefix, devDatabaseTypeH2Any } = application;
|
|
299
258
|
const databaseType = entityConfig.prodDatabaseType ?? application.prodDatabaseType ?? entityConfig.databaseType ?? application.databaseType;
|
|
300
259
|
const entityTableName = entityConfig.entityTableName ?? hibernateSnakeCase(entityName);
|
|
301
|
-
const fixedEntityTableName =
|
|
260
|
+
const fixedEntityTableName = (isReservedTableName(entityTableName, databaseType) || (devDatabaseTypeH2Any && isReservedH2Keyword(entityTableName))) &&
|
|
261
|
+
jhiTablePrefix
|
|
262
|
+
? `${jhiTablePrefix}_${entityTableName}`
|
|
263
|
+
: entityTableName;
|
|
302
264
|
if (fixedEntityTableName !== entityTableName) {
|
|
303
265
|
entityConfig.entityTableName = fixedEntityTableName;
|
|
304
266
|
}
|
|
@@ -397,25 +359,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
397
359
|
throw new Error(`Composite id is not supported. Defined in ${entitiesWithCompositeIds.map(entity => `${entity.name} (${entity.primaryKey.fields.map(field => field.fieldName)})`)}`);
|
|
398
360
|
}
|
|
399
361
|
},
|
|
400
|
-
insight({ application }) {
|
|
401
|
-
statistics.sendSubGenEvent('generator', GENERATOR_SERVER, {
|
|
402
|
-
app: {
|
|
403
|
-
authenticationType: application.authenticationType,
|
|
404
|
-
cacheProvider: application.cacheProvider,
|
|
405
|
-
enableHibernateCache: application.enableHibernateCache,
|
|
406
|
-
websocket: application.websocket,
|
|
407
|
-
databaseType: application.databaseType,
|
|
408
|
-
devDatabaseType: application.devDatabaseType,
|
|
409
|
-
prodDatabaseType: application.prodDatabaseType,
|
|
410
|
-
searchEngine: application.searchEngine,
|
|
411
|
-
messageBroker: application.messageBroker,
|
|
412
|
-
serviceDiscoveryType: application.serviceDiscoveryType,
|
|
413
|
-
buildTool: application.buildTool,
|
|
414
|
-
enableSwaggerCodegen: application.enableSwaggerCodegen,
|
|
415
|
-
enableGradleEnterprise: application.enableGradleEnterprise,
|
|
416
|
-
},
|
|
417
|
-
});
|
|
418
|
-
},
|
|
419
362
|
});
|
|
420
363
|
}
|
|
421
364
|
get [BaseApplicationGenerator.DEFAULT]() {
|
|
@@ -427,7 +370,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
427
370
|
const packageJsonConfigStorage = this.packageJson.createStorage('config').createProxy();
|
|
428
371
|
packageJsonConfigStorage.backend_port = application.gatewayServerPort || application.serverPort;
|
|
429
372
|
packageJsonConfigStorage.packaging = application.defaultPackaging;
|
|
430
|
-
packageJsonConfigStorage.default_environment = application.defaultEnvironment;
|
|
431
373
|
},
|
|
432
374
|
packageJsonBackendScripts({ application }) {
|
|
433
375
|
const scriptsStorage = this.packageJson.createStorage('scripts');
|
|
@@ -506,38 +448,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
506
448
|
get [BaseApplicationGenerator.POST_WRITING]() {
|
|
507
449
|
return this.delegateTasksToBlueprint(() => this.postWriting);
|
|
508
450
|
}
|
|
509
|
-
_configureServer(config = this.jhipsterConfigWithDefaults, dest = this.jhipsterConfig) {
|
|
510
|
-
// Generate JWT secret key if key does not already exist in config
|
|
511
|
-
if ((config.authenticationType === JWT || config.applicationType === MICROSERVICE || config.applicationType === GATEWAY) &&
|
|
512
|
-
config.jwtSecretKey === undefined) {
|
|
513
|
-
dest.jwtSecretKey = createBase64Secret(64, this.options.reproducibleTests);
|
|
514
|
-
}
|
|
515
|
-
// Generate remember me key if key does not already exist in config
|
|
516
|
-
if (config.authenticationType === SESSION && !dest.rememberMeKey) {
|
|
517
|
-
dest.rememberMeKey = createSecret();
|
|
518
|
-
}
|
|
519
|
-
if (config.authenticationType === OAUTH2) {
|
|
520
|
-
dest.skipUserManagement = true;
|
|
521
|
-
}
|
|
522
|
-
if (!config.databaseType && config.prodDatabaseType) {
|
|
523
|
-
dest.databaseType = getDBTypeFromDBValue(config.prodDatabaseType);
|
|
524
|
-
}
|
|
525
|
-
if (!config.devDatabaseType && config.prodDatabaseType) {
|
|
526
|
-
dest.devDatabaseType = config.prodDatabaseType;
|
|
527
|
-
}
|
|
528
|
-
const databaseType = config.databaseType;
|
|
529
|
-
if (databaseType === NO_DATABASE) {
|
|
530
|
-
dest.devDatabaseType = NO_DATABASE;
|
|
531
|
-
dest.prodDatabaseType = NO_DATABASE;
|
|
532
|
-
dest.enableHibernateCache = false;
|
|
533
|
-
dest.skipUserManagement = true;
|
|
534
|
-
}
|
|
535
|
-
else if ([MONGODB, NEO4J, COUCHBASE, CASSANDRA].includes(databaseType)) {
|
|
536
|
-
dest.devDatabaseType = databaseType;
|
|
537
|
-
dest.prodDatabaseType = databaseType;
|
|
538
|
-
dest.enableHibernateCache = false;
|
|
539
|
-
}
|
|
540
|
-
}
|
|
541
451
|
/**
|
|
542
452
|
* Validate the entityTableName
|
|
543
453
|
* @return {true|string} true for a valid value or error message.
|
|
@@ -631,12 +541,6 @@ export default class JHipsterServerGenerator extends BaseApplicationGenerator {
|
|
|
631
541
|
throw new Error(`relationshipSide is missing in .jhipster/${entityName}.json for relationship ${stringifyApplicationData(relationship)}`);
|
|
632
542
|
}
|
|
633
543
|
}
|
|
634
|
-
_fixEntityTableName(entityTableName, prodDatabaseType, jhiTablePrefix) {
|
|
635
|
-
if (isReservedTableName(entityTableName, prodDatabaseType) && jhiTablePrefix) {
|
|
636
|
-
entityTableName = `${jhiTablePrefix}_${entityTableName}`;
|
|
637
|
-
}
|
|
638
|
-
return entityTableName;
|
|
639
|
-
}
|
|
640
544
|
/**
|
|
641
545
|
* @private
|
|
642
546
|
* Return the method name which converts the filter to specification
|
|
@@ -20,11 +20,13 @@ import { upperCase, snakeCase } from 'lodash-es';
|
|
|
20
20
|
import databaseMigrationOption from '../options/database-migration.js';
|
|
21
21
|
import messageBrokerOption from '../options/message-broker.js';
|
|
22
22
|
import { feignClientDefinition, syncUserWithIdpDefinition } from '../options/index.js';
|
|
23
|
+
import { jdlRoutesOptions } from '../../spring-cloud/generators/gateway/jdl/jdl-routes-option.js';
|
|
23
24
|
const jdlOptions = [
|
|
24
25
|
databaseMigrationOption,
|
|
25
26
|
messageBrokerOption,
|
|
26
27
|
feignClientDefinition,
|
|
27
28
|
syncUserWithIdpDefinition,
|
|
29
|
+
jdlRoutesOptions,
|
|
28
30
|
];
|
|
29
31
|
const applicationConfig = {
|
|
30
32
|
tokenConfigs: jdlOptions.map(option => ({
|
|
@@ -45,7 +47,7 @@ const applicationConfig = {
|
|
|
45
47
|
optionsTypes: Object.fromEntries(jdlOptions.map(option => [
|
|
46
48
|
option.name,
|
|
47
49
|
{
|
|
48
|
-
type:
|
|
50
|
+
type: option.type,
|
|
49
51
|
},
|
|
50
52
|
])),
|
|
51
53
|
};
|