generator-jhipster 8.2.1 → 8.3.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 +36 -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 +13 -10
- 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 +18 -26
- 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 +18 -25
- 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 +10 -15
- 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 +31 -46
- 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 +20 -31
- 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 +20 -34
- 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_-update.component.html.ejs +17 -24
- 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 +11 -12
- 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/app/generator.js +4 -4
- 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 +5 -6
- 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 +83 -14
- 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 +4 -5
- 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 +21 -15
- 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 +3 -3
- package/dist/generators/client/command.js +1 -2
- package/dist/generators/client/generator.js +12 -12
- package/dist/generators/client/needle-api/needle-client-vue.js +2 -2
- package/dist/generators/client/resources/package.json +4 -4
- package/dist/generators/client/templates/src/main/webapp/index.html.ejs +1 -1
- package/dist/generators/common/generator.js +5 -5
- 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 +4 -5
- 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/feign-client/generator.js +3 -4
- package/dist/generators/gatling/generator.js +2 -3
- package/dist/generators/generate-blueprint/files.js +1 -0
- package/dist/generators/generate-blueprint/generator.js +3 -4
- 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/gradle/generators/jib/index.js +19 -0
- 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 +3 -3
- 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 +153 -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 -9
- package/dist/generators/kubernetes/generator.js +1 -1
- 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 -1
- package/dist/generators/kubernetes-knative/generator.js +1 -1
- package/dist/generators/languages/entity-files.js +3 -2
- package/dist/generators/languages/generator.js +7 -10
- package/dist/generators/languages/support/translate.js +34 -9
- package/dist/generators/languages/translation-data.js +4 -5
- package/dist/generators/liquibase/generator.js +68 -25
- package/dist/generators/liquibase/support/maven-plugin.js +6 -0
- package/dist/generators/liquibase/templates/gradle/liquibase.gradle.ejs +3 -6
- 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 +18 -15
- 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/server/command.js +2 -34
- package/dist/generators/server/generator.js +20 -154
- package/dist/generators/server/jdl/application-definition.js +1 -2
- package/dist/generators/server/prompts.js +4 -46
- package/dist/generators/server/resources/Dockerfile +7 -7
- package/dist/generators/server/resources/build.gradle +1 -0
- package/dist/generators/server/resources/gradle/libs.versions.toml +25 -7
- package/dist/generators/server/resources/pom.xml +4 -22
- package/dist/generators/server/support/prepare-field.js +1 -2
- package/dist/generators/server/templates/build.gradle.ejs +29 -143
- package/dist/generators/server/templates/gradle/profile_dev.gradle.ejs +1 -1
- package/dist/generators/server/templates/gradle.properties.ejs +0 -7
- package/dist/generators/server/templates/pom.xml.ejs +23 -444
- package/dist/generators/server/templates/settings.gradle.ejs +0 -4
- package/dist/generators/server/templates/src/main/java/_package_/config/SecurityConfiguration_imperative.java.ejs +15 -3
- 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 +15 -4
- 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/command.js +31 -2
- package/dist/generators/spring-boot/entity-files.js +2 -2
- package/dist/generators/spring-boot/files.js +3 -38
- package/dist/generators/spring-boot/generator.js +98 -37
- package/dist/generators/spring-boot/resources/spring-boot-dependencies.pom +105 -105
- 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/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/templates/src/test/java/_package_/config/SqlTestContainersSpringContextCustomizerFactory.java.ejs +47 -32
- package/dist/generators/spring-websocket/generator.js +2 -3
- package/dist/generators/statistics.js +2 -2
- package/dist/generators/upgrade/generator.js +4 -3
- package/dist/generators/vue/generator.js +4 -4
- package/dist/generators/vue/resources/package.json +18 -15
- 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/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/main.ts.ejs +4 -3
- package/dist/generators/vue/templates/vite.config.mts.ejs +6 -0
- 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 +7 -0
- 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-core/generator.d.ts +33 -1
- 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/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 +15 -27
- package/dist/generators/java/files.js +0 -20
- /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
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import fs from 'fs';
|
|
20
20
|
import chalk from 'chalk';
|
|
21
|
-
import
|
|
21
|
+
import { isArray, lowerFirst, snakeCase, uniq, upperFirst } from 'lodash-es';
|
|
22
22
|
import { reservedKeywords, databaseTypes, applicationTypes, entityOptions, fieldTypes, validations, clientFrameworkTypes, } from '../../jdl/jhipster/index.js';
|
|
23
23
|
import { inputIsNumber, inputIsSignedDecimalNumber, inputIsSignedNumber } from './support/index.js';
|
|
24
24
|
const { isReservedPaginationWords, isReservedFieldName, isReservedTableName } = reservedKeywords;
|
|
@@ -55,7 +55,7 @@ const prompts = {
|
|
|
55
55
|
};
|
|
56
56
|
export default prompts;
|
|
57
57
|
const getFieldNameUndercored = fields => ['id'].concat(fields.map(field => {
|
|
58
|
-
return
|
|
58
|
+
return snakeCase(field.fieldName);
|
|
59
59
|
}));
|
|
60
60
|
function askForMicroserviceJson() {
|
|
61
61
|
const context = this.entityData;
|
|
@@ -413,7 +413,7 @@ async function askForField() {
|
|
|
413
413
|
if (input.charAt(0) === input.charAt(0).toUpperCase()) {
|
|
414
414
|
return 'Your field name cannot start with an upper case letter';
|
|
415
415
|
}
|
|
416
|
-
if (input === 'id' || getFieldNameUndercored(this.entityConfig.fields).includes(
|
|
416
|
+
if (input === 'id' || getFieldNameUndercored(this.entityConfig.fields).includes(snakeCase(input))) {
|
|
417
417
|
return 'Your field name cannot use an already existing field name';
|
|
418
418
|
}
|
|
419
419
|
if ((clientFramework === undefined || clientFramework === ANGULAR) && isReservedFieldName(input, ANGULAR)) {
|
|
@@ -504,7 +504,7 @@ async function askForField() {
|
|
|
504
504
|
return 'Enum values cannot contain special characters (allowed characters: A-Z, a-z, 0-9 and _)';
|
|
505
505
|
}
|
|
506
506
|
const enums = input.replace(/\s/g, '').split(',');
|
|
507
|
-
if (
|
|
507
|
+
if (uniq(enums).length !== enums.length) {
|
|
508
508
|
return `Enum values cannot contain duplicates (typed values: ${input})`;
|
|
509
509
|
}
|
|
510
510
|
for (let i = 0; i < enums.length; i++) {
|
|
@@ -659,7 +659,7 @@ async function askForField() {
|
|
|
659
659
|
},
|
|
660
660
|
]);
|
|
661
661
|
if (answers.fieldIsEnum) {
|
|
662
|
-
answers.fieldType =
|
|
662
|
+
answers.fieldType = upperFirst(answers.fieldType);
|
|
663
663
|
answers.fieldValues = answers.fieldValues.toUpperCase();
|
|
664
664
|
}
|
|
665
665
|
const field = {
|
|
@@ -721,7 +721,7 @@ async function askForRelationship(...args) {
|
|
|
721
721
|
if (input.charAt(0) === input.charAt(0).toUpperCase()) {
|
|
722
722
|
return 'Your relationship cannot start with an upper case letter';
|
|
723
723
|
}
|
|
724
|
-
if (input === 'id' || getFieldNameUndercored(this.entityConfig.fields).includes(
|
|
724
|
+
if (input === 'id' || getFieldNameUndercored(this.entityConfig.fields).includes(snakeCase(input))) {
|
|
725
725
|
return 'Your relationship cannot use an already existing field name';
|
|
726
726
|
}
|
|
727
727
|
if (isReservedTableName(input, 'JAVA')) {
|
|
@@ -730,7 +730,7 @@ async function askForRelationship(...args) {
|
|
|
730
730
|
return true;
|
|
731
731
|
},
|
|
732
732
|
message: 'What is the name of the relationship?',
|
|
733
|
-
default: response =>
|
|
733
|
+
default: response => lowerFirst(response.otherEntityName),
|
|
734
734
|
},
|
|
735
735
|
{
|
|
736
736
|
type: 'list',
|
|
@@ -774,7 +774,7 @@ async function askForRelationship(...args) {
|
|
|
774
774
|
type: 'input',
|
|
775
775
|
name: 'otherEntityRelationshipName',
|
|
776
776
|
message: 'What is the name of this relationship in the other entity?',
|
|
777
|
-
default: () =>
|
|
777
|
+
default: () => lowerFirst(name),
|
|
778
778
|
},
|
|
779
779
|
{
|
|
780
780
|
type: 'input',
|
|
@@ -808,7 +808,7 @@ async function askForRelationship(...args) {
|
|
|
808
808
|
const relationship = {
|
|
809
809
|
relationshipSide: 'left',
|
|
810
810
|
relationshipName: answers.relationshipName,
|
|
811
|
-
otherEntityName:
|
|
811
|
+
otherEntityName: lowerFirst(answers.otherEntityName),
|
|
812
812
|
relationshipType: answers.relationshipType,
|
|
813
813
|
relationshipValidateRules: answers.relationshipValidateRules,
|
|
814
814
|
otherEntityField: answers.otherEntityField,
|
|
@@ -817,7 +817,7 @@ async function askForRelationship(...args) {
|
|
|
817
817
|
otherEntityRelationshipName: answers.otherEntityRelationshipName,
|
|
818
818
|
};
|
|
819
819
|
if (this.isBuiltInUser(answers.otherEntityName)) {
|
|
820
|
-
relationship.otherEntityRelationshipName =
|
|
820
|
+
relationship.otherEntityRelationshipName = lowerFirst(name);
|
|
821
821
|
}
|
|
822
822
|
this.entityConfig.relationships = this.entityConfig.relationships.concat(relationship);
|
|
823
823
|
await askForRelationship.call(this, ...args);
|
|
@@ -834,7 +834,7 @@ function logFieldsAndRelationships() {
|
|
|
834
834
|
this.log.log(chalk.white('Fields'));
|
|
835
835
|
this.entityConfig.fields.forEach(field => {
|
|
836
836
|
const validationDetails = [];
|
|
837
|
-
const fieldValidate =
|
|
837
|
+
const fieldValidate = isArray(field.fieldValidateRules) && field.fieldValidateRules.length >= 1;
|
|
838
838
|
if (fieldValidate === true) {
|
|
839
839
|
if (field.fieldValidateRules.includes(REQUIRED)) {
|
|
840
840
|
validationDetails.push(REQUIRED);
|
|
@@ -877,7 +877,7 @@ function logFieldsAndRelationships() {
|
|
|
877
877
|
if (relationship.relationshipValidateRules && relationship.relationshipValidateRules.includes(REQUIRED)) {
|
|
878
878
|
validationDetails.push(REQUIRED);
|
|
879
879
|
}
|
|
880
|
-
this.log.log(`${chalk.red(relationship.relationshipName)} ${chalk.white(`(${
|
|
880
|
+
this.log.log(`${chalk.red(relationship.relationshipName)} ${chalk.white(`(${upperFirst(relationship.otherEntityName)})`)} ${chalk.cyan(relationship.relationshipType)} ${chalk.cyan(validationDetails.join(' '))}`);
|
|
881
881
|
});
|
|
882
882
|
this.log.log();
|
|
883
883
|
}
|
|
@@ -17,16 +17,15 @@
|
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
19
|
import BaseApplicationGenerator from '../base-application/index.js';
|
|
20
|
-
import { GENERATOR_BOOTSTRAP_APPLICATION, GENERATOR_FEIGN_CLIENT } from '../generator-list.js';
|
|
21
20
|
import { feignFiles } from './files.js';
|
|
22
21
|
import cleanupTask from './cleanup.js';
|
|
23
22
|
export default class FeignClientGenerator extends BaseApplicationGenerator {
|
|
24
23
|
async beforeQueue() {
|
|
25
24
|
if (!this.fromBlueprint) {
|
|
26
|
-
await this.composeWithBlueprints(
|
|
25
|
+
await this.composeWithBlueprints();
|
|
27
26
|
}
|
|
28
27
|
if (!this.delegateToBlueprint) {
|
|
29
|
-
await this.
|
|
28
|
+
await this.dependsOnBootstrapApplication();
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
31
|
get writing() {
|
|
@@ -60,6 +59,6 @@ export default class FeignClientGenerator extends BaseApplicationGenerator {
|
|
|
60
59
|
});
|
|
61
60
|
}
|
|
62
61
|
get [BaseApplicationGenerator.POST_WRITING]() {
|
|
63
|
-
return this.
|
|
62
|
+
return this.delegateTasksToBlueprint(() => this.postWriting);
|
|
64
63
|
}
|
|
65
64
|
}
|
|
@@ -17,17 +17,16 @@
|
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
19
|
import BaseApplicationGenerator from '../base-application/index.js';
|
|
20
|
-
import { GENERATOR_GATLING, GENERATOR_BOOTSTRAP_APPLICATION } from '../generator-list.js';
|
|
21
20
|
import writeTask from './files.js';
|
|
22
21
|
import cleanupTask from './cleanup.js';
|
|
23
22
|
import writeEntityTask, { cleanupEntitiesTask } from './entity-files.js';
|
|
24
23
|
export default class GatlingGenerator extends BaseApplicationGenerator {
|
|
25
24
|
async beforeQueue() {
|
|
26
25
|
if (!this.fromBlueprint) {
|
|
27
|
-
await this.composeWithBlueprints(
|
|
26
|
+
await this.composeWithBlueprints();
|
|
28
27
|
}
|
|
29
28
|
if (!this.delegateToBlueprint) {
|
|
30
|
-
await this.
|
|
29
|
+
await this.dependsOnBootstrapApplication();
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
32
|
get writing() {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
19
|
import chalk from 'chalk';
|
|
20
|
-
import
|
|
20
|
+
import { camelCase, upperFirst, snakeCase } from 'lodash-es';
|
|
21
21
|
import BaseGenerator from '../base/index.js';
|
|
22
22
|
import { PRIORITY_NAMES_LIST as BASE_PRIORITY_NAMES_LIST } from '../base/priorities.js';
|
|
23
23
|
import { requiredConfig, defaultConfig, defaultSubGeneratorConfig, allGeneratorsConfig, prompts, subGeneratorPrompts, GENERATE_SNAPSHOTS, LINK_JHIPSTER_DEPENDENCY, ALL_GENERATORS, GENERATORS, PRIORITIES, SUB_GENERATORS, ADDITIONAL_SUB_GENERATORS, WRITTEN, LOCAL_BLUEPRINT_OPTION, ALL_PRIORITIES, DYNAMIC, } from './constants.js';
|
|
@@ -27,12 +27,11 @@ import { packageJson } from '../../lib/index.js';
|
|
|
27
27
|
import { SKIP_COMMIT_HOOK } from '../init/constants.js';
|
|
28
28
|
import command from './command.js';
|
|
29
29
|
import { BLUEPRINT_API_VERSION, NODE_VERSION } from '../generator-constants.js';
|
|
30
|
-
const {
|
|
31
|
-
const { GENERATOR_PROJECT_NAME, GENERATOR_INIT, GENERATOR_GENERATE_BLUEPRINT } = GENERATOR_LIST;
|
|
30
|
+
const { GENERATOR_PROJECT_NAME, GENERATOR_INIT } = GENERATOR_LIST;
|
|
32
31
|
export default class extends BaseGenerator {
|
|
33
32
|
async _beforeQueue() {
|
|
34
33
|
if (!this.fromBlueprint) {
|
|
35
|
-
await this.composeWithBlueprints(
|
|
34
|
+
await this.composeWithBlueprints();
|
|
36
35
|
}
|
|
37
36
|
if (!this.delegateToBlueprint) {
|
|
38
37
|
await this.dependsOnJHipster(GENERATOR_PROJECT_NAME);
|
package/dist/generators/generate-blueprint/templates/.blueprint/generate-sample/generator.mjs.ejs
CHANGED
|
@@ -12,12 +12,13 @@ export default class extends BaseGenerator {
|
|
|
12
12
|
|
|
13
13
|
get [BaseGenerator.INITIALIZING]() {
|
|
14
14
|
return this.asInitializingTaskGroup({
|
|
15
|
+
async parseCommand() {
|
|
16
|
+
await this.parseCurrentJHipsterCommand();
|
|
17
|
+
},
|
|
15
18
|
async initializeOptions() {
|
|
16
|
-
this.parseJHipsterArguments(command.arguments);
|
|
17
19
|
if (this.sampleName && !this.sampleName.endsWith('.jdl')) {
|
|
18
20
|
this.sampleName += '.jdl';
|
|
19
21
|
}
|
|
20
|
-
this.parseJHipsterOptions(command.options);
|
|
21
22
|
},
|
|
22
23
|
});
|
|
23
24
|
}
|
|
@@ -16,11 +16,29 @@
|
|
|
16
16
|
See the License for the specific language governing permissions and
|
|
17
17
|
limitations under the License.
|
|
18
18
|
-%>
|
|
19
|
+
<%_ if (!sbs && !customGenerator) { _%>
|
|
20
|
+
import { command as jhipsterCommand } from 'generator-jhipster/generators/<%- subGenerator %>';
|
|
21
|
+
|
|
22
|
+
<%_ } _%>
|
|
19
23
|
/**
|
|
20
24
|
* @type {import('generator-jhipster').JHipsterCommandDefinition}
|
|
21
25
|
*/
|
|
22
26
|
const command = {
|
|
23
|
-
options: {
|
|
27
|
+
options: {
|
|
28
|
+
<%_ if (!sbs && !customGenerator) { _%>
|
|
29
|
+
...jhipsterCommand.options,
|
|
30
|
+
<%_ } _%>
|
|
31
|
+
},
|
|
32
|
+
configs: {
|
|
33
|
+
<%_ if (!sbs && !customGenerator) { _%>
|
|
34
|
+
...jhipsterCommand.configs,
|
|
35
|
+
<%_ } _%>
|
|
36
|
+
},
|
|
37
|
+
arguments: {
|
|
38
|
+
<%_ if (!sbs && !customGenerator) { _%>
|
|
39
|
+
...jhipsterCommand.arguments,
|
|
40
|
+
<%_ } _%>
|
|
41
|
+
},
|
|
24
42
|
};
|
|
25
43
|
|
|
26
44
|
export default command;
|
|
@@ -16,16 +16,19 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
+
import { readFileSync } from 'fs';
|
|
20
|
+
import { join } from 'path';
|
|
21
|
+
import { fileURLToPath } from 'url';
|
|
19
22
|
export const BLUEPRINT_API_VERSION = 'jhipster-8';
|
|
20
23
|
// jhipster-bom version
|
|
21
|
-
export const JHIPSTER_DEPENDENCIES_VERSION = '8.
|
|
24
|
+
export const JHIPSTER_DEPENDENCIES_VERSION = '8.3.0';
|
|
22
25
|
// Version of Java
|
|
23
26
|
export const JAVA_VERSION = '17';
|
|
24
27
|
export const JAVA_COMPATIBLE_VERSIONS = ['17', '18', '19', '20', '21'];
|
|
25
28
|
// Force spring milestone repository. Spring Boot milestones are detected.
|
|
26
29
|
export const ADD_SPRING_MILESTONE_REPOSITORY = false;
|
|
27
30
|
// Version of Node, NPM
|
|
28
|
-
export const NODE_VERSION =
|
|
31
|
+
export const NODE_VERSION = readFileSync(join(fileURLToPath(import.meta.url), '../init/resources/.node-version'), 'utf-8').trim();
|
|
29
32
|
export const OPENAPI_GENERATOR_CLI_VERSION = '2.13.1';
|
|
30
33
|
// The version should be coherent with the one from spring-data-elasticsearch project
|
|
31
34
|
export const ELASTICSEARCH_TAG = '8.10.4';
|
|
@@ -19,9 +19,7 @@
|
|
|
19
19
|
/* eslint-disable consistent-return */
|
|
20
20
|
import chalk from 'chalk';
|
|
21
21
|
import BaseGenerator from '../base/index.js';
|
|
22
|
-
import { GENERATOR_GIT } from '../generator-list.js';
|
|
23
22
|
import { files } from './files.js';
|
|
24
|
-
import command from './command.js';
|
|
25
23
|
/**
|
|
26
24
|
* @class
|
|
27
25
|
* @extends {BaseGenerator}
|
|
@@ -32,13 +30,13 @@ export default class InitGenerator extends BaseGenerator {
|
|
|
32
30
|
skipGit;
|
|
33
31
|
async beforeQueue() {
|
|
34
32
|
if (!this.fromBlueprint) {
|
|
35
|
-
await this.composeWithBlueprints(
|
|
33
|
+
await this.composeWithBlueprints();
|
|
36
34
|
}
|
|
37
35
|
}
|
|
38
36
|
get initializing() {
|
|
39
37
|
return this.asInitializingTaskGroup({
|
|
40
|
-
|
|
41
|
-
this.
|
|
38
|
+
async parseCommand() {
|
|
39
|
+
await this.parseCurrentJHipsterCommand();
|
|
42
40
|
},
|
|
43
41
|
async checkGit() {
|
|
44
42
|
if (!this.skipGit) {
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const command = {
|
|
2
|
+
options: {},
|
|
3
|
+
configs: {
|
|
4
|
+
enableGradleEnterprise: {
|
|
5
|
+
cli: {
|
|
6
|
+
type: Boolean,
|
|
7
|
+
},
|
|
8
|
+
prompt: {
|
|
9
|
+
type: 'confirm',
|
|
10
|
+
message: 'Do you want to enable Gradle Enterprise integration?',
|
|
11
|
+
},
|
|
12
|
+
default: false,
|
|
13
|
+
description: 'Enable Gradle Enterprise integration',
|
|
14
|
+
scope: 'storage',
|
|
15
|
+
},
|
|
16
|
+
gradleEnterpriseHost: {
|
|
17
|
+
cli: {
|
|
18
|
+
type: String,
|
|
19
|
+
},
|
|
20
|
+
prompt: {
|
|
21
|
+
when: answers => answers.enableGradleEnterprise,
|
|
22
|
+
type: 'input',
|
|
23
|
+
message: 'Enter your Gradle Enterprise host',
|
|
24
|
+
validate: input => (input.length === 0 ? 'Please enter your Gradle Enterprise host' : true),
|
|
25
|
+
},
|
|
26
|
+
description: 'Gradle Enterprise Host',
|
|
27
|
+
scope: 'storage',
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
import: [],
|
|
31
|
+
};
|
|
32
|
+
export default command;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
export const GRADLE_VERSION = '8.6';
|
|
20
19
|
export const GRADLE = 'gradle';
|
|
21
20
|
export const GRADLE_DESCRIPTION = 'Gradle';
|
|
22
21
|
export const BUILD_DESTINATION_VALUE = 'build';
|
|
@@ -19,17 +19,11 @@
|
|
|
19
19
|
export default {
|
|
20
20
|
gradle: [
|
|
21
21
|
{
|
|
22
|
-
templates: [
|
|
23
|
-
'.prettierignore.jhi.gradle',
|
|
24
|
-
'gradle/wrapper/gradle-wrapper.properties',
|
|
25
|
-
'buildSrc/build.gradle',
|
|
26
|
-
'buildSrc/gradle/libs.versions.toml',
|
|
27
|
-
'gradle/libs.versions.toml',
|
|
28
|
-
],
|
|
22
|
+
templates: ['.prettierignore.jhi.gradle', 'buildSrc/build.gradle', 'buildSrc/gradle/libs.versions.toml', 'gradle/libs.versions.toml'],
|
|
29
23
|
},
|
|
30
24
|
{
|
|
31
25
|
transform: false,
|
|
32
|
-
templates: ['gradlew', 'gradlew.bat', 'gradle/wrapper/gradle-wrapper.jar'],
|
|
26
|
+
templates: ['gradlew', 'gradlew.bat', 'gradle/wrapper/gradle-wrapper.jar', 'gradle/wrapper/gradle-wrapper.properties'],
|
|
33
27
|
},
|
|
34
28
|
],
|
|
35
29
|
};
|
|
@@ -19,21 +19,44 @@
|
|
|
19
19
|
/* eslint-disable consistent-return */
|
|
20
20
|
import assert from 'assert/strict';
|
|
21
21
|
import BaseApplicationGenerator from '../base-application/index.js';
|
|
22
|
-
import { GENERATOR_GRADLE, GENERATOR_BOOTSTRAP_APPLICATION_SERVER } from '../generator-list.js';
|
|
23
22
|
import files from './files.js';
|
|
24
23
|
import { GRADLE } from './constants.js';
|
|
25
24
|
import { GRADLE_BUILD_SRC_DIR } from '../generator-constants.js';
|
|
26
25
|
import cleanupOldServerFilesTask from './cleanup.js';
|
|
27
|
-
import { applyFromGradleCallback, addGradleDependenciesCallback, addGradleMavenRepositoryCallback, addGradlePluginCallback, addGradlePluginManagementCallback, addGradlePropertyCallback,
|
|
26
|
+
import { applyFromGradleCallback, addGradleDependenciesCallback, addGradleMavenRepositoryCallback, addGradlePluginCallback, addGradlePluginManagementCallback, addGradlePropertyCallback, addGradleDependenciesCatalogVersionCallback, addGradleDependencyCatalogLibrariesCallback, addGradleDependencyCatalogPluginsCallback, addGradleDependencyFromCatalogCallback, addGradlePluginFromCatalogCallback, sortDependencies, gradleNeedleOptionsWithDefaults, } from './internal/needles.js';
|
|
27
|
+
import { mutateData } from '../base/support/config.js';
|
|
28
28
|
export default class GradleGenerator extends BaseApplicationGenerator {
|
|
29
|
+
gradleVersionFromWrapper;
|
|
29
30
|
async beforeQueue() {
|
|
30
31
|
if (!this.fromBlueprint) {
|
|
31
|
-
await this.composeWithBlueprints(
|
|
32
|
+
await this.composeWithBlueprints();
|
|
32
33
|
}
|
|
33
34
|
if (!this.delegateToBlueprint) {
|
|
34
|
-
await this.
|
|
35
|
+
await this.dependsOnBootstrapApplicationServer();
|
|
35
36
|
}
|
|
36
37
|
}
|
|
38
|
+
get initializing() {
|
|
39
|
+
return this.asInitializingTaskGroup({
|
|
40
|
+
async parseCommand() {
|
|
41
|
+
await this.parseCurrentJHipsterCommand();
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
get [BaseApplicationGenerator.INITIALIZING]() {
|
|
46
|
+
return this.delegateTasksToBlueprint(() => this.initializing);
|
|
47
|
+
}
|
|
48
|
+
get prompting() {
|
|
49
|
+
return this.asPromptingTaskGroup({
|
|
50
|
+
async promptCommand({ control }) {
|
|
51
|
+
if (control.existingProject && this.options.askAnswered !== true)
|
|
52
|
+
return;
|
|
53
|
+
await this.promptCurrentJHipsterCommand();
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
get [BaseApplicationGenerator.PROMPTING]() {
|
|
58
|
+
return this.delegateTasksToBlueprint(() => this.prompting);
|
|
59
|
+
}
|
|
37
60
|
get configuring() {
|
|
38
61
|
return this.asConfiguringTaskGroup({
|
|
39
62
|
configure() {
|
|
@@ -48,14 +71,39 @@ export default class GradleGenerator extends BaseApplicationGenerator {
|
|
|
48
71
|
get [BaseApplicationGenerator.CONFIGURING]() {
|
|
49
72
|
return this.delegateTasksToBlueprint(() => this.configuring);
|
|
50
73
|
}
|
|
74
|
+
get loading() {
|
|
75
|
+
return this.asLoadingTaskGroup({
|
|
76
|
+
async loadConfig({ application }) {
|
|
77
|
+
await this.loadCurrentJHipsterCommandConfig(application);
|
|
78
|
+
},
|
|
79
|
+
loadGradleVersion({ application }) {
|
|
80
|
+
const propFile = this.readTemplate(this.jhipsterTemplatePath('gradle/wrapper/gradle-wrapper.properties'));
|
|
81
|
+
this.gradleVersionFromWrapper = propFile?.toString().match(/gradle-(\d+\.\d+(?:\.\d+)?)-/)?.[1];
|
|
82
|
+
if (!this.gradleVersionFromWrapper) {
|
|
83
|
+
throw new Error('Could not determine Gradle version from gradle-wrapper.properties');
|
|
84
|
+
}
|
|
85
|
+
mutateData(application, {
|
|
86
|
+
gradleVersion: this.useVersionPlaceholders ? 'GRADLE_VERSION' : this.gradleVersionFromWrapper,
|
|
87
|
+
});
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
get [BaseApplicationGenerator.LOADING]() {
|
|
92
|
+
return this.delegateTasksToBlueprint(() => this.loading);
|
|
93
|
+
}
|
|
51
94
|
get preparing() {
|
|
52
95
|
return this.asPreparingTaskGroup({
|
|
53
96
|
async verify({ application }) {
|
|
54
97
|
assert.equal(application.buildTool, GRADLE);
|
|
55
98
|
},
|
|
56
|
-
|
|
99
|
+
prepareConventionsPlugins({ application }) {
|
|
100
|
+
application.gradleBuildSrc = GRADLE_BUILD_SRC_DIR;
|
|
101
|
+
},
|
|
102
|
+
addSourceNeddles({ application, source }) {
|
|
103
|
+
const { gradleBuildSrc } = application;
|
|
57
104
|
source.applyFromGradle = script => this.editFile('build.gradle', applyFromGradleCallback(script));
|
|
58
|
-
source.addGradleDependencies = (dependencies,
|
|
105
|
+
source.addGradleDependencies = (dependencies, options = {}) => {
|
|
106
|
+
const { gradleFile } = gradleNeedleOptionsWithDefaults(options);
|
|
59
107
|
dependencies = [...dependencies].sort(sortDependencies);
|
|
60
108
|
this.editFile(gradleFile, addGradleDependenciesCallback(dependencies));
|
|
61
109
|
};
|
|
@@ -63,13 +111,16 @@ export default class GradleGenerator extends BaseApplicationGenerator {
|
|
|
63
111
|
source.addGradlePlugin = plugin => this.editFile('build.gradle', addGradlePluginCallback(plugin));
|
|
64
112
|
source.addGradleMavenRepository = repository => this.editFile('build.gradle', addGradleMavenRepositoryCallback(repository));
|
|
65
113
|
source.addGradlePluginManagement = plugin => this.editFile('settings.gradle', addGradlePluginManagementCallback(plugin));
|
|
66
|
-
source.addGradleProperty = property =>
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
source.
|
|
114
|
+
source.addGradleProperty = property => {
|
|
115
|
+
application.javaProperties[property.property] = property.value;
|
|
116
|
+
this.editFile('gradle.properties', addGradlePropertyCallback(property));
|
|
117
|
+
};
|
|
118
|
+
source.addGradleDependencyCatalogVersions = (versions, { gradleVersionCatalogFile = 'gradle/libs.versions.toml' } = {}) => this.editFile(gradleVersionCatalogFile, addGradleDependenciesCatalogVersionCallback(versions));
|
|
119
|
+
source.addGradleDependencyCatalogVersion = (version, options) => source.addGradleDependencyCatalogVersions([version], options);
|
|
120
|
+
source.addGradleDependencyCatalogLibraries = (libs, options = {}) => {
|
|
121
|
+
const { gradleFile, gradleVersionCatalogFile } = gradleNeedleOptionsWithDefaults(options);
|
|
71
122
|
libs = [...libs].sort((a, b) => a.libraryName.localeCompare(b.libraryName));
|
|
72
|
-
this.editFile(
|
|
123
|
+
this.editFile(gradleVersionCatalogFile, addGradleDependencyCatalogLibrariesCallback(libs));
|
|
73
124
|
this.editFile(gradleFile, addGradleDependencyFromCatalogCallback(libs));
|
|
74
125
|
};
|
|
75
126
|
source.addGradleDependencyCatalogLibrary = (lib, options) => source.addGradleDependencyCatalogLibraries([lib], options);
|
|
@@ -78,7 +129,15 @@ export default class GradleGenerator extends BaseApplicationGenerator {
|
|
|
78
129
|
this.editFile('build.gradle', addGradlePluginFromCatalogCallback(plugins));
|
|
79
130
|
};
|
|
80
131
|
source.addGradleDependencyCatalogPlugin = plugin => source.addGradleDependencyCatalogPlugins([plugin]);
|
|
81
|
-
source.
|
|
132
|
+
source.addGradleBuildSrcDependency = dependency => source.addGradleDependencies([dependency], { gradleFile: `${gradleBuildSrc}/build.gradle` });
|
|
133
|
+
source.addGradleBuildSrcDependencyCatalogVersion = version => source.addGradleDependencyCatalogVersions([version], {
|
|
134
|
+
gradleVersionCatalogFile: `${gradleBuildSrc}/gradle/libs.versions.toml`,
|
|
135
|
+
});
|
|
136
|
+
source.addGradleBuildSrcDependencyCatalogVersions = versions => source.addGradleDependencyCatalogVersions(versions);
|
|
137
|
+
source.addGradleBuildSrcDependencyCatalogLibraries = libs => source.addGradleDependencyCatalogLibraries(libs, {
|
|
138
|
+
gradleFile: `${gradleBuildSrc}/build.gradle`,
|
|
139
|
+
gradleVersionCatalogFile: `${gradleBuildSrc}/gradle/libs.versions.toml`,
|
|
140
|
+
});
|
|
82
141
|
},
|
|
83
142
|
});
|
|
84
143
|
}
|
|
@@ -96,4 +155,17 @@ export default class GradleGenerator extends BaseApplicationGenerator {
|
|
|
96
155
|
get [BaseApplicationGenerator.WRITING]() {
|
|
97
156
|
return this.delegateTasksToBlueprint(() => this.writing);
|
|
98
157
|
}
|
|
158
|
+
get postWriting() {
|
|
159
|
+
return this.asPostWritingTaskGroup({
|
|
160
|
+
updateGradleVersion({ application }) {
|
|
161
|
+
const { gradleVersion } = application;
|
|
162
|
+
if (gradleVersion !== this.gradleVersionFromWrapper) {
|
|
163
|
+
this.editFile('gradle/wrapper/gradle-wrapper.properties', content => content.replace(`-${this.gradleVersionFromWrapper}-`, `-${gradleVersion}-`));
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
get [BaseApplicationGenerator.POST_WRITING]() {
|
|
169
|
+
return this.delegateTasksToBlueprint(() => this.postWriting);
|
|
170
|
+
}
|
|
99
171
|
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2013-2024 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 BaseApplicationGenerator from '../../../base-application/index.js';
|
|
20
|
+
import { GRADLE_BUILD_SRC_MAIN_DIR } from '../../../generator-constants.js';
|
|
21
|
+
import { GENERATOR_GRADLE } from '../../../generator-list.js';
|
|
22
|
+
export default class CodeQualityGenerator extends BaseApplicationGenerator {
|
|
23
|
+
async beforeQueue() {
|
|
24
|
+
if (!this.fromBlueprint) {
|
|
25
|
+
await this.composeWithBlueprints();
|
|
26
|
+
}
|
|
27
|
+
if (!this.delegateToBlueprint) {
|
|
28
|
+
await this.dependsOnBootstrapApplication();
|
|
29
|
+
await this.dependsOnJHipster(GENERATOR_GRADLE);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
get writing() {
|
|
33
|
+
return this.asWritingTaskGroup({
|
|
34
|
+
async writing({ application }) {
|
|
35
|
+
await this.writeFiles({
|
|
36
|
+
blocks: [{ templates: [`${GRADLE_BUILD_SRC_MAIN_DIR}/jhipster.code-quality-conventions.gradle`] }],
|
|
37
|
+
context: application,
|
|
38
|
+
});
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
get [BaseApplicationGenerator.WRITING]() {
|
|
43
|
+
return this.delegateTasksToBlueprint(() => this.writing);
|
|
44
|
+
}
|
|
45
|
+
get postWriting() {
|
|
46
|
+
return this.asPostWritingTaskGroup({
|
|
47
|
+
customize({ application, source }) {
|
|
48
|
+
const { javaDependencies } = application;
|
|
49
|
+
source.addGradleDependencyCatalogVersions([
|
|
50
|
+
{ name: 'jacoco', version: javaDependencies['jacoco-maven-plugin'] },
|
|
51
|
+
{ name: 'checkstyle', version: javaDependencies.checkstyle },
|
|
52
|
+
]);
|
|
53
|
+
source.addGradleBuildSrcDependencyCatalogLibraries?.([
|
|
54
|
+
{
|
|
55
|
+
libraryName: 'sonarqube-plugin',
|
|
56
|
+
module: 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin',
|
|
57
|
+
version: javaDependencies['gradle-sonarqube'],
|
|
58
|
+
scope: 'implementation',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
libraryName: 'spotless-plugin',
|
|
62
|
+
module: 'com.diffplug.spotless:spotless-plugin-gradle',
|
|
63
|
+
version: javaDependencies['spotless-gradle-plugin'],
|
|
64
|
+
scope: 'implementation',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
libraryName: 'modernizer-plugin',
|
|
68
|
+
module: 'com.github.andygoossens:gradle-modernizer-plugin',
|
|
69
|
+
version: javaDependencies['gradle-modernizer-plugin'],
|
|
70
|
+
scope: 'implementation',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
libraryName: 'nohttp-plugin',
|
|
74
|
+
module: 'io.spring.nohttp:nohttp-gradle',
|
|
75
|
+
version: javaDependencies['nohttp-checkstyle'],
|
|
76
|
+
scope: 'implementation',
|
|
77
|
+
},
|
|
78
|
+
]);
|
|
79
|
+
source.addGradlePlugin?.({ id: 'jhipster.code-quality-conventions' });
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
get [BaseApplicationGenerator.POST_WRITING]() {
|
|
84
|
+
return this.delegateTasksToBlueprint(() => this.postWriting);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
@@ -16,8 +16,4 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
|
|
20
|
-
* Removes server files that where generated in previous JHipster versions and therefore
|
|
21
|
-
* need to be removed.
|
|
22
|
-
*/
|
|
23
|
-
export default function cleanupTask() { }
|
|
19
|
+
export { default } from './generator.js';
|