generator-jhipster 8.9.0 → 8.11.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 +1 -1
- package/dist/cli/cli.mjs +0 -13
- package/dist/cli/download.mjs +2 -3
- package/dist/cli/environment-builder.mjs +5 -3
- package/dist/generators/angular/generator.d.ts +10 -1
- package/dist/generators/angular/resources/package.json +27 -27
- package/dist/generators/angular/templates/README.md.jhi.client.angular.ejs +1 -1
- package/dist/generators/angular/templates/eslint.config.js.jhi.angular.ejs +4 -6
- package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +6 -4
- 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 +1 -1
- 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/register/register.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.spec.ts.ejs +1 -1
- 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/account/settings/settings.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +8 -13
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +2 -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/admin/user-management/update/user-management-update.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/app-page-title-strategy.ts.ejs +1 -3
- package/dist/generators/angular/templates/src/main/webapp/app/app.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/core/util/alert.service.ts.ejs +1 -2
- package/dist/generators/angular/templates/src/main/webapp/app/core/util/data-util.service.spec.ts.ejs +0 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +4 -5
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/service/_entityFile_.service.spec.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +7 -7
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.spec.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.spec.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +8 -6
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert-error.component.spec.ts.ejs +8 -8
- package/dist/generators/angular/templates/src/main/webapp/app/shared/alert/alert.component.spec.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/shared/pagination/item-count.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/shared/sort/sort.service.ts.ejs +3 -3
- package/dist/generators/app/generator.d.ts +4 -1
- package/dist/generators/base/api.d.ts +3 -1
- package/dist/generators/base/shared-data.js +1 -0
- package/dist/generators/base/support/contents.d.ts +10 -1
- package/dist/generators/base/support/contents.js +9 -0
- package/dist/generators/base/support/index.d.ts +1 -0
- package/dist/generators/base/support/index.js +1 -0
- package/dist/generators/base/support/needles.d.ts +14 -5
- package/dist/generators/base/support/needles.js +21 -17
- package/dist/generators/base/support/os.d.ts +1 -0
- package/dist/generators/base/support/os.js +20 -0
- package/dist/generators/base/support/write-files.d.ts +18 -0
- package/dist/generators/base/support/write-files.js +0 -26
- package/dist/generators/base-application/support/prepare-entity.js +14 -26
- package/dist/generators/base-application/support/update-application-entities-transform.js +3 -2
- package/dist/generators/base-application/types.d.ts +5 -0
- package/dist/generators/base-core/generator.js +7 -4
- package/dist/generators/bootstrap/generator.d.ts +6 -1
- package/dist/generators/bootstrap/generator.js +31 -2
- package/dist/generators/bootstrap/support/auto-crlf-transform.js +2 -2
- package/dist/generators/bootstrap/support/eslint-worker.js +5 -2
- package/dist/generators/bootstrap-application/generator.d.ts +4 -1
- package/dist/generators/bootstrap-application-base/generator.d.ts +12 -2
- package/dist/generators/bootstrap-application-base/generator.js +4 -3
- package/dist/generators/bootstrap-application-client/generator.d.ts +3 -1
- package/dist/generators/bootstrap-application-server/generator.d.ts +8 -1
- package/dist/generators/bootstrap-workspaces/generator.d.ts +9 -1
- package/dist/generators/ci-cd/generator.d.ts +6 -1
- package/dist/generators/client/generator.d.ts +13 -1
- package/dist/generators/client/generators/common/generator.d.ts +1 -1
- package/dist/generators/client/resources/package.json +5 -5
- package/dist/generators/client/templates/src/main/webapp/swagger-ui/index.html.ejs +8 -6
- package/dist/generators/common/generator.d.ts +8 -1
- package/dist/generators/common/resources/package.json +2 -2
- package/dist/generators/cucumber/generator.d.ts +2 -1
- package/dist/generators/cypress/generator.d.ts +7 -1
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/account/logout.cy.ts.ejs +11 -3
- package/dist/generators/cypress/templates/src/test/javascript/cypress/support/oauth2.ts.ejs +4 -4
- package/dist/generators/docker/generator.d.ts +4 -1
- package/dist/generators/docker-compose/generator.d.ts +23 -1
- package/dist/generators/entities/generator.d.ts +4 -1
- package/dist/generators/entity/generator.d.ts +5 -1
- package/dist/generators/export-jdl/generator.d.ts +3 -1
- package/dist/generators/feign-client/generator.d.ts +2 -1
- package/dist/generators/feign-client/templates/src/test/java/_package_/client/AuthorizationHeaderUtilTest.java.ejs +1 -1
- package/dist/generators/gatling/generator.d.ts +3 -1
- package/dist/generators/generate-blueprint/constants.d.ts +1 -1
- package/dist/generators/generate-blueprint/constants.js +1 -1
- package/dist/generators/generate-blueprint/files.js +2 -2
- package/dist/generators/generate-blueprint/generator.d.ts +10 -1
- package/dist/generators/generate-blueprint/generator.js +16 -16
- package/dist/generators/generate-blueprint/resources/package.json +3 -3
- package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/command.mjs.ejs +1 -1
- package/dist/generators/generate-blueprint/templates/generators/generator/generator.mjs.jhi.ejs +1 -0
- package/dist/generators/generator-constants.d.ts +1 -1
- package/dist/generators/generator-constants.js +2 -2
- package/dist/generators/git/generator.d.ts +5 -1
- package/dist/generators/gradle/generator.d.ts +5 -1
- package/dist/generators/gradle/generators/code-quality/generator.d.ts +2 -1
- package/dist/generators/gradle/generators/jib/generator.d.ts +2 -1
- package/dist/generators/gradle/generators/node-gradle/generator.d.ts +2 -1
- package/dist/generators/gradle/templates/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/dist/generators/heroku/generator.d.ts +6 -1
- package/dist/generators/info/generator.d.ts +1 -1
- package/dist/generators/init/generator.d.ts +2 -1
- package/dist/generators/init/resources/.node-version +1 -1
- package/dist/generators/java/generators/bootstrap/generator.d.ts +8 -2
- package/dist/generators/java/generators/bootstrap/generator.js +17 -3
- package/dist/generators/java/generators/build-tool/generator.d.ts +2 -1
- package/dist/generators/java/generators/code-quality/generator.d.ts +2 -1
- package/dist/generators/java/generators/domain/generator.d.ts +6 -1
- package/dist/generators/java/generators/graalvm/generator.d.ts +6 -1
- package/dist/generators/java/generators/graalvm/internal/constants.d.ts +1 -1
- package/dist/generators/java/generators/graalvm/internal/constants.js +2 -2
- package/dist/generators/java/generators/graalvm/resources/gradle/libs.versions.toml +1 -1
- package/dist/generators/java/generators/jib/generator.d.ts +2 -1
- package/dist/generators/java/generators/node/generator.d.ts +4 -1
- package/dist/generators/java/generators/node/generator.js +2 -1
- package/dist/generators/java/generators/openapi-generator/generator.d.ts +2 -1
- package/dist/generators/java/generators/server/generator.d.ts +1 -1
- package/dist/generators/java/support/index.d.ts +2 -0
- package/dist/generators/java/support/index.js +2 -0
- package/dist/generators/java/support/java-enum.d.ts +8 -0
- package/dist/generators/java/support/java-enum.js +20 -0
- package/dist/generators/java/support/java-file-edit.d.ts +18 -0
- package/dist/generators/java/support/java-file-edit.js +94 -0
- package/dist/generators/java/types.d.ts +37 -1
- package/dist/generators/javascript/generators/bootstrap/generator.d.ts +4 -1
- package/dist/generators/javascript/generators/eslint/generator.d.ts +4 -1
- package/dist/generators/javascript/generators/eslint/templates/eslint.config.js.jhi.ejs +8 -0
- package/dist/generators/javascript/generators/husky/generator.d.ts +3 -1
- package/dist/generators/javascript/generators/prettier/generator.d.ts +4 -1
- package/dist/generators/javascript/resources/package.json +3 -3
- package/dist/generators/jdl/generator.d.ts +3 -1
- package/dist/generators/kubernetes/generator.d.ts +25 -19
- package/dist/generators/kubernetes-helm/generator.d.ts +18 -12
- package/dist/generators/kubernetes-knative/generator.d.ts +14 -8
- package/dist/generators/languages/generator.d.ts +9 -1
- package/dist/generators/languages/support/languages.js +1 -0
- package/dist/generators/languages/templates/entity/i18n/entity_he.json.ejs +78 -0
- package/dist/generators/languages/templates/src/main/resources/i18n/messages_he.properties.ejs +41 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/activate.json.ejs +27 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/configuration.json +11 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/error.json +15 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/gateway.json +16 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/global.json.ejs +172 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/health.json.ejs +75 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/home.json.ejs +20 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/login.json +20 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/logs.json +12 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/metrics.json +103 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/password.json +13 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/register.json +25 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/reset.json.ejs +45 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/sessions.json +16 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/settings.json +33 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/tracker.json +13 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/he/user-management.json +32 -0
- package/dist/generators/languages/templates/src/test/resources/i18n/messages_he.properties.ejs +4 -0
- package/dist/generators/liquibase/generator.d.ts +9 -1
- package/dist/generators/liquibase/generator.js +3 -19
- package/dist/generators/maven/generator.d.ts +6 -1
- package/dist/generators/maven/generators/code-quality/generator.d.ts +1 -1
- package/dist/generators/maven/generators/frontend-plugin/generator.d.ts +1 -1
- package/dist/generators/maven/generators/jib/generator.d.ts +1 -1
- package/dist/generators/project-name/generator.d.ts +3 -1
- package/dist/generators/react/generator.d.ts +15 -1
- package/dist/generators/react/resources/package.json +34 -34
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-delete-dialog.tsx.ejs +2 -1
- package/dist/generators/react/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.reducer.ts.ejs +4 -4
- package/dist/generators/react/templates/src/main/webapp/app/entities/menu.tsx.ejs +2 -2
- package/dist/generators/react/templates/src/main/webapp/app/entities/routes.tsx.ejs +1 -1
- package/dist/generators/react/templates/src/main/webapp/app/modules/administration/administration.reducer.spec.ts.ejs +0 -6
- package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/application-profile.spec.ts.ejs +0 -6
- package/dist/generators/react/templates/src/main/webapp/app/shared/reducers/locale.spec.ts.ejs +0 -47
- 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/entity-utils.ts.ejs +1 -1
- package/dist/generators/server/generator.d.ts +7 -1
- package/dist/generators/server/resources/Dockerfile +17 -17
- package/dist/generators/server/resources/gradle/libs.versions.toml +15 -15
- package/dist/generators/server/resources/pom.xml +16 -16
- package/dist/generators/server/types.d.ts +22 -0
- package/dist/generators/spring-boot/generator.d.ts +14 -2
- package/dist/generators/spring-boot/generator.js +35 -4
- package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +158 -148
- package/dist/generators/spring-boot/templates/src/main/java/_package_/Application.java.ejs +11 -0
- package/dist/generators/spring-boot/templates/src/main/java/_package_/_entityPackage_/service/_entityClass_QueryService.java.ejs +12 -23
- package/dist/generators/spring-boot/templates/src/main/java/_package_/config/SecurityJwtConfiguration.java.ejs +0 -1
- package/dist/generators/spring-boot/templates/src/main/java/_package_/security/DomainUserDetailsService.java.ejs +61 -5
- package/dist/generators/spring-boot/templates/src/main/java/_package_/security/SecurityUtils.java.ejs +29 -1
- package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource.java.ejs +7 -6
- package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_oauth2.java.ejs +8 -6
- package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AccountResource_skipUserManagement.java.ejs +8 -6
- package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/AuthenticateController.java.ejs +17 -11
- package/dist/generators/spring-boot/templates/src/main/java/_package_/web/rest/errors/ExceptionTranslator.java.ejs +8 -3
- package/dist/generators/spring-boot/templates/src/main/resources/config/application.yml.ejs +3 -0
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/service/UserServiceIT.java.ejs +3 -3
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/PublicUserResourceIT.java.ejs +4 -4
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/UserResourceIT.java.ejs +4 -4
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +3 -3
- package/dist/generators/spring-boot/templates/src/test/java/_package_/config/JHipsterBlockHoundIntegration.java.ejs +0 -2
- package/dist/generators/spring-boot/templates/src/test/java/_package_/config/WebConfigurerTest.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/management/SecurityMetersServiceTests.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/DomainUserDetailsServiceIT.java.ejs +2 -2
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/SecurityUtilsUnitTest_imperative.java.ejs +35 -11
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/SecurityUtilsUnitTest_reactive.java.ejs +35 -6
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/JwtAuthenticationTestUtils.java.ejs +3 -2
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TestAuthenticationResource.java.ejs +5 -5
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationIT.java.ejs +2 -2
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/jwt/TokenAuthenticationSecurityMetersIT.java.ejs +1 -4
- package/dist/generators/spring-boot/templates/src/test/java/_package_/security/oauth2/CustomClaimConverterIT.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/service/MailServiceIT.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/service/mapper/UserMapperTest.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_imperative.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/filter/SpaWebFilterIT_reactive.java.ejs +1 -2
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs +9 -15
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_oauth2.java.ejs +8 -17
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/AccountResourceIT_skipUserManagement.java.ejs +6 -15
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/LogoutResourceIT.java.ejs +1 -1
- package/dist/generators/spring-boot/templates/src/test/java/_package_/web/rest/errors/ExceptionTranslatorIT_reactive.java.ejs +1 -1
- package/dist/generators/spring-cache/cleanup.d.ts +2 -20
- package/dist/generators/spring-cache/cleanup.js +24 -2
- package/dist/generators/spring-cache/files.js +0 -6
- package/dist/generators/spring-cache/generator.d.ts +5 -1
- package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +1 -1
- package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +0 -14
- package/dist/generators/spring-cloud/generators/gateway/generator.d.ts +5 -1
- package/dist/generators/spring-cloud-stream/generator.d.ts +2 -1
- package/dist/generators/spring-cloud-stream/generators/kafka/generator.d.ts +2 -1
- package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/test/java/_package_/web/rest/KafkaResourceIT_reactive.java.ejs +1 -1
- package/dist/generators/spring-cloud-stream/generators/pulsar/generator.d.ts +2 -1
- package/dist/generators/spring-data-cassandra/generator.d.ts +4 -1
- package/dist/generators/spring-data-couchbase/generator.d.ts +9 -1
- package/dist/generators/spring-data-elasticsearch/generator.d.ts +10 -1
- package/dist/generators/spring-data-mongodb/generator.d.ts +9 -1
- package/dist/generators/spring-data-neo4j/generator.d.ts +11 -1
- package/dist/generators/spring-data-relational/generator.d.ts +11 -1
- package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/timezone/HibernateTimeZoneIT.java.ejs +2 -2
- package/dist/generators/spring-websocket/generator.d.ts +2 -1
- package/dist/generators/upgrade/generator.d.ts +3 -1
- package/dist/generators/vue/cleanup.js +7 -1
- package/dist/generators/vue/files-vue.js +3 -8
- package/dist/generators/vue/generator.d.ts +9 -1
- package/dist/generators/vue/resources/package.json +31 -31
- package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.ts.ejs +9 -9
- package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.component.spec.ts.ejs +21 -7
- package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +23 -9
- package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.service.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/activate/activate.vue.ejs +1 -1
- 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.component.spec.ts.ejs +22 -10
- package/dist/generators/vue/templates/src/main/webapp/app/account/login-form/login-form.component.ts.ejs +24 -5
- package/dist/generators/vue/templates/src/main/webapp/app/account/login-modal.ts.ejs +38 -0
- package/dist/generators/vue/templates/src/main/webapp/app/account/login.service.spec.ts.ejs +0 -4
- package/dist/generators/vue/templates/src/main/webapp/app/account/login.service.ts.ejs +3 -25
- package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.component.spec.ts.ejs +24 -8
- package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.component.ts.ejs +23 -9
- package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.service.ts.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.component.spec.ts.ejs +20 -4
- package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.component.ts.ejs +23 -13
- 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/settings/settings.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/admin/gateway/gateway.service.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/admin/health/health.service.ts.ejs +10 -10
- package/dist/generators/vue/templates/src/main/webapp/app/admin/logs/logs.service.ts.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics-modal.vue.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics.service.ts.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.ts.ejs +5 -5
- package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management.service.ts.ejs +6 -6
- package/dist/generators/vue/templates/src/main/webapp/app/app.component.ts.ejs +29 -7
- package/dist/generators/vue/templates/src/main/webapp/app/app.vue.ejs +19 -1
- package/dist/generators/vue/templates/src/main/webapp/app/core/error/error.component.spec.ts.ejs +66 -51
- package/dist/generators/vue/templates/src/main/webapp/app/core/error/error.component.ts.ejs +30 -8
- package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.component.spec.ts.ejs +41 -11
- package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.component.ts.ejs +10 -11
- package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.spec.ts.ejs +43 -16
- package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.component.ts.ejs +14 -9
- package/dist/generators/vue/templates/src/main/webapp/app/core/jhi-navbar/jhi-navbar.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_.service.ts.ejs +7 -7
- package/dist/generators/vue/templates/src/main/webapp/app/entities/user/user.service.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/locale/translation.service.ts.ejs +5 -5
- package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +18 -14
- package/dist/generators/vue/templates/src/main/webapp/app/shared/alert/alert.service.ts.ejs +4 -4
- package/dist/generators/workspaces/generator.d.ts +7 -1
- package/dist/generators/workspaces/support/applications-lookup.js +2 -2
- package/dist/lib/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +1 -1
- package/dist/lib/jdl/core/built-in-options/binary-options.d.ts +12 -1
- package/dist/lib/testing/apply-patch-to-template.d.ts +13 -0
- package/dist/lib/testing/apply-patch-to-template.js +90 -0
- package/dist/lib/testing/github.js +6 -3
- package/dist/lib/testing/helpers.d.ts +1 -0
- package/dist/lib/testing/helpers.js +15 -0
- package/dist/lib/utils/yo-rc.d.ts +3 -219
- package/package.json +36 -37
- package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheFactoryConfiguration.java.ejs +0 -49
|
@@ -1,11 +1,29 @@
|
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
1
19
|
import axios from 'axios';
|
|
2
|
-
import { defineComponent, inject, ref
|
|
20
|
+
import { type Ref, defineComponent, inject, ref } from 'vue';
|
|
3
21
|
import { useRoute, useRouter } from 'vue-router';
|
|
4
22
|
<%_ if (enableTranslation) { _%>
|
|
5
23
|
import { useI18n } from 'vue-i18n';
|
|
6
24
|
<%_ } _%>
|
|
25
|
+
import { useLoginModal } from '@/account/login-modal';
|
|
7
26
|
import type AccountService from '../account.service';
|
|
8
|
-
import type LoginService from '@/account/login.service';
|
|
9
27
|
|
|
10
28
|
export default defineComponent({
|
|
11
29
|
compatConfig: { MODE: 3 },
|
|
@@ -14,13 +32,14 @@ export default defineComponent({
|
|
|
14
32
|
const login: Ref<string> = ref(null);
|
|
15
33
|
const password: Ref<string> = ref(null);
|
|
16
34
|
const rememberMe: Ref<boolean> = ref(false);
|
|
35
|
+
|
|
36
|
+
const { hideLogin } = useLoginModal();
|
|
17
37
|
const route = useRoute();
|
|
18
38
|
const router = useRouter();
|
|
19
39
|
|
|
20
40
|
const previousState = () => router.go(-1);
|
|
21
41
|
|
|
22
42
|
const accountService = inject<AccountService>('accountService');
|
|
23
|
-
const loginService = inject<LoginService>('loginService');
|
|
24
43
|
|
|
25
44
|
const doLogin = async () => {
|
|
26
45
|
<%_ if (authenticationTypeJwt) { _%>
|
|
@@ -49,12 +68,12 @@ export default defineComponent({
|
|
|
49
68
|
<%_ } _%>
|
|
50
69
|
|
|
51
70
|
authenticationError.value = false;
|
|
52
|
-
|
|
71
|
+
hideLogin();
|
|
53
72
|
await accountService.retrieveAccount();
|
|
54
73
|
if (route.path === '/forbidden') {
|
|
55
74
|
previousState();
|
|
56
75
|
}
|
|
57
|
-
} catch
|
|
76
|
+
} catch {
|
|
58
77
|
authenticationError.value = true;
|
|
59
78
|
}
|
|
60
79
|
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
19
|
+
import { ref } from 'vue';
|
|
20
|
+
import { defineStore } from 'pinia';
|
|
21
|
+
|
|
22
|
+
export const useLoginModal = defineStore('login', () => {
|
|
23
|
+
const loginModalOpen = ref(false);
|
|
24
|
+
|
|
25
|
+
function showLogin() {
|
|
26
|
+
loginModalOpen.value = true;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function hideLogin() {
|
|
30
|
+
loginModalOpen.value = false;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return {
|
|
34
|
+
loginModalOpen,
|
|
35
|
+
showLogin,
|
|
36
|
+
hideLogin,
|
|
37
|
+
};
|
|
38
|
+
});
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import LoginService from './login.service';
|
|
2
|
-
<%_ if (!authenticationTypeJwt) { _%>
|
|
3
2
|
import axios from 'axios';
|
|
4
3
|
import sinon from 'sinon';
|
|
5
4
|
|
|
@@ -7,7 +6,6 @@ const axiosStub = {
|
|
|
7
6
|
get: sinon.stub(axios, 'get'),
|
|
8
7
|
post: sinon.stub(axios, 'post'),
|
|
9
8
|
};
|
|
10
|
-
<%_ } _%>
|
|
11
9
|
|
|
12
10
|
describe('Login Service test suite', () => {
|
|
13
11
|
let loginService: LoginService;
|
|
@@ -66,11 +64,9 @@ describe('Login Service test suite', () => {
|
|
|
66
64
|
});
|
|
67
65
|
<%_ } _%>
|
|
68
66
|
|
|
69
|
-
<%_ if (!authenticationTypeJwt) { _%>
|
|
70
67
|
it('should call global logout when asked to', () => {
|
|
71
68
|
loginService.logout();
|
|
72
69
|
|
|
73
70
|
expect(axiosStub.post.calledWith('api/logout')).toBeTruthy();
|
|
74
71
|
});
|
|
75
|
-
<%_ } _%>
|
|
76
72
|
});
|
|
@@ -1,28 +1,8 @@
|
|
|
1
|
-
<%_ if (!authenticationTypeOauth2) { _%>
|
|
2
|
-
import Vue from 'vue';
|
|
3
|
-
<%_ } _%>
|
|
4
|
-
<%_ if (!authenticationTypeJwt) { _%>
|
|
5
1
|
import axios, { type AxiosPromise } from 'axios';
|
|
6
|
-
<%_ } _%>
|
|
7
2
|
|
|
8
3
|
export default class LoginService {
|
|
9
|
-
<%_ if (
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
constructor({ emit }: { emit: (event: string, ...args: any[]) => void }) {
|
|
13
|
-
this.emit = emit;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
public openLogin(): void {
|
|
17
|
-
this.emit('bv::show::modal', 'login-page');
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
public hideLogin(): void {
|
|
21
|
-
this.emit('bv::hide::modal', 'login-page');
|
|
22
|
-
}
|
|
23
|
-
<%_ } else { _%>
|
|
24
|
-
|
|
25
|
-
public login(loc: { href: string; hostname: string; pathname: string; port?: string } = window.location) {
|
|
4
|
+
<%_ if (authenticationTypeOauth2) { _%>
|
|
5
|
+
login(loc: { href: string; hostname: string; pathname: string; port?: string } = window.location) {
|
|
26
6
|
const port = loc.port ? `:${loc.port}` : '';
|
|
27
7
|
let contextPath = loc.pathname;
|
|
28
8
|
if (contextPath.endsWith('accessdenied')) {
|
|
@@ -39,10 +19,8 @@ export default class LoginService {
|
|
|
39
19
|
loc.href = `//${loc.hostname}${port}${contextPath}oauth2/authorization/oidc`;
|
|
40
20
|
}
|
|
41
21
|
<%_ } _%>
|
|
42
|
-
<%_ if (!authenticationTypeJwt) { _%>
|
|
43
22
|
|
|
44
|
-
|
|
23
|
+
logout(): AxiosPromise<any> {
|
|
45
24
|
return axios.post('api/logout');
|
|
46
25
|
}
|
|
47
|
-
<%_ } _%>
|
|
48
26
|
}
|
|
@@ -1,13 +1,31 @@
|
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
1
19
|
import { vitest } from 'vitest';
|
|
2
20
|
import { computed } from 'vue';
|
|
3
21
|
import { shallowMount } from '@vue/test-utils';
|
|
22
|
+
import { createTestingPinia } from '@pinia/testing';
|
|
4
23
|
import axios from 'axios';
|
|
5
24
|
import sinon from 'sinon';
|
|
6
25
|
|
|
7
26
|
import { EMAIL_ALREADY_USED_TYPE, LOGIN_ALREADY_USED_TYPE } from '@/constants';
|
|
27
|
+
import { useLoginModal } from '@/account/login-modal';
|
|
8
28
|
import Register from './register.vue';
|
|
9
|
-
import RegisterService from './register.service';
|
|
10
|
-
import LoginService from '../login.service';
|
|
11
29
|
|
|
12
30
|
type RegisterComponentType = InstanceType<typeof Register>;
|
|
13
31
|
|
|
@@ -18,7 +36,6 @@ const axiosStub = {
|
|
|
18
36
|
|
|
19
37
|
describe('Register Component', () => {
|
|
20
38
|
let register: RegisterComponentType;
|
|
21
|
-
let loginService: LoginService;
|
|
22
39
|
const filledRegisterAccount = {
|
|
23
40
|
email: 'jhi@pster.net',
|
|
24
41
|
langKey: '<%= nativeLanguage %>',
|
|
@@ -29,13 +46,11 @@ describe('Register Component', () => {
|
|
|
29
46
|
beforeEach(() => {
|
|
30
47
|
axiosStub.get.resolves({});
|
|
31
48
|
axiosStub.post.reset();
|
|
32
|
-
loginService = new LoginService({ emit: vitest.fn() });
|
|
33
|
-
vitest.spyOn(loginService, 'openLogin');
|
|
34
49
|
|
|
35
50
|
const wrapper = shallowMount(Register, {
|
|
36
51
|
global: {
|
|
52
|
+
plugins: [createTestingPinia()],
|
|
37
53
|
provide: {
|
|
38
|
-
loginService,
|
|
39
54
|
currentLanguage: computed(() => '<%= nativeLanguage %>'),
|
|
40
55
|
},
|
|
41
56
|
},
|
|
@@ -55,8 +70,9 @@ describe('Register Component', () => {
|
|
|
55
70
|
});
|
|
56
71
|
|
|
57
72
|
it('should open login modal when asked to', () => {
|
|
58
|
-
|
|
59
|
-
|
|
73
|
+
const login = useLoginModal();
|
|
74
|
+
register.showLogin();
|
|
75
|
+
expect(login.showLogin).toHaveBeenCalledOnce();
|
|
60
76
|
});
|
|
61
77
|
|
|
62
78
|
it('should register when password match', async () => {
|
package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.component.ts.ejs
CHANGED
|
@@ -1,10 +1,28 @@
|
|
|
1
|
-
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
19
|
+
import { type Ref, computed, defineComponent, inject, ref } from 'vue';
|
|
2
20
|
<%_ if (enableTranslation) { _%>
|
|
3
21
|
import { useI18n } from 'vue-i18n';
|
|
4
22
|
<%_ } _%>
|
|
5
|
-
import { useVuelidate } from '@vuelidate/core'
|
|
23
|
+
import { useVuelidate } from '@vuelidate/core';
|
|
6
24
|
import { email, helpers, maxLength, minLength, required, sameAs } from '@vuelidate/validators';
|
|
7
|
-
import
|
|
25
|
+
import { useLoginModal } from '@/account/login-modal';
|
|
8
26
|
import RegisterService from '@/account/register/register.service';
|
|
9
27
|
import { EMAIL_ALREADY_USED_TYPE, LOGIN_ALREADY_USED_TYPE } from '@/constants';
|
|
10
28
|
|
|
@@ -43,7 +61,7 @@ export default defineComponent({
|
|
|
43
61
|
};
|
|
44
62
|
},
|
|
45
63
|
setup() {
|
|
46
|
-
const
|
|
64
|
+
const { showLogin } = useLoginModal();
|
|
47
65
|
const registerService = inject('registerService', () => new RegisterService(), true);
|
|
48
66
|
const currentLanguage = inject('currentLanguage', () => computed(() => navigator.language ?? '<%- nativeLanguage %>'), true);
|
|
49
67
|
|
|
@@ -59,12 +77,8 @@ export default defineComponent({
|
|
|
59
77
|
password: undefined,
|
|
60
78
|
});
|
|
61
79
|
|
|
62
|
-
const openLogin = () => {
|
|
63
|
-
loginService.openLogin();
|
|
64
|
-
};
|
|
65
|
-
|
|
66
80
|
return {
|
|
67
|
-
|
|
81
|
+
showLogin,
|
|
68
82
|
currentLanguage,
|
|
69
83
|
registerService,
|
|
70
84
|
error,
|
|
@@ -209,7 +209,7 @@
|
|
|
209
209
|
<p></p>
|
|
210
210
|
<div class="alert alert-warning">
|
|
211
211
|
<span v-text="t$('global.messages.info.authenticated.prefix')">If you want to </span>
|
|
212
|
-
<a class="alert-link" @click="
|
|
212
|
+
<a class="alert-link" @click="showLogin()" v-text="t$('global.messages.info.authenticated.link')">sign in</a
|
|
213
213
|
><span v-html="t$('global.messages.info.authenticated.suffix')"
|
|
214
214
|
>, you can try the default accounts:<br />- Administrator (login="admin" and password="admin") <br />- User (login="user" and
|
|
215
215
|
password="user").</span
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
1
19
|
import axios from 'axios';
|
|
2
20
|
import sinon from 'sinon';
|
|
3
21
|
import { shallowMount } from '@vue/test-utils';
|
|
4
22
|
import ResetPasswordFinish from './reset-password-finish.vue';
|
|
5
|
-
import
|
|
23
|
+
import { createTestingPinia } from '@pinia/testing';
|
|
6
24
|
|
|
7
25
|
type ResetPasswordFinishComponentType = InstanceType<typeof ResetPasswordFinish>;
|
|
8
26
|
|
|
@@ -18,9 +36,7 @@ describe('Reset Component Finish', () => {
|
|
|
18
36
|
axiosStub.post.reset();
|
|
19
37
|
const wrapper = shallowMount(ResetPasswordFinish, {
|
|
20
38
|
global: {
|
|
21
|
-
|
|
22
|
-
loginService: {},
|
|
23
|
-
},
|
|
39
|
+
plugins: [createTestingPinia()],
|
|
24
40
|
},
|
|
25
41
|
});
|
|
26
42
|
resetPasswordFinish = wrapper.vm;
|
|
@@ -1,11 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
<%#
|
|
2
|
+
Copyright 2013-2025 the original author or authors from the JHipster project.
|
|
3
|
+
|
|
4
|
+
This file is part of the JHipster project, see https://www.jhipster.tech/
|
|
5
|
+
for more information.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
-%>
|
|
19
|
+
import { type Ref, defineComponent, inject, ref } from 'vue';
|
|
3
20
|
import { useI18n } from 'vue-i18n';
|
|
4
|
-
<%_ } _%>
|
|
5
21
|
import axios from 'axios';
|
|
6
|
-
import { useVuelidate } from '@vuelidate/core'
|
|
22
|
+
import { useVuelidate } from '@vuelidate/core';
|
|
7
23
|
import { maxLength, minLength, required, sameAs } from '@vuelidate/validators';
|
|
8
|
-
import
|
|
24
|
+
import { useLoginModal } from '@/account/login-modal';
|
|
9
25
|
|
|
10
26
|
export default defineComponent({
|
|
11
27
|
compatConfig: { MODE: 3 },
|
|
@@ -31,7 +47,7 @@ export default defineComponent({
|
|
|
31
47
|
this.keyMissing = !this.key;
|
|
32
48
|
},
|
|
33
49
|
setup() {
|
|
34
|
-
const
|
|
50
|
+
const { showLogin } = useLoginModal();
|
|
35
51
|
|
|
36
52
|
const doNotMatch: Ref<string> = ref(null);
|
|
37
53
|
const success: Ref<string> = ref(null);
|
|
@@ -43,12 +59,8 @@ export default defineComponent({
|
|
|
43
59
|
confirmPassword: null,
|
|
44
60
|
});
|
|
45
61
|
|
|
46
|
-
const openLogin = () => {
|
|
47
|
-
loginService.openLogin();
|
|
48
|
-
};
|
|
49
|
-
|
|
50
62
|
return {
|
|
51
|
-
|
|
63
|
+
showLogin,
|
|
52
64
|
doNotMatch,
|
|
53
65
|
success,
|
|
54
66
|
error,
|
|
@@ -56,9 +68,7 @@ export default defineComponent({
|
|
|
56
68
|
key,
|
|
57
69
|
resetAccount,
|
|
58
70
|
v$: useVuelidate(),
|
|
59
|
-
<%_ if (enableTranslation) { _%>
|
|
60
71
|
t$: useI18n().t,
|
|
61
|
-
<%_ } _%>
|
|
62
72
|
};
|
|
63
73
|
},
|
|
64
74
|
methods: {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
<div class="alert alert-success" v-if="success">
|
|
18
18
|
<span v-html="t$('reset.finish.messages.success')"><strong>Your password had been reset.</strong> Please </span>
|
|
19
|
-
<a class="alert-link" @click="
|
|
19
|
+
<a class="alert-link" @click="showLogin()" v-text="t$('global.messages.info.authenticated.link')">sign in</a>
|
|
20
20
|
</div>
|
|
21
21
|
<div class="alert alert-danger" v-if="doNotMatch">
|
|
22
22
|
<p v-text="t$('global.messages.error.dontmatch')">The password and its confirmation do not match!</p>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<div class="row justify-content-center">
|
|
4
4
|
<div class="col-md-8 toastify-container">
|
|
5
5
|
<h2 v-if="username" id="settings-title">
|
|
6
|
-
<span v-html="t$('settings.title', { username
|
|
6
|
+
<span v-html="t$('settings.title', { username })">
|
|
7
7
|
User settings for [
|
|
8
8
|
<strong>
|
|
9
9
|
{{ username }}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
|
|
3
3
|
export default class ConfigurationService {
|
|
4
|
-
|
|
4
|
+
loadConfiguration(): Promise<any> {
|
|
5
5
|
return new Promise(resolve => {
|
|
6
6
|
axios.get('management/configprops').then(res => {
|
|
7
7
|
const properties = [];
|
|
@@ -21,7 +21,7 @@ export default class ConfigurationService {
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
loadEnvConfiguration(): Promise<any> {
|
|
25
25
|
return new Promise(resolve => {
|
|
26
26
|
axios.get<any>('management/env').then(res => {
|
|
27
27
|
const properties = {};
|
package/dist/generators/vue/templates/src/main/webapp/app/admin/health/health.service.ts.ejs
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
import axios, { type AxiosPromise } from 'axios';
|
|
2
2
|
|
|
3
3
|
export default class HealthService {
|
|
4
|
-
|
|
4
|
+
separator: string;
|
|
5
5
|
|
|
6
6
|
constructor() {
|
|
7
7
|
this.separator = '.';
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
checkHealth(): AxiosPromise<any> {
|
|
11
11
|
return axios.get('management/health');
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
transformHealthData(data: any): any {
|
|
15
15
|
const response = [];
|
|
16
16
|
this.flattenHealthData(response, null, data.components);
|
|
17
17
|
return response;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
getBaseName(name: string): string {
|
|
21
21
|
if (name) {
|
|
22
22
|
const split = name.split('.');
|
|
23
23
|
return split[0];
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
getSubSystemName(name: string): string {
|
|
28
28
|
if (name) {
|
|
29
29
|
const split = name.split('.');
|
|
30
30
|
split.splice(0, 1);
|
|
@@ -33,7 +33,7 @@ export default class HealthService {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
addHealthObject(result: any, isLeaf: boolean, healthObject: any, name: string) {
|
|
37
37
|
const healthData = {
|
|
38
38
|
name,
|
|
39
39
|
details: undefined,
|
|
@@ -69,7 +69,7 @@ export default class HealthService {
|
|
|
69
69
|
return healthData;
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
flattenHealthData(result: any, path: any, data: any): any {
|
|
73
73
|
for (const key in data) {
|
|
74
74
|
if (Object.hasOwn(data, key)) {
|
|
75
75
|
const value = data[key];
|
|
@@ -86,7 +86,7 @@ export default class HealthService {
|
|
|
86
86
|
return result;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
|
|
89
|
+
getModuleName(path: any, name: string) {
|
|
90
90
|
if (path && name) {
|
|
91
91
|
return path + this.separator + name;
|
|
92
92
|
} else if (path) {
|
|
@@ -97,7 +97,7 @@ export default class HealthService {
|
|
|
97
97
|
return '';
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
|
|
100
|
+
hasSubSystem(healthObject: any): any {
|
|
101
101
|
let result = false;
|
|
102
102
|
|
|
103
103
|
for (const key in healthObject) {
|
|
@@ -111,7 +111,7 @@ export default class HealthService {
|
|
|
111
111
|
return result;
|
|
112
112
|
}
|
|
113
113
|
|
|
114
|
-
|
|
114
|
+
isHealthObject(healthObject: any): any {
|
|
115
115
|
let result = false;
|
|
116
116
|
|
|
117
117
|
for (const key in healthObject) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import axios, { type AxiosPromise } from 'axios';
|
|
2
2
|
|
|
3
3
|
export default class LogsService {
|
|
4
|
-
|
|
4
|
+
changeLevel(name: string, configuredLevel: string): AxiosPromise<any> {
|
|
5
5
|
return axios.post(`management/loggers/${name}`, { configuredLevel });
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
findAll(): AxiosPromise<any> {
|
|
9
9
|
return axios.get('management/loggers');
|
|
10
10
|
}
|
|
11
11
|
}
|
package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics-modal.vue.ejs
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
<div class="mt-2"> </div>
|
|
19
19
|
Filter
|
|
20
20
|
<input type="text" v-model="threadDumpFilter" class="form-control" />
|
|
21
|
-
<div class="pad" v-for="(entry,
|
|
21
|
+
<div class="pad" v-for="(entry, key1) of filteredThreadDump" :key="key1">
|
|
22
22
|
<h6>
|
|
23
23
|
<span class="badge" :class="getBadgeClass(entry.threadState)">{{ entry.threadState }}</span
|
|
24
24
|
> {{ entry.threadName }} (ID {{ entry.threadId }})
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
</h6>
|
|
30
30
|
<div class="card" :hidden="!entry.show">
|
|
31
31
|
<div class="card-body">
|
|
32
|
-
<div v-for="(st,
|
|
32
|
+
<div v-for="(st, key2) of entry.stackTrace" :key="key2" class="break">
|
|
33
33
|
<samp
|
|
34
34
|
>{{ st.className }}.{{ st.methodName }}(<code>{{ st.fileName }}:{{ st.lineNumber }}</code
|
|
35
35
|
>)</samp
|
package/dist/generators/vue/templates/src/main/webapp/app/admin/metrics/metrics.service.ts.ejs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import axios, { type AxiosPromise } from 'axios';
|
|
2
2
|
|
|
3
3
|
export default class MetricsService {
|
|
4
|
-
|
|
4
|
+
getMetrics(): AxiosPromise<any> {
|
|
5
5
|
return axios.get('management/jhimetrics');
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
retrieveThreadDump(): AxiosPromise<any> {
|
|
9
9
|
return axios.get('management/threaddump');
|
|
10
10
|
}
|
|
11
11
|
}
|
package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.ts.ejs
CHANGED
|
@@ -37,7 +37,7 @@ export const useTrackerService = ({ stomp, authenticated }: { stomp?: RxStomp; a
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
export default class TrackerService {
|
|
40
|
-
|
|
40
|
+
status = ref<'open' | 'connecting' | 'closing' | 'closed'>('closed');
|
|
41
41
|
private rxStomp: RxStomp;
|
|
42
42
|
|
|
43
43
|
constructor({ stomp }: { stomp?: RxStomp }) {
|
|
@@ -74,12 +74,12 @@ export default class TrackerService {
|
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
-
|
|
77
|
+
connect(): void {
|
|
78
78
|
this.updateCredentials();
|
|
79
79
|
this.rxStomp.activate();
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
async disconnect(): Promise<void> {
|
|
83
83
|
await this.rxStomp.deactivate();
|
|
84
84
|
}
|
|
85
85
|
<%_ if (authenticationTypeJwt) { _%>
|
|
@@ -121,14 +121,14 @@ export default class TrackerService {
|
|
|
121
121
|
});
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
|
|
124
|
+
sendActivity(page: string): void {
|
|
125
125
|
this.rxStomp.publish({
|
|
126
126
|
destination: DESTINATION_ACTIVITY,
|
|
127
127
|
body: JSON.stringify({ page }),
|
|
128
128
|
});
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
|
|
131
|
+
subscribe(observer) {
|
|
132
132
|
return this.rxStomp
|
|
133
133
|
.watch(DESTINATION_TRACKER)
|
|
134
134
|
.pipe(map(imessage => JSON.parse(imessage.body)))
|