+
diff --git a/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.component.ts b/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.component.ts
new file mode 100644
index 00000000000..7e8644d65d6
--- /dev/null
+++ b/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.component.ts
@@ -0,0 +1,19 @@
+import { defineComponent } from 'vue';
+import { GeneratorButtonVue } from '@/springboot/primary/generator/generator-button';
+
+export default defineComponent({
+ name: 'SetupGeneratorComponent',
+
+ components: {
+ GeneratorButtonVue,
+ },
+ props: {
+ project: {
+ type: Object,
+ required: true,
+ },
+ },
+ setup() {
+ return {};
+ },
+});
diff --git a/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.vue b/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.vue
new file mode 100644
index 00000000000..c5afda86c6c
--- /dev/null
+++ b/src/main/webapp/app/springboot/primary/generator/setup-generator/SetupGenerator.vue
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/src/main/webapp/app/springboot/primary/generator/setup-generator/index.ts b/src/main/webapp/app/springboot/primary/generator/setup-generator/index.ts
new file mode 100644
index 00000000000..eb64607a30f
--- /dev/null
+++ b/src/main/webapp/app/springboot/primary/generator/setup-generator/index.ts
@@ -0,0 +1,4 @@
+import SetupGeneratorComponent from './SetupGenerator.component';
+import SetupGeneratorVue from './SetupGenerator.vue';
+
+export { SetupGeneratorComponent, SetupGeneratorVue };
diff --git a/src/main/webapp/content/css/custom.css b/src/main/webapp/content/css/custom.css
index 7ed6bbba2e9..8496f6be47c 100644
--- a/src/main/webapp/content/css/custom.css
+++ b/src/main/webapp/content/css/custom.css
@@ -25,6 +25,7 @@
--bs-vue-rgb: 63, 178, 127;
--bs-angular-rgb: 195, 0, 47;
--bs-spring-rgb: 109, 179, 63;
+ --bs-setup-rgb: 125, 60, 152;
--bs-svelte-rgb: 255, 62, 0;
--primary-color-light: #4ba8f8;
--success-color: #00543c;
@@ -202,6 +203,13 @@ input[type='radio'] {
color: var(--primary-color);
border-color: var(--primary-color);
}
+.bg-setup {
+ --bs-bg-opacity: 0.05;
+ background-color: rgba(var(--bs-setup-rgb), var(--bs-bg-opacity)) !important;
+}
+.text-setup {
+ color: rgba(var(--bs-setup-rgb)) !important;
+}
.bg-spring {
--bs-bg-opacity: 0.05;
background-color: rgba(var(--bs-spring-rgb), var(--bs-bg-opacity)) !important;
diff --git a/src/test/javascript/cypress/integration/Generator.spec.ts b/src/test/javascript/cypress/integration/Generator.spec.ts
index 6367dc1d18f..8f40faca7eb 100644
--- a/src/test/javascript/cypress/integration/Generator.spec.ts
+++ b/src/test/javascript/cypress/integration/Generator.spec.ts
@@ -31,6 +31,10 @@ describe('Generator', () => {
cy.get(projectGeneratorSelector('add-download-button')).should('not.exist');
});
+ it('should display setup', () => {
+ cy.get(dataSelector('section-setup')).contains('SETUP');
+ });
+
it('should display spring boot', () => {
cy.get(generatorSelector('option-springboot')).check();
diff --git a/src/test/javascript/spec/springboot/domain/SetupService.fixture.ts b/src/test/javascript/spec/springboot/domain/SetupService.fixture.ts
new file mode 100644
index 00000000000..0bced199117
--- /dev/null
+++ b/src/test/javascript/spec/springboot/domain/SetupService.fixture.ts
@@ -0,0 +1,5 @@
+import { SetupService } from '../../../../../main/webapp/app/springboot/domain/SetupService';
+
+export interface SetupServiceFixture extends SetupService {}
+
+export const stubSetupService = (): SetupServiceFixture => ({});
diff --git a/src/test/javascript/spec/springboot/primary/generator/setup-generator/SetupGenerator.spec.ts b/src/test/javascript/spec/springboot/primary/generator/setup-generator/SetupGenerator.spec.ts
new file mode 100644
index 00000000000..3778408af2d
--- /dev/null
+++ b/src/test/javascript/spec/springboot/primary/generator/setup-generator/SetupGenerator.spec.ts
@@ -0,0 +1,44 @@
+import { shallowMount, VueWrapper } from '@vue/test-utils';
+import { AlertBus } from '@/common/domain/alert/AlertBus';
+import { ProjectToUpdate } from '@/springboot/primary/ProjectToUpdate';
+import { stubAlertBus } from '../../../../common/domain/AlertBus.fixture';
+import { createProjectToUpdate } from '../../ProjectToUpdate.fixture';
+import { stubSetupService } from '../../../domain/SetupService.fixture';
+import { SetupService } from '@/springboot/domain/SetupService';
+import { SetupGeneratorVue } from '@/springboot/primary/generator/setup-generator';
+
+let wrapper: VueWrapper;
+let component: any;
+
+interface WrapperOptions {
+ alertBus: AlertBus;
+ setupService: SetupService;
+ project: ProjectToUpdate;
+}
+const wrap = (wrapperOptions?: Partial
) => {
+ const { alertBus, setupService, project }: WrapperOptions = {
+ alertBus: stubAlertBus(),
+ setupService: stubSetupService(),
+ project: createProjectToUpdate(),
+ ...wrapperOptions,
+ };
+ wrapper = shallowMount(SetupGeneratorVue, {
+ props: {
+ project,
+ },
+ global: {
+ provide: {
+ alertBus,
+ setupService,
+ },
+ },
+ });
+ component = wrapper.vm;
+};
+describe('SetupGenerator', () => {
+ it('should exist', () => {
+ wrap();
+
+ expect(wrapper.exists()).toBe(true);
+ });
+});