generator-jhipster 8.0.0 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -57
- package/dist/cli/environment-builder.mjs +11 -4
- package/dist/cli/program.mjs +1 -1
- package/dist/generators/angular/cleanup.mjs +7 -0
- package/dist/generators/angular/files-angular.mjs +3 -4
- package/dist/generators/angular/generator.mjs +2 -15
- package/dist/generators/angular/needle-api/needle-client-angular.mjs +2 -8
- package/dist/generators/angular/resources/package.json +23 -23
- package/dist/generators/angular/support/translate-angular.mjs +2 -2
- package/dist/generators/angular/templates/README.md.jhi.client.angular.ejs +1 -1
- package/dist/generators/angular/templates/angular.json.ejs +3 -7
- package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.html.ejs +6 -4
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +39 -33
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +44 -36
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +24 -23
- package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +74 -62
- package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.html.ejs +12 -4
- package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +54 -48
- package/dist/generators/angular/templates/src/main/webapp/app/admin/admin.routes.ts.ejs +74 -0
- package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +15 -5
- package/dist/generators/angular/templates/src/main/webapp/app/admin/docs/docs.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +20 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.html.ejs +10 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +9 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.html.ejs +12 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +13 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +6 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +3 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.html.ejs +13 -9
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +13 -5
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +21 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +6 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.html.ejs +3 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +16 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +3 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +3 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +11 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +20 -11
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +48 -34
- package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +73 -0
- package/dist/generators/angular/templates/src/main/webapp/app/app.config.ts.ejs +67 -0
- package/dist/generators/angular/templates/src/main/webapp/app/app.routes.ts.ejs +85 -0
- package/dist/generators/angular/templates/src/main/webapp/app/core/microfrontend/index.ts.ejs +5 -4
- package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/core/util/event-manager.service.spec.ts.ejs +12 -12
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.model.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +3 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +26 -14
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +38 -25
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +5 -12
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +55 -21
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.ts.ejs +10 -10
- package/dist/generators/angular/templates/src/main/webapp/app/entities/entity.routes.ts.ejs +25 -0
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +21 -17
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.spec.ts.ejs +5 -2
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +5 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +97 -78
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.scss.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +6 -4
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.html.ejs +6 -2
- package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.html.ejs +6 -2
- package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +11 -7
- package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.model.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort-by.directive.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/bootstrap.ts.ejs +5 -5
- package/dist/generators/angular/templates/src/main/webapp/content/scss/global.scss.ejs +1 -1
- package/dist/generators/angular/templates/webpack/webpack.microfrontend.js.ejs +2 -2
- package/dist/generators/app/README.md +108 -0
- package/dist/generators/app/USAGE +3 -0
- package/dist/generators/app/command.mjs +3 -3
- package/dist/generators/app/generator.mjs +11 -0
- package/dist/generators/base/command.mjs +0 -11
- package/dist/generators/base-application/generator.mjs +5 -6
- package/dist/generators/base-application/support/entities.mjs +2 -2
- package/dist/generators/base-application/support/index.mjs +1 -0
- package/dist/generators/base-application/support/prepare-entity.mjs +0 -1
- package/dist/generators/base-application/support/prepare-relationship.mjs +4 -0
- package/dist/generators/base-application/support/update-application-entities-transform.mjs +52 -0
- package/dist/generators/base-core/generator.mjs +17 -4
- package/dist/generators/base-entity-changes/generator.mjs +1 -1
- package/dist/generators/bootstrap/command.mjs +6 -0
- package/dist/generators/bootstrap/generator.mjs +27 -9
- package/dist/generators/bootstrap-application/generator.mjs +1 -19
- package/dist/generators/bootstrap-application-base/command.mjs +30 -0
- package/dist/generators/bootstrap-application-base/generator.mjs +27 -5
- package/dist/generators/bootstrap-application-base/index.mjs +1 -0
- package/dist/generators/bootstrap-application-base/support/export-jdl-transform.mjs +61 -0
- package/dist/generators/bootstrap-application-base/support/import-jdl-transform.mjs +64 -0
- package/dist/generators/bootstrap-application-base/support/index.mjs +2 -0
- package/dist/generators/client/command.mjs +2 -0
- package/dist/generators/client/resources/package.json +4 -4
- package/dist/generators/client/support/entity-definition.mjs +3 -3
- package/dist/generators/client/templates/README.md.jhi.client.ejs +2 -2
- package/dist/generators/client/templates/src/main/webapp/index.html.ejs +2 -2
- package/dist/generators/common/command.mjs +2 -0
- package/dist/generators/common/resources/package.json +3 -3
- package/dist/generators/common/templates/sonar-project.properties.ejs +1 -1
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/entity/_entity_.cy.ts.ejs +0 -1
- package/dist/generators/docker/generator.mjs +1 -1
- package/dist/generators/docker/templates/docker/cassandra.yml.ejs +2 -2
- package/dist/generators/docker/templates/docker/keycloak.yml.ejs +1 -1
- package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +4 -1
- package/dist/generators/docker-compose/generator.mjs +4 -11
- package/dist/generators/docker-compose/templates/docker-compose.yml.ejs +1 -1
- package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +4 -1
- package/dist/generators/export-jdl/generator.mjs +1 -1
- package/dist/generators/feign-client/cleanup.mjs +12 -0
- package/dist/generators/feign-client/files.mjs +35 -0
- package/dist/generators/feign-client/generator.mjs +65 -0
- package/dist/generators/feign-client/index.mjs +19 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/AuthorizationHeaderUtil.java.ejs +174 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/AuthorizedFeignClient.java.ejs +72 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/OAuth2InterceptedFeignConfiguration.java.ejs +35 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/OAuthIdpTokenResponseDTO.java.ejs +161 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/TokenRelayRequestInterceptor.java.ejs +42 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/client/UserFeignClientInterceptor_jwt.java.ejs +36 -0
- package/dist/generators/feign-client/templates/src/main/java/_package_/config/FeignConfiguration.java.ejs +45 -0
- package/dist/generators/feign-client/templates/src/test/java/_package_/client/AuthorizationHeaderUtilTest.java.ejs +263 -0
- package/dist/generators/generate-blueprint/command.mjs +1 -1
- package/dist/generators/generate-blueprint/resources/package.json +1 -1
- package/dist/generators/generate-blueprint/templates/vitest.config.ts.ejs +1 -1
- package/dist/generators/generator-constants.mjs +9 -5
- package/dist/generators/generator-list.mjs +1 -0
- package/dist/generators/git/generator.mjs +3 -5
- package/dist/generators/gradle/constants.mjs +1 -1
- package/dist/generators/java/command.mjs +6 -0
- package/dist/generators/java/entity-files.mjs +4 -0
- package/dist/generators/java/generator.mjs +3 -2
- package/dist/generators/java/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jackson_identity_info.ejs +30 -0
- package/dist/generators/jdl/generator.mjs +18 -23
- package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +4 -1
- package/dist/generators/kubernetes/templates/keycloak/keycloak.yml.ejs +1 -1
- package/dist/generators/languages/generator.mjs +24 -15
- package/dist/generators/languages/prompts.mjs +3 -1
- package/dist/generators/languages/support/translate.mjs +1 -1
- package/dist/generators/languages/templates/entity/i18n/entity_pt-br.json.ejs +1 -1
- package/dist/generators/liquibase/README.md +19 -0
- package/dist/generators/project-name/generator.mjs +14 -19
- package/dist/generators/project-name/support/name-resolver.mjs +35 -6
- package/dist/generators/react/resources/package.json +24 -24
- package/dist/generators/react/templates/src/main/webapp/app/config/notification-middleware.spec.ts.ejs +4 -4
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-detail.tsx.ejs +1 -2
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.tsx.ejs +12 -13
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.tsx.ejs +3 -8
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityModel_.model.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/shared/layout/header/header.scss.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/reducer.utils.ts.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/shared/util/date-utils.ts.ejs +1 -1
- package/dist/generators/server/cleanup.mjs +5 -0
- package/dist/generators/server/command.mjs +13 -2
- package/dist/generators/server/entity-files.mjs +3 -3
- package/dist/generators/server/files.mjs +2 -38
- package/dist/generators/server/generator.mjs +35 -19
- package/dist/generators/server/jdl/application-definition.mjs +5 -2
- package/dist/generators/server/options/feign-client.mjs +24 -0
- package/dist/generators/server/options/index.mjs +1 -0
- package/dist/generators/server/resources/Dockerfile +16 -16
- package/dist/generators/server/resources/gradle/libs.versions.toml +4 -4
- package/dist/generators/server/resources/pom.xml +11 -11
- package/dist/generators/server/support/config.mjs +1 -0
- package/dist/generators/server/support/prepare-entity.mjs +4 -1
- package/dist/generators/server/templates/build.gradle.ejs +1 -2
- package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -21
- package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +5 -15
- package/dist/generators/server/templates/pom.xml.ejs +1 -4
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/get_all_template.ejs +7 -7
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/_partials_entity_/search_template.ejs +4 -4
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/repository/_entityClass_Repository.java.ejs +1 -1
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/service/mapper/_entityClass_Mapper.java.ejs +2 -2
- package/dist/generators/server/templates/src/main/java/_package_/_entityPackage_/web/rest/_entityClass_Resource.java.ejs +3 -3
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +20 -2
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_reactive.java.ejs +4 -1
- package/dist/generators/server/templates/src/main/java/_package_/security/oauth2/CustomClaimConverter.java.ejs +1 -5
- package/dist/generators/server/templates/src/main/java/_package_/service/MailService.java.ejs +48 -12
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +1 -1
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/LogoutResource_imperative.java.ejs +4 -13
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/LogoutResource_reactive.java.ejs +5 -11
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/PublicUserResource.java.ejs +3 -3
- package/dist/generators/server/templates/src/main/java/_package_/web/rest/UserResource.java.ejs +6 -6
- package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +8 -7
- package/dist/generators/server/templates/src/test/java/_package_/TechnicalStructureTest.java.ejs +1 -1
- package/dist/generators/server/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +8 -8
- package/dist/generators/server/templates/src/test/java/_package_/web/rest/errors/ExceptionTranslatorTestController.java.ejs +2 -2
- package/dist/generators/spring-cache/internal/dependencies.mjs +1 -1
- package/dist/generators/spring-cache/templates/gradle/cache.gradle.ejs +1 -1
- package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheFactoryConfiguration.java.ejs +1 -1
- package/dist/generators/spring-cloud-stream/templates/src/main/java/_package_/web/rest/KafkaResource_imperative.java.ejs +1 -1
- package/dist/generators/spring-cloud-stream/templates/src/main/java/_package_/web/rest/KafkaResource_reactive.java.ejs +1 -1
- package/dist/generators/spring-cloud-stream/templates/src/test/java/_package_/web/rest/KafkaResourceIT_reactive.java.ejs +3 -0
- package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.elastic_search.ejs +1 -1
- package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/_entityPackage_/repository/search/_entityClass_SearchRepository.java.ejs +1 -1
- package/dist/generators/spring-data-elasticsearch/templates/src/main/java/_package_/repository/search/UserSearchRepository.java.ejs +4 -4
- package/dist/generators/spring-data-neo4j/generator.mjs +43 -1
- package/dist/generators/spring-data-neo4j/templates/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.spring_data_neo4j.ejs +1 -1
- package/dist/generators/spring-data-relational/README.md +7 -0
- package/dist/generators/spring-data-relational/generator.mjs +2 -1
- package/dist/generators/spring-data-relational/internal/dependencies.mjs +29 -8
- package/dist/generators/spring-data-relational/support/database-data.mjs +4 -0
- package/dist/generators/spring-data-relational/templates/src/main/java/_package_/repository/EntityManager_reactive.java.ejs +49 -8
- package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +1 -1
- package/dist/generators/upgrade/generator.mjs +3 -3
- package/dist/generators/vue/resources/package.json +21 -21
- package/dist/generators/vue/templates/package.json.ejs +1 -0
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-details.vue.ejs +1 -2
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.component.spec.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.component.ts.ejs +3 -3
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +2 -15
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.vue.ejs +2 -7
- package/dist/jdl/converters/jdl-to-json/jdl-to-json-basic-entity-converter.js +1 -0
- package/dist/jdl/converters/json-to-jdl-converter.js +1 -1
- package/dist/jdl/converters/json-to-jdl-entity-converter.js +1 -0
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/entity-converter.js +5 -0
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +0 -27
- package/dist/jdl/exporters/jhipster-entity-exporter.js +3 -2
- package/dist/jdl/jhipster/default-application-options.js +1 -1
- package/dist/jdl/jhipster/field-types.js +1 -1
- package/dist/jdl/jhipster/json-entity.js +6 -0
- package/dist/jdl/models/jdl-entity.js +16 -1
- package/dist/jdl/models/jdl-field.js +13 -0
- package/dist/jdl/models/jdl-object.js +3 -3
- package/dist/jdl/models/jdl-relationship.js +23 -5
- package/dist/jdl/parsing/lexer/application-tokens.js +1 -1
- package/dist/testing/helpers.mjs +10 -3
- package/dist/types/cli/environment-builder.d.mts +2 -0
- package/dist/types/generators/angular/needle-api/needle-client-angular.d.mts +0 -1
- package/dist/types/generators/base/api.d.mts +12 -0
- package/dist/types/generators/base/support/needles.d.mts +1 -1
- package/dist/types/generators/base-application/generator.d.mts +2 -2
- package/dist/types/generators/base-application/support/index.d.mts +1 -0
- package/dist/types/generators/base-application/support/update-application-entities-transform.d.mts +4 -0
- package/dist/types/generators/base-application/types/relationship.d.mts +4 -0
- package/dist/types/generators/base-core/generator.d.mts +7 -1
- package/dist/types/generators/bootstrap-application-base/support/export-jdl-transform.d.mts +8 -0
- package/dist/types/generators/bootstrap-application-base/support/import-jdl-transform.d.mts +6 -0
- package/dist/types/generators/bootstrap-application-base/support/index.d.mts +2 -0
- package/dist/types/generators/client/support/entity-definition.d.mts +2 -2
- package/dist/types/generators/feign-client/types-export.d.ts +1 -0
- package/dist/types/generators/generator-constants.d.mts +52 -48
- package/dist/types/generators/generator-list.d.mts +1 -0
- package/dist/types/generators/project-name/support/name-resolver.d.mts +9 -1
- package/dist/types/generators/server/options/feign-client.d.mts +21 -0
- package/dist/types/generators/server/options/index.d.mts +1 -0
- package/dist/types/jdl/converters/json-to-jdl-converter.d.ts +1 -0
- package/dist/types/jdl/converters/parsed-jdl-to-jdl-object/option-converter.d.ts +1 -1
- package/dist/types/jdl/jhipster/json-entity.d.ts +2 -0
- package/dist/types/jdl/models/jdl-entity.d.ts +1 -0
- package/dist/types/jdl/models/jdl-relationship.d.ts +0 -18
- package/dist/types/jdl/types/types.d.mts +2 -2
- package/package.json +27 -27
|
@@ -19,12 +19,11 @@
|
|
|
19
19
|
<%_
|
|
20
20
|
const formDefaultProperties = [
|
|
21
21
|
...fields.filter(field => field.fieldTypeTimed || field.fieldTypeBoolean || field.id).map(field => field.fieldName),
|
|
22
|
-
...relationships.filter(relationship => relationship.collection &&
|
|
22
|
+
...relationships.filter(relationship => relationship.collection && relationship.persistableRelationship).map(relationship => relationship.propertyName)
|
|
23
23
|
];
|
|
24
24
|
const containDefaultProperties = formDefaultProperties.length > 0;
|
|
25
25
|
const entityFormName = anyFieldIsTimeDerived ? `${entityAngularName}FormRawValue` : `I${entityAngularName}`;
|
|
26
26
|
const newEntityFormName = anyFieldIsTimeDerived ? `New${entityAngularName}FormRawValue` : `New${entityAngularName}`;
|
|
27
|
-
const noPropertyEntity = fields.filter(field => !field.id).length === 0 && relationships.filter(relationship => relationship.ownerSide || relationship.relationshipManyToMany).length === 0;
|
|
28
27
|
_%>
|
|
29
28
|
import { Injectable } from '@angular/core';
|
|
30
29
|
import { FormGroup, FormControl, Validators } from '@angular/forms';
|
|
@@ -74,7 +73,7 @@ _%>
|
|
|
74
73
|
<%= fieldName %>ContentType: FormControl<<%= entityFormName %>['<%= fieldName %>ContentType']>;
|
|
75
74
|
<%_ } _%>
|
|
76
75
|
<%_ } _%>
|
|
77
|
-
<%_ for (const relationship of relationships.filter(relationship => relationship.
|
|
76
|
+
<%_ for (const relationship of relationships.filter(relationship => relationship.persistableRelationship)) {
|
|
78
77
|
const { propertyName, otherEntity } = relationship;
|
|
79
78
|
_%>
|
|
80
79
|
<%= propertyName %>: FormControl<<%= entityFormName %>['<%= propertyName %>']>;
|
|
@@ -146,7 +145,7 @@ _%>
|
|
|
146
145
|
<%= fieldName %>ContentType: new FormControl(<%= entityInstance %>RawValue.<%= fieldName %>ContentType),
|
|
147
146
|
<%_ } _%>
|
|
148
147
|
<%_ } _%>
|
|
149
|
-
<%_ for (const relationship of relationships.filter(relationship => relationship.
|
|
148
|
+
<%_ for (const relationship of relationships.filter(relationship => relationship.persistableRelationship)) {
|
|
150
149
|
const { relationshipRequired, propertyName, relationshipName, collection, otherEntity } = relationship;
|
|
151
150
|
_%>
|
|
152
151
|
<%= propertyName %>: new FormControl(
|
|
@@ -162,12 +161,6 @@ _%>
|
|
|
162
161
|
}
|
|
163
162
|
|
|
164
163
|
get<%= entityAngularName %>(form: <%= entityAngularName %>FormGroup): I<%= entityAngularName %> | New<%= entityAngularName %> {
|
|
165
|
-
<%_ if (noPropertyEntity) { _%>
|
|
166
|
-
if (form.controls.<%= primaryKey.name %>.disabled) {
|
|
167
|
-
// form.value returns <%= primaryKey.name %> with null value for FormGroup with only one FormControl
|
|
168
|
-
return { <%= primaryKey.name %>: null };
|
|
169
|
-
}
|
|
170
|
-
<%_ } _%>
|
|
171
164
|
<%_ if (anyFieldIsTimeDerived) { _%>
|
|
172
165
|
return this.convert<%= entityAngularName %>RawValueTo<%= entityAngularName %>(form.getRawValue() as <%= entityAngularName %>FormRawValue | New<%= entityAngularName %>FormRawValue);
|
|
173
166
|
<%_ } else { _%>
|
|
@@ -215,7 +208,7 @@ _%>
|
|
|
215
208
|
<%= fieldName %>: currentTime,
|
|
216
209
|
<%_ } _%>
|
|
217
210
|
<%_ } _%>
|
|
218
|
-
<%_ for (const relationship of relationships.filter(({
|
|
211
|
+
<%_ for (const relationship of relationships.filter(({ persistableRelationship }) => persistableRelationship)) {
|
|
219
212
|
const { relationshipRequired, propertyName, collection, otherEntity, relationshipName } = relationship;
|
|
220
213
|
_%>
|
|
221
214
|
<%_ if (collection) { _%>
|
|
@@ -250,7 +243,7 @@ _%>
|
|
|
250
243
|
<%= fieldName %>: <%= entityInstance %>.<%= fieldName %> ? <%= entityInstance %>.<%= fieldName %>.format(DATE_TIME_FORMAT) : undefined,
|
|
251
244
|
<%_ } _%>
|
|
252
245
|
<%_ } _%>
|
|
253
|
-
<%_ for (const relationship of relationships.filter(({
|
|
246
|
+
<%_ for (const relationship of relationships.filter(({ persistableRelationship }) => persistableRelationship)) {
|
|
254
247
|
const { relationshipRequired, propertyName, collection } = relationship;
|
|
255
248
|
_%>
|
|
256
249
|
<%_ if (collection) { _%>
|
|
@@ -44,21 +44,27 @@
|
|
|
44
44
|
}
|
|
45
45
|
_%>
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
<% if (field.autoGenerate) { %>@if (editForm.controls.<%= field.fieldName %>.value !== null) {<% } %>
|
|
48
|
+
<div class="mb-3">
|
|
48
49
|
<label class="form-label" <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= fieldName %>"<% if (field.documentation) { if (enableTranslation) { %> [ngbTooltip]="'<%= i18nKeyPrefix %>.help.<%= fieldName %>' | translate"<% } else { %> ngbTooltip="<%= field.documentation %>"<% } } %>><%= fieldNameHumanized %></label>
|
|
49
50
|
<%_ if (field.fieldIsEnum) { _%>
|
|
50
51
|
<select class="form-control" name="<%= fieldName %>" formControlName="<%= fieldName %>" id="field_<%= fieldName %>" data-cy="<%= fieldName %>">
|
|
51
52
|
<%_ const enumPrefix = frontendAppName + '.'+ fieldType; _%>
|
|
52
53
|
<option [ngValue]="null"><% if (enableTranslation) { %>{{ '<%= enumPrefix %>.null' | translate }}<% } %></option>
|
|
53
|
-
|
|
54
|
+
@for (<%= this._.lowerFirst(fieldType) %> of <%- this._.lowerFirst(fieldType) %>Values; track $index) {
|
|
55
|
+
<option [value]="<%= this._.lowerFirst(fieldType) %>"><% if (enableTranslation) { %>{{ '<%= enumPrefix %>.' + <%= this._.lowerFirst(fieldType) %> | translate }}<% } else { %> {{ <%= this._.lowerFirst(fieldType) %> }} <% } %></option>
|
|
56
|
+
}
|
|
54
57
|
</select>
|
|
55
58
|
<%_ } else { _%>
|
|
56
59
|
<%_ if (field.fieldTypeBinary && !field.blobContentTypeText) { _%>
|
|
57
60
|
<div>
|
|
58
61
|
<%_ if (field.blobContentTypeImage) { _%>
|
|
59
|
-
|
|
62
|
+
@if (editForm.get('<%= fieldName %>')!.value) {
|
|
63
|
+
<img [src]="'data:' + editForm.get('<%= fieldName %>ContentType')!.value + ';base64,' + editForm.get('<%= fieldName %>')!.value" style="max-height: 100px" alt="<%= entityInstance %> image"/>
|
|
64
|
+
}
|
|
60
65
|
<%_ } _%>
|
|
61
|
-
|
|
66
|
+
@if (editForm.get('<%= fieldName %>')!.value) {
|
|
67
|
+
<div class="form-text text-danger clearfix">
|
|
62
68
|
<%_ if (field.blobContentTypeAny) { _%>
|
|
63
69
|
<a class="pull-start" (click)="openFile(editForm.get('<%= fieldName %>')!.value!, editForm.get('<%= fieldName %>ContentType')!.value!)" <%= jhiPrefix %>Translate="entity.action.open">__jhiTransformTranslate__('entity.action.open')</a><br>
|
|
64
70
|
<span class="pull-start">{{ editForm.get('<%= fieldName %>ContentType')!.value }}, {{ byteSize(editForm.get('<%= fieldName %>')!.value!) }}</span>
|
|
@@ -74,6 +80,7 @@ _%>
|
|
|
74
80
|
<fa-icon icon="times"></fa-icon>
|
|
75
81
|
</button>
|
|
76
82
|
</div>
|
|
83
|
+
}
|
|
77
84
|
<input type="file" id="file_<%= fieldName %>" data-cy="<%= fieldName %>" (change)="setFileData($event, '<%= fieldName %>', <% if (fieldTypeBlobContent === 'image') { %>true)" accept="image/*"<% if (enableTranslation) { %> <%= jhiPrefix %>Translate="entity.action.addimage"<% } %><% } else { %>false)"<% if (enableTranslation) { %> <%= jhiPrefix %>Translate="entity.action.addblob"<% } %><% } %>/>
|
|
78
85
|
</div>
|
|
79
86
|
<%_ } _%>
|
|
@@ -102,30 +109,43 @@ _%>
|
|
|
102
109
|
<%_ } _%>
|
|
103
110
|
<%_ } _%>
|
|
104
111
|
<%_ if (field.fieldValidate) { _%>
|
|
105
|
-
|
|
112
|
+
@if (editForm.get('<%= fieldName %>')!.invalid && (editForm.get('<%= fieldName %>')!.dirty || editForm.get('<%= fieldName %>')!.touched)) {
|
|
113
|
+
<div>
|
|
106
114
|
<%_ if (field.fieldValidationRequired) { _%>
|
|
115
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.required) {
|
|
107
116
|
<small class="form-text text-danger"
|
|
108
|
-
|
|
117
|
+
<%= jhiPrefix %>Translate="entity.validation.required">__jhiTransformTranslate__('entity.validation.required')</small>
|
|
118
|
+
}
|
|
109
119
|
<%_ } _%>
|
|
110
120
|
<%_ if (field.fieldValidationMinLength) { _%>
|
|
121
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.minlength) {
|
|
111
122
|
<small class="form-text text-danger"
|
|
112
|
-
|
|
123
|
+
<%= jhiPrefix %>Translate="entity.validation.minlength" [translateValues]="{ min: <%= field.fieldValidateRulesMinlength %> }">__jhiTransformTranslate__('entity.validation.minlength', { "min": <%- field.fieldValidateRulesMinlength %> })</small>
|
|
124
|
+
}
|
|
113
125
|
<%_ } _%>
|
|
114
126
|
<%_ if (field.fieldValidationMaxLength) { _%>
|
|
127
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.maxlength) {
|
|
115
128
|
<small class="form-text text-danger"
|
|
116
|
-
|
|
129
|
+
<%= jhiPrefix %>Translate="entity.validation.maxlength" [translateValues]="{ max: <%= field.fieldValidateRulesMaxlength %> }">__jhiTransformTranslate__('entity.validation.maxlength', { "max": <%- field.fieldValidateRulesMaxlength %> })</small>
|
|
130
|
+
}
|
|
117
131
|
<%_ } _%>
|
|
118
132
|
<%_ if (field.fieldValidationMin) { _%>
|
|
133
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.min) {
|
|
119
134
|
<small class="form-text text-danger"
|
|
120
|
-
|
|
135
|
+
<%= jhiPrefix %>Translate="entity.validation.min" [translateValues]="{ min: <%= field.fieldValidateRulesMin %> }">__jhiTransformTranslate__('entity.validation.min', { "min": <%- field.fieldValidateRulesMin %> })</small>
|
|
136
|
+
}
|
|
121
137
|
<%_ } _%>
|
|
122
138
|
<%_ if (field.fieldValidationMax) { _%>
|
|
139
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.max) {
|
|
123
140
|
<small class="form-text text-danger"
|
|
124
|
-
|
|
141
|
+
<%= jhiPrefix %>Translate="entity.validation.max" [translateValues]="{ max: <%= field.fieldValidateRulesMax %> }">__jhiTransformTranslate__('entity.validation.max', { "max": <%- field.fieldValidateRulesMax %> })</small>
|
|
142
|
+
}
|
|
125
143
|
<%_ } _%>
|
|
126
144
|
<%_ if (field.fieldValidationPattern) { _%>
|
|
145
|
+
@if (editForm.get('<%= fieldName %>')?.errors?.pattern) {
|
|
127
146
|
<small class="form-text text-danger"
|
|
128
|
-
|
|
147
|
+
<%= jhiPrefix %>Translate="entity.validation.pattern" [translateValues]="{ pattern: '<%= fieldNameHumanized %>' }">__jhiTransformTranslate__('entity.validation.pattern', { "pattern": "<%- fieldNameHumanized %>" })</small>
|
|
148
|
+
}
|
|
129
149
|
<%_ } _%>
|
|
130
150
|
<%_ if (field.fieldTypeNumeric || field.fieldTypeDuration) { _%>
|
|
131
151
|
<small class="form-text text-danger"
|
|
@@ -136,17 +156,19 @@ _%>
|
|
|
136
156
|
[hidden]="!editForm.get('<%= fieldName %>')?.errors?.datetimelocal" <%= jhiPrefix %>Translate="entity.validation.datetimelocal">__jhiTransformTranslate__('entity.validation.datetimelocal')</small>
|
|
137
157
|
<%_ } _%>
|
|
138
158
|
</div>
|
|
159
|
+
}
|
|
139
160
|
<%_ } _%>
|
|
140
161
|
</div>
|
|
162
|
+
<% if (field.autoGenerate) { %>}<% } %>
|
|
141
163
|
<%_ } _%>
|
|
142
164
|
<%_ for (const relationship of relationships.filter(rel => rel.otherEntity.primaryKey)) {
|
|
143
|
-
const { otherEntity,
|
|
165
|
+
const { otherEntity, relationshipName, propertyName, otherEntityField, relationshipRequired } = relationship;
|
|
144
166
|
const otherEntityName = relationship.otherEntityName;
|
|
145
167
|
const relationshipFieldName = relationship.relationshipFieldName;
|
|
146
168
|
const relationshipFieldNamePlural = relationship.relationshipFieldNamePlural;
|
|
147
169
|
const translationKey = `${i18nKeyPrefix}.${relationshipName}`;
|
|
148
170
|
_%>
|
|
149
|
-
<%_ if (relationship.
|
|
171
|
+
<%_ if (relationship.persistableRelationship && !relationship.collection) { _%>
|
|
150
172
|
|
|
151
173
|
<div class="mb-3">
|
|
152
174
|
<label class="form-label" <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= relationshipName %>">__jhiTransformTranslate__('<%- translationKey %>')</label>
|
|
@@ -154,29 +176,41 @@ _%>
|
|
|
154
176
|
<%_ if (!relationshipRequired) { _%>
|
|
155
177
|
<option [ngValue]="null"></option>
|
|
156
178
|
<%_ } else if (!relationship.otherRelationship) { _%>
|
|
157
|
-
|
|
179
|
+
@if (!editForm.get('<%= relationshipName %>')!.value) {
|
|
180
|
+
<option [ngValue]="null" selected></option>
|
|
181
|
+
}
|
|
158
182
|
<%_ } else { _%>
|
|
159
|
-
|
|
183
|
+
@if (editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])!.value == null) {
|
|
184
|
+
<option [ngValue]="null" selected></option>
|
|
185
|
+
}
|
|
160
186
|
<%_ } _%>
|
|
161
|
-
|
|
187
|
+
@for (<%= otherEntityName %>Option of <% if (!relationship.otherRelationship || relationship.relationshipManyToOne) { %><%= otherEntity.entityInstancePlural %>Shared<% } else { %><%= relationshipFieldNamePlural %><% } %>Collection; track $index) {
|
|
188
|
+
<option [ngValue]="<%= otherEntityName %>Option">{{ <%= otherEntityName %>Option.<%= otherEntityField %> }}</option>
|
|
189
|
+
}
|
|
162
190
|
</select>
|
|
163
191
|
</div>
|
|
164
|
-
<%_ } else if (relationship.
|
|
192
|
+
<%_ } else if (relationship.persistableRelationship) { _%>
|
|
165
193
|
|
|
166
194
|
<div class="mb-3">
|
|
167
195
|
<label <%= jhiPrefix %>Translate="<%= translationKey %>" for="field_<%= relationshipFieldNamePlural %>">__jhiTransformTranslate__('<%- translationKey %>')</label>
|
|
168
196
|
<select class="form-control" id="field_<%= relationshipFieldNamePlural %>" data-cy="<%= relationshipFieldName %>" multiple name="<%= propertyName %>" formControlName="<%= propertyName %>" [compareWith]="compare<%= otherEntity.entityAngularName %>">
|
|
169
|
-
|
|
197
|
+
@for (<%= otherEntityName %>Option of <%= otherEntity.entityInstancePlural %>SharedCollection; track $index) {
|
|
198
|
+
<option [ngValue]="<%= otherEntityName %>Option">{{ <%= otherEntityName %>Option.<%= otherEntityField %> }}</option>
|
|
199
|
+
}
|
|
170
200
|
</select>
|
|
171
201
|
</div>
|
|
172
202
|
<%_ } _%>
|
|
173
|
-
<%_ if (relationship.relationshipValidate &&
|
|
174
|
-
|
|
203
|
+
<%_ if (relationship.relationshipValidate && relationship.persistableRelationship) { _%>
|
|
204
|
+
@if (editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])!.invalid && (editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])!.dirty || editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])!.touched)) {
|
|
205
|
+
<div>
|
|
175
206
|
<%_ if (relationshipRequired) { _%>
|
|
207
|
+
@if (editForm.get([<%- this.buildAngularFormPath(relationship.reference) %>])?.errors?.required) {
|
|
176
208
|
<small class="form-text text-danger"
|
|
177
|
-
|
|
209
|
+
<%= jhiPrefix %>Translate="entity.validation.required">__jhiTransformTranslate__('entity.validation.required')</small>
|
|
210
|
+
}
|
|
178
211
|
<%_ } _%>
|
|
179
212
|
</div>
|
|
213
|
+
}
|
|
180
214
|
<%_ } _%>
|
|
181
215
|
<%_ } _%>
|
|
182
216
|
</div>
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
const tsKeyId = this.generateTestEntityId(primaryKey.type);
|
|
21
21
|
const allRelationshipsByEntityNeedingOptions = Object
|
|
22
22
|
.values(differentRelationships)
|
|
23
|
-
.map(relationships => relationships.filter(rel => rel.
|
|
23
|
+
.map(relationships => relationships.filter(rel => rel.persistableRelationship))
|
|
24
24
|
.filter(relationships => relationships.length > 0);
|
|
25
25
|
const testEntityPrimaryKey0 = this.generateTestEntityPrimaryKey(primaryKey, 0);
|
|
26
26
|
const testEntityPrimaryKey1 = this.generateTestEntityPrimaryKey(primaryKey, 1);
|
|
@@ -249,7 +249,7 @@ describe('<%= entityAngularName %> Management Update Component', () => {
|
|
|
249
249
|
});
|
|
250
250
|
});
|
|
251
251
|
|
|
252
|
-
<%_ const trackedRelationships = Object.values(differentRelationships).filter(arr => arr.some(rel => rel.
|
|
252
|
+
<%_ const trackedRelationships = Object.values(differentRelationships).filter(arr => arr.some(rel => rel.persistableRelationship && rel.otherEntity.primaryKey));
|
|
253
253
|
if (trackedRelationships.length > 0) {
|
|
254
254
|
_%>
|
|
255
255
|
|
|
@@ -19,14 +19,14 @@
|
|
|
19
19
|
<%_
|
|
20
20
|
const allRelationshipsByEntityNeedingOptions = Object
|
|
21
21
|
.values(differentRelationships)
|
|
22
|
-
.map(relationships => relationships.filter(rel => rel.
|
|
22
|
+
.map(relationships => relationships.filter(rel => rel.persistableRelationship))
|
|
23
23
|
.filter(relationships => relationships.length > 0);
|
|
24
24
|
_%>
|
|
25
25
|
import { Component, OnInit<% if (anyFieldHasImageContentType) { %>, ElementRef<% } %> } from '@angular/core';
|
|
26
26
|
import { HttpResponse } from '@angular/common/http';
|
|
27
27
|
import { ActivatedRoute } from '@angular/router';
|
|
28
28
|
import { Observable } from 'rxjs';
|
|
29
|
-
import { finalize<% if (relationships.some(rel => rel.
|
|
29
|
+
import { finalize<% if (relationships.some(rel => rel.persistableRelationship)) { %>, map<% } %> } from 'rxjs/operators';
|
|
30
30
|
|
|
31
31
|
import SharedModule from 'app/shared/shared.module';
|
|
32
32
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
@@ -41,7 +41,7 @@ import { DataUtils, FileLoadError } from 'app/core/util/data-util.service';
|
|
|
41
41
|
<%_ } _%>
|
|
42
42
|
<%_
|
|
43
43
|
Object.keys(differentRelationships).forEach(key => {
|
|
44
|
-
if (differentRelationships[key].some(rel => rel.
|
|
44
|
+
if (differentRelationships[key].some(rel => rel.persistableRelationship)) {
|
|
45
45
|
const uniqueRel = differentRelationships[key][0];
|
|
46
46
|
if (uniqueRel.otherEntityAngularName !== entityAngularName) {
|
|
47
47
|
if (uniqueRel.otherEntity.builtInUser) {
|
|
@@ -77,7 +77,7 @@ export class <%= entityAngularName %>UpdateComponent implements OnInit {
|
|
|
77
77
|
<%- this._.lowerFirst(importedType) %>Values = Object.keys(<%- importedType %>);
|
|
78
78
|
<%_ }); _%>
|
|
79
79
|
|
|
80
|
-
<%_ for (const relationshipsByEntityNeedingOptions of Object.values(differentRelationships).map(relationships => relationships.filter(rel => rel.
|
|
80
|
+
<%_ for (const relationshipsByEntityNeedingOptions of Object.values(differentRelationships).map(relationships => relationships.filter(rel => rel.persistableRelationship)).filter(relationships => relationships.length > 0)) { _%>
|
|
81
81
|
<%_ const relationshipsWithCustomUniqueOptions = relationshipsByEntityNeedingOptions.filter(rel => rel.relationshipOneToOne && rel.otherRelationship); _%>
|
|
82
82
|
<%_ if (relationshipsByEntityNeedingOptions.length > relationshipsWithCustomUniqueOptions.length) { _%>
|
|
83
83
|
<%_ const otherEntity = relationshipsByEntityNeedingOptions[0].otherEntity _%>
|
|
@@ -99,7 +99,7 @@ export class <%= entityAngularName %>UpdateComponent implements OnInit {
|
|
|
99
99
|
protected <%= entityInstance %>FormService: <%= entityAngularName %>FormService,
|
|
100
100
|
<%_
|
|
101
101
|
Object.keys(differentRelationships).forEach(key => {
|
|
102
|
-
if (differentRelationships[key].some(rel => rel.
|
|
102
|
+
if (differentRelationships[key].some(rel => rel.persistableRelationship)) {
|
|
103
103
|
const uniqueRel = differentRelationships[key][0];
|
|
104
104
|
if (uniqueRel.otherEntityAngularName !== entityAngularName) {
|
|
105
105
|
_%>
|
|
@@ -114,7 +114,7 @@ _%>
|
|
|
114
114
|
<%_ } _%>
|
|
115
115
|
protected activatedRoute: ActivatedRoute,
|
|
116
116
|
) {}
|
|
117
|
-
<%_ for (const relationshipsByEntity of Object.values(differentRelationships).filter(arr => arr.some(rel => rel.
|
|
117
|
+
<%_ for (const relationshipsByEntity of Object.values(differentRelationships).filter(arr => arr.some(rel => rel.persistableRelationship && rel.otherEntity.primaryKey))) {
|
|
118
118
|
const { otherEntity } = relationshipsByEntity[0];
|
|
119
119
|
_%>
|
|
120
120
|
|
|
@@ -129,7 +129,7 @@ _%>
|
|
|
129
129
|
this.updateForm(<%= entityInstance %>);
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
-
<%_ if (relationships.filter(rel => rel.
|
|
132
|
+
<%_ if (relationships.filter(rel => rel.persistableRelationship && !rel.otherEntityIsEmbedded).length > 0) { _%>
|
|
133
133
|
this.loadRelationshipsOptions();
|
|
134
134
|
<%_ } _%>
|
|
135
135
|
});
|
|
@@ -202,7 +202,7 @@ _%>
|
|
|
202
202
|
protected updateForm(<%= entityInstance %>: I<%= entityAngularName %>): void {
|
|
203
203
|
this.<%= entityInstance %> = <%= entityInstance %>;
|
|
204
204
|
this.<%= entityInstance %>FormService.resetForm(this.editForm, <%= entityInstance %>);
|
|
205
|
-
<%_ if (relationships.filter(rel => rel.
|
|
205
|
+
<%_ if (relationships.filter(rel => rel.persistableRelationship).length > 0) { _%>
|
|
206
206
|
|
|
207
207
|
<%_ for (const relationshipsByEntityNeedingOptions of allRelationshipsByEntityNeedingOptions) { _%>
|
|
208
208
|
<%_ const relationshipsWithCustomUniqueOptions = relationshipsByEntityNeedingOptions.filter(rel => rel.relationshipOneToOne && rel.otherRelationship); _%>
|
|
@@ -226,9 +226,9 @@ _%>
|
|
|
226
226
|
<%_ } _%>
|
|
227
227
|
}
|
|
228
228
|
|
|
229
|
-
<%_ if (relationships.filter(rel => rel.
|
|
229
|
+
<%_ if (relationships.filter(rel => rel.persistableRelationship && !rel.otherEntityIsEmbedded).length > 0) { _%>
|
|
230
230
|
protected loadRelationshipsOptions(): void {
|
|
231
|
-
<%_ for (const relationshipsByEntityNeedingOptions of Object.values(differentRelationships).map(relationships => relationships.filter(rel => rel.
|
|
231
|
+
<%_ for (const relationshipsByEntityNeedingOptions of Object.values(differentRelationships).map(relationships => relationships.filter(rel => rel.persistableRelationship)).filter(relationships => relationships.length > 0)) { _%>
|
|
232
232
|
<%_ const relationshipsWithCustomUniqueOptions = relationshipsByEntityNeedingOptions.filter(rel => rel.relationshipOneToOne && rel.otherRelationship); %>
|
|
233
233
|
<%_ const relationshipsWithCustomSharedOptions = relationshipsByEntityNeedingOptions.filter(rel => !relationshipsWithCustomUniqueOptions.includes(rel)); %>
|
|
234
234
|
<%_ const { otherEntity } = relationshipsByEntityNeedingOptions[0] _%>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2023 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 { Routes } from '@angular/router';
|
|
20
|
+
|
|
21
|
+
const routes: Routes = [
|
|
22
|
+
/* jhipster-needle-add-entity-route - JHipster will add entity modules routes here */
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
export default routes;
|
|
@@ -26,23 +26,27 @@
|
|
|
26
26
|
|
|
27
27
|
<p class="lead" <%= jhiPrefix %>Translate="home.subtitle">__jhiTransformTranslate__('home.subtitle')</p>
|
|
28
28
|
|
|
29
|
-
<div
|
|
30
|
-
|
|
31
|
-
<
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
29
|
+
<div>
|
|
30
|
+
@if (account !== null) {
|
|
31
|
+
<div class="alert alert-success">
|
|
32
|
+
@if (account) {
|
|
33
|
+
<span id="home-logged-message" <%= jhiPrefix %>Translate="home.logged.message"
|
|
34
|
+
[translateValues]="{ username: account.login }">__jhiTransformTranslate__('home.logged.message', { "username": "{{ account.login }}" })</span>
|
|
35
|
+
}
|
|
36
|
+
</div>
|
|
37
|
+
} @else {
|
|
38
|
+
<div class="alert alert-warning">
|
|
39
|
+
<span <%= jhiPrefix %>Translate="global.messages.info.authenticated.prefix">__jhiTransformTranslate__('global.messages.info.authenticated.prefix')</span>
|
|
40
|
+
<a class="alert-link" (click)="login()" <%= jhiPrefix %>Translate="global.messages.info.authenticated.link">__jhiTransformTranslate__('global.messages.info.authenticated.link')</a><span <%= jhiPrefix %>Translate="global.messages.info.authenticated.suffix">__jhiTransformTranslate__('global.messages.info.authenticated.suffix')</span>
|
|
41
|
+
</div>
|
|
42
|
+
<%_ if (generateUserManagement) { _%>
|
|
43
|
+
|
|
44
|
+
<div class="alert alert-warning">
|
|
45
|
+
<span <%= jhiPrefix %>Translate="global.messages.info.register.noaccount">__jhiTransformTranslate__('global.messages.info.register.noaccount')</span>
|
|
46
|
+
<a class="alert-link" routerLink="/account/register" <%= jhiPrefix %>Translate="global.messages.info.register.link">__jhiTransformTranslate__('global.messages.info.register.link')</a>
|
|
47
|
+
</div>
|
|
48
|
+
<%_ } _%>
|
|
49
|
+
}
|
|
46
50
|
</div>
|
|
47
51
|
|
|
48
52
|
<p <%= jhiPrefix %>Translate="home.question">__jhiTransformTranslate__('home.question')</p>
|
|
@@ -39,7 +39,7 @@ import { Account } from 'app/core/auth/account.model';
|
|
|
39
39
|
standalone: true,
|
|
40
40
|
selector: '<%= jhiPrefixDashed %>-home',
|
|
41
41
|
templateUrl: './home.component.html',
|
|
42
|
-
|
|
42
|
+
styleUrl: './home.component.scss',
|
|
43
43
|
imports: [SharedModule, RouterModule],
|
|
44
44
|
})
|
|
45
45
|
export default class HomeComponent implements OnInit<% if (!authenticationTypeOauth2) { %>, OnDestroy<% } %> {
|
package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.html.ejs
CHANGED
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
<div class="col-md-8">
|
|
26
26
|
<h1 <%= jhiPrefix %>Translate="error.title">__jhiTransformTranslate__('error.title')</h1>
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
@if (errorMessage) {
|
|
29
|
+
<div class="alert alert-danger">{{ errorMessage }}</div>
|
|
30
|
+
}
|
|
31
31
|
</div>
|
|
32
32
|
</div>
|
|
33
33
|
</div>
|
|
@@ -55,10 +55,13 @@ describe('MainComponent', () => {
|
|
|
55
55
|
beforeEach(
|
|
56
56
|
waitForAsync(() => {
|
|
57
57
|
TestBed.configureTestingModule({
|
|
58
|
+
imports: [
|
|
58
59
|
<%_ if (enableTranslation) { _%>
|
|
59
|
-
|
|
60
|
+
TranslateModule.forRoot(),
|
|
61
|
+
RouterTestingModule,
|
|
60
62
|
<%_ } _%>
|
|
61
|
-
|
|
63
|
+
MainComponent,
|
|
64
|
+
],
|
|
62
65
|
providers: [
|
|
63
66
|
Title,
|
|
64
67
|
<%_ if (enableI18nRTL) { _%>
|
package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
limitations under the License.
|
|
18
18
|
-%>
|
|
19
19
|
import { Component, OnInit<% if (enableTranslation) { %>, RendererFactory2, Renderer2<% } %> } from '@angular/core';
|
|
20
|
+
import { RouterOutlet, Router } from '@angular/router';
|
|
20
21
|
<%_ if (enableTranslation) { _%>
|
|
21
22
|
import { TranslateService, LangChangeEvent } from '@ngx-translate/core';
|
|
22
23
|
import dayjs from 'dayjs/esm';
|
|
@@ -24,15 +25,18 @@ import dayjs from 'dayjs/esm';
|
|
|
24
25
|
|
|
25
26
|
import { AccountService } from 'app/core/auth/account.service';
|
|
26
27
|
import { AppPageTitleStrategy } from 'app/app-page-title-strategy';
|
|
27
|
-
import { Router } from '@angular/router';
|
|
28
28
|
<%_ if (enableI18nRTL) { _%>
|
|
29
29
|
import FindLanguageFromKeyPipe from 'app/shared/language/find-language-from-key.pipe';
|
|
30
30
|
<%_ } _%>
|
|
31
|
+
import FooterComponent from '../footer/footer.component';
|
|
32
|
+
import PageRibbonComponent from '../profiles/page-ribbon.component';
|
|
31
33
|
|
|
32
34
|
@Component({
|
|
33
35
|
selector: '<%= jhiPrefixDashed %>-main',
|
|
36
|
+
standalone: true,
|
|
34
37
|
templateUrl: './main.component.html',
|
|
35
38
|
providers: [AppPageTitleStrategy],
|
|
39
|
+
imports: [RouterOutlet, FooterComponent, PageRibbonComponent],
|
|
36
40
|
})
|
|
37
41
|
export default class MainComponent implements OnInit {
|
|
38
42
|
<%_ if (enableTranslation) { _%>
|