generator-jhipster 8.2.1 → 8.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/environment-builder.mjs +3 -3
- package/dist/cli/jhipster-command.mjs +1 -2
- package/dist/cli/jhipster.cjs +0 -0
- package/dist/generators/angular/command.js +5 -0
- package/dist/generators/angular/generator.js +70 -9
- package/dist/generators/angular/index.js +1 -0
- package/dist/generators/angular/needle-api/needle-client-angular.js +3 -3
- package/dist/generators/angular/resources/package.json +15 -12
- package/dist/generators/angular/support/index.js +0 -1
- package/dist/generators/angular/support/translate-angular.js +142 -8
- package/dist/generators/angular/templates/package.json.ejs +0 -10
- package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/account/activate/activate.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password-strength-bar/password-strength-bar.component.html.ejs +1 -1
- 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 +19 -27
- package/dist/generators/angular/templates/src/main/webapp/app/account/password/password.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.html.ejs +19 -26
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/finish/password-reset-finish.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.html.ejs +11 -16
- package/dist/generators/angular/templates/src/main/webapp/app/account/password-reset/init/password-reset-init.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.html.ejs +32 -47
- package/dist/generators/angular/templates/src/main/webapp/app/account/register/register.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.html.ejs +7 -8
- package/dist/generators/angular/templates/src/main/webapp/app/account/sessions/sessions.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.html.ejs +21 -32
- package/dist/generators/angular/templates/src/main/webapp/app/account/settings/settings.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/configuration/configuration.service.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/gateway/gateway.component.html.ejs +7 -7
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.component.html.ejs +7 -12
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/health.model.ts.ejs +9 -5
- package/dist/generators/angular/templates/src/main/webapp/app/admin/health/modal/health-modal.component.html.ejs +5 -9
- package/dist/generators/angular/templates/src/main/webapp/app/admin/logs/logs.component.html.ejs +5 -5
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-memory/jvm-memory.component.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/jvm-threads/jvm-threads.component.html.ejs +5 -5
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.html.ejs +12 -12
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-cache/metrics-cache.component.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.html.ejs +36 -36
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-datasource/metrics-datasource.component.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.html.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-endpoints-requests/metrics-endpoints-requests.component.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.html.ejs +33 -33
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-garbagecollector/metrics-garbagecollector.component.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-modal-threads/metrics-modal-threads.component.html.ejs +8 -8
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.html.ejs +8 -8
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-request/metrics-request.component.ts.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.html.ejs +13 -13
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/blocks/metrics-system/metrics-system.component.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/metrics/metrics.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.html.ejs +6 -6
- package/dist/generators/angular/templates/src/main/webapp/app/admin/tracker/tracker.component.ts.ejs +2 -1
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/delete/user-management-delete-dialog.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.html.ejs +26 -26
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/detail/user-management-detail.component.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.html.ejs +16 -18
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/list/user-management.component.spec.ts.ejs +1 -2
- package/dist/generators/angular/templates/src/main/webapp/app/admin/user-management/update/user-management-update.component.html.ejs +21 -35
- 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/auth/account.service.spec.ts.ejs +0 -2
- package/dist/generators/angular/templates/src/main/webapp/app/core/tracker/tracker.service.ts.ejs +7 -7
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/delete/_entityFile_-delete-dialog.component.html.ejs +4 -4
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.html.ejs +25 -25
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.spec.ts.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/detail/_entityFile_-detail.component.ts.ejs +2 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.html.ejs +14 -14
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/list/_entityFile_.component.spec.ts.ejs +0 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/route/_entityFile_-routing-resolve.service.spec.ts.ejs +1 -2
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-form.service.ts.ejs +10 -6
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.html.ejs +18 -25
- package/dist/generators/angular/templates/src/main/webapp/app/entities/_entityFolder_/update/_entityFile_-update.component.spec.ts.ejs +0 -2
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.html.ejs +14 -15
- package/dist/generators/angular/templates/src/main/webapp/app/home/home.component.spec.ts.ejs +1 -5
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/error/error.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/footer/footer.component.html.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.spec.ts.ejs +11 -18
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/main/main.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.html.ejs +21 -21
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/navbar/navbar.component.spec.ts.ejs +0 -2
- package/dist/generators/angular/templates/src/main/webapp/app/layouts/profiles/page-ribbon.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.html.ejs +12 -13
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.spec.ts.ejs +1 -2
- package/dist/generators/angular/templates/src/main/webapp/app/login/login.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.html.ejs +3 -3
- package/dist/generators/angular/templates/src/main/webapp/app/shared/filter/filter.component.ts.ejs +1 -1
- package/dist/generators/angular/templates/webpack/webpack.custom.js.ejs +1 -1
- package/dist/generators/app/generator.js +4 -22
- package/dist/generators/app/support/config.js +1 -3
- package/dist/generators/base/generator.js +21 -2
- package/dist/generators/base/shared-data.js +1 -2
- package/dist/generators/base/support/basename.js +1 -2
- package/dist/generators/base/support/needles.js +3 -5
- package/dist/generators/base/support/string.js +2 -2
- package/dist/generators/base-application/generator.js +4 -4
- package/dist/generators/base-application/support/entity.js +1 -2
- package/dist/generators/base-application/support/enum.js +2 -2
- package/dist/generators/base-application/support/prepare-entity.js +1 -1
- package/dist/generators/base-application/support/prepare-field.js +6 -7
- package/dist/generators/base-application/support/relationship.js +1 -2
- package/dist/generators/base-application/support/task-type-inference.js +6 -0
- package/dist/generators/base-core/generator.js +86 -14
- package/dist/generators/base-entity-changes/generator.js +24 -0
- package/dist/generators/base-workspaces/internal/deployments.js +2 -2
- package/dist/generators/base-workspaces/internal/docker-dependencies.js +2 -2
- package/dist/generators/bootstrap/generator.js +4 -5
- package/dist/generators/bootstrap/internal/transform-utils.js +4 -0
- package/dist/generators/bootstrap/support/eslint-transform.js +2 -1
- package/dist/generators/bootstrap/support/java-unused-imports-transform.js +2 -1
- package/dist/generators/bootstrap/support/prettier-worker.js +2 -4
- package/dist/generators/bootstrap-application/generator.js +3 -4
- package/dist/generators/bootstrap-application-base/generator.js +46 -6
- package/dist/generators/bootstrap-application-base/utils.js +3 -3
- package/dist/generators/bootstrap-application-client/generator.js +2 -3
- package/dist/generators/bootstrap-application-server/generator.js +22 -19
- package/dist/generators/bootstrap-workspaces/generator.js +1 -2
- package/dist/generators/ci-cd/command.js +1 -2
- package/dist/generators/ci-cd/generator.js +2 -7
- package/dist/generators/client/command.js +1 -2
- package/dist/generators/client/generator.js +11 -33
- package/dist/generators/client/needle-api/needle-client-vue.js +2 -2
- package/dist/generators/client/resources/package.json +6 -6
- package/dist/generators/client/templates/src/main/webapp/index.html.ejs +2 -2
- package/dist/generators/common/command.js +13 -0
- package/dist/generators/common/generator.js +17 -8
- package/dist/generators/common/resources/package.json +1 -1
- package/dist/generators/cucumber/generator.js +17 -10
- package/dist/generators/cucumber/templates/buildSrc/src/main/groovy/jhipster.cucumber-conventions.gradle.ejs +1 -5
- package/dist/generators/cypress/generator.js +2 -3
- package/dist/generators/cypress/templates/src/test/javascript/cypress/e2e/administration/administration.cy.ts.ejs +10 -0
- package/dist/generators/docker/generator.js +4 -6
- package/dist/generators/docker/templates/docker/realm-config/jhipster-realm.json.ejs +0 -32
- package/dist/generators/docker/utils.js +2 -3
- package/dist/generators/docker-compose/generator.js +5 -10
- package/dist/generators/docker-compose/templates/realm-config/jhipster-realm.json.ejs +0 -32
- package/dist/generators/entities/generator.js +4 -4
- package/dist/generators/entity/generator.js +10 -9
- package/dist/generators/entity/prompts.js +12 -12
- package/dist/generators/export-jdl/generator.js +0 -5
- package/dist/generators/feign-client/generator.js +3 -4
- package/dist/generators/gatling/generator.js +2 -3
- package/dist/generators/gatling/templates/buildSrc/src/main/groovy/jhipster.gatling-conventions.gradle.ejs +1 -1
- package/dist/generators/generate-blueprint/files.js +1 -0
- package/dist/generators/generate-blueprint/generator.js +3 -4
- package/dist/generators/generate-blueprint/resources/package.json +1 -1
- package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs +3 -2
- package/dist/generators/generate-blueprint/templates/generators/generator/command.mjs.ejs +19 -1
- package/dist/generators/generate-blueprint/templates/vitest.test-setup.ts.ejs +6 -0
- package/dist/generators/generator-constants.js +5 -2
- package/dist/generators/git/generator.js +3 -5
- package/dist/generators/gradle/command.js +32 -0
- package/dist/generators/gradle/constants.js +0 -1
- package/dist/generators/gradle/files.js +2 -8
- package/dist/generators/gradle/generator.js +85 -13
- package/dist/generators/gradle/generators/code-quality/generator.js +86 -0
- package/dist/generators/{java/cleanup.js → gradle/generators/code-quality/index.js} +1 -5
- package/dist/generators/gradle/generators/jib/generator.js +64 -0
- package/dist/generators/{app/prompts.js → gradle/generators/jib/index.js} +1 -15
- package/dist/generators/gradle/generators/node-gradle/generator.js +64 -0
- package/dist/generators/gradle/generators/node-gradle/index.js +19 -0
- package/dist/generators/gradle/generators/node-gradle/templates/buildSrc/src/main/groovy/jhipster.node-gradle-conventions.gradle.ejs +101 -0
- package/dist/generators/gradle/index.js +1 -0
- package/dist/generators/gradle/internal/needles.js +9 -3
- package/dist/generators/gradle/templates/buildSrc/build.gradle.ejs +3 -2
- package/dist/generators/gradle/templates/buildSrc/gradle/libs.versions.toml.ejs +8 -1
- package/dist/generators/gradle/templates/gradle/wrapper/{gradle-wrapper.properties.ejs → gradle-wrapper.properties} +1 -1
- package/dist/generators/heroku/generator.js +2 -7
- package/dist/generators/init/generator.js +3 -4
- package/dist/generators/init/resources/.node-version +1 -0
- package/dist/generators/java/command.js +2 -38
- package/dist/generators/java/generator.js +5 -260
- package/dist/generators/java/generators/bootstrap/command.js +35 -0
- package/dist/generators/java/generators/bootstrap/generator.js +178 -0
- package/dist/generators/java/generators/bootstrap/index.js +20 -0
- package/dist/generators/java/generators/build-tool/command.js +42 -0
- package/dist/generators/java/generators/build-tool/generator.js +143 -0
- package/dist/generators/java/generators/build-tool/index.js +20 -0
- package/dist/generators/java/generators/code-quality/command.js +5 -0
- package/dist/generators/java/generators/code-quality/generator.js +91 -0
- package/dist/generators/java/generators/code-quality/index.js +20 -0
- package/dist/generators/java/generators/domain/command.js +30 -0
- package/dist/generators/java/{entity-files.js → generators/domain/entity-files.js} +1 -1
- package/dist/generators/java/generators/domain/generator.js +169 -0
- package/dist/generators/java/generators/domain/index.js +20 -0
- package/dist/generators/java/generators/jib/command.js +5 -0
- package/dist/generators/java/generators/jib/generator.js +97 -0
- package/dist/generators/java/generators/jib/index.js +20 -0
- package/dist/generators/{server → java/generators/jib}/templates/src/main/docker/jib/entrypoint.sh.ejs +2 -0
- package/dist/generators/java/generators/node/command.js +5 -0
- package/dist/generators/java/generators/node/generator.js +97 -0
- package/dist/generators/java/generators/node/index.js +20 -0
- package/dist/generators/java/support/index.js +1 -0
- package/dist/generators/jdl/generator.js +6 -13
- package/dist/generators/kubernetes/generator.js +1 -6
- package/dist/generators/kubernetes/kubernetes-base.js +3 -3
- package/dist/generators/kubernetes/templates/keycloak/keycloak-configmap.yml.ejs +0 -32
- package/dist/generators/kubernetes-helm/generator.js +1 -6
- package/dist/generators/kubernetes-knative/generator.js +1 -6
- package/dist/generators/languages/entity-files.js +3 -2
- package/dist/generators/languages/files.js +2 -2
- package/dist/generators/languages/generator.js +6 -15
- package/dist/generators/languages/support/translate.js +34 -9
- package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/global.json.ejs +2 -2
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pa/{home.json → home.json.ejs} +2 -2
- package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/si/{home.json → home.json.ejs} +6 -6
- package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/te/{home.json → home.json.ejs} +1 -1
- package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json.ejs +19 -0
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json.ejs +19 -0
- package/dist/generators/languages/translation-data.js +4 -5
- package/dist/generators/liquibase/generator.js +126 -36
- package/dist/generators/liquibase/support/maven-plugin.js +6 -0
- package/dist/generators/liquibase/support/prepare-field.js +16 -1
- package/dist/generators/liquibase/support/relationship.js +1 -0
- package/dist/generators/liquibase/templates/gradle/liquibase.gradle.ejs +3 -6
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/added_entity.xml.ejs +1 -1
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity.xml.ejs +3 -3
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/changelog/updated_entity_constraints.xml.ejs +26 -1
- package/dist/generators/liquibase/templates/src/main/resources/config/liquibase/fake-data/table_entity.csv.ejs +3 -3
- package/dist/generators/maven/generator.js +14 -6
- package/dist/generators/maven/generators/code-quality/command.js +5 -0
- package/dist/generators/maven/generators/code-quality/generator.js +268 -0
- package/dist/generators/maven/generators/code-quality/index.js +20 -0
- package/dist/generators/maven/generators/frontend-plugin/command.js +5 -0
- package/dist/generators/maven/generators/frontend-plugin/generator.js +295 -0
- package/dist/generators/maven/generators/frontend-plugin/index.js +20 -0
- package/dist/generators/maven/generators/jib/command.js +5 -0
- package/dist/generators/maven/generators/jib/generator.js +136 -0
- package/dist/generators/maven/generators/jib/index.js +20 -0
- package/dist/generators/maven/internal/xml-store.js +1 -2
- package/dist/generators/maven/support/dependabot-maven.js +12 -2
- package/dist/generators/maven/support/pom-store.js +1 -2
- package/dist/generators/project-name/generator.js +9 -11
- package/dist/generators/react/generator.js +25 -6
- package/dist/generators/react/needle-api/needle-client-react.js +2 -2
- package/dist/generators/react/resources/package.json +27 -24
- package/dist/generators/react/templates/package.json.ejs +1 -7
- package/dist/generators/react/templates/src/main/webapp/app/modules/administration/tracker/tracker.tsx.ejs +2 -2
- package/dist/generators/react/templates/src/main/webapp/app/modules/home/home.tsx.ejs +7 -7
- package/dist/generators/react/templates/webpack/webpack.microfrontend.js.jhi.react.ejs +0 -8
- package/dist/generators/server/command.js +2 -34
- package/dist/generators/server/generator.js +35 -204
- package/dist/generators/server/jdl/application-definition.js +1 -2
- package/dist/generators/server/resources/Dockerfile +13 -13
- package/dist/generators/server/resources/build.gradle +1 -0
- package/dist/generators/server/resources/gradle/libs.versions.toml +27 -9
- package/dist/generators/server/resources/pom.xml +9 -27
- package/dist/generators/server/support/prepare-field.js +8 -4
- package/dist/generators/server/support/prepare-relationship.js +7 -2
- package/dist/generators/server/templates/build.gradle.ejs +29 -143
- package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +3 -3
- package/dist/generators/server/templates/gradle/profile_prod.gradle.ejs +2 -2
- package/dist/generators/server/templates/gradle.properties.ejs +0 -7
- package/dist/generators/server/templates/pom.xml.ejs +23 -448
- package/dist/generators/server/templates/settings.gradle.ejs +0 -4
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +71 -9
- package/dist/generators/server/templates/src/main/java/_package_/web/filter/SpaWebFilter_imperative.java.ejs +4 -1
- package/dist/generators/server/templates/src/main/resources/config/application.yml.ejs +16 -5
- package/dist/generators/server/templates/src/main/resources/config/bootstrap.yml.ejs +1 -1
- package/dist/generators/server/templates/src/main/resources/static/index_microservices.html.ejs +8 -8
- package/dist/generators/server/templates/src/test/java/_package_/IntegrationTest.java.ejs +0 -2
- package/dist/generators/server/templates/src/test/java/_package_/config/TestContainersSpringContextCustomizerFactory.java.ejs +71 -46
- package/dist/generators/server/templates/src/test/java/_package_/security/jwt/AuthenticationIntegrationTest.java.ejs +0 -3
- package/dist/generators/server/templates/src/test/resources/config/application.yml.ejs +1 -1
- package/dist/generators/spring-boot/cleanup.js +3 -0
- package/dist/generators/spring-boot/command.js +40 -2
- package/dist/generators/spring-boot/entity-files.js +2 -2
- package/dist/generators/spring-boot/files.js +3 -43
- package/dist/generators/spring-boot/generator.js +115 -37
- package/dist/generators/{server → spring-boot}/prompts.js +6 -48
- package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +125 -125
- package/dist/generators/spring-boot/templates/src/test/java/_package_/_entityPackage_/web/rest/_entityClass_ResourceIT.java.ejs +2 -2
- package/dist/generators/spring-cache/generator.js +11 -6
- package/dist/generators/spring-cache/internal/dependencies.js +5 -0
- package/dist/generators/spring-cache/resources/build.gradle +1 -0
- package/dist/generators/spring-cache/resources/gradle/libs.versions.toml +15 -0
- package/dist/generators/spring-cache/templates/src/main/java/_package_/config/CacheConfiguration.java.ejs +4 -0
- package/dist/generators/spring-cache/templates/src/test/java/_package_/config/RedisTestContainersSpringContextCustomizerFactory.java.ejs +29 -13
- package/dist/generators/spring-cloud/generators/gateway/command.js +5 -0
- package/dist/generators/spring-cloud/generators/gateway/generator.js +146 -0
- package/dist/generators/spring-cloud/generators/gateway/index.js +20 -0
- package/dist/generators/spring-cloud-stream/generator.js +2 -3
- package/dist/generators/spring-cloud-stream/generators/kafka/generator.js +2 -2
- package/dist/generators/spring-cloud-stream/generators/kafka/templates/src/test/java/_package_/config/KafkaTestContainersSpringContextCustomizerFactory.java.ejs +28 -12
- package/dist/generators/spring-cloud-stream/generators/pulsar/generator.js +2 -2
- package/dist/generators/spring-cloud-stream/generators/pulsar/templates/src/test/java/_package_/config/PulsarTestContainersSpringContextCustomizerFactory.java.ejs +33 -17
- package/dist/generators/spring-data-cassandra/generator.js +5 -6
- package/dist/generators/spring-data-cassandra/templates/src/test/java/_package_/config/CassandraTestContainersSpringContextCustomizerFactory.java.ejs +33 -17
- package/dist/generators/spring-data-couchbase/generator.js +3 -4
- package/dist/generators/spring-data-elasticsearch/generator.js +3 -5
- package/dist/generators/spring-data-mongodb/generator.js +5 -5
- package/dist/generators/spring-data-neo4j/generator.js +11 -5
- package/dist/generators/spring-data-neo4j/templates/src/test/java/_package_/config/Neo4jTestContainersSpringContextCustomizerFactory.java.ejs +32 -16
- package/dist/generators/spring-data-relational/generator.js +6 -7
- package/dist/generators/spring-data-relational/support/h2-reserved-keywords.js +22 -0
- package/dist/generators/spring-data-relational/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +47 -32
- package/dist/generators/spring-websocket/generator.js +2 -3
- package/dist/generators/upgrade/generator.js +4 -7
- package/dist/generators/vue/generator.js +4 -4
- package/dist/generators/vue/resources/package.json +24 -21
- package/dist/generators/vue/templates/package.json.ejs +3 -3
- package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.spec.ts.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/account.service.ts.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.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/register/register.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/finish/reset-password-finish.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/reset-password/init/reset-password-init.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/account/settings/settings.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.service.ts.ejs +3 -3
- package/dist/generators/vue/templates/src/main/webapp/app/admin/tracker/tracker.vue.ejs +2 -2
- package/dist/generators/vue/templates/src/main/webapp/app/admin/user-management/user-management-edit.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/core/home/home.vue.ejs +7 -7
- package/dist/generators/vue/templates/src/main/webapp/app/entities/_entityFolder_/_entityFile_-update.vue.ejs +1 -1
- package/dist/generators/vue/templates/src/main/webapp/app/main.ts.ejs +4 -3
- package/dist/generators/vue/templates/vite.config.mts.ejs +6 -0
- package/dist/generators/vue/templates/vitest.config.mts.ejs +1 -1
- package/dist/generators/vue/templates/webpack/webpack.microfrontend.js.jhi.vue.ejs +0 -9
- package/dist/generators/workspaces/generator.js +5 -4
- package/dist/jdl/converters/jdl-to-json/jdl-to-json-field-converter.js +2 -2
- package/dist/jdl/converters/jdl-to-json/jdl-to-json-relationship-converter.js +3 -3
- package/dist/jdl/converters/parsed-jdl-to-jdl-object/parsed-jdl-to-jdl-object-converter.js +2 -2
- package/dist/jdl/jdl-importer.js +1 -2
- package/dist/jdl/jhipster/default-application-options.js +1 -1
- package/dist/jdl/jhipster/field-types.js +2 -2
- package/dist/jdl/jhipster/relationship-types.js +1 -2
- package/dist/jdl/models/jdl-deployment.js +1 -2
- package/dist/jdl/parsing/api.js +2 -2
- package/dist/jdl/parsing/lexer/token-creator.js +1 -2
- package/dist/jdl/parsing/self-checks/parsing-system-checker.js +13 -13
- package/dist/jdl/parsing/validator.js +5 -5
- package/dist/testing/get-generator.js +1 -1
- package/dist/testing/helpers.js +34 -9
- package/dist/types/generators/angular/support/index.d.ts +0 -1
- package/dist/types/generators/angular/support/translate-angular.d.ts +7 -4
- package/dist/types/generators/app/support/config.d.ts +1 -1
- package/dist/types/generators/base/api.d.ts +8 -1
- package/dist/types/generators/base/generator.d.ts +1 -1
- package/dist/types/generators/base-application/generator.d.ts +4 -4
- package/dist/types/generators/base-application/support/task-type-inference.d.ts +3 -0
- package/dist/types/generators/base-application/support/update-application-entities-transform.d.ts +1 -1
- package/dist/types/generators/base-application/types.d.ts +15 -0
- package/dist/types/generators/base-core/generator.d.ts +33 -1
- package/dist/types/generators/base-entity-changes/types.d.ts +2 -0
- package/dist/types/generators/bootstrap/internal/transform-utils.d.ts +1 -0
- package/dist/types/generators/bootstrap/support/java-unused-imports-transform.d.ts +1 -1
- package/dist/types/generators/bootstrap-application-base/support/export-jdl-transform.d.ts +2 -2
- package/dist/types/generators/docker/utils.d.ts +7 -0
- package/dist/types/generators/generator-constants.d.ts +2 -20
- package/dist/types/generators/gradle/types.d.ts +21 -7
- package/dist/types/generators/java/support/index.d.ts +1 -0
- package/dist/types/generators/java/types.d.ts +37 -22
- package/dist/types/generators/languages/support/translate.d.ts +29 -0
- package/dist/types/generators/maven/support/dependabot-maven.d.ts +17 -1
- package/dist/types/generators/project-name/support/name-resolver.d.ts +1 -1
- package/dist/types/generators/server/types.d.ts +2 -0
- package/dist/types/generators/spring-data-relational/support/h2-reserved-keywords.d.ts +20 -0
- package/dist/types/jdl/converters/jdl-to-json/jdl-to-json-field-converter.d.ts +0 -18
- package/dist/types/testing/helpers.d.ts +6 -0
- package/dist/types/testing/support/matrix-utils.d.ts +1 -1
- package/package.json +19 -32
- package/dist/generators/java/files.js +0 -20
- package/dist/generators/languages/templates/src/main/webapp/i18n/al/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ar-ly/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/az-Latn-az/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/bg/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/bn/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/by/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ca/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/cs/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/da/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/de/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/el/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/en/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/es/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/et/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fa/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/fr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/gl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hu/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/hy/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/id/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/it/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ja/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ko/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/kr-Latn-kr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/mr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/my/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/nl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pl/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-br/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/pt-pt/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ro/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ru/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sk/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/sv/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ta/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/th/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/tr/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/ua/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/global.json +0 -148
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Cyrl-uz/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/uz-Latn-uz/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/vi/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-cn/home.json +0 -19
- package/dist/generators/languages/templates/src/main/webapp/i18n/zh-tw/home.json +0 -19
- package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_imperative.java.ejs +0 -43
- package/dist/generators/server/templates/src/main/java/_package_/config/LocaleConfiguration_reactive.java.ejs +0 -184
- package/dist/generators/statistics.js +0 -223
- /package/dist/generators/{server → gradle/generators/code-quality}/templates/buildSrc/src/main/groovy/jhipster.code-quality-conventions.gradle.ejs +0 -0
- /package/dist/generators/{server → gradle/generators/jib}/templates/buildSrc/src/main/groovy/jhipster.docker-conventions.gradle.ejs +0 -0
- /package/dist/generators/java/{templates → generators/bootstrap/templates}/src/main/java/_package_/GeneratedByJHipster.java.ejs +0 -0
- /package/dist/generators/{server → java/generators/code-quality}/templates/checkstyle.xml.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/_global_partials_entity_/field_validators.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jackson_identity_info.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/_persistClass_.java.jhi.jakarta_validation.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/main/java/_package_/_entityPackage_/domain/enumeration/_enumName_.java.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_Asserts.java.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_Test.java.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/_entityPackage_/domain/_persistClass_TestSamples.java.ejs +0 -0
- /package/dist/generators/java/{templates → generators/domain/templates}/src/test/java/_package_/domain/AssertUtils.java.ejs +0 -0
- /package/dist/generators/{server → java/generators/node}/templates/npmw +0 -0
- /package/dist/generators/{server → java/generators/node}/templates/npmw.cmd +0 -0
- /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/security/jwt/JWTRelayGatewayFilterFactory.java.ejs +0 -0
- /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/filter/ModifyServersOpenApiFilter.java.ejs +0 -0
- /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/rest/GatewayResource.java.ejs +0 -0
- /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/main/java/_package_/web/rest/vm/RouteVM.java.ejs +0 -0
- /package/dist/generators/{server → spring-cloud/generators/gateway}/templates/src/test/java/_package_/web/filter/ModifyServersOpenApiFilterTest.java.ejs +0 -0
|
@@ -21,7 +21,7 @@ import { existsSync, readFileSync } from 'fs';
|
|
|
21
21
|
import path, { dirname, resolve } from 'path';
|
|
22
22
|
import { fileURLToPath, pathToFileURL } from 'url';
|
|
23
23
|
import chalk from 'chalk';
|
|
24
|
-
import
|
|
24
|
+
import { cloneDeep, mergeWith } from 'lodash-es';
|
|
25
25
|
import Environment from 'yeoman-environment';
|
|
26
26
|
import { QueuedAdapter } from '@yeoman/adapter';
|
|
27
27
|
import { CLI_NAME, logger } from './utils.mjs';
|
|
@@ -366,7 +366,7 @@ export default class EnvironmentBuilder {
|
|
|
366
366
|
const blueprintCommandsUrl = pathToFileURL(resolve(`${blueprintCommandFile}${blueprintCommandExtension}`));
|
|
367
367
|
try {
|
|
368
368
|
blueprintCommand = (await import(blueprintCommandsUrl)).default;
|
|
369
|
-
const blueprintCommands =
|
|
369
|
+
const blueprintCommands = cloneDeep(blueprintCommand);
|
|
370
370
|
Object.entries(blueprintCommands).forEach(([_command, commandSpec]) => {
|
|
371
371
|
commandSpec.blueprint = commandSpec.blueprint || blueprint;
|
|
372
372
|
});
|
|
@@ -437,7 +437,7 @@ export default class EnvironmentBuilder {
|
|
|
437
437
|
for (const [blueprint, packagePath] of blueprintPackagePaths) {
|
|
438
438
|
const errorMsg = `No custom sharedOptions found within blueprint: ${blueprint} at ${packagePath}`;
|
|
439
439
|
const opts = await loadSharedOptionsFromFile(`${packagePath}/cli/sharedOptions`, undefined, errorMsg);
|
|
440
|
-
result =
|
|
440
|
+
result = mergeWith(result, opts, joiner);
|
|
441
441
|
}
|
|
442
442
|
return result;
|
|
443
443
|
}
|
|
@@ -18,9 +18,8 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import chalk from 'chalk';
|
|
20
20
|
import { Command, Option } from 'commander';
|
|
21
|
-
import
|
|
21
|
+
import { kebabCase } from 'lodash-es';
|
|
22
22
|
import { convertConfigToOption } from '../lib/internal/index.js';
|
|
23
|
-
const { kebabCase } = lodash;
|
|
24
23
|
export default class JHipsterCommand extends Command {
|
|
25
24
|
createCommand(name) {
|
|
26
25
|
return new JHipsterCommand(name);
|
package/dist/cli/jhipster.cjs
CHANGED
|
File without changes
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
import
|
|
19
|
+
import { camelCase } from 'lodash-es';
|
|
20
20
|
import chalk from 'chalk';
|
|
21
21
|
import { isFileStateModified } from 'mem-fs-editor/state';
|
|
22
22
|
import BaseApplicationGenerator from '../base-application/index.js';
|
|
@@ -34,7 +34,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
34
34
|
localEntities;
|
|
35
35
|
async beforeQueue() {
|
|
36
36
|
if (!this.fromBlueprint) {
|
|
37
|
-
await this.composeWithBlueprints(
|
|
37
|
+
await this.composeWithBlueprints();
|
|
38
38
|
}
|
|
39
39
|
if (!this.delegateToBlueprint) {
|
|
40
40
|
await this.dependsOnJHipster(GENERATOR_CLIENT);
|
|
@@ -49,7 +49,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
51
|
get [BaseApplicationGenerator.LOADING]() {
|
|
52
|
-
return this.
|
|
52
|
+
return this.delegateTasksToBlueprint(() => this.loading);
|
|
53
53
|
}
|
|
54
54
|
get preparing() {
|
|
55
55
|
return this.asPreparingTaskGroup({
|
|
@@ -94,7 +94,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
94
94
|
});
|
|
95
95
|
}
|
|
96
96
|
get [BaseApplicationGenerator.PREPARING]() {
|
|
97
|
-
return this.
|
|
97
|
+
return this.delegateTasksToBlueprint(() => this.preparing);
|
|
98
98
|
}
|
|
99
99
|
get preparingEachEntity() {
|
|
100
100
|
return this.asPreparingEachEntityTaskGroup({
|
|
@@ -113,6 +113,40 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
113
113
|
get [BaseApplicationGenerator.PREPARING_EACH_ENTITY]() {
|
|
114
114
|
return this.delegateTasksToBlueprint(() => this.preparingEachEntity);
|
|
115
115
|
}
|
|
116
|
+
get preparingEachEntityField() {
|
|
117
|
+
return this.asPreparingEachEntityFieldTaskGroup({
|
|
118
|
+
prepareField({ field }) {
|
|
119
|
+
mutateData(field, {
|
|
120
|
+
fieldTsDefaultValue: ({ fieldTsDefaultValue, defaultValue, fieldTypeCharSequence, fieldTypeTimed }) => {
|
|
121
|
+
let returnValue;
|
|
122
|
+
if (fieldTsDefaultValue !== undefined || defaultValue !== undefined) {
|
|
123
|
+
let fieldDefaultValue;
|
|
124
|
+
if (fieldTsDefaultValue !== undefined) {
|
|
125
|
+
fieldDefaultValue = fieldTsDefaultValue;
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
fieldDefaultValue = defaultValue;
|
|
129
|
+
}
|
|
130
|
+
fieldDefaultValue = String(fieldDefaultValue).replace(/'/g, "\\'");
|
|
131
|
+
if (fieldTypeCharSequence) {
|
|
132
|
+
returnValue = `'${fieldDefaultValue}'`;
|
|
133
|
+
}
|
|
134
|
+
else if (fieldTypeTimed) {
|
|
135
|
+
returnValue = `dayjs('${fieldDefaultValue}')`;
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
returnValue = fieldDefaultValue;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return returnValue;
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
get [BaseApplicationGenerator.PREPARING_EACH_ENTITY_FIELD]() {
|
|
148
|
+
return this.delegateTasksToBlueprint(() => this.preparingEachEntityField);
|
|
149
|
+
}
|
|
116
150
|
get default() {
|
|
117
151
|
return this.asDefaultTaskGroup({
|
|
118
152
|
loadEntities() {
|
|
@@ -120,16 +154,17 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
120
154
|
this.localEntities = entities.filter(entity => !entity.builtIn && !entity.skipClient);
|
|
121
155
|
},
|
|
122
156
|
queueTranslateTransform({ control, application }) {
|
|
157
|
+
const { enableTranslation, jhiPrefix } = application;
|
|
123
158
|
this.queueTransformStream({
|
|
124
159
|
name: 'translating angular application',
|
|
125
160
|
filter: file => isFileStateModified(file) && file.path.startsWith(this.destinationPath()) && isTranslatedAngularFile(file),
|
|
126
161
|
refresh: false,
|
|
127
|
-
}, translateAngularFilesTransform(control.getWebappTranslation,
|
|
162
|
+
}, translateAngularFilesTransform(control.getWebappTranslation, { enableTranslation, jhiPrefix }));
|
|
128
163
|
},
|
|
129
164
|
});
|
|
130
165
|
}
|
|
131
166
|
get [BaseApplicationGenerator.DEFAULT]() {
|
|
132
|
-
return this.
|
|
167
|
+
return this.delegateTasksToBlueprint(() => this.default);
|
|
133
168
|
}
|
|
134
169
|
get writing() {
|
|
135
170
|
return this.asWritingTaskGroup({
|
|
@@ -149,6 +184,32 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
149
184
|
get [BaseApplicationGenerator.WRITING_ENTITIES]() {
|
|
150
185
|
return this.delegateTasksToBlueprint(() => this.writingEntities);
|
|
151
186
|
}
|
|
187
|
+
get postWriting() {
|
|
188
|
+
return this.asPostWritingTaskGroup({
|
|
189
|
+
addWebsocketDependencies({ application }) {
|
|
190
|
+
const { authenticationTypeSession, communicationSpringWebsocket, nodeDependencies } = application;
|
|
191
|
+
const dependencies = {};
|
|
192
|
+
if (communicationSpringWebsocket) {
|
|
193
|
+
if (authenticationTypeSession) {
|
|
194
|
+
dependencies['ngx-cookie-service'] = nodeDependencies['ngx-cookie-service'];
|
|
195
|
+
}
|
|
196
|
+
this.packageJson.merge({
|
|
197
|
+
dependencies: {
|
|
198
|
+
'sockjs-client': nodeDependencies['sockjs-client'],
|
|
199
|
+
'@stomp/rx-stomp': nodeDependencies['@stomp/rx-stomp'],
|
|
200
|
+
...dependencies,
|
|
201
|
+
},
|
|
202
|
+
devDependencies: {
|
|
203
|
+
'@types/sockjs-client': nodeDependencies['@types/sockjs-client'],
|
|
204
|
+
},
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
get [BaseApplicationGenerator.POST_WRITING]() {
|
|
211
|
+
return this.delegateTasksToBlueprint(() => this.postWriting);
|
|
212
|
+
}
|
|
152
213
|
get postWritingEntities() {
|
|
153
214
|
return this.asPostWritingEntitiesTaskGroup({
|
|
154
215
|
postWriteEntitiesFiles,
|
|
@@ -168,7 +229,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
168
229
|
});
|
|
169
230
|
}
|
|
170
231
|
get [BaseApplicationGenerator.END]() {
|
|
171
|
-
return this.
|
|
232
|
+
return this.delegateTasksToBlueprint(() => this.end);
|
|
172
233
|
}
|
|
173
234
|
/**
|
|
174
235
|
* @private
|
|
@@ -239,7 +300,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
239
300
|
* @param {boolean} enableTranslation - If translations are enabled or not
|
|
240
301
|
* @param {string} translationKeyMenu - i18n key for entry in the admin menu
|
|
241
302
|
*/
|
|
242
|
-
addElementToAdminMenu(routerName, iconName, enableTranslation, translationKeyMenu =
|
|
303
|
+
addElementToAdminMenu(routerName, iconName, enableTranslation, translationKeyMenu = camelCase(routerName), jhiPrefix) {
|
|
243
304
|
this.needleApi.clientAngular.addElementToAdminMenu(routerName, iconName, enableTranslation, translationKeyMenu, jhiPrefix);
|
|
244
305
|
}
|
|
245
306
|
addEntitiesToMenu({ application, entities }) {
|
|
@@ -344,7 +405,7 @@ export default class AngularGenerator extends BaseApplicationGenerator {
|
|
|
344
405
|
* @param {string} clientFramework - The name of the client framework
|
|
345
406
|
* @param {string} translationKeyMenu - i18n key for entry in the menu
|
|
346
407
|
*/
|
|
347
|
-
addElementToMenu(routerName, iconName, enableTranslation, clientFramework, translationKeyMenu =
|
|
408
|
+
addElementToMenu(routerName, iconName, enableTranslation, clientFramework, translationKeyMenu = camelCase(routerName)) {
|
|
348
409
|
this.needleApi.clientAngular.addElementToMenu(routerName, iconName, enableTranslation, translationKeyMenu);
|
|
349
410
|
}
|
|
350
411
|
}
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
19
|
import chalk from 'chalk';
|
|
20
|
-
import
|
|
20
|
+
import { startCase } from 'lodash-es';
|
|
21
21
|
import needleClientBase from '../../client/needle-api/needle-client.js';
|
|
22
22
|
import { LINE_LENGTH } from '../../generator-constants.js';
|
|
23
23
|
import { stripMargin, upperFirstCamelCase } from '../../base/support/index.js';
|
|
@@ -82,7 +82,7 @@ export default class extends needleClientBase {
|
|
|
82
82
|
const entityEntry = `<li class="nav-item" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}">
|
|
83
83
|
<a class="nav-link" ${routerLink} (click)="collapseNavbar()">
|
|
84
84
|
<fa-icon icon="${iconName}" [fixedWidth]="true"></fa-icon>
|
|
85
|
-
<span${enableTranslation ? ` ${jhiPrefix}Translate="global.menu.${translationKeyMenu}"` : ''}>${
|
|
85
|
+
<span${enableTranslation ? ` ${jhiPrefix}Translate="global.menu.${translationKeyMenu}"` : ''}>${startCase(routerName)}</span>
|
|
86
86
|
</a>
|
|
87
87
|
</li>`;
|
|
88
88
|
const rewriteFileModel = this.generateFileModel(entityMenuPath, 'jhipster-needle-add-element-to-menu', entityEntry);
|
|
@@ -98,7 +98,7 @@ export default class extends needleClientBase {
|
|
|
98
98
|
const entityEntry = `<li>
|
|
99
99
|
<a class="dropdown-item" ${routerLink} routerLinkActive="active" (click)="collapseNavbar()">
|
|
100
100
|
<fa-icon icon="${iconName}" [fixedWidth]="true"></fa-icon>
|
|
101
|
-
<span${enableTranslation ? ` ${jhiPrefix}Translate="global.menu.admin.${translationKeyMenu}"` : ''}>${
|
|
101
|
+
<span${enableTranslation ? ` ${jhiPrefix}Translate="global.menu.admin.${translationKeyMenu}"` : ''}>${startCase(routerName)}</span>
|
|
102
102
|
</a>
|
|
103
103
|
</li>`;
|
|
104
104
|
const rewriteFileModel = this.generateFileModel(navbarAdminPath, 'jhipster-needle-add-element-to-admin-menu', entityEntry);
|
|
@@ -1,31 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"dependencies": {
|
|
3
|
-
"@angular/common": "17.3.
|
|
3
|
+
"@angular/common": "17.3.6",
|
|
4
4
|
"@fortawesome/angular-fontawesome": "0.14.1",
|
|
5
|
-
"@fortawesome/fontawesome-svg-core": "6.5.
|
|
6
|
-
"@fortawesome/free-solid-svg-icons": "6.5.
|
|
5
|
+
"@fortawesome/fontawesome-svg-core": "6.5.2",
|
|
6
|
+
"@fortawesome/free-solid-svg-icons": "6.5.2",
|
|
7
7
|
"@ng-bootstrap/ng-bootstrap": "16.0.0",
|
|
8
8
|
"@ngx-translate/core": "15.0.0",
|
|
9
9
|
"@ngx-translate/http-loader": "8.0.0",
|
|
10
10
|
"@popperjs/core": "2.11.8",
|
|
11
|
+
"@stomp/rx-stomp": "2.0.0",
|
|
11
12
|
"bootstrap": "5.3.3",
|
|
12
13
|
"bootswatch": "5.3.3",
|
|
13
14
|
"ngx-cookie-service": "17.1.0",
|
|
14
15
|
"ngx-infinite-scroll": "17.0.0",
|
|
15
16
|
"rxjs": "7.8.1",
|
|
17
|
+
"sockjs-client": "1.6.1",
|
|
16
18
|
"tslib": "2.6.2",
|
|
17
19
|
"zone.js": "0.14.4"
|
|
18
20
|
},
|
|
19
21
|
"devDependencies": {
|
|
20
22
|
"@angular-architects/module-federation": "17.0.8",
|
|
21
23
|
"@angular-architects/module-federation-runtime": "17.0.8",
|
|
22
|
-
"@angular-builders/custom-webpack": "17.0.
|
|
23
|
-
"@angular-builders/jest": "17.0.
|
|
24
|
+
"@angular-builders/custom-webpack": "17.0.2",
|
|
25
|
+
"@angular-builders/jest": "17.0.3",
|
|
24
26
|
"@angular-eslint/eslint-plugin": "17.3.0",
|
|
25
|
-
"@angular/cli": "17.3.
|
|
27
|
+
"@angular/cli": "17.3.6",
|
|
26
28
|
"@types/jest": "29.5.12",
|
|
27
29
|
"@types/node": "20.11.25",
|
|
28
|
-
"@
|
|
30
|
+
"@types/sockjs-client": "1.5.4",
|
|
31
|
+
"@typescript-eslint/eslint-plugin": "7.7.1",
|
|
29
32
|
"browser-sync": "3.0.2",
|
|
30
33
|
"browser-sync-webpack-plugin": "2.3.0",
|
|
31
34
|
"buffer": "6.0.3",
|
|
@@ -35,17 +38,17 @@
|
|
|
35
38
|
"eslint-webpack-plugin": "4.1.0",
|
|
36
39
|
"folder-hash": "4.0.4",
|
|
37
40
|
"jest": "29.7.0",
|
|
38
|
-
"jest-date-mock": "1.0.
|
|
41
|
+
"jest-date-mock": "1.0.10",
|
|
39
42
|
"jest-junit": "16.0.0",
|
|
40
43
|
"jest-preset-angular": "14.0.3",
|
|
41
44
|
"jest-sonar": "0.2.16",
|
|
42
45
|
"merge-jsons-webpack-plugin": "2.0.1",
|
|
43
|
-
"postcss-rtlcss": "5.1.
|
|
46
|
+
"postcss-rtlcss": "5.1.2",
|
|
44
47
|
"rimraf": "5.0.5",
|
|
45
48
|
"ts-jest": "29.1.2",
|
|
46
|
-
"typescript": "5.4.
|
|
47
|
-
"webpack": "5.
|
|
48
|
-
"webpack-bundle-analyzer": "4.10.
|
|
49
|
+
"typescript": "5.4.5",
|
|
50
|
+
"webpack": "5.91.0",
|
|
51
|
+
"webpack-bundle-analyzer": "4.10.2",
|
|
49
52
|
"webpack-merge": "5.10.0",
|
|
50
53
|
"webpack-notifier": "1.15.0"
|
|
51
54
|
}
|
|
@@ -20,5 +20,4 @@ export * from './needles.js';
|
|
|
20
20
|
export * from './path-utils.js';
|
|
21
21
|
export * from './reserved-keywords.js';
|
|
22
22
|
export * from './translate-angular.js';
|
|
23
|
-
export { default as translateAngularFilesTransform } from './translate-angular.js';
|
|
24
23
|
export { default as updateLanguagesTask } from './update-languages.js';
|
|
@@ -16,9 +16,10 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
+
import { extname } from 'node:path';
|
|
19
20
|
import { passthrough } from '@yeoman/transform';
|
|
20
21
|
import { Minimatch } from 'minimatch';
|
|
21
|
-
import { createJhiTransformTranslateReplacer, createJhiTransformTranslateStringifyReplacer } from '../../languages/support/index.js';
|
|
22
|
+
import { createJhiTransformTranslateReplacer, createJhiTransformTranslateStringifyReplacer, createJhiTranslateReplacer, escapeHtmlTranslationValue, escapeTsTranslationValue, } from '../../languages/support/index.js';
|
|
22
23
|
const PLACEHOLDER_REGEX = /(?:placeholder|title)=['|"](\{\{\s?['|"]([a-zA-Z0-9.\-_]+)['|"]\s?\|\s?translate\s?\}\})['|"]/.source;
|
|
23
24
|
const JHI_TRANSLATE_REGEX = /(\n?\s*[a-z][a-zA-Z]*Translate="[a-zA-Z0-9 +{}'_!?.]+")/.source;
|
|
24
25
|
const TRANSLATE_VALUES_REGEX = /(\n?\s*\[translateValues\]="\{(?:(?!\}").)*?\}")/.source;
|
|
@@ -35,9 +36,10 @@ function getTranslationValue(getWebappTranslation, key, data) {
|
|
|
35
36
|
* @param {object} [options]
|
|
36
37
|
* @param {number} [options.keyIndex]
|
|
37
38
|
* @param {number} [options.replacementIndex]
|
|
39
|
+
* @param {any} [options.escape]
|
|
38
40
|
* @returns {string}
|
|
39
41
|
*/
|
|
40
|
-
function replaceTranslationKeysWithText(getWebappTranslation, content, regexSource, { keyIndex = 1, replacementIndex = 1, escape } = {}) {
|
|
42
|
+
function replaceTranslationKeysWithText(getWebappTranslation, content, regexSource, { keyIndex = 1, replacementIndex = 1, escape, } = {}) {
|
|
41
43
|
const regex = new RegExp(regexSource, 'g');
|
|
42
44
|
const allMatches = content.matchAll(regex);
|
|
43
45
|
for (const match of allMatches) {
|
|
@@ -87,15 +89,145 @@ function replacePlaceholders(getWebappTranslation, content) {
|
|
|
87
89
|
function replaceErrorMessage(getWebappTranslation, content) {
|
|
88
90
|
return replaceJSTranslation(getWebappTranslation, content, 'errorMessage');
|
|
89
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Creates a `jhiTranslate` attribute with optional translateValues.
|
|
94
|
+
* Or the translation value if translation is disabled.
|
|
95
|
+
*/
|
|
96
|
+
const tagTranslation = (getWebappTranslation, { enableTranslation, jhiPrefix }, { key, parsedInterpolate, prefix, suffix }) => {
|
|
97
|
+
const translatedValueInterpolate = parsedInterpolate
|
|
98
|
+
? Object.fromEntries(Object.entries(parsedInterpolate).map(([key, value]) => [key, `{{ ${value} }}`]))
|
|
99
|
+
: undefined;
|
|
100
|
+
const translatedValue = escapeHtmlTranslationValue(getTranslationValue(getWebappTranslation, key, translatedValueInterpolate));
|
|
101
|
+
if (enableTranslation) {
|
|
102
|
+
const translateValuesAttr = parsedInterpolate
|
|
103
|
+
? ` [translateValues]="{ ${Object.entries(parsedInterpolate)
|
|
104
|
+
.map(([key, value]) => `${key}: ${value}`)
|
|
105
|
+
.join(', ')} }"`
|
|
106
|
+
: '';
|
|
107
|
+
return ` ${jhiPrefix}Translate="${key}"${translateValuesAttr}${prefix}${translatedValue}${suffix}`;
|
|
108
|
+
}
|
|
109
|
+
return `${prefix}${translatedValue}${suffix}`;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Creates a `jhiTranslate` attribute with translateValues.
|
|
113
|
+
* Or the translation value if translation is disabled.
|
|
114
|
+
*/
|
|
115
|
+
const validationTagTranslation = (getWebappTranslation, { enableTranslation, jhiPrefix }, { key, parsedInterpolate, prefix, suffix }) => {
|
|
116
|
+
if (!parsedInterpolate || Object.keys(parsedInterpolate).length === 0) {
|
|
117
|
+
throw new Error(`No interpolation values found for translation key ${key}, use __jhiTranslateTag__ instead.`);
|
|
118
|
+
}
|
|
119
|
+
const translatedValue = escapeHtmlTranslationValue(getTranslationValue(getWebappTranslation, key, parsedInterpolate));
|
|
120
|
+
if (enableTranslation) {
|
|
121
|
+
const translateValuesAttr = parsedInterpolate
|
|
122
|
+
? ` [translateValues]="{ ${Object.entries(parsedInterpolate)
|
|
123
|
+
.map(([key, value]) => `${key}: '${value}'`)
|
|
124
|
+
.join(', ')} }"`
|
|
125
|
+
: '';
|
|
126
|
+
return ` ${jhiPrefix}Translate="${key}"${translateValuesAttr}${prefix}${translatedValue}${suffix}`;
|
|
127
|
+
}
|
|
128
|
+
return `${prefix}${translatedValue}${suffix}`;
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Creates a `jhiTranslate` attribute with optional translateValues.
|
|
132
|
+
* Or the translation value if translation is disabled.
|
|
133
|
+
*/
|
|
134
|
+
const tagPipeTranslation = (getWebappTranslation, { enableTranslation, jhiPrefix }, { key, parsedInterpolate, prefix, suffix }) => {
|
|
135
|
+
if (!parsedInterpolate || Object.keys(parsedInterpolate).length === 0) {
|
|
136
|
+
throw new Error(`No interpolation values found for translation key ${key}, use __jhiTranslateTag__ instead.`);
|
|
137
|
+
}
|
|
138
|
+
const translatedValueInterpolate = Object.fromEntries(Object.entries(parsedInterpolate).map(([key, value]) => [key, getWebappTranslation(value)]));
|
|
139
|
+
const translatedValue = escapeHtmlTranslationValue(getTranslationValue(getWebappTranslation, key, translatedValueInterpolate));
|
|
140
|
+
if (enableTranslation) {
|
|
141
|
+
const translateValuesAttr = ` [translateValues]="{ ${Object.entries(parsedInterpolate)
|
|
142
|
+
.map(([key, value]) => `${key}: ('${value}' | translate)`)
|
|
143
|
+
.join(', ')} }"`;
|
|
144
|
+
return ` ${jhiPrefix}Translate="${key}"${translateValuesAttr}${prefix}${translatedValue}${suffix}`;
|
|
145
|
+
}
|
|
146
|
+
return `${prefix}${translatedValue}${suffix}`;
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Creates a `jhiTranslate` attribute with optional translateValues.
|
|
150
|
+
* Or the translation value if translation is disabled.
|
|
151
|
+
*/
|
|
152
|
+
const tagEnumTranslation = (getWebappTranslation, { enableTranslation, jhiPrefix }, { key, parsedInterpolate, prefix, suffix }) => {
|
|
153
|
+
if (!parsedInterpolate?.value) {
|
|
154
|
+
throw new Error(`Value is required for TagEnum ${key}.`);
|
|
155
|
+
}
|
|
156
|
+
const { value, fallback } = parsedInterpolate;
|
|
157
|
+
const translatedValue = `{{ ${JSON.stringify(getTranslationValue(getWebappTranslation, key))}[${value}]${fallback ? ` || ${fallback}` : ''} }}`;
|
|
158
|
+
if (enableTranslation) {
|
|
159
|
+
return ` [${jhiPrefix}Translate]="'${key}.' + (${parsedInterpolate?.value})"${prefix}${translatedValue}${suffix}`;
|
|
160
|
+
}
|
|
161
|
+
return `${prefix}${translatedValue}${suffix}`;
|
|
162
|
+
};
|
|
163
|
+
/**
|
|
164
|
+
* Creates a `translate` pipe.
|
|
165
|
+
* Or the translation value if translation is disabled.
|
|
166
|
+
*/
|
|
167
|
+
const pipeTranslation = (getWebappTranslation, { enableTranslation }, { key, prefix, suffix }) => {
|
|
168
|
+
if (enableTranslation) {
|
|
169
|
+
return `${prefix}{{ '${key}' | translate }}${suffix}`;
|
|
170
|
+
}
|
|
171
|
+
return `${prefix}${escapeHtmlTranslationValue(getTranslationValue(getWebappTranslation, key))}${suffix}`;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Get translation value.
|
|
175
|
+
*/
|
|
176
|
+
const valueTranslation = (getWebappTranslation, _replacerOptions, { filePath, key, prefix, suffix }) => {
|
|
177
|
+
let translationValue = getTranslationValue(getWebappTranslation, key);
|
|
178
|
+
const fileExtension = extname(filePath);
|
|
179
|
+
if (fileExtension === '.html') {
|
|
180
|
+
translationValue = escapeHtmlTranslationValue(translationValue);
|
|
181
|
+
}
|
|
182
|
+
else if (fileExtension === '.ts') {
|
|
183
|
+
translationValue = escapeTsTranslationValue(translationValue);
|
|
184
|
+
}
|
|
185
|
+
return `${prefix}${translationValue}${suffix}`;
|
|
186
|
+
};
|
|
187
|
+
/**
|
|
188
|
+
* Creates a `translate` pipe.
|
|
189
|
+
* Or the translation value if translation is disabled.
|
|
190
|
+
*/
|
|
191
|
+
const pipeEnumTranslation = (getWebappTranslation, { enableTranslation }, { key, parsedInterpolate, prefix, suffix }) => {
|
|
192
|
+
if (!parsedInterpolate?.value) {
|
|
193
|
+
throw new Error(`Value is required for TagEnum ${key}.`);
|
|
194
|
+
}
|
|
195
|
+
const { value, fallback } = parsedInterpolate;
|
|
196
|
+
if (enableTranslation) {
|
|
197
|
+
return `${prefix}{{ '${key}.' + ${value} | translate }}${suffix}`;
|
|
198
|
+
}
|
|
199
|
+
const translatedValue = `{{ ${JSON.stringify(getTranslationValue(getWebappTranslation, key))}[${value}]${fallback ? ` ?? ${fallback}` : ''} }}`;
|
|
200
|
+
return `${prefix}${translatedValue}${suffix}`;
|
|
201
|
+
};
|
|
202
|
+
const replaceImplementations = {
|
|
203
|
+
Tag: tagTranslation,
|
|
204
|
+
TagPipe: tagPipeTranslation,
|
|
205
|
+
TagEnum: tagEnumTranslation,
|
|
206
|
+
ValidationTag: validationTagTranslation,
|
|
207
|
+
Pipe: pipeTranslation,
|
|
208
|
+
PipeEnum: pipeEnumTranslation,
|
|
209
|
+
Value: valueTranslation,
|
|
210
|
+
};
|
|
90
211
|
/**
|
|
91
212
|
* Replace and cleanup translations.
|
|
92
213
|
*
|
|
93
214
|
* @type {import('../generator-base.js').EditFileCallback}
|
|
94
215
|
* @this {import('../generator-base.js')}
|
|
95
216
|
*/
|
|
96
|
-
export const createTranslationReplacer = (getWebappTranslation,
|
|
217
|
+
export const createTranslationReplacer = (getWebappTranslation, opts) => {
|
|
97
218
|
const htmlJhiTranslateReplacer = createJhiTransformTranslateReplacer(getWebappTranslation, { escapeHtml: true });
|
|
98
|
-
const htmlJhiTranslateStringifyReplacer = createJhiTransformTranslateStringifyReplacer(getWebappTranslation
|
|
219
|
+
const htmlJhiTranslateStringifyReplacer = createJhiTransformTranslateStringifyReplacer(getWebappTranslation);
|
|
220
|
+
let translationReplacer;
|
|
221
|
+
const enableTranslation = typeof opts === 'boolean' ? opts : opts.enableTranslation;
|
|
222
|
+
if (typeof opts !== 'boolean') {
|
|
223
|
+
translationReplacer = createJhiTranslateReplacer(optsReplacer => {
|
|
224
|
+
const replacer = replaceImplementations[optsReplacer.type] ??
|
|
225
|
+
(() => {
|
|
226
|
+
throw new Error(`Translation type not supported ${optsReplacer.type}`);
|
|
227
|
+
});
|
|
228
|
+
return replacer(getWebappTranslation, opts, optsReplacer);
|
|
229
|
+
}, { prefixPattern: '>\\s*', suffixPattern: '\\s*<' });
|
|
230
|
+
}
|
|
99
231
|
return function replaceAngularTranslations(content, filePath) {
|
|
100
232
|
if (/\.html$/.test(filePath)) {
|
|
101
233
|
if (!enableTranslation) {
|
|
@@ -108,6 +240,9 @@ export const createTranslationReplacer = (getWebappTranslation, enableTranslatio
|
|
|
108
240
|
content = htmlJhiTranslateReplacer(content);
|
|
109
241
|
content = htmlJhiTranslateStringifyReplacer(content);
|
|
110
242
|
}
|
|
243
|
+
if (/(:?\.html|.ts)$/.test(filePath)) {
|
|
244
|
+
content = translationReplacer?.(content, filePath);
|
|
245
|
+
}
|
|
111
246
|
if (!enableTranslation) {
|
|
112
247
|
if (/(:?route|module)\.ts$/.test(filePath)) {
|
|
113
248
|
content = replacePageTitles(getWebappTranslation, content);
|
|
@@ -119,12 +254,11 @@ export const createTranslationReplacer = (getWebappTranslation, enableTranslatio
|
|
|
119
254
|
return content;
|
|
120
255
|
};
|
|
121
256
|
};
|
|
122
|
-
const minimatch = new Minimatch('**/*{.html,.
|
|
257
|
+
const minimatch = new Minimatch('**/*{.html,.ts}');
|
|
123
258
|
export const isTranslatedAngularFile = file => minimatch.match(file.path);
|
|
124
|
-
const translateAngularFilesTransform = (getWebappTranslation,
|
|
125
|
-
const translate = createTranslationReplacer(getWebappTranslation,
|
|
259
|
+
export const translateAngularFilesTransform = (getWebappTranslation, opts) => {
|
|
260
|
+
const translate = createTranslationReplacer(getWebappTranslation, opts);
|
|
126
261
|
return passthrough(file => {
|
|
127
262
|
file.contents = Buffer.from(translate(file.contents.toString(), file.path));
|
|
128
263
|
});
|
|
129
264
|
};
|
|
130
|
-
export default translateAngularFilesTransform;
|
|
@@ -48,16 +48,9 @@
|
|
|
48
48
|
"bootswatch": "<%= nodeDependencies.bootswatch %>",
|
|
49
49
|
<%_ } _%>
|
|
50
50
|
"dayjs": "<%= nodeDependencies['dayjs'] %>",
|
|
51
|
-
<%_ if (authenticationTypeSession && communicationSpringWebsocket) { _%>
|
|
52
|
-
"ngx-cookie-service": "<%= nodeDependencies['ngx-cookie-service'] %>",
|
|
53
|
-
<%_ } _%>
|
|
54
51
|
"ngx-infinite-scroll": "<%= nodeDependencies['ngx-infinite-scroll'] %>",
|
|
55
52
|
"@popperjs/core": "<%= nodeDependencies['@popperjs/core'] %>",
|
|
56
53
|
"rxjs": "<%= nodeDependencies['rxjs'] %>",
|
|
57
|
-
<%_ if (communicationSpringWebsocket) { _%>
|
|
58
|
-
"sockjs-client": "1.6.1",
|
|
59
|
-
"@stomp/rx-stomp": "1.2.0",
|
|
60
|
-
<%_ } _%>
|
|
61
54
|
"tslib": "<%= nodeDependencies['tslib'] %>",
|
|
62
55
|
"zone.js": "<%= nodeDependencies['zone.js'] %>"
|
|
63
56
|
},
|
|
@@ -71,9 +64,6 @@
|
|
|
71
64
|
<%_ } _%>
|
|
72
65
|
"@angular-architects/module-federation": "<%= nodeDependencies['@angular-architects/module-federation'] %>",
|
|
73
66
|
<%_ } _%>
|
|
74
|
-
<%_ if (communicationSpringWebsocket) { _%>
|
|
75
|
-
"@types/sockjs-client": "1.5.1",
|
|
76
|
-
<%_ } _%>
|
|
77
67
|
<%_ if (cypressTests) { _%>
|
|
78
68
|
"cypress": "<%= nodeDependencies['cypress'] %>",
|
|
79
69
|
<%_ } _%>
|
|
@@ -19,15 +19,15 @@
|
|
|
19
19
|
<div>
|
|
20
20
|
<div class="d-flex justify-content-center">
|
|
21
21
|
<div class="col-md-8">
|
|
22
|
-
<h1
|
|
22
|
+
<h1>__jhiTranslateTag__('activate.title')</h1>
|
|
23
23
|
@if (success()) {
|
|
24
24
|
<div class="alert alert-success">
|
|
25
|
-
<span
|
|
26
|
-
<a class="alert-link" routerLink="/login"
|
|
25
|
+
<span>__jhiTranslateTag__('activate.messages.success')</span>
|
|
26
|
+
<a class="alert-link" routerLink="/login">__jhiTranslateTag__('global.messages.info.authenticated.link')</a>.
|
|
27
27
|
</div>
|
|
28
28
|
}
|
|
29
29
|
@if (error()) {
|
|
30
|
-
<div class="alert alert-danger"
|
|
30
|
+
<div class="alert alert-danger">__jhiTranslateTag__('activate.messages.error')</div>
|
|
31
31
|
}
|
|
32
32
|
</div>
|
|
33
33
|
</div>
|
|
@@ -24,8 +24,8 @@ import SharedModule from 'app/shared/shared.module';
|
|
|
24
24
|
import { ActivateService } from './activate.service';
|
|
25
25
|
|
|
26
26
|
@Component({
|
|
27
|
-
selector: '<%= jhiPrefixDashed %>-activate',
|
|
28
27
|
standalone: true,
|
|
28
|
+
selector: '<%= jhiPrefixDashed %>-activate',
|
|
29
29
|
imports: [SharedModule, RouterModule],
|
|
30
30
|
templateUrl: './activate.component.html',
|
|
31
31
|
})
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
limitations under the License.
|
|
18
18
|
-%>
|
|
19
19
|
<div id="strength">
|
|
20
|
-
<small
|
|
20
|
+
<small>__jhiTranslateTag__('global.messages.validate.newpassword.strength')</small>
|
|
21
21
|
<ul id="strengthBar">
|
|
22
22
|
<li class="point"></li>
|
|
23
23
|
<li class="point"></li>
|
|
@@ -21,8 +21,8 @@ import { Component, ElementRef, inject, Input, Renderer2 } from '@angular/core';
|
|
|
21
21
|
import SharedModule from 'app/shared/shared.module';
|
|
22
22
|
|
|
23
23
|
@Component({
|
|
24
|
-
selector: '<%= jhiPrefixDashed %>-password-strength-bar',
|
|
25
24
|
standalone: true,
|
|
25
|
+
selector: '<%= jhiPrefixDashed %>-password-strength-bar',
|
|
26
26
|
imports: [SharedModule],
|
|
27
27
|
templateUrl: './password-strength-bar.component.html',
|
|
28
28
|
styleUrl: './password-strength-bar.component.scss',
|