From 7c87a355ae6a0d4533bbf06508a3e62db066d490 Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Mon, 3 Feb 2025 09:04:42 +0100 Subject: [PATCH 01/57] OZG-7474 OZG-7634 create button container component --- alfa-client/libs/forwarding/src/index.ts | 1 + ...y-ozgcloud-button-container.component.html | 1 + ...zgcloud-button-container.component.spec.ts | 21 +++++++++++++++++++ ...-by-ozgcloud-button-container.component.ts | 13 ++++++++++++ alfa-client/tsconfig.base.json | 4 ++-- 5 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html create mode 100644 alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts create mode 100644 alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts diff --git a/alfa-client/libs/forwarding/src/index.ts b/alfa-client/libs/forwarding/src/index.ts index 504fbb0e7e..24d937c340 100644 --- a/alfa-client/libs/forwarding/src/index.ts +++ b/alfa-client/libs/forwarding/src/index.ts @@ -21,5 +21,6 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ +export * from './lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component'; export * from './lib/forwarding.module'; export * from './lib/vorgang-forwarding-container/vorgang-forwarding-container.component'; diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html new file mode 100644 index 0000000000..d44d1ca87b --- /dev/null +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -0,0 +1 @@ +<p>forward-by-ozgcloud-button-container works!</p> diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts new file mode 100644 index 0000000000..e947e57270 --- /dev/null +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ForwardByOzgcloudButtonContainerComponent } from './forward-by-ozgcloud-button-container.component'; + +describe('ForwardByOzgcloudButtonContainerComponent', () => { + let component: ForwardByOzgcloudButtonContainerComponent; + let fixture: ComponentFixture<ForwardByOzgcloudButtonContainerComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ForwardByOzgcloudButtonContainerComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(ForwardByOzgcloudButtonContainerComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts new file mode 100644 index 0000000000..cc94c34ebd --- /dev/null +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -0,0 +1,13 @@ +import { VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; + +@Component({ + selector: 'alfa-forward-by-ozgcloud-button-container', + standalone: true, + imports: [CommonModule], + templateUrl: './forward-by-ozgcloud-button-container.component.html', +}) +export class ForwardByOzgcloudButtonContainerComponent { + @Input() vorgangWithEingang: VorgangWithEingangResource; +} diff --git a/alfa-client/tsconfig.base.json b/alfa-client/tsconfig.base.json index 645b71e1ce..6850f74e4e 100644 --- a/alfa-client/tsconfig.base.json +++ b/alfa-client/tsconfig.base.json @@ -18,7 +18,6 @@ "paths": { "@admin-client/configuration": ["libs/admin/configuration/src/index.ts"], "@admin-client/configuration-shared": ["libs/admin/configuration-shared/src/index.ts"], - "@admin/keycloak-shared": ["libs/admin/keycloak-shared/src/index.ts"], "@admin-client/organisations-einheit": ["libs/admin/organisations-einheit/src/index.ts"], "@admin-client/organisations-einheit-shared": ["libs/admin/organisations-einheit-shared/src/index.ts"], "@admin-client/postfach": ["libs/admin/postfach/src/index.ts"], @@ -28,6 +27,7 @@ "@admin-client/statistik": ["libs/admin/statistik/src/index.ts"], "@admin-client/user": ["libs/admin/user/src/index.ts"], "@admin-client/user-shared": ["libs/admin/user-shared/src/index.ts"], + "@admin/keycloak-shared": ["libs/admin/keycloak-shared/src/index.ts"], "@alfa-client/api-root-shared": ["libs/api-root-shared/src/index.ts"], "@alfa-client/app-shared": ["libs/app-shared/src/index.ts"], "@alfa-client/bescheid": ["libs/bescheid/src/index.ts"], @@ -77,7 +77,7 @@ "@alfa-client/zustaendige-stelle-shared": ["libs/zustaendige-stelle-shared/src/index.ts"], "@authentication": ["libs/authentication/src/index.ts"], "@ods/component": ["libs/design-component/src/index.ts"], - "@ods/system": ["libs/design-system/src/index.ts"], + "@ods/system": ["libs/design-system/src/index.ts"] } }, "exclude": ["node_modules", "tmp"] -- GitLab From 2762fb9c287aa9a75bbe87be7eb25fd4745c1134 Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Mon, 3 Feb 2025 09:09:31 +0100 Subject: [PATCH 02/57] OZG-7474 OZG-7634 add button to formular/action buttons --- ...rgang-detail-action-buttons.component.html | 45 +++++-------------- ...ng-detail-action-buttons.component.spec.ts | 38 +++++++++++----- ...ang-detail-formular-buttons.component.html | 5 +-- ...-detail-formular-buttons.component.spec.ts | 32 ++++++++----- .../src/lib/vorgang-detail.module.ts | 3 +- 5 files changed, 63 insertions(+), 60 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html index 2505c2406e..108f8600a4 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html @@ -23,38 +23,14 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<alfa-annehmen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-annehmen-button> -<alfa-zurueckholen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-zurueckholen-button> -<alfa-bearbeiten-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-bearbeiten-button> -<alfa-bescheiden-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-bescheiden-button> -<alfa-zurueckstellen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-zurueckstellen-button> -<alfa-abschliessen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-abschliessen-button> -<alfa-verwerfen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-verwerfen-button> -<alfa-wiedereroeffnen-button - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-wiedereroeffnen-button> +<alfa-annehmen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-annehmen-button> +<alfa-zurueckholen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-zurueckholen-button> +<alfa-bearbeiten-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-bearbeiten-button> +<alfa-bescheiden-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-bescheiden-button> +<alfa-zurueckstellen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-zurueckstellen-button> +<alfa-abschliessen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-abschliessen-button> +<alfa-verwerfen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-verwerfen-button> +<alfa-wiedereroeffnen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-wiedereroeffnen-button> <!-- TODO Anhand des Links Library dynamisch laden --> <alfa-loeschen-anfordern-button-container *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN" @@ -75,10 +51,9 @@ [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" ></alfa-create-wiedervorlage-button-container> -<alfa-assign-user-profile-button-container - [vorgang]="vorgangWithEingang" -></alfa-assign-user-profile-button-container> +<alfa-assign-user-profile-button-container [vorgang]="vorgangWithEingang"></alfa-assign-user-profile-button-container> <alfa-postfach-mail-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" ></alfa-postfach-mail-button-container> +<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang"></alfa-forward-by-ozgcloud-button-container> diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts index e5e841336b..7a54317356 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts @@ -21,13 +21,18 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { EndgueltigLoeschenButtonContainerComponent, LoeschAnforderungZuruecknehmenButtonContainerComponent, LoeschenAnfordernButtonContainerComponent } from '@alfa-client/loesch-anforderung'; +import { ForwardByOzgcloudButtonContainerComponent } from '@alfa-client/forwarding'; +import { + EndgueltigLoeschenButtonContainerComponent, + LoeschAnforderungZuruecknehmenButtonContainerComponent, + LoeschenAnfordernButtonContainerComponent, +} from '@alfa-client/loesch-anforderung'; import { PostfachMailButtonContainerComponent } from '@alfa-client/postfach'; import { HasLinkPipe } from '@alfa-client/tech-shared'; -import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; +import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { IconButtonWithSpinnerComponent } from '@alfa-client/ui'; import { AssignUserProfileButtonContainerComponent } from '@alfa-client/user-profile'; -import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; import { CreateWiedervorlageButtonContainerComponent } from '@alfa-client/wiedervorlage'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; @@ -47,11 +52,11 @@ describe('VorgangDetailActionButtonsComponent', () => { let component: VorgangDetailActionButtonsComponent; let fixture: ComponentFixture<VorgangDetailActionButtonsComponent>; - const loeschenAnfordernIconButtonContainer: string = getDataTestIdOf( - 'loeschen-anfordern-icon-button-container', - ); + const loeschenAnfordernIconButtonContainer: string = getDataTestIdOf('loeschen-anfordern-icon-button-container'); const createBescheidButtonContainer: string = getDataTestIdOf('create-bescheid-button-container'); + const vorgangWithEingang: VorgangWithEingangResource = createVorgangWithEingangResource(); + beforeEach(async () => { await TestBed.configureTestingModule({ declarations: [ @@ -72,6 +77,7 @@ describe('VorgangDetailActionButtonsComponent', () => { MockComponent(LoeschenAnfordernButtonContainerComponent), MockComponent(EndgueltigLoeschenButtonContainerComponent), MockComponent(LoeschAnforderungZuruecknehmenButtonContainerComponent), + MockComponent(ForwardByOzgcloudButtonContainerComponent), ], }); }); @@ -88,16 +94,14 @@ describe('VorgangDetailActionButtonsComponent', () => { describe('loeschenAnfordernIconButtonContainer', () => { it('should show if link is present', () => { - component.vorgangWithEingang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.LOESCHEN_ANFORDERN, - ]); + component.vorgangWithEingang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.LOESCHEN_ANFORDERN]); fixture.detectChanges(); existsAsHtmlElement(fixture, loeschenAnfordernIconButtonContainer); }); it('should hide if link is not present', () => { - component.vorgangWithEingang = createVorgangWithEingangResource(); + component.vorgangWithEingang = vorgangWithEingang; fixture.detectChanges(); notExistsAsHtmlElement(fixture, loeschenAnfordernIconButtonContainer); @@ -106,11 +110,23 @@ describe('VorgangDetailActionButtonsComponent', () => { describe('create bescheid button', () => { it('should hide if link not exists', () => { - component.vorgangWithEingang = createVorgangWithEingangResource(); + component.vorgangWithEingang = vorgangWithEingang; fixture.detectChanges(); notExistsAsHtmlElement(fixture, createBescheidButtonContainer); }); }); + + it('forward button should be called', () => { + component.vorgangWithEingang = vorgangWithEingang; + + fixture.detectChanges(); + + const button: ForwardByOzgcloudButtonContainerComponent = getMockComponent( + fixture, + ForwardByOzgcloudButtonContainerComponent, + ); + expect(button.vorgangWithEingang).toBe(vorgangWithEingang); + }); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html index 5da29c28cf..2c75ebab3e 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html @@ -38,8 +38,7 @@ [vorgang]="vorgangWithEingang" > </alfa-loeschen-anfordern-button-container> -<alfa-endgueltig-loeschen-button-container - [vorgang]="vorgangWithEingang" -></alfa-endgueltig-loeschen-button-container> +<alfa-endgueltig-loeschen-button-container [vorgang]="vorgangWithEingang"></alfa-endgueltig-loeschen-button-container> <alfa-loesch-anforderung-zuruecknehmen-button-container></alfa-loesch-anforderung-zuruecknehmen-button-container> +<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang"></alfa-forward-by-ozgcloud-button-container> <!-- --> diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts index b106093111..4b16a16ee5 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts @@ -21,16 +21,17 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ForwardByOzgcloudButtonContainerComponent } from '@alfa-client/forwarding'; import { EndgueltigLoeschenButtonContainerComponent, LoeschAnforderungZuruecknehmenButtonContainerComponent, LoeschenAnfordernButtonContainerComponent, } from '@alfa-client/loesch-anforderung'; import { HasLinkPipe } from '@alfa-client/tech-shared'; -import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; +import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui'; -import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent } from 'ng-mocks'; @@ -48,9 +49,9 @@ describe('VorgangDetailFormularButtonsComponent', () => { let component: VorgangDetailFormularButtonsComponent; let fixture: ComponentFixture<VorgangDetailFormularButtonsComponent>; - const loeschenAnfordernButtonContainer: string = getDataTestIdOf( - 'loeschen-anfordern-button-container', - ); + const loeschenAnfordernButtonContainer: string = getDataTestIdOf('loeschen-anfordern-button-container'); + + const vorgangWithEingang: VorgangWithEingangResource = createVorgangWithEingangResource(); beforeEach(async () => { await TestBed.configureTestingModule({ @@ -69,6 +70,7 @@ describe('VorgangDetailFormularButtonsComponent', () => { MockComponent(LoeschenAnfordernButtonContainerComponent), MockComponent(EndgueltigLoeschenButtonContainerComponent), MockComponent(LoeschAnforderungZuruecknehmenButtonContainerComponent), + MockComponent(ForwardByOzgcloudButtonContainerComponent), ], }); }); @@ -76,6 +78,7 @@ describe('VorgangDetailFormularButtonsComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(VorgangDetailFormularButtonsComponent); component = fixture.componentInstance; + component.vorgangWithEingang = vorgangWithEingang; fixture.detectChanges(); }); @@ -85,19 +88,28 @@ describe('VorgangDetailFormularButtonsComponent', () => { describe('loeschenAnfordernButtonContainer', () => { it('should show if link is present', () => { - component.vorgangWithEingang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.LOESCHEN_ANFORDERN, - ]); + component.vorgangWithEingang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.LOESCHEN_ANFORDERN]); fixture.detectChanges(); existsAsHtmlElement(fixture, loeschenAnfordernButtonContainer); }); it('should hide if link is not present', () => { - component.vorgangWithEingang = createVorgangWithEingangResource(); + component.vorgangWithEingang = vorgangWithEingang; fixture.detectChanges(); notExistsAsHtmlElement(fixture, loeschenAnfordernButtonContainer); }); }); + + it('forwarding button should be called', () => { + component.vorgangWithEingang = vorgangWithEingang; + fixture.detectChanges(); + + const button: ForwardByOzgcloudButtonContainerComponent = getMockComponent( + fixture, + ForwardByOzgcloudButtonContainerComponent, + ); + expect(button.vorgangWithEingang).toBe(vorgangWithEingang); + }); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 9c96835792..579b092e9c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -24,7 +24,7 @@ import { BescheidModule } from '@alfa-client/bescheid'; import { BinaryFileModule } from '@alfa-client/binary-file'; import { CollaborationModule } from '@alfa-client/collaboration'; -import { ForwardingModule } from '@alfa-client/forwarding'; +import { ForwardByOzgcloudButtonContainerComponent, ForwardingModule } from '@alfa-client/forwarding'; import { HistorieModule } from '@alfa-client/historie'; import { KommentarModule } from '@alfa-client/kommentar'; import { LoeschAnforderungModule } from '@alfa-client/loesch-anforderung'; @@ -178,6 +178,7 @@ const routes: Routes = [ DropdownMenuTextItemComponent, MoreIconComponent, FileIconComponent, + ForwardByOzgcloudButtonContainerComponent, ], declarations: [ VorgangDetailPageComponent, -- GitLab From 2f8bd222c166428e9ff205a9abaa82fc3c7d7e92 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 3 Feb 2025 13:31:45 +0100 Subject: [PATCH 03/57] OZG-7474 OZG-7661 Add forward icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../forward-icon.component.spec.ts | 44 +++++++++++++++ .../forward-icon/forward-icon.component.ts | 53 +++++++++++++++++++ .../forward-icon/forward-icon.stories.ts | 50 +++++++++++++++++ 4 files changed, 148 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 1f46fdee2b..71313e8af6 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -53,6 +53,7 @@ export * from './lib/icons/error-icon/error-icon.component'; export * from './lib/icons/exclamation-icon/exclamation-icon.component'; export * from './lib/icons/external-unit-icon/external-unit-icon.component'; export * from './lib/icons/file-icon/file-icon.component'; +export * from './lib/icons/forward-icon/forward-icon.component'; export * from './lib/icons/help-icon/help-icon.component'; export * from './lib/icons/iconVariants'; export * from './lib/icons/logout-icon/logout-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts new file mode 100644 index 0000000000..6f765213a0 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ForwardIconComponent } from './forward-icon.component'; + +describe('ForwardIconComponent', () => { + let component: ForwardIconComponent; + let fixture: ComponentFixture<ForwardIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ForwardIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(ForwardIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts new file mode 100644 index 0000000000..586fbe1527 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +import { NgClass } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-forward-icon', + standalone: true, + imports: [NgClass], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="twMerge(iconVariants({ size }), 'fill-primary', class)" + aria-hidden="true" + > + <path d="M17.7222 16.4V14L22 18.2L17.7222 22.4V19.94C14.6667 19.94 12.5278 20.9 11 23C11.6111 20 13.4444 17 17.7222 16.4Z" /> + <path + fill-rule="evenodd" + clip-rule="evenodd" + d="M16.25 11V3.77384H11.2794L6.875 7.93078L6.875 18.408H9V20.1818H6.875C5.83947 20.1818 5 19.3876 5 18.408V7.93078C5 7.4596 5.19815 7.00779 5.55074 6.67501L9.95513 2.51807C10.3066 2.18631 10.7829 2 11.2794 2H16.25C17.2855 2 18.125 2.79417 18.125 3.77384V11H16.25Z" + /> + </svg>`, +}) +export class ForwardIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = undefined; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts new file mode 100644 index 0000000000..07e7e62158 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { ForwardIconComponent } from './forward-icon.component'; + +const meta: Meta<ForwardIconComponent> = { + title: 'Icons/Forward icon', + component: ForwardIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<ForwardIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 13e81fa0ee1fb945cef4133cc84b1a53dd3ef1fa Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Mon, 3 Feb 2025 19:20:38 +0100 Subject: [PATCH 04/57] OZG-7474 create buttons for weiterleitung --- ...y-ozgcloud-button-container.component.html | 17 ++++++- ...zgcloud-button-container.component.spec.ts | 44 +++++++++++++++++++ ...-by-ozgcloud-button-container.component.ts | 10 ++++- ...rgang-detail-action-buttons.component.html | 42 +++++++----------- ...ng-detail-action-buttons.component.spec.ts | 1 + ...ang-detail-formular-buttons.component.html | 24 +++++----- .../vorgang-shared/src/lib/vorgang.linkrel.ts | 1 + 7 files changed, 97 insertions(+), 42 deletions(-) diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index d44d1ca87b..c722062fb1 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -1 +1,16 @@ -<p>forward-by-ozgcloud-button-container works!</p> +@if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) { + @if (showAsIconButton) { + <ods-button-with-spinner variant="icon" size="fit" dataTestId="forwarding-by-ozgcloud-icon-button"> + <ods-close-icon icon /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + *ngIf="!showAsIconButton" + text="Weiterleiten" + variant="outline" + dataTestId="forwarding-by-ozgcloud-button" + > + <ods-close-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts index e947e57270..70ee26b0f8 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -1,13 +1,24 @@ +import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; +import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CloseIconComponent } from '@ods/system'; +import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test'; +import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; +import { MockComponent } from 'ng-mocks'; import { ForwardByOzgcloudButtonContainerComponent } from './forward-by-ozgcloud-button-container.component'; describe('ForwardByOzgcloudButtonContainerComponent', () => { let component: ForwardByOzgcloudButtonContainerComponent; let fixture: ComponentFixture<ForwardByOzgcloudButtonContainerComponent>; + const iconButton: string = getDataTestIdAttributeOf('forwarding-by-ozgcloud-icon-button'); + const button: string = getDataTestIdAttributeOf('forwarding-by-ozgcloud-button'); + beforeEach(async () => { await TestBed.configureTestingModule({ imports: [ForwardByOzgcloudButtonContainerComponent], + declarations: [MockComponent(ButtonWithSpinnerComponent), MockComponent(CloseIconComponent)], }).compileComponents(); fixture = TestBed.createComponent(ForwardByOzgcloudButtonContainerComponent); @@ -18,4 +29,37 @@ describe('ForwardByOzgcloudButtonContainerComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + describe('on existing link', () => { + beforeEach(() => { + component.vorgangWithEingang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD]); + }); + + it('show as button', () => { + component.showAsIconButton = false; + + fixture.detectChanges(); + + existsAsHtmlElement(fixture, button); + }); + + it('show as iconButton', () => { + component.showAsIconButton = true; + + fixture.detectChanges(); + + existsAsHtmlElement(fixture, iconButton); + }); + }); + + describe('on missing link', () => { + it('should hide buttons', () => { + component.vorgangWithEingang = createVorgangWithEingangResource(); + + fixture.detectChanges(); + + notExistsAsHtmlElement(fixture, button); + notExistsAsHtmlElement(fixture, iconButton); + }); + }); }); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts index cc94c34ebd..cb812ddcd2 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -1,13 +1,19 @@ -import { VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { TechSharedModule } from '@alfa-client/tech-shared'; +import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; import { CommonModule } from '@angular/common'; import { Component, Input } from '@angular/core'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CloseIconComponent } from '@ods/system'; @Component({ selector: 'alfa-forward-by-ozgcloud-button-container', standalone: true, - imports: [CommonModule], + imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, CloseIconComponent], templateUrl: './forward-by-ozgcloud-button-container.component.html', }) export class ForwardByOzgcloudButtonContainerComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; + @Input() showAsIconButton: boolean = false; + + public readonly vorgangWithEingangLinkRel = VorgangWithEingangLinkRel; } diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html index 108f8600a4..6ef3191b65 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html @@ -23,37 +23,25 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<alfa-annehmen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-annehmen-button> -<alfa-zurueckholen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-zurueckholen-button> -<alfa-bearbeiten-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-bearbeiten-button> -<alfa-bescheiden-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-bescheiden-button> -<alfa-zurueckstellen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-zurueckstellen-button> -<alfa-abschliessen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-abschliessen-button> -<alfa-verwerfen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-verwerfen-button> -<alfa-wiedereroeffnen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang"></alfa-wiedereroeffnen-button> +<alfa-annehmen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-zurueckholen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-bearbeiten-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-bescheiden-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-zurueckstellen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-abschliessen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-verwerfen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-wiedereroeffnen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> <!-- TODO Anhand des Links Library dynamisch laden --> <alfa-loeschen-anfordern-button-container *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN" data-test-id="loeschen-anfordern-icon-button-container" [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" -> -</alfa-loeschen-anfordern-button-container> -<alfa-endgueltig-loeschen-button-container - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-endgueltig-loeschen-button-container> -<alfa-loesch-anforderung-zuruecknehmen-button-container - [showAsIconButton]="showAsIconButton" -></alfa-loesch-anforderung-zuruecknehmen-button-container> +/> +<alfa-endgueltig-loeschen-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-loesch-anforderung-zuruecknehmen-button-container [showAsIconButton]="showAsIconButton" /> <!-- --> -<alfa-create-wiedervorlage-button-container - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-create-wiedervorlage-button-container> -<alfa-assign-user-profile-button-container [vorgang]="vorgangWithEingang"></alfa-assign-user-profile-button-container> -<alfa-postfach-mail-button-container - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -></alfa-postfach-mail-button-container> -<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang"></alfa-forward-by-ozgcloud-button-container> +<alfa-create-wiedervorlage-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-assign-user-profile-button-container [vorgang]="vorgangWithEingang" /> +<alfa-postfach-mail-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> +<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang" [showAsIconButton]="showAsIconButton" /> diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts index 7a54317356..b8c3aed662 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts @@ -128,5 +128,6 @@ describe('VorgangDetailActionButtonsComponent', () => { ForwardByOzgcloudButtonContainerComponent, ); expect(button.vorgangWithEingang).toBe(vorgangWithEingang); + expect(button.showAsIconButton).toBeTruthy(); }); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html index 2c75ebab3e..a8e1579582 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html @@ -23,22 +23,22 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<alfa-annehmen-button [vorgang]="vorgangWithEingang"></alfa-annehmen-button> -<alfa-zurueckholen-button [vorgang]="vorgangWithEingang"></alfa-zurueckholen-button> -<alfa-verwerfen-button [vorgang]="vorgangWithEingang"></alfa-verwerfen-button> -<alfa-bearbeiten-button [vorgang]="vorgangWithEingang"></alfa-bearbeiten-button> -<alfa-bescheiden-button [vorgang]="vorgangWithEingang"></alfa-bescheiden-button> -<alfa-zurueckstellen-button [vorgang]="vorgangWithEingang"></alfa-zurueckstellen-button> -<alfa-abschliessen-button [vorgang]="vorgangWithEingang"></alfa-abschliessen-button> -<alfa-wiedereroeffnen-button [vorgang]="vorgangWithEingang"></alfa-wiedereroeffnen-button> +<alfa-annehmen-button [vorgang]="vorgangWithEingang" /> +<alfa-zurueckholen-button [vorgang]="vorgangWithEingang" /> +<alfa-verwerfen-button [vorgang]="vorgangWithEingang" /> +<alfa-bearbeiten-button [vorgang]="vorgangWithEingang" /> +<alfa-bescheiden-button [vorgang]="vorgangWithEingang" /> +<alfa-zurueckstellen-button [vorgang]="vorgangWithEingang" /> +<alfa-abschliessen-button [vorgang]="vorgangWithEingang" /> +<alfa-wiedereroeffnen-button [vorgang]="vorgangWithEingang" /> <!-- TODO LoeschAnforderung dynamisch laden, wenn Link vorhanden --> <alfa-loeschen-anfordern-button-container *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN" data-test-id="loeschen-anfordern-button-container" [vorgang]="vorgangWithEingang" > + <!-- --> </alfa-loeschen-anfordern-button-container> -<alfa-endgueltig-loeschen-button-container [vorgang]="vorgangWithEingang"></alfa-endgueltig-loeschen-button-container> -<alfa-loesch-anforderung-zuruecknehmen-button-container></alfa-loesch-anforderung-zuruecknehmen-button-container> -<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang"></alfa-forward-by-ozgcloud-button-container> -<!-- --> +<alfa-endgueltig-loeschen-button-container [vorgang]="vorgangWithEingang" /> +<alfa-loesch-anforderung-zuruecknehmen-button-container /> +<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang" /> diff --git a/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts b/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts index ed59d9c3e4..f36fa5e7f8 100644 --- a/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts +++ b/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts @@ -50,6 +50,7 @@ export enum VorgangWithEingangLinkRel { ATTACHMENTS = 'attachments', FORWARD = 'forward', FORWARDING = 'forwarding', + FORWARD_BY_OZGCLOUD = 'forwardByOzgCloud', PENDING_COMMANDS = 'pending-commands', ASSIGN = 'assign', REPRESENTATIONS = 'representations', -- GitLab From 6dee42fed2bdeaeb6bb977a9db3239971d51344f Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Mon, 3 Feb 2025 19:29:58 +0100 Subject: [PATCH 05/57] OZG-7474 switch icons --- ...ward-by-ozgcloud-button-container.component.html | 13 ++++--------- ...d-by-ozgcloud-button-container.component.spec.ts | 8 ++++---- ...orward-by-ozgcloud-button-container.component.ts | 4 ++-- 3 files changed, 10 insertions(+), 15 deletions(-) diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index c722062fb1..415baac659 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -1,16 +1,11 @@ @if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) { @if (showAsIconButton) { - <ods-button-with-spinner variant="icon" size="fit" dataTestId="forwarding-by-ozgcloud-icon-button"> - <ods-close-icon icon /> + <ods-button-with-spinner variant="icon" size="fit" dataTestId="forward-by-ozgcloud-icon-button"> + <ods-forward-icon icon /> </ods-button-with-spinner> } @else { - <ods-button-with-spinner - *ngIf="!showAsIconButton" - text="Weiterleiten" - variant="outline" - dataTestId="forwarding-by-ozgcloud-button" - > - <ods-close-icon icon /> + <ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button"> + <ods-forward-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts index 70ee26b0f8..5a38308bdc 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -2,7 +2,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-u import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { CloseIconComponent } from '@ods/system'; +import { ForwardIconComponent } from '@ods/system'; import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent } from 'ng-mocks'; @@ -12,13 +12,13 @@ describe('ForwardByOzgcloudButtonContainerComponent', () => { let component: ForwardByOzgcloudButtonContainerComponent; let fixture: ComponentFixture<ForwardByOzgcloudButtonContainerComponent>; - const iconButton: string = getDataTestIdAttributeOf('forwarding-by-ozgcloud-icon-button'); - const button: string = getDataTestIdAttributeOf('forwarding-by-ozgcloud-button'); + const iconButton: string = getDataTestIdAttributeOf('forward-by-ozgcloud-icon-button'); + const button: string = getDataTestIdAttributeOf('forward-by-ozgcloud-button'); beforeEach(async () => { await TestBed.configureTestingModule({ imports: [ForwardByOzgcloudButtonContainerComponent], - declarations: [MockComponent(ButtonWithSpinnerComponent), MockComponent(CloseIconComponent)], + declarations: [MockComponent(ButtonWithSpinnerComponent), MockComponent(ForwardIconComponent)], }).compileComponents(); fixture = TestBed.createComponent(ForwardByOzgcloudButtonContainerComponent); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts index cb812ddcd2..4316c3ee5f 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -3,12 +3,12 @@ import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-cli import { CommonModule } from '@angular/common'; import { Component, Input } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { CloseIconComponent } from '@ods/system'; +import { ForwardIconComponent } from '@ods/system'; @Component({ selector: 'alfa-forward-by-ozgcloud-button-container', standalone: true, - imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, CloseIconComponent], + imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardIconComponent], templateUrl: './forward-by-ozgcloud-button-container.component.html', }) export class ForwardByOzgcloudButtonContainerComponent { -- GitLab From 201b3d38be842da01b40157b775a3218f7b31e6b Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Mon, 3 Feb 2025 19:38:43 +0100 Subject: [PATCH 06/57] OZG-7474 adjust linkRel: forwarding -> forwardByEmail --- .../src/lib/forwarding.repository.spec.ts | 6 ++---- .../src/lib/forwarding.repository.ts | 4 ++-- .../vorgang-forwarding-container.component.html | 10 ++-------- ...rgang-forwarding-container.component.spec.ts | 15 +++++---------- .../vorgang-forwarding-container.component.ts | 17 ++++++----------- .../vorgang-detail-area.component.html | 2 +- .../vorgang-detail-area.component.spec.ts | 2 +- .../vorgang-shared/src/lib/vorgang.linkrel.ts | 2 +- 8 files changed, 20 insertions(+), 38 deletions(-) diff --git a/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.spec.ts b/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.spec.ts index f675f96336..34a7bd065f 100644 --- a/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.spec.ts +++ b/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.spec.ts @@ -43,9 +43,7 @@ describe('ForwardingRepository', () => { }); describe('getForwardings', () => { - const vorgang: VorgangWithEingangResource = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.FORWARDING, - ]); + const vorgang: VorgangWithEingangResource = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_EMAIL]); const commandList: ForwardingListResource = createForwardingListResource(); beforeEach(() => { @@ -61,7 +59,7 @@ describe('ForwardingRepository', () => { it('should call resourceWrapper', () => { repository.getForwardings(vorgang); - expect(resourceWrapper.get).toHaveBeenCalledWith(VorgangWithEingangLinkRel.FORWARDING); + expect(resourceWrapper.get).toHaveBeenCalledWith(VorgangWithEingangLinkRel.FORWARD_BY_EMAIL); }); it('should return result', () => { diff --git a/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.ts b/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.ts index 33d6a4d7a9..a83ca3536d 100644 --- a/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.ts +++ b/alfa-client/libs/forwarding-shared/src/lib/forwarding.repository.ts @@ -21,8 +21,8 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Injectable } from '@angular/core'; import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Injectable } from '@angular/core'; import { ResourceFactory } from '@ngxp/rest'; import { Observable } from 'rxjs'; import { ForwardingListResource } from './forwarding.model'; @@ -32,6 +32,6 @@ export class ForwardingRepository { constructor(private resourceFactory: ResourceFactory) {} public getForwardings(vorgang: VorgangWithEingangResource): Observable<ForwardingListResource> { - return this.resourceFactory.from(vorgang).get(VorgangWithEingangLinkRel.FORWARDING); + return this.resourceFactory.from(vorgang).get(VorgangWithEingangLinkRel.FORWARD_BY_EMAIL); } } diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html index 435e66f601..2698ddc7e7 100644 --- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html @@ -23,20 +23,14 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container - *ngIf=" - (vorgang | hasLink: vorgangLinkRel.FORWARD) || (vorgang | hasLink: vorgangLinkRel.FORWARDING) - " -> +<ng-container *ngIf="(vorgang | hasLink: vorgangLinkRel.FORWARD) || (vorgang | hasLink: vorgangLinkRel.FORWARD_BY_EMAIL)"> <ozgcloud-expansion-panel headline="Vorgang weiterleiten" data-test-id="forwarding" *ngIf="forwardingStateResources$ | async as forwardingStateResources" > <ozgcloud-spinner [stateResource]="forwardingStateResources"> - <alfa-vorgang-forwarding-info-list - [forwardingList]="forwardingStateResources" - ></alfa-vorgang-forwarding-info-list> + <alfa-vorgang-forwarding-info-list [forwardingList]="forwardingStateResources"></alfa-vorgang-forwarding-info-list> </ozgcloud-spinner> <alfa-vorgang-forward-formular diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts index 33d4a94562..25691e2e36 100644 --- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts @@ -21,18 +21,15 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { UntypedFormBuilder } from '@angular/forms'; import { ForwardingService } from '@alfa-client/forwarding-shared'; import { createStateResource, HasLinkPipe } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; import { ExpansionPanelComponent, SpinnerComponent } from '@alfa-client/ui'; import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { UntypedFormBuilder } from '@angular/forms'; import { createCommandResource } from 'libs/command-shared/test/command'; -import { - createVorgangForwardRequest, - createVorgangWithEingangResource, -} from 'libs/vorgang-shared/test/vorgang'; +import { createVorgangForwardRequest, createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent } from 'ng-mocks'; import { of } from 'rxjs'; import { VorgangForwardFormService } from './vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice'; @@ -127,7 +124,7 @@ describe('VorgangForwardingContainerComponent', () => { }); it('should call service get forward commands', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARDING]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_EMAIL]); fixture.detectChanges(); component.getForwardings(); @@ -150,9 +147,7 @@ describe('VorgangForwardingContainerComponent', () => { describe('forwarding', () => { describe('on forwarding link', () => { it('should show if exists', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.FORWARDING, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_EMAIL]); fixture.detectChanges(); const element = fixture.nativeElement.querySelector(forwarding); diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts index e9aedf3441..9613957552 100644 --- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts @@ -21,11 +21,11 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnChanges } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { ForwardingListResource, ForwardingService } from '@alfa-client/forwarding-shared'; import { createEmptyStateResource, StateResource } from '@alfa-client/tech-shared'; import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnChanges } from '@angular/core'; import { hasLink } from '@ngxp/rest'; import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel'; import { Observable, of } from 'rxjs'; @@ -40,12 +40,9 @@ import { VorgangForwardFormService } from './vorgang-forward-formular/vorgang-fo export class VorgangForwardingContainerComponent implements OnChanges { @Input() public vorgang: VorgangWithEingangResource; - forwardingStateResources$: Observable<StateResource<ForwardingListResource>> = of( - createEmptyStateResource<ForwardingListResource>(), - ); - pendingForwardStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + forwardingStateResources$: Observable<StateResource<ForwardingListResource>> = + of(createEmptyStateResource<ForwardingListResource>()); + pendingForwardStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = CommandLinkRel; readonly vorgangLinkRel = VorgangWithEingangLinkRel; @@ -67,7 +64,7 @@ export class VorgangForwardingContainerComponent implements OnChanges { } getForwardings(): void { - if (hasLink(this.vorgang, VorgangWithEingangLinkRel.FORWARDING)) { + if (hasLink(this.vorgang, VorgangWithEingangLinkRel.FORWARD_BY_EMAIL)) { this.forwardingStateResources$ = this.forwardingService.getForwardings(this.vorgang); } } @@ -77,8 +74,6 @@ export class VorgangForwardingContainerComponent implements OnChanges { } submit(): void { - this.pendingForwardStateResource$ = <Observable<StateResource<CommandResource>>>( - this.formService.submit() - ); + this.pendingForwardStateResource$ = <Observable<StateResource<CommandResource>>>this.formService.submit(); } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html index 9c2c2212dc..bc73d5f4c8 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html @@ -58,7 +58,7 @@ </div> <div class="two-column"> - <div class="section" *ngIf="vorgangResource | hasLink: vorgangWithEingangLinkRel.FORWARDING"> + <div class="section" *ngIf="vorgangResource | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_EMAIL"> <alfa-vorgang-forwarding-container [vorgang]="vorgangResource" data-test-id="forwarding-container-in-vorgang" diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts index 523eb42b38..79d55a0dd7 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts @@ -192,7 +192,7 @@ describe('VorgangDetailAreaComponent', () => { describe('forwarding', () => { it('should be visible', () => { component.vorgangStateResource = createStateResource( - createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARDING]), + createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_EMAIL]), ); fixture.detectChanges(); diff --git a/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts b/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts index f36fa5e7f8..81efa35cbd 100644 --- a/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts +++ b/alfa-client/libs/vorgang-shared/src/lib/vorgang.linkrel.ts @@ -49,7 +49,7 @@ export enum VorgangWithEingangLinkRel { ATTACHMENTS = 'attachments', FORWARD = 'forward', - FORWARDING = 'forwarding', + FORWARD_BY_EMAIL = 'forwardByEmail', FORWARD_BY_OZGCLOUD = 'forwardByOzgCloud', PENDING_COMMANDS = 'pending-commands', ASSIGN = 'assign', -- GitLab From c0e068a51cb0406a2063bc27d0095d3e83e178bd Mon Sep 17 00:00:00 2001 From: Albert <Albert.Bruns@mgm-tp.com> Date: Tue, 4 Feb 2025 14:08:04 +0100 Subject: [PATCH 07/57] OZG-7472-7632 ods buttons --- .../libs/test-utils/src/lib/jest.helper.ts | 8 +- .../annehmen-button.component.html | 45 +- .../annehmen-button.component.spec.ts | 122 +++-- .../bescheiden-button.component.html | 45 +- .../bescheiden-button.component.spec.ts | 459 +++++++++--------- .../src/lib/vorgang-detail.module.ts | 2 + 6 files changed, 373 insertions(+), 308 deletions(-) diff --git a/alfa-client/libs/test-utils/src/lib/jest.helper.ts b/alfa-client/libs/test-utils/src/lib/jest.helper.ts index 1f05a4791c..60df8592af 100644 --- a/alfa-client/libs/test-utils/src/lib/jest.helper.ts +++ b/alfa-client/libs/test-utils/src/lib/jest.helper.ts @@ -23,7 +23,8 @@ */ import { ComponentFixture } from '@angular/core/testing'; import { expect } from '@jest/globals'; -import { getElementFromFixture } from './helper'; +import { TooltipDirective } from '@ods/system'; +import { getDebugElementFromFixtureByCss, getElementFromFixture } from './helper'; export function notExistsAsHtmlElement(fixture: ComponentFixture<any>, domElement: string): void { expect(getElementFromFixture(fixture, domElement)).not.toBeInstanceOf(HTMLElement); @@ -32,3 +33,8 @@ export function notExistsAsHtmlElement(fixture: ComponentFixture<any>, domElemen export function existsAsHtmlElement(fixture: ComponentFixture<any>, domElement: string): void { expect(getElementFromFixture(fixture, domElement)).toBeInstanceOf(HTMLElement); } + +export function tooltipExistsWithText(fixture: ComponentFixture<any>, domElement: string, tooltipText: string) { + const tooltipInstance = getDebugElementFromFixtureByCss(fixture, domElement).injector.get(TooltipDirective); + expect(tooltipInstance.componentRef.instance.text).toBe(tooltipText); +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html index 97c685caf7..b93172bd7e 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html @@ -23,24 +23,27 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.ANNEHMEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="annehmen-button" - text="Annehmen" - icon="check_circle_outline" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="annehmen()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="annehmen-icon-button" - icon="check_circle_outline" - toolTip="Vorgang annehmen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="annehmen()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if(vorgang | hasLink: linkRel.ANNEHMEN){ + @if(showAsIconButton){ + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + (clickEmitter)="annehmen()" + toolTip="Vorgang annehmen" + variant="icon" + size="fit" + data-test-id="annehmen-icon-button" + > + <ods-check-icon icon class="fill-primary"/> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + (clickEmitter)="annehmen()" + toolTip="Vorgang annehmen" + variant="outline" + data-test-id="annehmen-button" + > + <ods-check-icon icon class="fill-primary"/> + </ods-button-with-spinner> + } +} \ No newline at end of file diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts index 43b5fa53e7..9d201f9cc3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts @@ -21,14 +21,13 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; -import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { CommandResource } from '@alfa-client/command-shared'; +import { createStateResource, HasLinkPipe, StateResource } from '@alfa-client/tech-shared'; +import { getElementComponentFromFixtureByCss, mock, notExistsAsHtmlElement, triggerEvent } from '@alfa-client/test-utils'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CheckIconComponent, TooltipDirective } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -52,9 +51,10 @@ describe('AnnehmenButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ AnnehmenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), HasLinkPipe, + TooltipDirective, + MockComponent(ButtonWithSpinnerComponent), + MockComponent(CheckIconComponent), ], providers: [ { @@ -75,69 +75,95 @@ describe('AnnehmenButtonComponent', () => { expect(component).toBeTruthy(); }); - describe('ngOnInit', () => { - it('should call service', () => { - component.ngOnInit(); + describe('component', () => { + describe('ngOnInit', () => { + it('should call service', () => { + component.ngOnInit(); - expect(vorgangCommandService.getAnnehmenCommand).toHaveBeenCalled(); + expect(vorgangCommandService.getAnnehmenCommand).toHaveBeenCalled(); + }); }); - }); - describe('annehmen', () => { - it('should call vorgang service', () => { - component.annehmen(); + describe('annehmen', () => { + it('should call vorgang service', () => { + component.annehmen(); - expect(vorgangCommandService.annehmen).toHaveBeenCalled(); + expect(vorgangCommandService.annehmen).toHaveBeenCalled(); + }); }); }); - describe('annehmen button', () => { + describe('template', () => { + const state: StateResource<CommandResource> = createStateResource(createCommandResource()); + beforeEach(() => { - component.showAsIconButton = false; + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ANNEHMEN]); + component.commandStateResource$ = of(state); fixture.detectChanges(); }); - it('should be hidden', () => { - component.vorgang = createVorgangWithEingangResource(); + describe('annehmen button', () => { + beforeEach(() => { + component.showAsIconButton = false; + fixture.detectChanges(); + }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(annehmenButton); + it('should not exist', () => { + component.vorgang = createVorgangWithEingangResource(); - expect(buttonElement).not.toBeInstanceOf(HTMLElement); - }); + fixture.detectChanges(); - it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ANNEHMEN]); + notExistsAsHtmlElement(fixture, annehmenButton); + }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(annehmenButton); + it('should exist with input', () => { + fixture.detectChanges(); - expect(buttonElement).toBeInstanceOf(HTMLElement); - }); - }); + const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, annehmenButton); - describe('annehmen icon button', () => { - beforeEach(() => { - component.showAsIconButton = true; - fixture.detectChanges(); - }); + expect(button).toBeTruthy(); + expect(button.stateResource).toBe(state); + }); - it('should be hidden', () => { - component.vorgang = createVorgangWithEingangResource(); + it('should call annehmen on click', () => { + component.annehmen = jest.fn(); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(annehmenIconButton); + triggerEvent({ fixture, name: 'clickEmitter', elementSelector: annehmenButton }); - expect(buttonElement).not.toBeInstanceOf(HTMLElement); + expect(component.annehmen).toHaveBeenCalled(); + }); }); - it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ANNEHMEN]); + describe('annehmen icon button', () => { + beforeEach(() => { + component.showAsIconButton = true; + fixture.detectChanges(); + }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(annehmenIconButton); + it('should not exist', () => { + component.vorgang = createVorgangWithEingangResource(); + + fixture.detectChanges(); + + notExistsAsHtmlElement(fixture, annehmenIconButton); + }); + + it('should exist with input', () => { + fixture.detectChanges(); + + const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, annehmenIconButton); + + expect(button).toBeTruthy(); + expect(button.stateResource).toBe(state); + }); + + it('should call annehmen on click', () => { + component.annehmen = jest.fn(); + + triggerEvent({ fixture, name: 'clickEmitter', elementSelector: annehmenIconButton }); - expect(buttonElement).toBeInstanceOf(HTMLElement); + expect(component.annehmen).toHaveBeenCalled(); + }); }); }); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index fa3f6f038d..287fe3e8e1 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -23,24 +23,27 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.BESCHEIDEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="bescheiden-button" - [text]="buttonText" - svgIcon="stamp" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="bescheiden()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="bescheiden-icon-button" - svgIcon="stamp" - [toolTip]="toolTipText" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="bescheiden()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (vorgang | hasLink: linkRel.BESCHEIDEN) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + (clickEmitter)="bescheiden()" + [tooltip]="toolTipText" + variant="icon" + size="fit" + data-test-id="bescheiden-icon-button" + > + <ods-stamp-icon icon class="fill-black" size="medium" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + (clickEmitter)="bescheiden()" + [text]="buttonText" + variant="outline" + data-test-id="bescheiden-button" + > + <ods-stamp-icon icon class="fill-primary" size="medium" /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts index 01fc62566a..4587f44e18 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts @@ -24,12 +24,16 @@ import { BescheidResource, BescheidService, BescheidWizardDialogResult } from '@alfa-client/bescheid-shared'; import { CommandResource } from '@alfa-client/command-shared'; import { createEmptyStateResource, createStateResource, HasLinkPipe, StateResource } from '@alfa-client/tech-shared'; -import { Mock, mock } from '@alfa-client/test-utils'; import { - IconButtonWithSpinnerComponent, - OzgcloudDialogService, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; + getElementComponentFromFixtureByCss, + getMockComponent, + Mock, + mock, + notExistsAsHtmlElement, + tooltipExistsWithText, + triggerEvent, +} from '@alfa-client/test-utils'; +import { OzgcloudDialogService } from '@alfa-client/ui'; import { BescheidenDialogData } from '@alfa-client/vorgang-detail'; import { VorgangCommandService, @@ -39,6 +43,8 @@ import { } from '@alfa-client/vorgang-shared'; import { DialogRef } from '@angular/cdk/dialog'; import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { StampIconComponent, TooltipDirective } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -74,8 +80,9 @@ describe('BescheidenButtonComponent', () => { declarations: [ BescheidenButtonComponent, HasLinkPipe, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + TooltipDirective, + MockComponent(ButtonWithSpinnerComponent), + MockComponent(StampIconComponent), ], providers: [ { @@ -107,300 +114,318 @@ describe('BescheidenButtonComponent', () => { expect(component).toBeTruthy(); }); - describe('ngOnInit', () => { - it('should call service', () => { - component.ngOnInit(); + describe('component', () => { + describe('ngOnInit', () => { + it('should call service', () => { + component.ngOnInit(); - expect(vorgangCommandService.getBeschiedenCommand).toHaveBeenCalled(); + expect(vorgangCommandService.getBeschiedenCommand).toHaveBeenCalled(); + }); }); - }); - describe('bescheiden button', () => { - beforeEach(() => { - component.showAsIconButton = false; - fixture.detectChanges(); - }); + describe('bescheiden', () => { + describe('should open bescheid wizard', () => { + beforeEach(() => { + component.openBescheidenWizard = jest.fn(); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.CREATE_BESCHEID_DRAFT]); + }); - it('should be hidden', () => { - component.vorgang = createVorgangWithEingangResource(); + it('should open bescheid wizard when create bescheid draft link exists', () => { + component.bescheiden(); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(bescheidenButton); + expect(component.openBescheidenWizard).toHaveBeenCalled(); + }); - expect(buttonElement).not.toBeInstanceOf(HTMLElement); - }); + it('should open bescheid wizard when bescheid draft exists', () => { + component.bescheiden(); - it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEIDEN]); + expect(component.openBescheidenWizard).toHaveBeenCalled(); + }); + }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(bescheidenButton); + describe('should do bescheiden', () => { + const command: CommandResource = createCommandResource(); + const comandStateResource$: Observable<StateResource<CommandResource>> = of(createStateResource(command)); - expect(buttonElement).toBeInstanceOf(HTMLElement); - }); + beforeEach(() => { + vorgangCommandService.bescheiden.mockReturnValue(comandStateResource$); + }); - it('should get "Bescheid" text', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEIDEN]); + it('should call vorgangCommandService.bescheiden', () => { + component.bescheiden(); + + expect(vorgangCommandService.bescheiden).toHaveBeenCalled(); + }); + + it('should assign response', () => { + component.commandStateResource$ = of(createEmptyStateResource<CommandResource>()); - const buttonText: string = component.buttonText; + component.bescheiden(); - expect(buttonText).toBe('Bescheiden'); + expect(component.commandStateResource$).toBe(comandStateResource$); + }); + }); }); - it('should get "Bescheiden fortsetzen" text', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.BESCHEIDEN, - VorgangWithEingangLinkRel.BESCHEID_DRAFT, - ]); + // TODO: Use this version after completed Bescheid refactoring and delete the other version below. + // describe('openBescheidenWizard', () => { + // let dialogRefMock: DialogRefMock<BescheidWizardDialogResult>; + // + // beforeEach(() => { + // dialogRefMock = createDialogRefMock<BescheidWizardDialogResult>(); + // ozgcloudDialogService.openWizard.mockReturnValue(dialogRefMock); + // }); + // + // it('should open wizard dialog', () => { + // const vorgang = createVorgangWithEingangResource(); + // component.vorgang = vorgang; + // + // component.openBescheidenWizard(); + // + // expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(BescheidWizardContainerComponent, { + // vorgangWithEingangResource: vorgang, + // }); + // }); + // + // it('should handleBescheidWizardClosed', () => { + // component.handleBescheidWizardClosed = jest.fn(); + // const dialogResult: BescheidWizardDialogResult = { reloadVorgang: true }; + // dialogRefMock.closed = of(dialogResult); + // + // component.openBescheidenWizard(); + // + // expect(component.handleBescheidWizardClosed).toHaveBeenCalledWith(dialogResult); + // }); + // }); + + describe('openBescheidenWizard', () => { + it('should init', () => { + component.openBescheidenWizard(); + + expect(bescheidService.init).toBeCalled(); + }); - const buttonText: string = component.buttonText; + it('should open bescheiden dialog with existing draft', () => { + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEID_DRAFT]); + component.openBescheidenDialogWithExistingDraft = jest.fn(); - expect(buttonText).toBe('Bescheiden fortsetzen'); - }); - }); + component.openBescheidenWizard(); - describe('tool tip', () => { - it('should get "Vorgang bescheiden" text', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEIDEN]); + expect(component.openBescheidenDialogWithExistingDraft).toHaveBeenCalled(); + }); - const toolTipText: string = component.toolTipText; + it('should open bescheiden dialog with new draft', () => { + component.vorgang = createVorgangWithEingangResource(); + component.openBescheidDialogWithNewDraft = jest.fn(); - expect(toolTipText).toBe('Vorgang bescheiden'); + component.openBescheidenWizard(); + + expect(component.openBescheidDialogWithNewDraft).toHaveBeenCalled(); + }); }); - it('should get "Vorgang bescheiden fortsetzen" text', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.BESCHEIDEN, - VorgangWithEingangLinkRel.BESCHEID_DRAFT, - ]); + describe('openBescheidDialogWithNewDraft', () => { + it('should open wizard', () => { + component.vorgang = createVorgangWithEingangResource(); + component.openDialog = jest.fn(); - const toolTipText: string = component.toolTipText; + component.openBescheidDialogWithNewDraft(); - expect(toolTipText).toBe('Vorgang bescheiden fortsetzen'); + expect(component.openDialog).toHaveBeenCalledWith({ + vorgangWithEingangResource: component.vorgang, + bescheidDraftResource: null, + }); + }); }); - }); - describe('bescheiden', () => { - describe('should open bescheid wizard', () => { + describe('openBescheidenDialogWithExistingDraft', () => { + const bescheidDraftResource: BescheidResource = createBescheidResource(); + const bescheidDraftStateResource: StateResource<BescheidResource> = createStateResource(bescheidDraftResource); + const vorgangWithEingangResource: VorgangWithEingangResource = createVorgangWithEingangResource([ + VorgangWithEingangLinkRel.BESCHEID_DRAFT, + ]); + beforeEach(() => { - component.openBescheidenWizard = jest.fn(); - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.CREATE_BESCHEID_DRAFT]); + component.vorgang = vorgangWithEingangResource; + bescheidService.getBescheidDraftIfExists.mockReturnValue(of(bescheidDraftStateResource)); }); - it('should open bescheid wizard when create bescheid draft link exists', () => { - component.bescheiden(); + it('should open wizard if bescheid draft loaded', () => { + component.openBescheidenDialogWithExistingDraft(); - expect(component.openBescheidenWizard).toHaveBeenCalled(); + expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(VorgangDetailBescheidenComponent, { + bescheidDraftResource, + vorgangWithEingangResource, + }); }); - it('should open bescheid wizard when bescheid draft exists', () => { - component.bescheiden(); - - expect(component.openBescheidenWizard).toHaveBeenCalled(); - }); - }); + it('should not open wizard if bescheid draft not loaded', () => { + bescheidService.getBescheidDraftIfExists.mockReturnValue(of(createEmptyStateResource())); - describe('should do bescheiden', () => { - const command: CommandResource = createCommandResource(); - const comandStateResource$: Observable<StateResource<CommandResource>> = of(createStateResource(command)); + component.openBescheidenDialogWithExistingDraft(); - beforeEach(() => { - vorgangCommandService.bescheiden.mockReturnValue(comandStateResource$); + expect(ozgcloudDialogService.openWizard).not.toHaveBeenCalled(); }); - it('should call vorgangCommandService.bescheiden', () => { - component.bescheiden(); + it('should not open wizard on loading bescheid draft', () => { + bescheidService.getBescheidDraftIfExists.mockReturnValue( + of({ ...createStateResource(createBescheidResource()), loading: true }), + ); + + component.openBescheidenDialogWithExistingDraft(); - expect(vorgangCommandService.bescheiden).toHaveBeenCalled(); + expect(ozgcloudDialogService.openWizard).not.toHaveBeenCalled(); }); + }); - it('should assign response', () => { - component.commandStateResource$ = of(createEmptyStateResource<CommandResource>()); + describe('openDialog', () => { + const bescheidDraftResource: BescheidResource = createBescheidResource(); + const bescheidDraftStateResource: StateResource<BescheidResource> = createStateResource(bescheidDraftResource); + const vorgangWithEingangResource: VorgangWithEingangResource = createVorgangWithEingangResource([ + VorgangWithEingangLinkRel.BESCHEID_DRAFT, + ]); - component.bescheiden(); + const dialogData: BescheidenDialogData = { + bescheidDraftResource: bescheidDraftResource, + vorgangWithEingangResource: vorgangWithEingangResource, + }; - expect(component.commandStateResource$).toBe(comandStateResource$); + beforeEach(() => { + component.vorgang = vorgangWithEingangResource; + bescheidService.getBescheidDraftIfExists.mockReturnValue(of(bescheidDraftStateResource)); }); - }); - }); - describe('bescheiden icon button', () => { - beforeEach(() => { - component.showAsIconButton = true; - fixture.detectChanges(); + it('should call ozgcloudDialogService.openWizard', () => { + component.openDialog(dialogData); + + expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(VorgangDetailBescheidenComponent, dialogData); + }); }); - it('should be hidden', () => { - component.vorgang = createVorgangWithEingangResource(); + describe('handleBescheidWizardClosed', () => { + it('should reload current vorgang', () => { + component.handleBescheidWizardClosed({ reloadVorgang: true }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(bescheidenIconButton); + expect(vorgangService.reloadCurrentVorgang).toHaveBeenCalled(); + }); - expect(buttonElement).not.toBeInstanceOf(HTMLElement); - }); + it('should not reload current vorgang', () => { + component.handleBescheidWizardClosed({ reloadVorgang: false }); - it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEIDEN]); + expect(vorgangService.reloadCurrentVorgang).not.toHaveBeenCalled(); + }); - fixture.detectChanges(); - const buttonElement = fixture.nativeElement.querySelector(bescheidenIconButton); + it.each([null, undefined])( + 'should not reload current vorgang if result nil', + (dialogResult: BescheidWizardDialogResult) => { + component.handleBescheidWizardClosed(dialogResult); - expect(buttonElement).toBeInstanceOf(HTMLElement); + expect(vorgangService.reloadCurrentVorgang).not.toHaveBeenCalled(); + }, + ); }); }); - // TODO: Use this version after completed Bescheid refactoring and delete the other version below. - // describe('openBescheidenWizard', () => { - // let dialogRefMock: DialogRefMock<BescheidWizardDialogResult>; - // - // beforeEach(() => { - // dialogRefMock = createDialogRefMock<BescheidWizardDialogResult>(); - // ozgcloudDialogService.openWizard.mockReturnValue(dialogRefMock); - // }); - // - // it('should open wizard dialog', () => { - // const vorgang = createVorgangWithEingangResource(); - // component.vorgang = vorgang; - // - // component.openBescheidenWizard(); - // - // expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(BescheidWizardContainerComponent, { - // vorgangWithEingangResource: vorgang, - // }); - // }); - // - // it('should handleBescheidWizardClosed', () => { - // component.handleBescheidWizardClosed = jest.fn(); - // const dialogResult: BescheidWizardDialogResult = { reloadVorgang: true }; - // dialogRefMock.closed = of(dialogResult); - // - // component.openBescheidenWizard(); - // - // expect(component.handleBescheidWizardClosed).toHaveBeenCalledWith(dialogResult); - // }); - // }); - - describe('openBescheidenWizard', () => { - it('should init', () => { - component.openBescheidenWizard(); - - expect(bescheidService.init).toBeCalled(); - }); - - it('should open bescheiden dialog with existing draft', () => { - component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEID_DRAFT]); - component.openBescheidenDialogWithExistingDraft = jest.fn(); + describe('template', () => { + const state: StateResource<CommandResource> = createStateResource(createCommandResource()); - component.openBescheidenWizard(); + beforeEach(() => { + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.BESCHEIDEN]); + component.commandStateResource$ = of(state); - expect(component.openBescheidenDialogWithExistingDraft).toHaveBeenCalled(); + fixture.detectChanges(); }); - it('should open bescheiden dialog with new draft', () => { - component.vorgang = createVorgangWithEingangResource(); - component.openBescheidDialogWithNewDraft = jest.fn(); + describe('bescheiden button', () => { + beforeEach(() => { + component.showAsIconButton = false; + fixture.detectChanges(); + }); - component.openBescheidenWizard(); + it('should not exits', () => { + component.vorgang = createVorgangWithEingangResource(); - expect(component.openBescheidDialogWithNewDraft).toHaveBeenCalled(); - }); - }); + fixture.detectChanges(); - describe('openBescheidDialogWithNewDraft', () => { - it('should open wizard', () => { - component.vorgang = createVorgangWithEingangResource(); - component.openDialog = jest.fn(); + notExistsAsHtmlElement(fixture, bescheidenButton); + }); - component.openBescheidDialogWithNewDraft(); + it('should exist with input', () => { + const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, bescheidenButton); - expect(component.openDialog).toHaveBeenCalledWith({ - vorgangWithEingangResource: component.vorgang, - bescheidDraftResource: null, + expect(button).toBeTruthy(); + expect(button.stateResource).toBe(state); }); - }); - }); - describe('openBescheidenDialogWithExistingDraft', () => { - const bescheidDraftResource: BescheidResource = createBescheidResource(); - const bescheidDraftStateResource: StateResource<BescheidResource> = createStateResource(bescheidDraftResource); - const vorgangWithEingangResource: VorgangWithEingangResource = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.BESCHEID_DRAFT, - ]); + it('should get "Bescheid" text', () => { + const button: ButtonWithSpinnerComponent = getMockComponent(fixture, ButtonWithSpinnerComponent); + expect(button.text).toBe('Bescheiden'); + }); - beforeEach(() => { - component.vorgang = vorgangWithEingangResource; - bescheidService.getBescheidDraftIfExists.mockReturnValue(of(bescheidDraftStateResource)); - }); + it('should get "Bescheiden fortsetzen" text', () => { + component.vorgang = createVorgangWithEingangResource([ + VorgangWithEingangLinkRel.BESCHEIDEN, + VorgangWithEingangLinkRel.BESCHEID_DRAFT, + ]); - it('should open wizard if bescheid draft loaded', () => { - component.openBescheidenDialogWithExistingDraft(); + fixture.detectChanges(); - expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(VorgangDetailBescheidenComponent, { - bescheidDraftResource, - vorgangWithEingangResource, + const button: ButtonWithSpinnerComponent = getMockComponent(fixture, ButtonWithSpinnerComponent); + expect(button.text).toBe('Bescheiden fortsetzen'); }); - }); - it('should not open wizard if bescheid draft not loaded', () => { - bescheidService.getBescheidDraftIfExists.mockReturnValue(of(createEmptyStateResource())); + it('should call bescheiden on click', () => { + component.bescheiden = jest.fn(); - component.openBescheidenDialogWithExistingDraft(); + triggerEvent({ fixture, name: 'clickEmitter', elementSelector: bescheidenButton }); - expect(ozgcloudDialogService.openWizard).not.toHaveBeenCalled(); + expect(component.bescheiden).toHaveBeenCalled(); + }); }); - it('should not open wizard on loading bescheid draft', () => { - bescheidService.getBescheidDraftIfExists.mockReturnValue( - of({ ...createStateResource(createBescheidResource()), loading: true }), - ); - - component.openBescheidenDialogWithExistingDraft(); + describe('bescheiden icon button', () => { + beforeEach(() => { + component.showAsIconButton = true; + fixture.detectChanges(); + }); - expect(ozgcloudDialogService.openWizard).not.toHaveBeenCalled(); - }); - }); + it('should not exist', () => { + component.vorgang = createVorgangWithEingangResource(); - describe('openDialog', () => { - const bescheidDraftResource: BescheidResource = createBescheidResource(); - const bescheidDraftStateResource: StateResource<BescheidResource> = createStateResource(bescheidDraftResource); - const vorgangWithEingangResource: VorgangWithEingangResource = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.BESCHEID_DRAFT, - ]); + fixture.detectChanges(); - const dialogData: BescheidenDialogData = { - bescheidDraftResource: bescheidDraftResource, - vorgangWithEingangResource: vorgangWithEingangResource, - }; + notExistsAsHtmlElement(fixture, bescheidenIconButton); + }); - beforeEach(() => { - component.vorgang = vorgangWithEingangResource; - bescheidService.getBescheidDraftIfExists.mockReturnValue(of(bescheidDraftStateResource)); - }); + it('should exist with input', () => { + const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, bescheidenIconButton); - it('should call ozgcloudDialogService.openWizard', () => { - component.openDialog(dialogData); + expect(button).toBeTruthy(); + expect(button.stateResource).toBe(state); + }); - expect(ozgcloudDialogService.openWizard).toHaveBeenCalledWith(VorgangDetailBescheidenComponent, dialogData); - }); - }); + it('should have "Vorgang bescheiden" tooltip', () => { + tooltipExistsWithText(fixture, bescheidenIconButton, 'Vorgang bescheiden'); + }); - describe('handleBescheidWizardClosed', () => { - it('should reload current vorgang', () => { - component.handleBescheidWizardClosed({ reloadVorgang: true }); + it('should have "Vorgang bescheiden fortsetzen" tooltip', () => { + component.vorgang = createVorgangWithEingangResource([ + VorgangWithEingangLinkRel.BESCHEIDEN, + VorgangWithEingangLinkRel.BESCHEID_DRAFT, + ]); - expect(vorgangService.reloadCurrentVorgang).toHaveBeenCalled(); - }); + fixture.detectChanges(); - it('should not reload current vorgang', () => { - component.handleBescheidWizardClosed({ reloadVorgang: false }); + tooltipExistsWithText(fixture, bescheidenIconButton, 'Vorgang bescheiden fortsetzen'); + }); - expect(vorgangService.reloadCurrentVorgang).not.toHaveBeenCalled(); - }); + it('should call bescheiden on click', () => { + component.bescheiden = jest.fn(); - it.each([null, undefined])('should not reload current vorgang if result nil', (dialogResult: BescheidWizardDialogResult) => { - component.handleBescheidWizardClosed(dialogResult); + triggerEvent({ fixture, name: 'clickEmitter', elementSelector: bescheidenIconButton }); - expect(vorgangService.reloadCurrentVorgang).not.toHaveBeenCalled(); + expect(component.bescheiden).toHaveBeenCalled(); + }); }); }); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 579b092e9c..269d972319 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -70,6 +70,7 @@ import { SendIconComponent, SpinnerIconComponent, StampIconComponent, + TooltipDirective, } from '@ods/system'; import { AktenzeichenEditDialogComponent } from './aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component'; import { AktenzeichenEditableComponent } from './aktenzeichen-editable/aktenzeichen-editable.component'; @@ -179,6 +180,7 @@ const routes: Routes = [ MoreIconComponent, FileIconComponent, ForwardByOzgcloudButtonContainerComponent, + TooltipDirective, ], declarations: [ VorgangDetailPageComponent, -- GitLab From 45eb816fdc606007469ab089538e7640fc01d163 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Tue, 4 Feb 2025 14:54:12 +0100 Subject: [PATCH 08/57] OZG-7474 Add check circle icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../check-circle-icon.component.spec.ts | 21 ++++++++ .../check-circle-icon.component.ts | 27 ++++++++++ .../check-circle-icon.stories.ts | 50 +++++++++++++++++++ 4 files changed, 99 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 71313e8af6..54a0f4c5eb 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -46,6 +46,7 @@ export * from './lib/icons/archive-icon/archive-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; export * from './lib/icons/bescheid-generate-icon/bescheid-generate-icon.component'; export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; +export * from './lib/icons/check-circle-icon/check-circle-icon.component'; export * from './lib/icons/check-icon/check-icon.component'; export * from './lib/icons/close-icon/close-icon.component'; export * from './lib/icons/edit-icon/edit-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.spec.ts new file mode 100644 index 0000000000..eda5ec6e83 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { CheckCircleIconComponent } from './check-circle-icon.component'; + +describe('CheckCircleIconComponent', () => { + let component: CheckCircleIconComponent; + let fixture: ComponentFixture<CheckCircleIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [CheckCircleIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(CheckCircleIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.ts new file mode 100644 index 0000000000..86aa983a93 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.component.ts @@ -0,0 +1,27 @@ +import { NgClass } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-check-circle-icon', + standalone: true, + imports: [NgClass], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M22 5.18L10.59 16.6L6.35 12.36L7.76 10.95L10.59 13.78L20.59 3.78L22 5.18ZM19.79 10.22C19.92 10.79 20 11.39 20 12C20 16.42 16.42 20 12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C13.58 4 15.04 4.46 16.28 5.25L17.72 3.81C16.1 2.67 14.13 2 12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 10.81 21.78 9.67 21.4 8.61L19.79 10.22Z" + /> + </svg>`, +}) +export class CheckCircleIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = undefined; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.stories.ts new file mode 100644 index 0000000000..21d0c5a0c4 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/check-circle-icon/check-circle-icon.stories.ts @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { CheckCircleIconComponent } from './check-circle-icon.component'; + +const meta: Meta<CheckCircleIconComponent> = { + title: 'Icons/Check circle icon', + component: CheckCircleIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<CheckCircleIconComponent>; + +export const Default: Story = { + args: { size: 'medium' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From b9f87d89e327096ba23b625ac5d6fbfe68912134 Mon Sep 17 00:00:00 2001 From: cord <cord.westhoff@mgm-tp.com> Date: Tue, 4 Feb 2025 15:10:38 +0100 Subject: [PATCH 09/57] OZG-7630 add E2E Test for Weiterleitung --- .../vorgang-weiterleiten.cy.ts | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts new file mode 100644 index 0000000000..dacafdf0ba --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts @@ -0,0 +1,77 @@ +import { registerLocaleData } from '@angular/common'; +import localeDe from '@angular/common/locales/de'; +import localeDeExtra from '@angular/common/locales/extra/de'; +import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; +import { SnackBarE2EComponent } from '../../../components/ui/snackbar.e2e.component'; +import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; +import { VorgangE2E, VorgangMessagesE2E, VorgangStatusE2E, vorgangStatusLabelE2E } from '../../../model/vorgang'; +import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; +import { VorgangPage } from '../../../page-objects/vorgang.po'; +import { dropCollections } from '../../../support/cypress-helper'; +import { contains, exist, haveText, notExist } from '../../../support/cypress.util'; +import { loginAsPeter, loginAsSabine } from '../../../support/user-util'; +import { buildVorgang, createVorgang, initVorgaenge, initVorgang, objectIds } from '../../../support/vorgang-util'; +import { HeaderE2EComponent } from 'apps/alfa-e2e/src/page-objects/header.po'; + +registerLocaleData(localeDe, 'de', localeDeExtra); + +describe('Vorgang weiterleiten', () => { + const mainPage: MainPage = new MainPage(); + const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); + + const vorgangPage: VorgangPage = new VorgangPage(); + const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = + vorgangPage.getFormularButtons(); + + const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; + const vorgangWeiterleitenPeter: VorgangE2E = buildVorgang(objectIds[0], 'Weiterleitung Peter'); + const header: HeaderE2EComponent = new HeaderE2EComponent(); + + before(() => { + initVorgaenge([vorgangWeiterleiten, vorgangWeiterleitenPeter]); + + loginAsSabine(); + + waitForSpinnerToDisappear(); + exist(vorgangList.getRoot()); + }); + + after(() => { + dropCollections(); + }); + + describe('Weiterleiten', () => { + it('should display Weiterleiten button in Status Neu', () => { + vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); + waitForSpinnerToDisappear(); + + //Weiterleiten wird angezeigt + }); + + it('should not display Weiterleiten button in other Status', () => { + vorgangFormularButtons.getAnnehmenButton().click(); + waitForSpinnerToDisappear(); + //Weiterleiten wird nicht angezeigt + + vorgangFormularButtons.getBearbeitenButton().click(); + waitForSpinnerToDisappear(); + //Weiterleiten wird nicht angezeigt + + //Status zurück auf neu oder weiterer Vorgang für Peter? + }); + + it ('should not be displayed for user Peter in Status Neu', () => { + header.getCurrentUserProfile().logout(); + loginAsPeter(); + waitForSpinnerToDisappear(); + + vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); + waitForSpinnerToDisappear(); + + //Button nicht sichtbar + + }) + + + }); +}); -- GitLab From e68b5e6a2c8c15cf3fe4e7d45d726e736ecf58b8 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Tue, 4 Feb 2025 15:54:02 +0100 Subject: [PATCH 10/57] OZG-7474 Change annehmen icon --- .../annehmen-button/annehmen-button.component.html | 14 +++++++------- .../src/lib/vorgang-detail.module.ts | 2 ++ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html index b93172bd7e..c381ff9831 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html @@ -23,27 +23,27 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -@if(vorgang | hasLink: linkRel.ANNEHMEN){ - @if(showAsIconButton){ +@if (vorgang | hasLink: linkRel.ANNEHMEN) { + @if (showAsIconButton) { <ods-button-with-spinner [stateResource]="commandStateResource$ | async" (clickEmitter)="annehmen()" - toolTip="Vorgang annehmen" + tooltip="Vorgang annehmen" variant="icon" size="fit" data-test-id="annehmen-icon-button" > - <ods-check-icon icon class="fill-primary"/> + <ods-check-circle-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner [stateResource]="commandStateResource$ | async" (clickEmitter)="annehmen()" - toolTip="Vorgang annehmen" + text="Vorgang annehmen" variant="outline" data-test-id="annehmen-button" > - <ods-check-icon icon class="fill-primary"/> + <ods-check-circle-icon icon /> </ods-button-with-spinner> } -} \ No newline at end of file +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 269d972319..5639239ee9 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -57,6 +57,7 @@ import { BescheidUploadIconComponent, ButtonCardComponent, ButtonComponent, + CheckCircleIconComponent, CheckIconComponent, CloseIconComponent, DropdownMenuComponent, @@ -174,6 +175,7 @@ const routes: Routes = [ ErrorMessageComponent, CollaborationModule, ArchiveIconComponent, + CheckCircleIconComponent, CheckIconComponent, DropdownMenuComponent, DropdownMenuTextItemComponent, -- GitLab From d4f82ef13eb77ccecca24290d49ad500a359a03e Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 09:35:42 +0100 Subject: [PATCH 11/57] OZG-7474 Add back arrow icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../back-arrow-icon.component.spec.ts | 21 +++++++++++++++ .../back-arrow-icon.component.ts | 27 +++++++++++++++++++ .../back-arrow-icon.stories.ts | 27 +++++++++++++++++++ 4 files changed, 76 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 54a0f4c5eb..90e1043e2d 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -44,6 +44,7 @@ export * from './lib/icons/accessibility-icon/accessibility-icon.component'; export * from './lib/icons/admin-logo-icon/admin-logo-icon.component'; export * from './lib/icons/archive-icon/archive-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; +export * from './lib/icons/back-arrow-icon/back-arrow-icon.component'; export * from './lib/icons/bescheid-generate-icon/bescheid-generate-icon.component'; export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; export * from './lib/icons/check-circle-icon/check-circle-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts new file mode 100644 index 0000000000..97ab265a26 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { BackArrowIconComponent } from './back-arrow-icon.component'; + +describe('BackArrowIconComponent', () => { + let component: BackArrowIconComponent; + let fixture: ComponentFixture<BackArrowIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [BackArrowIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(BackArrowIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts new file mode 100644 index 0000000000..6a386e8222 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts @@ -0,0 +1,27 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-back-arrow-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M13.25 8C10.6 8 8.2 8.99 6.35 10.6L2.75 7V16H11.75L8.13 12.38C9.52 11.22 11.29 10.5 13.25 10.5C16.79 10.5 19.8 12.81 20.85 16L23.22 15.22C21.83 11.03 17.9 8 13.25 8Z" + /> + </svg>`, +}) +export class BackArrowIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts new file mode 100644 index 0000000000..280e82230b --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { BackArrowIconComponent } from './back-arrow-icon.component'; + +const meta: Meta<BackArrowIconComponent> = { + title: 'Icons/Back arrow icon', + component: BackArrowIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<BackArrowIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 178e47d6ebc951db10e9f24fcfa67500dcfbc9db Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 09:36:24 +0100 Subject: [PATCH 12/57] OZG-7474 Replace zuruekholen button --- .../bescheiden-button.component.html | 2 +- .../zurueckholen-button.component.html | 41 ++++++++++--------- .../zurueckholen-button.component.spec.ts | 20 ++++----- .../src/lib/vorgang-detail.module.ts | 2 + 4 files changed, 32 insertions(+), 33 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index 287fe3e8e1..de88c613de 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -33,7 +33,7 @@ size="fit" data-test-id="bescheiden-icon-button" > - <ods-stamp-icon icon class="fill-black" size="medium" /> + <ods-stamp-icon icon class="fill-text" size="medium" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html index fde254e2a2..2304fa640b 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html @@ -24,23 +24,26 @@ --> <ng-container *ngIf="vorgang | hasLink: linkRel.ZURUECKHOLEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="zurueckholen-button" - text="Zurückholen" - icon="undo" - [stateResource]="commandStateResource$ | async" - (click)="zurueckholen()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="zurueckholen-icon-button" - icon="undo" - toolTip="Vorgang zurückholen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="zurueckholen()" - > - </ozgcloud-icon-button-with-spinner> + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="zurueckholen-icon-button" + variant="icon" + size="fit" + tooltip="Vorgang zurückholen" + (clickEmitter)="zurueckholen()" + > + <ods-back-arrow-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="zurueckholen-button" + text="Vorgang zurückholen" + variant="outline" + (clickEmitter)="zurueckholen()" + > + <ods-back-arrow-icon icon /> + </ods-button-with-spinner> + } </ng-container> diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts index 8d11e65b2d..6768e772b3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { BackArrowIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -53,8 +51,8 @@ describe('ZurueckholenButtonComponent', () => { declarations: [ ZurueckholenButtonComponent, HasLinkPipe, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(BackArrowIconComponent), ], providers: [ { @@ -107,9 +105,7 @@ describe('ZurueckholenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.ZURUECKHOLEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ZURUECKHOLEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(zurueckholenButton); @@ -134,9 +130,7 @@ describe('ZurueckholenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.ZURUECKHOLEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ZURUECKHOLEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(zurueckholenIconButton); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 5639239ee9..e028b4ab44 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -52,6 +52,7 @@ import { ArchiveIconComponent, AttachmentComponent, AttachmentWrapperComponent, + BackArrowIconComponent, BescheidGenerateIconComponent, BescheidStatusTextComponent, BescheidUploadIconComponent, @@ -156,6 +157,7 @@ const routes: Routes = [ RadioButtonCardComponent, ButtonComponent, ButtonCardComponent, + BackArrowIconComponent, CloseIconComponent, ExclamationIconComponent, SaveIconComponent, -- GitLab From 39f0af4f4026ecfd21698bd89a4ff8de920fde7e Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 10:10:33 +0100 Subject: [PATCH 13/57] OZG-7474 Replace bearbeiten button --- .../bearbeiten-button.component.html | 44 ++++++++++--------- .../bearbeiten-button.component.spec.ts | 12 +++-- .../src/lib/vorgang-detail.module.ts | 2 + 3 files changed, 31 insertions(+), 27 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html index 9f2900e1d1..b395e746cf 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html @@ -23,24 +23,28 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.BEARBEITEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="bearbeiten-button" - text="Bearbeiten" - icon="edit_icon" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="bearbeiten()" - > - </ozgcloud-stroked-button-with-spinner> - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="bearbeiten-icon-button" - svgIcon="edit" - toolTip="Vorgang bearbeiten" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="bearbeiten()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (vorgang | hasLink: linkRel.BEARBEITEN) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="bearbeiten-icon-button" + tooltip="Vorgang bearbeiten" + variant="icon" + size="fit" + (clickEmitter)="bearbeiten()" + > + <ods-edit-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="bearbeiten-button" + text="Bearbeiten" + variant="outline" + (clickEmitter)="bearbeiten()" + > + <ods-edit-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts index ea8f97fa1e..627aa0b059 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { EditIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent } from 'ng-mocks'; @@ -51,8 +49,8 @@ describe('BearbeitenButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ BearbeitenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(EditIconComponent), HasLinkPipe, ], providers: [ diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index e028b4ab44..860e0c8da0 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -74,6 +74,7 @@ import { StampIconComponent, TooltipDirective, } from '@ods/system'; +import { EditIconComponent } from '../../../design-system/src/lib/icons/edit-icon/edit-icon.component'; import { AktenzeichenEditDialogComponent } from './aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component'; import { AktenzeichenEditableComponent } from './aktenzeichen-editable/aktenzeichen-editable.component'; import { AbschliessenButtonComponent } from './buttons/abschliessen-button/abschliessen-button.component'; @@ -185,6 +186,7 @@ const routes: Routes = [ FileIconComponent, ForwardByOzgcloudButtonContainerComponent, TooltipDirective, + EditIconComponent, ], declarations: [ VorgangDetailPageComponent, -- GitLab From 122068fe97ae519e99e4bc2d69122f809f74cf1c Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 10:47:25 +0100 Subject: [PATCH 14/57] OZG-7474 Replace zurueckstellen button --- .../zurueckstellen-button.component.html | 44 ++++++++++--------- .../zurueckstellen-button.component.spec.ts | 20 +++------ 2 files changed, 31 insertions(+), 33 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html index 0461b518cd..549e0ec770 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html @@ -23,24 +23,28 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.ZURUECKSTELLEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="zurueckstellen-button" - text="Zurückstellen" - icon="undo" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="zurueckstellen()" - > - </ozgcloud-stroked-button-with-spinner> - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="zurueckstellen-icon-button" - icon="undo" - toolTip="Vorgang zurückstellen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="zurueckstellen()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (vorgang | hasLink: linkRel.ZURUECKSTELLEN) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="zurueckstellen-icon-button" + tooltip="Vorgang zurückstellen" + variant="icon" + size="fit" + (clickEmitter)="zurueckstellen()" + > + <ods-back-arrow-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="zurueckstellen-button" + text="Zurückstellen" + variant="outline" + (clickEmitter)="zurueckstellen()" + > + <ods-back-arrow-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts index 1b18ad6393..5f0249853e 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { BackArrowIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -53,8 +51,8 @@ describe('ZurueckstellenButtonComponent', () => { declarations: [ ZurueckstellenButtonComponent, HasLinkPipe, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(BackArrowIconComponent), ], providers: [ { @@ -107,9 +105,7 @@ describe('ZurueckstellenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.ZURUECKSTELLEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ZURUECKSTELLEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(zurueckstellenButton); @@ -134,9 +130,7 @@ describe('ZurueckstellenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.ZURUECKSTELLEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ZURUECKSTELLEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(zurueckstellenIconButton); -- GitLab From 4009c45af89cf103b572cd4c793d393a25cbb313 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 11:20:02 +0100 Subject: [PATCH 15/57] OZG-7474 Replace abschliessen button --- .../abschliessen-button.component.html | 44 ++++++++++--------- .../abschliessen-button.component.spec.ts | 19 ++++---- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html index c57d7a4c19..2c7b3f41e9 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html @@ -23,24 +23,28 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="isVisible"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="abschliessen-button" - text="Abschließen" - icon="done" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="abschliessen()" - > - </ozgcloud-stroked-button-with-spinner> - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="abschliessen-icon-button" - icon="done" - toolTip="Vorgang abschließen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="abschliessen()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (isVisible) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="abschliessen-icon-button" + tooltip="Vorgang abschließen" + variant="icon" + size="fit" + (clickEmitter)="abschliessen()" + > + <ods-check-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="abschliessen-button" + text="Abschließen" + variant="outline" + (clickEmitter)="abschliessen()" + > + <ods-check-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts index 195bee49fa..964474db25 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts @@ -22,11 +22,12 @@ * unter der Lizenz sind dem Lizenztext zu entnehmen. */ import { CommandResource } from '@alfa-client/command-shared'; -import { createEmptyStateResource, createStateResource, HasLinkPipe, StateResource, } from '@alfa-client/tech-shared'; +import { createEmptyStateResource, createStateResource, HasLinkPipe, StateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { IconButtonWithSpinnerComponent, OzgcloudStrokedButtonWithSpinnerComponent, } from '@alfa-client/ui'; -import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource, } from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CheckIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -50,8 +51,8 @@ describe('AbschliessenButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ AbschliessenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(CheckIconComponent), HasLinkPipe, ], providers: [ @@ -84,9 +85,7 @@ describe('AbschliessenButtonComponent', () => { describe('abschliessen', () => { const command: CommandResource = createCommandResource(); - const comandStateResource$: Observable<StateResource<CommandResource>> = of( - createStateResource(command), - ); + const comandStateResource$: Observable<StateResource<CommandResource>> = of(createStateResource(command)); beforeEach(() => { vorgangCommandService.abschliessen.mockReturnValue(comandStateResource$); @@ -167,9 +166,7 @@ describe('AbschliessenButtonComponent', () => { }); it('should set visible to true', () => { - const vorgang: VorgangWithEingangResource = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.ABSCHLIESSEN, - ]); + const vorgang: VorgangWithEingangResource = createVorgangWithEingangResource([VorgangWithEingangLinkRel.ABSCHLIESSEN]); component.vorgang = vorgang; const isVisible: boolean = component.isVisible; -- GitLab From 3161e679745cea2a3530339c37807343b4bff183 Mon Sep 17 00:00:00 2001 From: cord <cord.westhoff@mgm-tp.com> Date: Wed, 5 Feb 2025 13:08:46 +0100 Subject: [PATCH 16/57] fix click for user Safira --- .../apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts index 33494cdfcf..6f76dafdfc 100644 --- a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts +++ b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts @@ -34,7 +34,7 @@ describe('Navigation', () => { describe('on selection', () => { before(() => { - mainPage.openStatistik(); + mainPage.clickStatistikNavigationItem(); }); it('should show page on selection', () => { -- GitLab From 6e2f3686c3a6bc94cc6ca7a48ce1124a61773c23 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 13:34:58 +0100 Subject: [PATCH 17/57] OZG-7474 Add discord icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../discard-icon.component.spec.ts | 21 ++++++++++++ .../discard-icon/discard-icon.component.ts | 32 +++++++++++++++++++ .../discard-icon/discard-icon.stories.ts | 27 ++++++++++++++++ 4 files changed, 81 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 90e1043e2d..b8581acef3 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -50,6 +50,7 @@ export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; export * from './lib/icons/check-circle-icon/check-circle-icon.component'; export * from './lib/icons/check-icon/check-icon.component'; export * from './lib/icons/close-icon/close-icon.component'; +export * from './lib/icons/discard-icon/discard-icon.component'; export * from './lib/icons/edit-icon/edit-icon.component'; export * from './lib/icons/error-icon/error-icon.component'; export * from './lib/icons/exclamation-icon/exclamation-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts new file mode 100644 index 0000000000..485cdcd99d --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { DiscardIconComponent } from './discard-icon.component'; + +describe('DiscardIconComponent', () => { + let component: DiscardIconComponent; + let fixture: ComponentFixture<DiscardIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DiscardIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(DiscardIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts new file mode 100644 index 0000000000..377bf1af5b --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts @@ -0,0 +1,32 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { IconVariants, iconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-discard-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M12.75 19.4L14.35 21L16.75 18.6286L19.15 21L20.75 19.4L18.3786 17L20.75 14.6L19.15 13L16.75 15.4L14.35 13L12.75 14.6L15.15 17L12.75 19.4Z" + /> + <path + fill-rule="evenodd" + clip-rule="evenodd" + d="M17 11V3.77384H12.0294L7.625 7.93078L7.625 18.408H10.75V20.1818H7.625C6.58947 20.1818 5.75 19.3876 5.75 18.408V7.93078C5.75 7.4596 5.94815 7.00779 6.30074 6.67501L10.7051 2.51807C11.0566 2.18631 11.5329 2 12.0294 2H17C18.0355 2 18.875 2.79417 18.875 3.77384V11H17Z" + /> + </svg>`, +}) +export class DiscardIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts new file mode 100644 index 0000000000..9237024932 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { DiscardIconComponent } from './discard-icon.component'; + +const meta: Meta<DiscardIconComponent> = { + title: 'Icons/Discard icon', + component: DiscardIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<DiscardIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 49f422b68f1138d70802434ed39ced2fa6abc632 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 13:52:27 +0100 Subject: [PATCH 18/57] OZG-7474 Replace verwerfen button --- .../verwerfen-button.component.html | 45 ++++++++++--------- .../zurueckholen-button.component.html | 4 +- .../src/lib/vorgang-detail.module.ts | 2 + 3 files changed, 28 insertions(+), 23 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html index dc55d5bb09..e5609f8f07 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html @@ -23,24 +23,27 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.VERWERFEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="verwerfen-button" - text="Verwerfen" - svgIcon="discard_document" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="verwerfen()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="verwerfen-icon-button" - svgIcon="discard_document" - toolTip="Vorgang verwerfen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="verwerfen()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (vorgang | hasLink: linkRel.VERWERFEN) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="verwerfen-icon-button" + tooltip="Vorgang verwerfen" + variant="icon" + size="fit" + (clickEmitter)="verwerfen()" + > + <ods-discard-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="verwerfen-button" + text="Verwerfen" + variant="outline" + (clickEmitter)="verwerfen()" + > + <ods-discard-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html index 2304fa640b..8ce7dcfcd4 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html @@ -23,7 +23,7 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.ZURUECKHOLEN"> +@if (vorgang | hasLink: linkRel.ZURUECKHOLEN) { @if (showAsIconButton) { <ods-button-with-spinner [stateResource]="commandStateResource$ | async" @@ -46,4 +46,4 @@ <ods-back-arrow-icon icon /> </ods-button-with-spinner> } -</ng-container> +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 860e0c8da0..faa566e49a 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -74,6 +74,7 @@ import { StampIconComponent, TooltipDirective, } from '@ods/system'; +import { DiscardIconComponent } from '../../../design-system/src/lib/icons/discard-icon/discard-icon.component'; import { EditIconComponent } from '../../../design-system/src/lib/icons/edit-icon/edit-icon.component'; import { AktenzeichenEditDialogComponent } from './aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component'; import { AktenzeichenEditableComponent } from './aktenzeichen-editable/aktenzeichen-editable.component'; @@ -187,6 +188,7 @@ const routes: Routes = [ ForwardByOzgcloudButtonContainerComponent, TooltipDirective, EditIconComponent, + DiscardIconComponent, ], declarations: [ VorgangDetailPageComponent, -- GitLab From 1821c833270c096cd9df95277796544daafa0243 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 14:08:15 +0100 Subject: [PATCH 19/57] OZG-7474 Replace wiederoeffnen button --- .../wiedereroeffnen-button.component.html | 45 ++++++++++--------- .../wiedereroeffnen-button.component.spec.ts | 20 +++------ 2 files changed, 31 insertions(+), 34 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html index eb63ab7bc9..6c98b512c3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html @@ -23,24 +23,27 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="vorgang | hasLink: linkRel.WIEDEREROEFFNEN"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="wiedereroeffnen-button" - text="Wiedereröffnen" - icon="undo" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="wiedereroeffnen()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="wiedereroeffnen-icon-button" - icon="undo" - toolTip="Vorgang wiedereröffnen" - [stateResource]="commandStateResource$ | async" - (clickEmitter)="wiedereroeffnen()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> +@if (vorgang | hasLink: linkRel.WIEDEREROEFFNEN) { + @if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="wiedereroeffnen-icon-button" + tooltip="Vorgang wiedereröffnen" + variant="icon" + size="fit" + (clickEmitter)="wiedereroeffnen()" + > + <ods-back-arrow-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner + [stateResource]="commandStateResource$ | async" + data-test-id="wiedereroeffnen-button" + text="Wiedereröffnen" + variant="outline" + (clickEmitter)="wiedereroeffnen()" + > + <ods-back-arrow-icon icon /> + </ods-button-with-spinner> + } +} diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts index a03ee7234e..9b3918f016 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { BackArrowIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -52,8 +50,8 @@ describe('WiedereroeffnenButtonComponent', () => { declarations: [ WiedereroeffnenButtonComponent, HasLinkPipe, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(BackArrowIconComponent), ], providers: [ { @@ -106,9 +104,7 @@ describe('WiedereroeffnenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.WIEDEREROEFFNEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.WIEDEREROEFFNEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(wiedereroeffnenButton); @@ -133,9 +129,7 @@ describe('WiedereroeffnenButtonComponent', () => { }); it('should be visible', () => { - component.vorgang = createVorgangWithEingangResource([ - VorgangWithEingangLinkRel.WIEDEREROEFFNEN, - ]); + component.vorgang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.WIEDEREROEFFNEN]); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(wiedereroeffnenIconButton); -- GitLab From 2ff126ffecbc7bfbc343e7871630589a1c84d92b Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 14:24:53 +0100 Subject: [PATCH 20/57] OZG-7474 Fix tests --- .../routing-button/routing-button.component.spec.ts | 3 ++- .../annehmen-button.component.spec.ts | 4 ++-- .../verwerfen-button.component.spec.ts | 12 +++++------- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.spec.ts b/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.spec.ts index a08af3e617..fb79d2714b 100644 --- a/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.spec.ts +++ b/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.spec.ts @@ -1,4 +1,5 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { RouterModule } from '@angular/router'; import { RoutingButtonComponent } from './routing-button.component'; describe('RoutingButtonComponent', () => { @@ -7,7 +8,7 @@ describe('RoutingButtonComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [RoutingButtonComponent], + imports: [RoutingButtonComponent, RouterModule.forRoot([])], }).compileComponents(); fixture = TestBed.createComponent(RoutingButtonComponent); diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts index 9d201f9cc3..2302dde549 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts @@ -27,7 +27,7 @@ import { getElementComponentFromFixtureByCss, mock, notExistsAsHtmlElement, trig import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { CheckIconComponent, TooltipDirective } from '@ods/system'; +import { CheckCircleIconComponent, TooltipDirective } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -54,7 +54,7 @@ describe('AnnehmenButtonComponent', () => { HasLinkPipe, TooltipDirective, MockComponent(ButtonWithSpinnerComponent), - MockComponent(CheckIconComponent), + MockComponent(CheckCircleIconComponent), ], providers: [ { diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts index 31872b9289..b751788dcc 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { DiscardIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -52,8 +50,8 @@ describe('VerwerfenButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ VerwerfenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(DiscardIconComponent), HasLinkPipe, ], providers: [ -- GitLab From 8ec591e61e412ad2508bec583ab4b9734857a201 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 15:09:24 +0100 Subject: [PATCH 21/57] OZG-7474 Add request deletion icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../request-deletion-icon.component.spec.ts | 21 ++++++++++++++ .../request-deletion-icon.component.ts | 28 +++++++++++++++++++ .../request-deletion-icon.stories.ts | 27 ++++++++++++++++++ 4 files changed, 77 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index b8581acef3..3f325d6741 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -68,6 +68,7 @@ export * from './lib/icons/ozg-logo-icon/ozg-logo-icon.component'; export * from './lib/icons/person-icon/person-icon.component'; export * from './lib/icons/plus-icon/plus-icon.component'; export * from './lib/icons/public-administration-icon/public-administration-icon.component'; +export * from './lib/icons/request-deletion-icon/request-deletion-icon.component'; export * from './lib/icons/save-icon/save-icon.component'; export * from './lib/icons/search-icon/search-icon.component'; export * from './lib/icons/send-icon/send-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts new file mode 100644 index 0000000000..4de4999c60 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { RequestDeletionIconComponent } from './request-deletion-icon.component'; + +describe('RequestDeletionIconComponent', () => { + let component: RequestDeletionIconComponent; + let fixture: ComponentFixture<RequestDeletionIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [RequestDeletionIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(RequestDeletionIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts new file mode 100644 index 0000000000..7e42262610 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts @@ -0,0 +1,28 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-request-deletion-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path d="M11.75 8H13.75V12.15L15.35 10.6L16.75 12L12.75 16L8.75 12L10.15 10.6L11.75 12.15V8Z" /> + <path + d="M7.75 21C7.2 21 6.72917 20.8042 6.3375 20.4125C5.94583 20.0208 5.75 19.55 5.75 19V6H4.75V4H9.75V3H15.75V4H20.75V6H19.75V19C19.75 19.55 19.5542 20.0208 19.1625 20.4125C18.7708 20.8042 18.3 21 17.75 21H7.75ZM17.75 6H7.75V19H17.75V6Z" + /> + </svg>`, +}) +export class RequestDeletionIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts new file mode 100644 index 0000000000..d0ff870f40 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { RequestDeletionIconComponent } from './request-deletion-icon.component'; + +const meta: Meta<RequestDeletionIconComponent> = { + title: 'Icons/Request deletion icon', + component: RequestDeletionIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<RequestDeletionIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 567e26b72d38855ce7621d8ffdccc87ef4c8fa60 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 15:25:37 +0100 Subject: [PATCH 22/57] OZG-7474 Replace loeschen anfordern button --- .../src/lib/loesch-anforderung.module.ts | 12 ++++-- .../loeschen-anfordern-button.component.html | 41 ++++++++++--------- ...oeschen-anfordern-button.component.spec.ts | 12 +++--- ...rgang-detail-action-buttons.component.html | 13 +++--- 4 files changed, 42 insertions(+), 36 deletions(-) diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index ee7952fbf3..eb33db7270 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -21,18 +21,20 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; import { LoeschAnforderungSharedModule } from '@alfa-client/loesch-anforderung-shared'; import { TechSharedModule } from '@alfa-client/tech-shared'; import { UiModule } from '@alfa-client/ui'; import { VorgangSharedModule } from '@alfa-client/vorgang-shared'; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { RequestDeletionIconComponent } from '../../../design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; +import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; +import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component'; import { LoeschenAnfordernButtonContainerComponent } from './loeschen-anfordern-button-container/loeschen-anfordern-button-container.component'; import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component'; -import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component'; -import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; @NgModule({ imports: [ @@ -41,6 +43,8 @@ import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch TechSharedModule, UiModule, VorgangSharedModule, + RequestDeletionIconComponent, + ButtonWithSpinnerComponent, ], declarations: [ LoeschenAnfordernButtonContainerComponent, diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html index 81b61300a5..d56365f101 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html @@ -23,22 +23,25 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="loeschen-anfordern-button" - text="Löschen anfordern" - svgIcon="request_deletion" - [stateResource]="loeschenAnfordernCommand" - (clickEmitter)="loeschenAnfordern.emit()" -> -</ozgcloud-stroked-button-with-spinner> - -<ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="loeschen-anfordern-icon-button" - svgIcon="request_deletion" - toolTip="Löschen anfordern" - [stateResource]="loeschenAnfordernCommand" - (clickEmitter)="loeschenAnfordern.emit()" -> -</ozgcloud-icon-button-with-spinner> +@if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="loeschenAnfordernCommand" + data-test-id="loeschen-anfordern-icon-button" + tooltip="Löschen anfordern" + variant="icon" + size="fit" + (clickEmitter)="loeschenAnfordern.emit()" + > + <ods-request-deletion-icon icon class="fill-text" /> + </ods-button-with-spinner> +} @else { + <ods-button-with-spinner + [stateResource]="loeschenAnfordernCommand" + data-test-id="loeschen-anfordern-button" + text="Löschen anfordern" + variant="outline" + (clickEmitter)="loeschenAnfordern.emit()" + > + <ods-request-deletion-icon icon /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts index dbf4ba9cad..33fad21246 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts @@ -21,12 +21,10 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { RequestDeletionIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button.component'; @@ -42,8 +40,8 @@ describe('LoeschenAnfordernButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ LoeschenAnfordernButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(RequestDeletionIconComponent), ], }).compileComponents(); diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html index 6ef3191b65..7170a1ee9d 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html @@ -32,12 +32,13 @@ <alfa-verwerfen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> <alfa-wiedereroeffnen-button [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> <!-- TODO Anhand des Links Library dynamisch laden --> -<alfa-loeschen-anfordern-button-container - *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN" - data-test-id="loeschen-anfordern-icon-button-container" - [showAsIconButton]="showAsIconButton" - [vorgang]="vorgangWithEingang" -/> +@if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN) { + <alfa-loeschen-anfordern-button-container + data-test-id="loeschen-anfordern-icon-button-container" + [showAsIconButton]="showAsIconButton" + [vorgang]="vorgangWithEingang" + /> +} <alfa-endgueltig-loeschen-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" /> <alfa-loesch-anforderung-zuruecknehmen-button-container [showAsIconButton]="showAsIconButton" /> <!-- --> -- GitLab From 8d5c80e145ff010488590b7177c2beff8c4cc69a Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 15:49:16 +0100 Subject: [PATCH 23/57] OZG-7474 Add delete finally icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../delete-finally-icon.component.spec.ts | 21 ++++++ .../delete-finally-icon.component.ts | 65 +++++++++++++++++++ .../delete-finally-icon.stories.ts | 27 ++++++++ 4 files changed, 114 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 3f325d6741..e7e5508f7e 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -50,6 +50,7 @@ export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; export * from './lib/icons/check-circle-icon/check-circle-icon.component'; export * from './lib/icons/check-icon/check-icon.component'; export * from './lib/icons/close-icon/close-icon.component'; +export * from './lib/icons/delete-finally-icon/delete-finally-icon.component'; export * from './lib/icons/discard-icon/discard-icon.component'; export * from './lib/icons/edit-icon/edit-icon.component'; export * from './lib/icons/error-icon/error-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts new file mode 100644 index 0000000000..88eee559f2 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { DeleteFinallyIconComponent } from './delete-finally-icon.component'; + +describe('DeleteFinallyIconComponent', () => { + let component: DeleteFinallyIconComponent; + let fixture: ComponentFixture<DeleteFinallyIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DeleteFinallyIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(DeleteFinallyIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts new file mode 100644 index 0000000000..5fc6c68cfa --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts @@ -0,0 +1,65 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { IconVariants, iconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-delete-finally-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + fill-rule="evenodd" + clip-rule="evenodd" + d="M17.7366 13V3.11101H12.4405L7.74777 8.05811L7.74777 13H5.75V8.05811C5.75 7.49738 5.96112 6.95968 6.3368 6.56365L11.0296 1.61654C11.4041 1.22173 11.9115 1 12.4405 1H17.7366C18.8399 1 19.7344 1.94513 19.7344 3.11101V13H17.7366Z" + /> + <path + d="M7.75 20C7.75 19.4477 8.19772 19 8.75 19C9.30228 19 9.75 19.4477 9.75 20C9.75 20.5523 9.30228 21 8.75 21C8.19772 21 7.75 20.5523 7.75 20Z" + /> + <path + d="M7.75 20C7.75 19.4477 8.19772 19 8.75 19C9.30228 19 9.75 19.4477 9.75 20C9.75 20.5523 9.30228 21 8.75 21C8.19772 21 7.75 20.5523 7.75 20Z" + /> + <path + d="M11.75 21C11.75 20.4477 12.1977 20 12.75 20C13.3023 20 13.75 20.4477 13.75 21V22C13.75 22.5523 13.3023 23 12.75 23C12.1977 23 11.75 22.5523 11.75 22V21Z" + /> + <path + d="M11.75 21C11.75 20.4477 12.1977 20 12.75 20C13.3023 20 13.75 20.4477 13.75 21V22C13.75 22.5523 13.3023 23 12.75 23C12.1977 23 11.75 22.5523 11.75 22V21Z" + /> + <path + d="M11.75 13C11.75 12.4477 12.1977 12 12.75 12C13.3023 12 13.75 12.4477 13.75 13V17C13.75 17.5523 13.3023 18 12.75 18C12.1977 18 11.75 17.5523 11.75 17V13Z" + /> + <path + d="M11.75 13C11.75 12.4477 12.1977 12 12.75 12C13.3023 12 13.75 12.4477 13.75 13V17C13.75 17.5523 13.3023 18 12.75 18C12.1977 18 11.75 17.5523 11.75 17V13Z" + /> + <path + d="M7.75 15C7.75 14.4477 8.19772 14 8.75 14C9.30228 14 9.75 14.4477 9.75 15V16C9.75 16.5523 9.30228 17 8.75 17C8.19772 17 7.75 16.5523 7.75 16V15Z" + /> + <path + d="M7.75 15C7.75 14.4477 8.19772 14 8.75 14C9.30228 14 9.75 14.4477 9.75 15V16C9.75 16.5523 9.30228 17 8.75 17C8.19772 17 7.75 16.5523 7.75 16V15Z" + /> + <path + d="M15.75 20C15.75 19.4477 16.1977 19 16.75 19C17.3023 19 17.75 19.4477 17.75 20V21C17.75 21.5523 17.3023 22 16.75 22C16.1977 22 15.75 21.5523 15.75 21V20Z" + /> + <path + d="M15.75 20C15.75 19.4477 16.1977 19 16.75 19C17.3023 19 17.75 19.4477 17.75 20V21C17.75 21.5523 17.3023 22 16.75 22C16.1977 22 15.75 21.5523 15.75 21V20Z" + /> + <path + d="M15.75 15C15.75 14.4477 16.1977 14 16.75 14C17.3023 14 17.75 14.4477 17.75 15V16C17.75 16.5523 17.3023 17 16.75 17C16.1977 17 15.75 16.5523 15.75 16V15Z" + /> + <path + d="M15.75 15C15.75 14.4477 16.1977 14 16.75 14C17.3023 14 17.75 14.4477 17.75 15V16C17.75 16.5523 17.3023 17 16.75 17C16.1977 17 15.75 16.5523 15.75 16V15Z" + /> + </svg> `, +}) +export class DeleteFinallyIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts new file mode 100644 index 0000000000..dee35416ea --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { DeleteFinallyIconComponent } from './delete-finally-icon.component'; + +const meta: Meta<DeleteFinallyIconComponent> = { + title: 'Icons/Delete finally icon', + component: DeleteFinallyIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<DeleteFinallyIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 1501467f6c129cf78e5789d2a72830391bf1a506 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 16:06:36 +0100 Subject: [PATCH 24/57] OZG-7474 Replace endgueltig loeschen button --- .../endgueltig-loeschen-button.component.html | 37 ++++++++++--------- ...dgueltig-loeschen-button.component.spec.ts | 12 +++--- .../src/lib/loesch-anforderung.module.ts | 2 + 3 files changed, 27 insertions(+), 24 deletions(-) diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html index d02765b7ba..bdc9f478ca 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html @@ -23,20 +23,23 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="endgueltig-loeschen-button" - text="Endgültig löschen" - svgIcon="delete_finally" - (clickEmitter)="endgueltigLoeschen.emit()" -> -</ozgcloud-stroked-button-with-spinner> - -<ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="endgueltig-loeschen-icon-button" - toolTip="Endgültig löschen" - svgIcon="delete_finally" - (clickEmitter)="endgueltigLoeschen.emit()" -> -</ozgcloud-icon-button-with-spinner> +@if (showAsIconButton) { + <ods-button-with-spinner + data-test-id="endgueltig-loeschen-icon-button" + tooltip="Endgültig löschen" + variant="icon" + size="fit" + (clickEmitter)="endgueltigLoeschen.emit()" + > + <ods-delete-finally-icon icon class="fill-text" /> + </ods-button-with-spinner> +} @else { + <ods-button-with-spinner + data-test-id="endgueltig-loeschen-button" + text="Endgültig löschen" + variant="outline" + (clickEmitter)="endgueltigLoeschen.emit()" + > + <ods-delete-finally-icon icon /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts index 783c0b0f70..525dbbc86c 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts @@ -21,12 +21,10 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { DeleteFinallyIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button.component'; @@ -42,8 +40,8 @@ describe('EndgueltigLoeschenButtonComponent', () => { await TestBed.configureTestingModule({ declarations: [ EndgueltigLoeschenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(DeleteFinallyIconComponent), ], }).compileComponents(); diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index eb33db7270..b751b62130 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -28,6 +28,7 @@ import { VorgangSharedModule } from '@alfa-client/vorgang-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; +import { DeleteFinallyIconComponent } from '../../../design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component'; import { RequestDeletionIconComponent } from '../../../design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; @@ -45,6 +46,7 @@ import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-co VorgangSharedModule, RequestDeletionIconComponent, ButtonWithSpinnerComponent, + DeleteFinallyIconComponent, ], declarations: [ LoeschenAnfordernButtonContainerComponent, -- GitLab From 204e6453aed01627d37fc4322ae0f794b76d8bc1 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 16:16:28 +0100 Subject: [PATCH 25/57] OZG-7474 Add undo request deletion icon --- alfa-client/libs/design-system/src/index.ts | 1 + ...do-request-deletion-icon.component.spec.ts | 21 +++++++++++++++ .../undo-request-deletion-icon.component.ts | 27 +++++++++++++++++++ .../undo-request-deletion-icon.stories.ts | 27 +++++++++++++++++++ 4 files changed, 76 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index e7e5508f7e..ff7c3597c5 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -76,6 +76,7 @@ export * from './lib/icons/send-icon/send-icon.component'; export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; +export * from './lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories'; export * from './lib/icons/user-icon/user-icon.component'; export * from './lib/icons/users-icon/users-icon.component'; export * from './lib/instant-search/instant-search/instant-search.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts new file mode 100644 index 0000000000..46b0e0fd8e --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { UndoRequestDeletionIconComponent } from './undo-request-deletion-icon.component'; + +describe('UndoRequestDeletionIconComponent', () => { + let component: UndoRequestDeletionIconComponent; + let fixture: ComponentFixture<UndoRequestDeletionIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [UndoRequestDeletionIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(UndoRequestDeletionIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts new file mode 100644 index 0000000000..afdcfae650 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts @@ -0,0 +1,27 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-undo-request-deletion-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M11.75 16H13.75V11.85L15.35 13.4L16.75 12L12.75 8L8.75 12L10.15 13.4L11.75 11.85V16ZM7.75 21C7.2 21 6.72917 20.8042 6.3375 20.4125C5.94583 20.0208 5.75 19.55 5.75 19V6H4.75V4H9.75V3H15.75V4H20.75V6H19.75V19C19.75 19.55 19.5542 20.0208 19.1625 20.4125C18.7708 20.8042 18.3 21 17.75 21H7.75ZM17.75 6H7.75V19H17.75V6Z" + /> + </svg>`, +}) +export class UndoRequestDeletionIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts new file mode 100644 index 0000000000..88a4f0fe21 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { UndoRequestDeletionIconComponent } from './undo-request-deletion-icon.component'; + +const meta: Meta<UndoRequestDeletionIconComponent> = { + title: 'Icons/Undo request deletion icon', + component: UndoRequestDeletionIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<UndoRequestDeletionIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From 8d345c764cb2c6f51d14347bd6786edec4480af3 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 16:28:18 +0100 Subject: [PATCH 26/57] OZG-7474 Replace loesch anforderung zuruecknehmen button --- ...derung-zuruecknehmen-button.component.html | 41 ++++++++++--------- ...ung-zuruecknehmen-button.component.spec.ts | 20 ++++----- .../src/lib/loesch-anforderung.module.ts | 2 + 3 files changed, 31 insertions(+), 32 deletions(-) diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html index 9b9a716c4e..59a0e021de 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html @@ -23,22 +23,25 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="loesch-anforderung-zuruecknehmen-button" - text="Löschanforderung zurücknehmen" - svgIcon="undo_request_deletion" - [stateResource]="loeschAnforderungZuruecknehmenCommand" - (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" -> -</ozgcloud-stroked-button-with-spinner> - -<ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="loesch-anforderung-zuruecknehmen-icon-button" - svgIcon="undo_request_deletion" - toolTip="Löschanforderung zurücknehmen" - [stateResource]="loeschAnforderungZuruecknehmenCommand" - (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" -> -</ozgcloud-icon-button-with-spinner> +@if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="loeschAnforderungZuruecknehmenCommand" + data-test-id="loesch-anforderung-zuruecknehmen-icon-button" + tooltip="Löschanforderung zurücknehmen" + variant="icon" + size="fit" + (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" + > + <ods-undo-request-deletion-icon icon class="fill-text" /> + </ods-button-with-spinner> +} @else { + <ods-button-with-spinner + [stateResource]="loeschAnforderungZuruecknehmenCommand" + data-test-id="loesch-anforderung-zuruecknehmen-button" + text="Löschanforderung zurücknehmen" + variant="outline" + (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" + > + <ods-undo-request-deletion-icon icon /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts index 5d009efa5c..20256b7fae 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts @@ -21,12 +21,10 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { UndoRequestDeletionIconComponent } from 'libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button.component'; @@ -35,19 +33,15 @@ describe('LoeschAnforderungZuruecknehmenButtonComponent', () => { let component: LoeschAnforderungZuruecknehmenButtonComponent; let fixture: ComponentFixture<LoeschAnforderungZuruecknehmenButtonComponent>; - const loeschenAnfordernZuruecknehmenButton: string = getDataTestIdOf( - 'loesch-anforderung-zuruecknehmen-button', - ); - const loeschenAnfordernZuruecknehmenIconButton: string = getDataTestIdOf( - 'loesch-anforderung-zuruecknehmen-icon-button', - ); + const loeschenAnfordernZuruecknehmenButton: string = getDataTestIdOf('loesch-anforderung-zuruecknehmen-button'); + const loeschenAnfordernZuruecknehmenIconButton: string = getDataTestIdOf('loesch-anforderung-zuruecknehmen-icon-button'); beforeEach(async () => { await TestBed.configureTestingModule({ declarations: [ LoeschAnforderungZuruecknehmenButtonComponent, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(UndoRequestDeletionIconComponent), ], }).compileComponents(); diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index b751b62130..ebe9b6b1e9 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -30,6 +30,7 @@ import { NgModule } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; import { DeleteFinallyIconComponent } from '../../../design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component'; import { RequestDeletionIconComponent } from '../../../design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component'; +import { UndoRequestDeletionIconComponent } from '../../../design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; @@ -47,6 +48,7 @@ import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-co RequestDeletionIconComponent, ButtonWithSpinnerComponent, DeleteFinallyIconComponent, + UndoRequestDeletionIconComponent, ], declarations: [ LoeschenAnfordernButtonContainerComponent, -- GitLab From 1976861f7fe159243981c7af7eb548a9e1bea5fa Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Wed, 5 Feb 2025 16:40:30 +0100 Subject: [PATCH 27/57] OZG-7474 Add update icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../update-icon/update-icon.component.spec.ts | 21 +++++++++++++++ .../update-icon/update-icon.component.ts | 27 +++++++++++++++++++ .../icons/update-icon/update-icon.stories.ts | 27 +++++++++++++++++++ 4 files changed, 76 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index ff7c3597c5..e030a77354 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -77,6 +77,7 @@ export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; export * from './lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories'; +export * from './lib/icons/update-icon/update-icon.component'; export * from './lib/icons/user-icon/user-icon.component'; export * from './lib/icons/users-icon/users-icon.component'; export * from './lib/instant-search/instant-search/instant-search.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.spec.ts new file mode 100644 index 0000000000..d2e3620bad --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { UpdateIconComponent } from './update-icon.component'; + +describe('UpdateIconComponent', () => { + let component: UpdateIconComponent; + let fixture: ComponentFixture<UpdateIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [UpdateIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(UpdateIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.ts new file mode 100644 index 0000000000..34e40d8150 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.component.ts @@ -0,0 +1,27 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-update-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M21.75 10.12H14.97L17.71 7.3C14.98 4.6 10.56 4.5 7.83 7.2C5.1 9.91 5.1 14.28 7.83 16.99C10.56 19.7 14.98 19.7 17.71 16.99C19.07 15.65 19.75 14.08 19.75 12.1H21.75C21.75 14.08 20.87 16.65 19.11 18.39C15.6 21.87 9.9 21.87 6.39 18.39C2.89 14.92 2.86 9.28 6.37 5.81C9.88 2.34 15.51 2.34 19.02 5.81L21.75 3V10.12ZM13.25 8V12.25L16.75 14.33L16.03 15.54L11.75 13V8H13.25Z" + /> + </svg>`, +}) +export class UpdateIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.stories.ts new file mode 100644 index 0000000000..7814dc21f7 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/update-icon/update-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { UpdateIconComponent } from './update-icon.component'; + +const meta: Meta<UpdateIconComponent> = { + title: 'Icons/Update icon', + component: UpdateIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<UpdateIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From bd65b91631b6d38d02cbddcfe64a191e48af1492 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 11:45:41 +0100 Subject: [PATCH 28/57] OZG-7474 Replace wiedervorlage create button --- ...wiedervorlage-create-button.component.html | 42 +++++++++---------- ...dervorlage-create-button.component.spec.ts | 23 ++++------ .../src/lib/wiedervorlage.module.ts | 7 +++- 3 files changed, 34 insertions(+), 38 deletions(-) diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html index 0b30324ca0..0998d200a4 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html @@ -23,28 +23,24 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container *ngIf="wiedervorlageListStateResource?.resource as wiedervorlageListResource"> - <div - class="create-button" - *ngIf="wiedervorlageListResource | hasLink: wiedervorlageListLinkRel.CREATE_WIEDERVORLAGE" - > - <a [routerLink]="'wiedervorlage/' + wiedervorlageRoute.NEW" tabindex="-1"> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - data-test-id="create-wiedervorlage" - class="create-button" - text="Wiedervorlage" - icon="add" - > - </ozgcloud-stroked-button-with-spinner> - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="create-wiedervorlage-icon-button" - icon="update" - toolTip="Wiedervorlage erstellen" - > - </ozgcloud-icon-button-with-spinner> +@if (wiedervorlageListStateResource?.resource; as wiedervorlageListResource) { + @if (wiedervorlageListResource | hasLink: wiedervorlageListLinkRel.CREATE_WIEDERVORLAGE) { + <a [routerLink]="'wiedervorlage/' + wiedervorlageRoute.NEW" tabindex="-1"> + @if (showAsIconButton) { + <ods-button-with-spinner + data-test-id="create-wiedervorlage-icon-button" + variant="icon" + size="fit" + tooltip="Wiedervorlage erstellen" + > + <ods-update-icon icon class="fill-text" /> + </ods-button-with-spinner> + } @else { + <ods-button-with-spinner data-test-id="create-wiedervorlage" text="Wiedervorlage" variant="outline"> + <ods-plus-icon icon /> + </ods-button-with-spinner> + } </a> - </div> -</ng-container> + } +} diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.spec.ts index da0fc0842a..5060ed0101 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.spec.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.spec.ts @@ -21,14 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; import { HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; import { WiedervorlageListLinkRel } from '@alfa-client/wiedervorlage-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { PlusIconComponent, UpdateIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createWiedervorlageListResource } from 'libs/wiedervorlage-shared/test/wiedervorlage'; import { MockComponent } from 'ng-mocks'; @@ -45,8 +43,9 @@ describe('WiedervorlageCreateButtonComponent', () => { declarations: [ WiedervorlageCreateButtonComponent, HasLinkPipe, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(PlusIconComponent), + MockComponent(UpdateIconComponent), ], imports: [RouterTestingModule], }).compileComponents(); @@ -55,9 +54,7 @@ describe('WiedervorlageCreateButtonComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(WiedervorlageCreateButtonComponent); component = fixture.componentInstance; - component.wiedervorlageListStateResource = createStateResource( - createWiedervorlageListResource(), - ); + component.wiedervorlageListStateResource = createStateResource(createWiedervorlageListResource()); fixture.detectChanges(); }); @@ -78,9 +75,7 @@ describe('WiedervorlageCreateButtonComponent', () => { }); it('should be hidden', () => { - component.wiedervorlageListStateResource = createStateResource( - createWiedervorlageListResource(), - ); + component.wiedervorlageListStateResource = createStateResource(createWiedervorlageListResource()); fixture.detectChanges(); const button = fixture.nativeElement.querySelector(wiedervorlageButton); diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts index fec88f242f..123611852c 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts @@ -30,7 +30,9 @@ import { VorgangSharedUiModule } from '@alfa-client/vorgang-shared-ui'; import { CommonModule, DatePipe } from '@angular/common'; import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; -import { TooltipDirective } from '@ods/system'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { PlusIconComponent, TooltipDirective } from '@ods/system'; +import { UpdateIconComponent } from '../../../design-system/src/lib/icons/update-icon/update-icon.component'; import { CreateWiedervorlageButtonContainerComponent } from './create-wiedervorlage-button-container/create-wiedervorlage-button-container.component'; import { ErledigenButtonContainerComponent } from './erledigen-button-container/erledigen-button-container.component'; import { SubmitWiedervorlageButtonComponent } from './submit-wiedervorlage-button/submit-wiedervorlage-button.component'; @@ -70,7 +72,10 @@ const routes: Routes = [ VorgangSharedUiModule, BinaryFileModule, UserProfileModule, + ButtonWithSpinnerComponent, TooltipDirective, + UpdateIconComponent, + PlusIconComponent, ], declarations: [ WiedervorlagePageComponent, -- GitLab From 3a1121e804dd3ad425bf13997a26c935b89483c9 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 13:24:09 +0100 Subject: [PATCH 29/57] OZG-7474 Add account circle icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../account-circle-icon.component.spec.ts | 21 +++++++++++++++ .../account-circle-icon.component.ts | 27 +++++++++++++++++++ .../account-circle-icon.stories.ts | 27 +++++++++++++++++++ 4 files changed, 76 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index e030a77354..2734b503f2 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -41,6 +41,7 @@ export * from './lib/form/radio-button-card/radio-button-card.component'; export * from './lib/form/text-input/text-input.component'; export * from './lib/form/textarea/textarea.component'; export * from './lib/icons/accessibility-icon/accessibility-icon.component'; +export * from './lib/icons/account-circle-icon/account-circle-icon.component'; export * from './lib/icons/admin-logo-icon/admin-logo-icon.component'; export * from './lib/icons/archive-icon/archive-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.spec.ts new file mode 100644 index 0000000000..e50bb31c69 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { AccountCircleIconComponent } from './account-circle-icon.component'; + +describe('AccountCircleIconComponent', () => { + let component: AccountCircleIconComponent; + let fixture: ComponentFixture<AccountCircleIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [AccountCircleIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(AccountCircleIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.ts new file mode 100644 index 0000000000..b762c6cbe3 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.component.ts @@ -0,0 +1,27 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-account-circle-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path + d="M12.75 2C7.23 2 2.75 6.48 2.75 12C2.75 17.52 7.23 22 12.75 22C18.27 22 22.75 17.52 22.75 12C22.75 6.48 18.27 2 12.75 2ZM7.82 18.28C8.25 17.38 10.87 16.5 12.75 16.5C14.63 16.5 17.26 17.38 17.68 18.28C16.32 19.36 14.61 20 12.75 20C10.89 20 9.18 19.36 7.82 18.28ZM19.11 16.83C17.68 15.09 14.21 14.5 12.75 14.5C11.29 14.5 7.82 15.09 6.39 16.83C5.37 15.49 4.75 13.82 4.75 12C4.75 7.59 8.34 4 12.75 4C17.16 4 20.75 7.59 20.75 12C20.75 13.82 20.13 15.49 19.11 16.83ZM12.75 6C10.81 6 9.25 7.56 9.25 9.5C9.25 11.44 10.81 13 12.75 13C14.69 13 16.25 11.44 16.25 9.5C16.25 7.56 14.69 6 12.75 6ZM12.75 11C11.92 11 11.25 10.33 11.25 9.5C11.25 8.67 11.92 8 12.75 8C13.58 8 14.25 8.67 14.25 9.5C14.25 10.33 13.58 11 12.75 11Z" + /> + </svg>`, +}) +export class AccountCircleIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.stories.ts new file mode 100644 index 0000000000..46eae30d49 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/account-circle-icon/account-circle-icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { AccountCircleIconComponent } from './account-circle-icon.component'; + +const meta: Meta<AccountCircleIconComponent> = { + title: 'Icons/Account circle icon', + component: AccountCircleIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<AccountCircleIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From c0d7bcf356a590b6af00b4c944e42f61bd36f534 Mon Sep 17 00:00:00 2001 From: Albert <Albert.Bruns@mgm-tp.com> Date: Thu, 6 Feb 2025 14:07:06 +0100 Subject: [PATCH 30/57] OZG-7472 E2E tests --- ...vorgang-formular-buttons.e2e.components.ts | 8 +++- .../vorgang-weiterleiten.cy.ts | 44 ++++++++++--------- ...y-ozgcloud-button-container.component.html | 2 +- 3 files changed, 31 insertions(+), 23 deletions(-) diff --git a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts index 76cc3eafbe..b91293c81d 100644 --- a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts +++ b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts @@ -25,10 +25,10 @@ export class VorgangFormularButtonsE2EComponent { private readonly abschliessenButton: string = 'abschliessen-button'; private readonly annehmenButton: string = 'annehmen-button'; private readonly bearbeitenButton: string = 'bearbeiten-button'; + private readonly forwardButton: string = 'forward-by-ozgcloud-button'; private readonly bescheidenButton: string = 'bescheiden-button'; private readonly endgueltigLoeschenButton: string = 'endgueltig-loeschen-button'; - private readonly loeschAnforderungZuruecknehmenButton: string = - 'loesch-anforderung-zuruecknehmen-button'; + private readonly loeschAnforderungZuruecknehmenButton: string = 'loesch-anforderung-zuruecknehmen-button'; private readonly loeschenAnfordernButton: string = 'loeschen-anfordern-button'; private readonly verwerfenButton: string = 'verwerfen-button'; private readonly wiedereroeffnenButton: string = 'wiedereroeffnen-button'; @@ -47,6 +47,10 @@ export class VorgangFormularButtonsE2EComponent { return cy.getTestElement(this.bearbeitenButton); } + public getForwardButton() { + return cy.getTestElement(this.forwardButton); + } + public getBescheidenButton() { return cy.getTestElement(this.bescheidenButton); } diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts index dacafdf0ba..a99564ea6c 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts @@ -2,16 +2,15 @@ import { registerLocaleData } from '@angular/common'; import localeDe from '@angular/common/locales/de'; import localeDeExtra from '@angular/common/locales/extra/de'; import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; -import { SnackBarE2EComponent } from '../../../components/ui/snackbar.e2e.component'; +import { HeaderE2EComponent } from 'apps/alfa-e2e/src/page-objects/header.po'; import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; -import { VorgangE2E, VorgangMessagesE2E, VorgangStatusE2E, vorgangStatusLabelE2E } from '../../../model/vorgang'; +import { VorgangE2E } from '../../../model/vorgang'; import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; import { dropCollections } from '../../../support/cypress-helper'; -import { contains, exist, haveText, notExist } from '../../../support/cypress.util'; -import { loginAsPeter, loginAsSabine } from '../../../support/user-util'; -import { buildVorgang, createVorgang, initVorgaenge, initVorgang, objectIds } from '../../../support/vorgang-util'; -import { HeaderE2EComponent } from 'apps/alfa-e2e/src/page-objects/header.po'; +import { exist, notExist } from '../../../support/cypress.util'; +import { loginAsEmil, loginAsPeter, loginAsSabine } from '../../../support/user-util'; +import { buildVorgang, createVorgang, initVorgaenge, objectIds } from '../../../support/vorgang-util'; registerLocaleData(localeDe, 'de', localeDeExtra); @@ -20,15 +19,14 @@ describe('Vorgang weiterleiten', () => { const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); const vorgangPage: VorgangPage = new VorgangPage(); - const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = - vorgangPage.getFormularButtons(); + const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = vorgangPage.getFormularButtons(); const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; - const vorgangWeiterleitenPeter: VorgangE2E = buildVorgang(objectIds[0], 'Weiterleitung Peter'); + const vorgangWeiterleitenUnchanged: VorgangE2E = buildVorgang(objectIds[0], 'Weiterleitung Peter und Emil'); const header: HeaderE2EComponent = new HeaderE2EComponent(); before(() => { - initVorgaenge([vorgangWeiterleiten, vorgangWeiterleitenPeter]); + initVorgaenge([vorgangWeiterleiten, vorgangWeiterleitenUnchanged]); loginAsSabine(); @@ -45,33 +43,39 @@ describe('Vorgang weiterleiten', () => { vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); waitForSpinnerToDisappear(); - //Weiterleiten wird angezeigt + exist(vorgangFormularButtons.getForwardButton()); }); it('should not display Weiterleiten button in other Status', () => { vorgangFormularButtons.getAnnehmenButton().click(); waitForSpinnerToDisappear(); - //Weiterleiten wird nicht angezeigt + notExist(vorgangFormularButtons.getForwardButton()); vorgangFormularButtons.getBearbeitenButton().click(); waitForSpinnerToDisappear(); - //Weiterleiten wird nicht angezeigt - - //Status zurück auf neu oder weiterer Vorgang für Peter? + notExist(vorgangFormularButtons.getForwardButton()); }); - it ('should not be displayed for user Peter in Status Neu', () => { + it('should not be displayed for user Peter in Status Neu', () => { header.getCurrentUserProfile().logout(); loginAsPeter(); waitForSpinnerToDisappear(); - vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); + vorgangList.getListItem(vorgangWeiterleitenUnchanged.name).getRoot().click(); waitForSpinnerToDisappear(); - //Button nicht sichtbar + notExist(vorgangFormularButtons.getForwardButton()); + }); - }) + it('should not be displayed for user Emil in Status Neu', () => { + header.getCurrentUserProfile().logout(); + loginAsEmil(); + waitForSpinnerToDisappear(); + + vorgangList.getListItem(vorgangWeiterleitenUnchanged.name).getRoot().click(); + waitForSpinnerToDisappear(); - + notExist(vorgangFormularButtons.getForwardButton()); + }); }); }); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index 415baac659..b1c828c65e 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -6,6 +6,6 @@ } @else { <ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button"> <ods-forward-icon icon /> - </ods-button-with-spinner> + </ods-button-with-spinner > } } -- GitLab From 9b3083f0a941e5292865347d7edf6029befdc9c1 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 14:11:51 +0100 Subject: [PATCH 31/57] OZG-7474 Replace assign user profile button --- ...er-profile-button-container.component.html | 20 +++++++++++-------- ...profile-button-container.component.spec.ts | 8 +++++--- .../src/lib/user-profile.module.ts | 4 ++++ 3 files changed, 21 insertions(+), 11 deletions(-) diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html index ac709eb5dc..6469c2a6d8 100644 --- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html +++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html @@ -23,11 +23,15 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-icon-button-with-spinner - *ngIf="vorgang | hasLink: linkRel.ASSIGN" - svgIcon="account_outline" - toolTip="Bearbeiter zuordnen" - (clickEmitter)="showUserProfileSearch()" - data-test-id="assign-user-profile-icon-button" -> -</ozgcloud-icon-button-with-spinner> +@if (vorgang | hasLink: linkRel.ASSIGN) { + <ods-button-with-spinner + svgIcon="account_outline" + tooltip="Bearbeiter zuordnen" + data-test-id="assign-user-profile-icon-button" + variant="icon" + size="fit" + (clickEmitter)="showUserProfileSearch()" + > + <ods-account-circle-icon icon class="fill-text" /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts index 5f82315849..531805961b 100644 --- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts +++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts @@ -21,12 +21,13 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { IconButtonWithSpinnerComponent } from '@alfa-client/ui'; import { UserProfileService } from '@alfa-client/user-profile-shared'; import { VorgangHeaderLinkRel } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { AccountCircleIconComponent } from '@ods/system'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent } from 'ng-mocks'; import { AssignUserProfileButtonContainerComponent } from './assign-user-profile-button-container.component'; @@ -44,7 +45,8 @@ describe('AssignUserProfileButtonContainerComponent', () => { declarations: [ AssignUserProfileButtonContainerComponent, HasLinkPipe, - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(AccountCircleIconComponent), ], providers: [ { diff --git a/alfa-client/libs/user-profile/src/lib/user-profile.module.ts b/alfa-client/libs/user-profile/src/lib/user-profile.module.ts index 11ab2e9213..408ace4cfb 100644 --- a/alfa-client/libs/user-profile/src/lib/user-profile.module.ts +++ b/alfa-client/libs/user-profile/src/lib/user-profile.module.ts @@ -27,7 +27,9 @@ import { UserProfileSharedModule } from '@alfa-client/user-profile-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; +import { ButtonWithSpinnerComponent } from '@ods/component'; import { + AccountCircleIconComponent, DropdownMenuButtonItemComponent, DropdownMenuComponent, DropdownMenuItemComponent, @@ -69,6 +71,8 @@ import { UserProfileComponent } from './user-profile/user-profile.component'; DropdownMenuComponent, DropdownMenuItemComponent, DropdownMenuButtonItemComponent, + ButtonWithSpinnerComponent, + AccountCircleIconComponent, TooltipDirective, ], declarations: [ -- GitLab From e978e9cbeca8992641c8f5edebc6dce7a405a929 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 15:25:01 +0100 Subject: [PATCH 32/57] OZG-7474 Fix ods system imports --- alfa-client/libs/design-system/src/index.ts | 2 +- .../undo-request-deletion-icon.component.spec.ts | 0 .../undo-request-deletion-icon.component.ts | 0 .../undo-request-deletion-icon.stories.ts | 0 .../loesch-anforderung/src/lib/loesch-anforderung.module.ts | 4 +--- 5 files changed, 2 insertions(+), 4 deletions(-) rename alfa-client/libs/design-system/src/lib/icons/{undo-request-delition-icon => undo-request-deletion-icon}/undo-request-deletion-icon.component.spec.ts (100%) rename alfa-client/libs/design-system/src/lib/icons/{undo-request-delition-icon => undo-request-deletion-icon}/undo-request-deletion-icon.component.ts (100%) rename alfa-client/libs/design-system/src/lib/icons/{undo-request-delition-icon => undo-request-deletion-icon}/undo-request-deletion-icon.stories.ts (100%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 2734b503f2..ce3c4167e1 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -77,7 +77,7 @@ export * from './lib/icons/send-icon/send-icon.component'; export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; -export * from './lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories'; +export * from './lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component'; export * from './lib/icons/update-icon/update-icon.component'; export * from './lib/icons/user-icon/user-icon.component'; export * from './lib/icons/users-icon/users-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts similarity index 100% rename from alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.spec.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.ts similarity index 100% rename from alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.ts diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.stories.ts similarity index 100% rename from alfa-client/libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.stories.ts diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index ebe9b6b1e9..46602fb2d9 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -28,9 +28,7 @@ import { VorgangSharedModule } from '@alfa-client/vorgang-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { DeleteFinallyIconComponent } from '../../../design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component'; -import { RequestDeletionIconComponent } from '../../../design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component'; -import { UndoRequestDeletionIconComponent } from '../../../design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component'; +import { DeleteFinallyIconComponent, RequestDeletionIconComponent, UndoRequestDeletionIconComponent } from '@ods/system'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; -- GitLab From 17fb21e7d431d37d57c4dad12096674f11e04ae3 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 16:12:59 +0100 Subject: [PATCH 33/57] OZG-7474 fix unit tests --- ...ung-zuruecknehmen-button.component.spec.ts | 2 +- .../postfach-mail-button.component.html | 72 +++++++++---------- .../postfach-mail-button.component.spec.ts | 29 +++----- .../libs/postfach/src/lib/postfach.module.ts | 10 +-- 4 files changed, 52 insertions(+), 61 deletions(-) diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts index 20256b7fae..f1d0a15c80 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts @@ -24,7 +24,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { UndoRequestDeletionIconComponent } from 'libs/design-system/src/lib/icons/undo-request-delition-icon/undo-request-deletion-icon.component'; +import { UndoRequestDeletionIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button.component'; diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html index 22b79691af..b47984d0cb 100644 --- a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html +++ b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html @@ -23,41 +23,39 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ng-container - *ngIf=" - postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL - " -> +@if (postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL) { <!-- TODO Aufteilen in 3 einzelne Komponenten --> - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton && text && !toolTip" - data-test-id="create-mail-button-with-text" - [showSpinner]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" - class="create-button" - [text]="text" - icon="add" - (clickEmitter)="openPostfachNachrichtenDialog.emit()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton && !text && toolTip" - data-test-id="create-mail-button-without-text" - [showSpinner]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" - class="create-button" - [toolTip]="toolTip" - icon="add" - (clickEmitter)="openPostfachNachrichtenDialog.emit()" - > - </ozgcloud-stroked-button-with-spinner> - - <ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - data-test-id="send-mail-icon-button" - [showSpinner]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" - icon="mail_outline" - toolTip="Neue Nachricht erstellen" - (clickEmitter)="openPostfachNachrichtenDialog.emit()" - > - </ozgcloud-icon-button-with-spinner> -</ng-container> + @if (showAsIconButton) { + <ods-button + data-test-id="send-mail-icon-button" + [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" + tooltip="Neue Nachricht erstellen" + variant="icon" + size="fit" + (clickEmitter)="openPostfachNachrichtenDialog.emit()" + > + <ods-mailbox-icon icon class="stroke-text" /> + </ods-button> + } @else if (text && !toolTip) { + <ods-button + data-test-id="create-mail-button-with-text" + [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" + [text]="text" + variant="outline" + (clickEmitter)="openPostfachNachrichtenDialog.emit()" + > + <ods-plus-icon icon class="fill-primary" /> + </ods-button> + } @else if (!text && toolTip) { + <ods-button + data-test-id="create-mail-button-without-text" + [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" + [tooltip]="toolTip" + variant="icon" + size="fit" + (clickEmitter)="openPostfachNachrichtenDialog.emit()" + > + <ods-plus-icon icon class="fill-primary" /> + </ods-button> + } +} diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.spec.ts b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.spec.ts index 3fbf0c1e11..d02565a847 100644 --- a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.spec.ts +++ b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.spec.ts @@ -21,18 +21,15 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { faker } from '@faker-js/faker'; import { PostfachMailListLinkRel } from '@alfa-client/postfach-shared'; import { EMPTY_STRING, HasLinkPipe, createStateResource } from '@alfa-client/tech-shared'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { faker } from '@faker-js/faker'; +import { ButtonComponent, MailboxIconComponent, PlusIconComponent, TooltipDirective } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { createPostfachMailListResource } from 'libs/postfach-shared/test/postfach'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; -import { MockComponent } from 'ng-mocks'; +import { MockComponent, MockDirective } from 'ng-mocks'; import { PostfachMailButtonComponent } from './postfach-mail-button.component'; describe('PostfachMailButtonComponent', () => { @@ -48,8 +45,10 @@ describe('PostfachMailButtonComponent', () => { declarations: [ PostfachMailButtonComponent, HasLinkPipe, - MockComponent(IconButtonWithSpinnerComponent), - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), + MockComponent(ButtonComponent), + MockComponent(PlusIconComponent), + MockComponent(MailboxIconComponent), + MockDirective(TooltipDirective), ], }).compileComponents(); }); @@ -77,9 +76,7 @@ describe('PostfachMailButtonComponent', () => { }); it('should be hidden', () => { - component.postfachMailListStateResource = createStateResource( - createPostfachMailListResource(), - ); + component.postfachMailListStateResource = createStateResource(createPostfachMailListResource()); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(sendMailButtonWithText); @@ -108,9 +105,7 @@ describe('PostfachMailButtonComponent', () => { }); it('should be hidden', () => { - component.postfachMailListStateResource = createStateResource( - createPostfachMailListResource(), - ); + component.postfachMailListStateResource = createStateResource(createPostfachMailListResource()); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(sendMailButtonWithoutText); @@ -139,9 +134,7 @@ describe('PostfachMailButtonComponent', () => { }); it('should be hidden', () => { - component.postfachMailListStateResource = createStateResource( - createPostfachMailListResource(), - ); + component.postfachMailListStateResource = createStateResource(createPostfachMailListResource()); fixture.detectChanges(); const buttonElement = fixture.nativeElement.querySelector(sendMailIconButton); diff --git a/alfa-client/libs/postfach/src/lib/postfach.module.ts b/alfa-client/libs/postfach/src/lib/postfach.module.ts index 59217f49b5..e6030c3cc3 100644 --- a/alfa-client/libs/postfach/src/lib/postfach.module.ts +++ b/alfa-client/libs/postfach/src/lib/postfach.module.ts @@ -29,6 +29,7 @@ import { VorgangSharedUiModule } from '@alfa-client/vorgang-shared-ui'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; +import { ButtonComponent, MailboxIconComponent, PlusIconComponent } from '@ods/system'; import { PostfachMailButtonContainerComponent } from './postfach-mail-button-container/postfach-mail-button-container.component'; import { PostfachMailButtonComponent } from './postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component'; import { PostfachMailFormComponent } from './postfach-mail-form/postfach-mail-form.component'; @@ -67,6 +68,9 @@ const routes: Routes = [ UserProfileModule, VorgangSharedUiModule, BinaryFileModule, + ButtonComponent, + PlusIconComponent, + MailboxIconComponent, ], declarations: [ PostfachMailListContainerComponent, @@ -90,11 +94,7 @@ const routes: Routes = [ PostfachNachrichtAttachmentContainerComponent, PostfachNachrichtReplyEditorContainerComponent, ], - exports: [ - PostfachMailListContainerComponent, - PostfachMailButtonContainerComponent, - PostfachMailFormComponent, - ], + exports: [PostfachMailListContainerComponent, PostfachMailButtonContainerComponent, PostfachMailFormComponent], providers: [ { provide: ON_PAGE, -- GitLab From bdf4cbdfba3cde1d557983ef0e2ca6b87b2bc89a Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Thu, 6 Feb 2025 16:46:00 +0100 Subject: [PATCH 34/57] OZG-7474 Fix more ods system imports --- alfa-client/libs/design-system/src/index.ts | 2 ++ .../dropdown-menu-link-item.component.ts | 2 +- .../src/lib/help-menu/help-menu.component.spec.ts | 9 +++++++-- .../src/lib/user-assistance.module.ts | 9 +++++++-- .../user-settings/src/lib/user-settings.module.ts | 12 ++---------- .../vorgang-detail/src/lib/vorgang-detail.module.ts | 4 ++-- .../wiedervorlage/src/lib/wiedervorlage.module.ts | 3 +-- .../src/lib/zustaendige-stelle.module.ts | 4 ++-- 8 files changed, 24 insertions(+), 21 deletions(-) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index ce3c4167e1..638624f647 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -30,6 +30,7 @@ export * from './lib/button-card/button-card.component'; export * from './lib/button/button.component'; export * from './lib/dropdown-menu/dropdown-menu-button-item/dropdown-menu-button-item.component'; export * from './lib/dropdown-menu/dropdown-menu-item/dropdown-menu-item.component'; +export * from './lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component'; export * from './lib/dropdown-menu/dropdown-menu-text-item/dropdown-menu-text-item.component'; export * from './lib/dropdown-menu/dropdown-menu/dropdown-menu.component'; export * from './lib/form/button-toggle/button-toggle.component'; @@ -74,6 +75,7 @@ export * from './lib/icons/request-deletion-icon/request-deletion-icon.component export * from './lib/icons/save-icon/save-icon.component'; export * from './lib/icons/search-icon/search-icon.component'; export * from './lib/icons/send-icon/send-icon.component'; +export * from './lib/icons/settings-icon/settings-icon.component'; export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component.ts b/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component.ts index 1d0258ddbc..dbc8d0b0aa 100644 --- a/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component.ts +++ b/alfa-client/libs/design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component.ts @@ -1,6 +1,6 @@ import { Component, Input } from '@angular/core'; -import { LinkComponent } from '@ods/system'; import { OpenLinkIconComponent } from '../../icons/open-link-icon/open-link-icon.component'; +import { LinkComponent } from '../../link/link.component'; @Component({ selector: 'ods-dropdown-menu-link-item', diff --git a/alfa-client/libs/user-assistance/src/lib/help-menu/help-menu.component.spec.ts b/alfa-client/libs/user-assistance/src/lib/help-menu/help-menu.component.spec.ts index 80c975b0d3..ba0e572d4e 100644 --- a/alfa-client/libs/user-assistance/src/lib/help-menu/help-menu.component.spec.ts +++ b/alfa-client/libs/user-assistance/src/lib/help-menu/help-menu.component.spec.ts @@ -27,11 +27,16 @@ import { getElementFromDomRoot } from '@alfa-client/test-utils'; import { UiModule } from '@alfa-client/ui'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { DropdownMenuComponent, DropdownMenuTextItemComponent, FileIconComponent, HelpIconComponent } from '@ods/system'; +import { + DropdownMenuComponent, + DropdownMenuLinkItemComponent, + DropdownMenuTextItemComponent, + FileIconComponent, + HelpIconComponent, +} from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { createApiRootResource } from '../../../../../libs/api-root-shared/test/api-root'; -import { DropdownMenuLinkItemComponent } from '../../../../design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component'; import { DocumentationComponent } from './documentation/documentation.component'; import { HelpButtonComponent } from './help-button/help-button.component'; import { HelpMenuComponent } from './help-menu.component'; diff --git a/alfa-client/libs/user-assistance/src/lib/user-assistance.module.ts b/alfa-client/libs/user-assistance/src/lib/user-assistance.module.ts index e75061efe2..1eda492b4f 100644 --- a/alfa-client/libs/user-assistance/src/lib/user-assistance.module.ts +++ b/alfa-client/libs/user-assistance/src/lib/user-assistance.module.ts @@ -25,8 +25,13 @@ import { TechSharedModule } from '@alfa-client/tech-shared'; import { UiModule } from '@alfa-client/ui'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; -import { DropdownMenuComponent, DropdownMenuTextItemComponent, FileIconComponent, HelpIconComponent } from '@ods/system'; -import { DropdownMenuLinkItemComponent } from '../../../design-system/src/lib/dropdown-menu/dropdown-menu-link-item/dropdown-menu-link-item.component'; +import { + DropdownMenuComponent, + DropdownMenuLinkItemComponent, + DropdownMenuTextItemComponent, + FileIconComponent, + HelpIconComponent, +} from '@ods/system'; import { DocumentationComponent } from './help-menu/documentation/documentation.component'; import { OpenDocumentationButtonComponent } from './help-menu/documentation/open-documentation-button/open-documentation-button.component'; import { HelpButtonComponent } from './help-menu/help-button/help-button.component'; diff --git a/alfa-client/libs/user-settings/src/lib/user-settings.module.ts b/alfa-client/libs/user-settings/src/lib/user-settings.module.ts index 6dbf5e4ecc..bafeb748dc 100644 --- a/alfa-client/libs/user-settings/src/lib/user-settings.module.ts +++ b/alfa-client/libs/user-settings/src/lib/user-settings.module.ts @@ -25,8 +25,7 @@ import { UiModule } from '@alfa-client/ui'; import { UserSettingsSharedModule } from '@alfa-client/user-settings-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; -import { CloseIconComponent, DropdownMenuComponent } from '@ods/system'; -import { SettingsIconComponent } from '../../../design-system/src/lib/icons/settings-icon/settings-icon.component'; +import { CloseIconComponent, DropdownMenuComponent, SettingsIconComponent } from '@ods/system'; import { UserSettingsContainerComponent } from './user-settings-container/user-settings-container.component'; import { UserSettingsDarkmodeContainerComponent } from './user-settings-container/user-settings/user-settings-dropdown/user-settings-darkmode-container/user-settings-darkmode-container.component'; import { UserSettingsDarkmodeComponent } from './user-settings-container/user-settings/user-settings-dropdown/user-settings-darkmode-container/user-settings-darkmode/user-settings-darkmode.component'; @@ -36,14 +35,7 @@ import { UserSettingsEmailBenachrichtigungComponent } from './user-settings-cont import { UserSettingsComponent } from './user-settings-container/user-settings/user-settings.component'; @NgModule({ - imports: [ - CommonModule, - UiModule, - UserSettingsSharedModule, - DropdownMenuComponent, - CloseIconComponent, - SettingsIconComponent, - ], + imports: [CommonModule, UiModule, UserSettingsSharedModule, DropdownMenuComponent, CloseIconComponent, SettingsIconComponent], declarations: [ UserSettingsContainerComponent, UserSettingsEmailBenachrichtigungComponent, diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index faa566e49a..dc75d98df3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -61,8 +61,10 @@ import { CheckCircleIconComponent, CheckIconComponent, CloseIconComponent, + DiscardIconComponent, DropdownMenuComponent, DropdownMenuTextItemComponent, + EditIconComponent, ErrorMessageComponent, ExclamationIconComponent, FileIconComponent, @@ -74,8 +76,6 @@ import { StampIconComponent, TooltipDirective, } from '@ods/system'; -import { DiscardIconComponent } from '../../../design-system/src/lib/icons/discard-icon/discard-icon.component'; -import { EditIconComponent } from '../../../design-system/src/lib/icons/edit-icon/edit-icon.component'; import { AktenzeichenEditDialogComponent } from './aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component'; import { AktenzeichenEditableComponent } from './aktenzeichen-editable/aktenzeichen-editable.component'; import { AbschliessenButtonComponent } from './buttons/abschliessen-button/abschliessen-button.component'; diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts index 123611852c..df9bf418c2 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts @@ -31,8 +31,7 @@ import { CommonModule, DatePipe } from '@angular/common'; import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { PlusIconComponent, TooltipDirective } from '@ods/system'; -import { UpdateIconComponent } from '../../../design-system/src/lib/icons/update-icon/update-icon.component'; +import { PlusIconComponent, TooltipDirective, UpdateIconComponent } from '@ods/system'; import { CreateWiedervorlageButtonContainerComponent } from './create-wiedervorlage-button-container/create-wiedervorlage-button-container.component'; import { ErledigenButtonContainerComponent } from './erledigen-button-container/erledigen-button-container.component'; import { SubmitWiedervorlageButtonComponent } from './submit-wiedervorlage-button/submit-wiedervorlage-button.component'; diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts index 098801b4da..0ca329814a 100644 --- a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts +++ b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts @@ -28,14 +28,14 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { ButtonComponent, CloseIconComponent, + EditIconComponent, ExternalUnitIconComponent, InstantSearchComponent, OfficeIconComponent, + PublicAdministrationIconComponent, SearchIconComponent, } from '@ods/system'; import { ZustaendigeStelleSharedModule } from 'libs/zustaendige-stelle-shared/src/lib/zustaendige-stelle-shared.module'; -import { EditIconComponent } from '../../../design-system/src/lib/icons/edit-icon/edit-icon.component'; -import { PublicAdministrationIconComponent } from '../../../design-system/src/lib/icons/public-administration-icon/public-administration-icon.component'; import { EditZustaendigeStelleButtonComponent } from './edit-zustaendige-stelle-button/edit-zustaendige-stelle-button.component'; import { SearchExterneFachstelleContainerComponent } from './search-externe-fachstelle-container/search-externe-fachstelle-container.component'; import { OrganisationsEinheitComponent } from './search-organisations-einheit-container/organisations-einheit/organisations-einheit.component'; -- GitLab From 1391bb23c7d85f110bd0c247b801bb2700b312f1 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 08:45:49 +0100 Subject: [PATCH 35/57] OZG-7474 Adjust weiterleiten button --- ...orward-by-ozgcloud-button-container.component.html | 11 ++++++++--- ...ard-by-ozgcloud-button-container.component.spec.ts | 10 +++++++--- .../forward-by-ozgcloud-button-container.component.ts | 4 ++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index b1c828c65e..729b06b22c 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -1,11 +1,16 @@ @if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) { @if (showAsIconButton) { - <ods-button-with-spinner variant="icon" size="fit" dataTestId="forward-by-ozgcloud-icon-button"> - <ods-forward-icon icon /> + <ods-button-with-spinner + tooltip="Vorgang weiterleiten" + variant="icon" + size="fit" + dataTestId="forward-by-ozgcloud-icon-button" + > + <ods-forward-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button"> <ods-forward-icon icon /> - </ods-button-with-spinner > + </ods-button-with-spinner> } } diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts index 5a38308bdc..8b978c4749 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -2,10 +2,10 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-u import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { ForwardIconComponent } from '@ods/system'; +import { ForwardIconComponent, TooltipDirective } from '@ods/system'; import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; -import { MockComponent } from 'ng-mocks'; +import { MockComponent, MockDirective } from 'ng-mocks'; import { ForwardByOzgcloudButtonContainerComponent } from './forward-by-ozgcloud-button-container.component'; describe('ForwardByOzgcloudButtonContainerComponent', () => { @@ -18,7 +18,11 @@ describe('ForwardByOzgcloudButtonContainerComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ imports: [ForwardByOzgcloudButtonContainerComponent], - declarations: [MockComponent(ButtonWithSpinnerComponent), MockComponent(ForwardIconComponent)], + declarations: [ + MockComponent(ButtonWithSpinnerComponent), + MockComponent(ForwardIconComponent), + MockDirective(TooltipDirective), + ], }).compileComponents(); fixture = TestBed.createComponent(ForwardByOzgcloudButtonContainerComponent); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts index 4316c3ee5f..a2b119c804 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -3,12 +3,12 @@ import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-cli import { CommonModule } from '@angular/common'; import { Component, Input } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { ForwardIconComponent } from '@ods/system'; +import { ForwardIconComponent, TooltipDirective } from '@ods/system'; @Component({ selector: 'alfa-forward-by-ozgcloud-button-container', standalone: true, - imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardIconComponent], + imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardIconComponent, TooltipDirective], templateUrl: './forward-by-ozgcloud-button-container.component.html', }) export class ForwardByOzgcloudButtonContainerComponent { -- GitLab From c6a546f345e0a55c0ff8a7a63e65083cb32d993b Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 09:49:25 +0100 Subject: [PATCH 36/57] OZG-7474 Add arrow left icon --- alfa-client/libs/design-system/src/index.ts | 1 + .../arrow-left-icon.component.spec.ts | 21 +++++++++++++++ .../arrow-left-icon.component.ts | 25 +++++++++++++++++ .../arrow-left.icon.stories.ts | 27 +++++++++++++++++++ 4 files changed, 74 insertions(+) create mode 100644 alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 638624f647..67b4390634 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -45,6 +45,7 @@ export * from './lib/icons/accessibility-icon/accessibility-icon.component'; export * from './lib/icons/account-circle-icon/account-circle-icon.component'; export * from './lib/icons/admin-logo-icon/admin-logo-icon.component'; export * from './lib/icons/archive-icon/archive-icon.component'; +export * from './lib/icons/arrow-left-icon/arrow-left-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; export * from './lib/icons/back-arrow-icon/back-arrow-icon.component'; export * from './lib/icons/bescheid-generate-icon/bescheid-generate-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts new file mode 100644 index 0000000000..e80eb6b7be --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ArrowLeftIconComponent } from './arrow-left-icon.component'; + +describe('ArrowLeftIconComponent', () => { + let component: ArrowLeftIconComponent; + let fixture: ComponentFixture<ArrowLeftIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ArrowLeftIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(ArrowLeftIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts new file mode 100644 index 0000000000..1dd1c837d2 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts @@ -0,0 +1,25 @@ +import { CommonModule } from '@angular/common'; +import { Component, Input } from '@angular/core'; +import { twMerge } from 'tailwind-merge'; +import { iconVariants, IconVariants } from '../iconVariants'; + +@Component({ + selector: 'ods-arrow-left-icon', + standalone: true, + imports: [CommonModule], + template: `<svg + viewBox="0 0 24 24" + xmlns="http://www.w3.org/2000/svg" + [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" + aria-hidden="true" + > + <path d="M20.75 11H8.58L14.17 5.41L12.75 4L4.75 12L12.75 20L14.16 18.59L8.58 13H20.75V11Z" /> + </svg>`, +}) +export class ArrowLeftIconComponent { + @Input() size: IconVariants['size'] = 'medium'; + @Input() class: string = ''; + + readonly iconVariants = iconVariants; + readonly twMerge = twMerge; +} diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts new file mode 100644 index 0000000000..09bd3cd799 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts @@ -0,0 +1,27 @@ +import type { Meta, StoryObj } from '@storybook/angular'; + +import { ArrowLeftIconComponent } from './arrow-left-icon.component'; + +const meta: Meta<ArrowLeftIconComponent> = { + title: 'Icons/Arrow left icon', + component: ArrowLeftIconComponent, + excludeStories: /.*Data$/, + tags: ['autodocs'], +}; + +export default meta; +type Story = StoryObj<ArrowLeftIconComponent>; + +export const Default: Story = { + args: { size: 'large' }, + argTypes: { + size: { + control: 'select', + options: ['small', 'medium', 'large', 'extra-large', 'full'], + description: 'Size of icon. Property "full" means 100%', + table: { + defaultValue: { summary: 'medium' }, + }, + }, + }, +}; -- GitLab From c0cd44e8d9770bbcf94d1190bea0bc0196355b2b Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 10:12:06 +0100 Subject: [PATCH 37/57] OZG-7474 Replace back button --- .../ui/back-button/back-button.component.html | 13 +++----- .../back-button/back-button.component.spec.ts | 14 +++++--- alfa-client/libs/ui/src/lib/ui/ui.module.ts | 10 +++++- ...ang-detail-formular-buttons.component.scss | 32 ------------------- ...rgang-detail-formular-buttons.component.ts | 4 +-- 5 files changed, 24 insertions(+), 49 deletions(-) delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.scss diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html index 29c6b91fcd..77c62e3808 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html @@ -23,13 +23,8 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<a - [routerLink]="linkTo" - mat-icon-button - data-test-id="back-button" - class="back-button" - [tooltip]="label" - tooltipAriaType="aria-labelledby" -> - <mat-icon>arrow_back</mat-icon> +<a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby"> + <ods-button variant="icon" size="fit"> + <ods-arrow-left-icon icon class="fill-text" /> + </ods-button> </a> diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts index 9ca87b6fea..7da998d8a8 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts @@ -23,12 +23,11 @@ */ import { getElementFromFixture } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { MatIcon } from '@angular/material/icon'; import { RouterTestingModule } from '@angular/router/testing'; import { faker } from '@faker-js/faker'; -import { TooltipDirective } from '@ods/system'; +import { ArrowLeftIconComponent, ButtonComponent, TooltipDirective } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; -import { MockDirective } from 'ng-mocks'; +import { MockComponent, MockDirective } from 'ng-mocks'; import { BackButtonComponent } from './back-button.component'; describe('BackButtonComponent', () => { @@ -41,8 +40,13 @@ describe('BackButtonComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [BackButtonComponent, MockDirective(TooltipDirective)], - imports: [MatIcon, RouterTestingModule], + declarations: [ + BackButtonComponent, + MockComponent(ButtonComponent), + MockComponent(ArrowLeftIconComponent), + MockDirective(TooltipDirective), + ], + imports: [RouterTestingModule], }).compileComponents(); fixture = TestBed.createComponent(BackButtonComponent); diff --git a/alfa-client/libs/ui/src/lib/ui/ui.module.ts b/alfa-client/libs/ui/src/lib/ui/ui.module.ts index eeff741705..4a3c422a01 100644 --- a/alfa-client/libs/ui/src/lib/ui/ui.module.ts +++ b/alfa-client/libs/ui/src/lib/ui/ui.module.ts @@ -47,7 +47,13 @@ import { MatSlideToggleModule } from '@angular/material/slide-toggle'; import { MatSnackBarModule } from '@angular/material/snack-bar'; import { MatTabsModule } from '@angular/material/tabs'; import { RouterModule } from '@angular/router'; -import { FileUploadButtonComponent, SpinnerIconComponent, TooltipDirective } from '@ods/system'; +import { + ArrowLeftIconComponent, + ButtonComponent, + FileUploadButtonComponent, + SpinnerIconComponent, + TooltipDirective, +} from '@ods/system'; import { de } from 'date-fns/locale'; import { AppIconComponent } from '../icon/app-icon/app-icon.component'; import { PostfachIconComponent } from '../icon/postfach-icon/postfach-icon.component'; @@ -162,6 +168,8 @@ import { ValidationErrorComponent } from './validation-error/validation-error.co FileUploadButtonComponent, SpinnerIconComponent, TooltipDirective, + ButtonComponent, + ArrowLeftIconComponent, ], exports: [ MatButtonModule, diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.scss b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.scss deleted file mode 100644 index 9cd0cfd7b7..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.scss +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ -:host { - margin-left: 48px; - - ::ng-deep { - ozgcloud-stroked-button-with-spinner { - margin: 0 8px; - } - } -} diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts index af2afbb374..6af40cc9be 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts @@ -21,13 +21,13 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-vorgang-detail-formular-buttons', templateUrl: './vorgang-detail-formular-buttons.component.html', - styleUrls: ['./vorgang-detail-formular-buttons.component.scss'], + styles: [':host {@apply mr-12 flex gap-4}'], }) export class VorgangDetailFormularButtonsComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; -- GitLab From 5cf8804958b397c025439127a824e61e3f1e96c9 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 10:17:51 +0100 Subject: [PATCH 38/57] OZG-7474 Fix annehmen button styling --- .../buttons/annehmen-button/annehmen-button.component.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html index c381ff9831..b82f8fd9e4 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html @@ -40,10 +40,10 @@ [stateResource]="commandStateResource$ | async" (clickEmitter)="annehmen()" text="Vorgang annehmen" - variant="outline" + variant="primary" data-test-id="annehmen-button" > - <ods-check-circle-icon icon /> + <ods-check-circle-icon icon class="fill-white" /> </ods-button-with-spinner> } } -- GitLab From cd25cb9ea43fb9e76ca0f979196df8251fbde3b3 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 10:37:22 +0100 Subject: [PATCH 39/57] OZG-7474 Fix buttons positioning --- ...-by-ozgcloud-button-container.component.ts | 1 + ...g-loeschen-button-container.component.scss | 23 --------------- ...tig-loeschen-button-container.component.ts | 29 +++++-------------- ...uecknehmen-button-container.component.scss | 23 --------------- ...uruecknehmen-button-container.component.ts | 16 ++++------ .../abschliessen-button.component.scss | 23 --------------- .../abschliessen-button.component.ts | 12 +++----- .../annehmen-button.component.scss | 23 --------------- .../annehmen-button.component.ts | 14 +++------ .../bearbeiten-button.component.scss | 23 --------------- .../bearbeiten-button.component.ts | 14 +++------ .../bescheiden-button.component.scss | 23 --------------- .../bescheiden-button.component.ts | 2 +- .../verwerfen-button.component.scss | 23 --------------- .../verwerfen-button.component.ts | 14 +++------ .../wiedereroeffnen-button.component.scss | 23 --------------- .../wiedereroeffnen-button.component.ts | 14 +++------ .../zurueckholen-button.component.scss | 23 --------------- .../zurueckholen-button.component.ts | 14 +++------ .../zurueckstellen-button.component.scss | 23 --------------- .../zurueckstellen-button.component.ts | 14 +++------ ...ang-detail-formular-buttons.component.html | 10 ++----- ...rgang-detail-formular-buttons.component.ts | 2 +- 23 files changed, 48 insertions(+), 338 deletions(-) delete mode 100644 alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.scss delete mode 100644 alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.scss delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.scss diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts index a2b119c804..04498b4cfc 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -10,6 +10,7 @@ import { ForwardIconComponent, TooltipDirective } from '@ods/system'; standalone: true, imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardIconComponent, TooltipDirective], templateUrl: './forward-by-ozgcloud-button-container.component.html', + styles: [':host {@apply empty:hidden}'], }) export class ForwardByOzgcloudButtonContainerComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.scss b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.ts b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.ts index 1b0cade59c..bb94290b75 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.ts @@ -21,34 +21,25 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; -import { MatDialogRef } from '@angular/material/dialog'; import { CommandResource } from '@alfa-client/command-shared'; -import { - LoeschAnforderungResource, - LoeschAnforderungService, -} from '@alfa-client/loesch-anforderung-shared'; +import { LoeschAnforderungResource, LoeschAnforderungService } from '@alfa-client/loesch-anforderung-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; import { BasicDialogComponent, BasicDialogData, DialogService } from '@alfa-client/ui'; -import { - LoeschAnforderungLinkRel, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { LoeschAnforderungLinkRel, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input } from '@angular/core'; +import { MatDialogRef } from '@angular/material/dialog'; import { Observable, filter, first, of } from 'rxjs'; @Component({ selector: 'alfa-endgueltig-loeschen-button-container', templateUrl: './endgueltig-loeschen-button-container.component.html', - styleUrls: ['./endgueltig-loeschen-button-container.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class EndgueltigLoeschenButtonContainerComponent { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); loeschAnforderungResource$: Observable<StateResource<LoeschAnforderungResource>>; readonly vorgangWithEingangLinkRel = VorgangWithEingangLinkRel; @@ -66,12 +57,8 @@ export class EndgueltigLoeschenButtonContainerComponent { this.loeschAnforderungResource$ = this.loeschAnforderungService.getLoeschAnforderung(); } - public openEndgueltigLoeschenDialog( - loeschAnforderungResource: StateResource<LoeschAnforderungResource>, - ): void { - const dialogRef: MatDialogRef<BasicDialogComponent> = this.dialogService.openBasic( - this.createBasicDialogConfig(), - ); + public openEndgueltigLoeschenDialog(loeschAnforderungResource: StateResource<LoeschAnforderungResource>): void { + const dialogRef: MatDialogRef<BasicDialogComponent> = this.dialogService.openBasic(this.createBasicDialogConfig()); dialogRef .afterClosed() diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.scss b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.ts index 8d60d118a2..104b574f16 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component.ts @@ -21,7 +21,6 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { LoeschAnforderungLinkRel, @@ -29,34 +28,31 @@ import { LoeschAnforderungService, } from '@alfa-client/loesch-anforderung-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; +import { Component, Input } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-loesch-anforderung-zuruecknehmen-button-container', templateUrl: './loesch-anforderung-zuruecknehmen-button-container.component.html', - styleUrls: ['./loesch-anforderung-zuruecknehmen-button-container.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class LoeschAnforderungZuruecknehmenButtonContainerComponent { @Input() showAsIconButton: boolean = false; loeschAnforderungStateResource$: Observable<StateResource<LoeschAnforderungResource>>; - loeschAnforderungZuruecknehmenCommand$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + loeschAnforderungZuruecknehmenCommand$: Observable<StateResource<CommandResource>> = + of(createEmptyStateResource<CommandResource>()); readonly loeschAnforderungLinkRel = LoeschAnforderungLinkRel; constructor(private loeschAnforderungService: LoeschAnforderungService) {} ngOnInit(): void { - this.loeschAnforderungZuruecknehmenCommand$ = - this.loeschAnforderungService.getLoschAnforderungZuruecknehmenCommand(); + this.loeschAnforderungZuruecknehmenCommand$ = this.loeschAnforderungService.getLoschAnforderungZuruecknehmenCommand(); this.loeschAnforderungStateResource$ = this.loeschAnforderungService.getLoeschAnforderung(); } - public loeschAnforderungZuruecknehmen( - loeschAnforderungResource: StateResource<LoeschAnforderungResource>, - ): void { + public loeschAnforderungZuruecknehmen(loeschAnforderungResource: StateResource<LoeschAnforderungResource>): void { this.loeschAnforderungService.zuruecknehmen(loeschAnforderungResource.resource); } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.ts index 578482c2b8..94f843b044 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.ts @@ -23,7 +23,7 @@ */ import { CommandResource } from '@alfa-client/command-shared'; import { createEmptyStateResource, notHasLink, StateResource } from '@alfa-client/tech-shared'; -import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource, } from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; import { Component, Input, OnInit } from '@angular/core'; import { hasLink } from '@ngxp/rest'; import { Observable, of } from 'rxjs'; @@ -31,7 +31,7 @@ import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-abschliessen-button', templateUrl: './abschliessen-button.component.html', - styleUrls: ['./abschliessen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class AbschliessenButtonComponent implements OnInit { @Input() set vorgang(vorgang: VorgangWithEingangResource) { @@ -47,9 +47,7 @@ export class AbschliessenButtonComponent implements OnInit { public isVisible: boolean = false; vorgangWithEingangResource: VorgangWithEingangResource; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; @@ -60,8 +58,6 @@ export class AbschliessenButtonComponent implements OnInit { } public abschliessen(): void { - this.commandStateResource$ = this.vorgangCommandService.abschliessen( - this.vorgangWithEingangResource, - ); + this.commandStateResource$ = this.vorgangCommandService.abschliessen(this.vorgangWithEingangResource); } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.ts index 84fd1c5d4f..cdbf5447b6 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-annehmen-button', templateUrl: './annehmen-button.component.html', - styleUrls: ['./annehmen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class AnnehmenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.ts index 9b6b581a8b..b1371472ec 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-bearbeiten-button', templateUrl: './bearbeiten-button.component.html', - styleUrls: ['./bearbeiten-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class BearbeitenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.ts index da2e171f7d..de431e7c59 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.ts @@ -40,7 +40,7 @@ import { VorgangDetailBescheidenComponent } from '../../vorgang-detail-page/vorg @Component({ selector: 'alfa-bescheiden-button', templateUrl: './bescheiden-button.component.html', - styleUrls: ['./bescheiden-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class BescheidenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.ts index ee468e5fb4..6ec2487983 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-verwerfen-button', templateUrl: './verwerfen-button.component.html', - styleUrls: ['./verwerfen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class VerwerfenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.ts index 4887a53a3d..4300791a17 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-wiedereroeffnen-button', templateUrl: './wiedereroeffnen-button.component.html', - styleUrls: ['./wiedereroeffnen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class WiedereroeffnenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.ts index e32881b215..37eeb40bb4 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-zurueckholen-button', templateUrl: './zurueckholen-button.component.html', - styleUrls: ['./zurueckholen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class ZurueckholenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.scss b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.ts index 5ee0685b2d..3c0393503c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.ts @@ -21,28 +21,22 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input, OnInit } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource, createEmptyStateResource } from '@alfa-client/tech-shared'; -import { - VorgangCommandService, - VorgangWithEingangLinkRel, - VorgangWithEingangResource, -} from '@alfa-client/vorgang-shared'; +import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input, OnInit } from '@angular/core'; import { Observable, of } from 'rxjs'; @Component({ selector: 'alfa-zurueckstellen-button', templateUrl: './zurueckstellen-button.component.html', - styleUrls: ['./zurueckstellen-button.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class ZurueckstellenButtonComponent implements OnInit { @Input() vorgang: VorgangWithEingangResource; @Input() showAsIconButton: boolean = false; - commandStateResource$: Observable<StateResource<CommandResource>> = of( - createEmptyStateResource<CommandResource>(), - ); + commandStateResource$: Observable<StateResource<CommandResource>> = of(createEmptyStateResource<CommandResource>()); readonly linkRel = VorgangWithEingangLinkRel; diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html index a8e1579582..742a81193c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html @@ -32,13 +32,9 @@ <alfa-abschliessen-button [vorgang]="vorgangWithEingang" /> <alfa-wiedereroeffnen-button [vorgang]="vorgangWithEingang" /> <!-- TODO LoeschAnforderung dynamisch laden, wenn Link vorhanden --> -<alfa-loeschen-anfordern-button-container - *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN" - data-test-id="loeschen-anfordern-button-container" - [vorgang]="vorgangWithEingang" -> - <!-- --> -</alfa-loeschen-anfordern-button-container> +@if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.LOESCHEN_ANFORDERN) { + <alfa-loeschen-anfordern-button-container data-test-id="loeschen-anfordern-button-container" [vorgang]="vorgangWithEingang" /> +} <alfa-endgueltig-loeschen-button-container [vorgang]="vorgangWithEingang" /> <alfa-loesch-anforderung-zuruecknehmen-button-container /> <alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang" /> diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts index 6af40cc9be..908b73de5e 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts @@ -27,7 +27,7 @@ import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-vorgang-detail-formular-buttons', templateUrl: './vorgang-detail-formular-buttons.component.html', - styles: [':host {@apply mr-12 flex gap-4}'], + styles: [':host {@apply ml-12 flex gap-4}'], }) export class VorgangDetailFormularButtonsComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; -- GitLab From 5c6df5068a4255e18cdafffb1fa68f2d4e0f80d1 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 13:23:42 +0100 Subject: [PATCH 40/57] OZG-7474 Use new ghost buttons --- .../forward-by-ozgcloud-button-container.component.html | 2 +- .../endgueltig-loeschen-button.component.html | 2 +- .../loesch-anforderung-zuruecknehmen-button.component.html | 2 +- .../loeschen-anfordern-button.component.html | 2 +- .../postfach-mail-button/postfach-mail-button.component.html | 4 ++-- .../libs/ui/src/lib/ui/back-button/back-button.component.html | 2 +- .../assign-user-profile-button-container.component.html | 2 +- .../abschliessen-button/abschliessen-button.component.html | 2 +- .../buttons/annehmen-button/annehmen-button.component.html | 2 +- .../bearbeiten-button/bearbeiten-button.component.html | 2 +- .../bescheiden-button/bescheiden-button.component.html | 2 +- .../buttons/verwerfen-button/verwerfen-button.component.html | 2 +- .../wiedereroeffnen-button.component.html | 2 +- .../zurueckholen-button/zurueckholen-button.component.html | 2 +- .../zurueckstellen-button.component.html | 2 +- .../wiedervorlage-create-button.component.html | 2 +- 16 files changed, 17 insertions(+), 17 deletions(-) diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index 729b06b22c..ef41584d17 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -2,7 +2,7 @@ @if (showAsIconButton) { <ods-button-with-spinner tooltip="Vorgang weiterleiten" - variant="icon" + variant="ghost" size="fit" dataTestId="forward-by-ozgcloud-icon-button" > diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html index bdc9f478ca..4b20817356 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html @@ -27,7 +27,7 @@ <ods-button-with-spinner data-test-id="endgueltig-loeschen-icon-button" tooltip="Endgültig löschen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="endgueltigLoeschen.emit()" > diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html index 59a0e021de..70f002e914 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html @@ -28,7 +28,7 @@ [stateResource]="loeschAnforderungZuruecknehmenCommand" data-test-id="loesch-anforderung-zuruecknehmen-icon-button" tooltip="Löschanforderung zurücknehmen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" > diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html index d56365f101..0598d5dfae 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html @@ -28,7 +28,7 @@ [stateResource]="loeschenAnfordernCommand" data-test-id="loeschen-anfordern-icon-button" tooltip="Löschen anfordern" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="loeschenAnfordern.emit()" > diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html index b47984d0cb..22f3399935 100644 --- a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html +++ b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html @@ -30,7 +30,7 @@ data-test-id="send-mail-icon-button" [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" tooltip="Neue Nachricht erstellen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="openPostfachNachrichtenDialog.emit()" > @@ -51,7 +51,7 @@ data-test-id="create-mail-button-without-text" [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE" [tooltip]="toolTip" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="openPostfachNachrichtenDialog.emit()" > diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html index 77c62e3808..44e7788d55 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html @@ -24,7 +24,7 @@ --> <a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby"> - <ods-button variant="icon" size="fit"> + <ods-button variant="ghost" size="fit"> <ods-arrow-left-icon icon class="fill-text" /> </ods-button> </a> diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html index 6469c2a6d8..f0e6aa37b1 100644 --- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html +++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html @@ -28,7 +28,7 @@ svgIcon="account_outline" tooltip="Bearbeiter zuordnen" data-test-id="assign-user-profile-icon-button" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="showUserProfileSearch()" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html index 2c7b3f41e9..f9670cbee8 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html @@ -30,7 +30,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="abschliessen-icon-button" tooltip="Vorgang abschließen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="abschliessen()" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html index b82f8fd9e4..28ef66f3d4 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html @@ -29,7 +29,7 @@ [stateResource]="commandStateResource$ | async" (clickEmitter)="annehmen()" tooltip="Vorgang annehmen" - variant="icon" + variant="ghost" size="fit" data-test-id="annehmen-icon-button" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html index b395e746cf..d1de12ab8c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html @@ -30,7 +30,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="bearbeiten-icon-button" tooltip="Vorgang bearbeiten" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="bearbeiten()" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index de88c613de..da120283e6 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -29,7 +29,7 @@ [stateResource]="commandStateResource$ | async" (clickEmitter)="bescheiden()" [tooltip]="toolTipText" - variant="icon" + variant="ghost" size="fit" data-test-id="bescheiden-icon-button" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html index e5609f8f07..b5e8bd07fb 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html @@ -29,7 +29,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="verwerfen-icon-button" tooltip="Vorgang verwerfen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="verwerfen()" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html index 6c98b512c3..68384c5436 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html @@ -29,7 +29,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="wiedereroeffnen-icon-button" tooltip="Vorgang wiedereröffnen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="wiedereroeffnen()" > diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html index 8ce7dcfcd4..e89caeeded 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html @@ -28,7 +28,7 @@ <ods-button-with-spinner [stateResource]="commandStateResource$ | async" data-test-id="zurueckholen-icon-button" - variant="icon" + variant="ghost" size="fit" tooltip="Vorgang zurückholen" (clickEmitter)="zurueckholen()" diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html index 549e0ec770..abb4132e0f 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html @@ -30,7 +30,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="zurueckstellen-icon-button" tooltip="Vorgang zurückstellen" - variant="icon" + variant="ghost" size="fit" (clickEmitter)="zurueckstellen()" > diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html index 0998d200a4..c37de121c8 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html @@ -30,7 +30,7 @@ @if (showAsIconButton) { <ods-button-with-spinner data-test-id="create-wiedervorlage-icon-button" - variant="icon" + variant="ghost" size="fit" tooltip="Wiedervorlage erstellen" > -- GitLab From ab22b608b5b2a860d83ee80f6b85d922db7e2d74 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Fri, 7 Feb 2025 13:27:26 +0100 Subject: [PATCH 41/57] OZG-7474 Fix back button tab index --- .../libs/ui/src/lib/ui/back-button/back-button.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html index 44e7788d55..1d1e56f7f7 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html @@ -23,7 +23,7 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby"> +<a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby" tabindex="-1"> <ods-button variant="ghost" size="fit"> <ods-arrow-left-icon icon class="fill-text" /> </ods-button> -- GitLab From 533db975342e057fd4f4b3df586bce1d6d799eca Mon Sep 17 00:00:00 2001 From: Martin <git@mail.de> Date: Fri, 7 Feb 2025 18:24:11 +0100 Subject: [PATCH 42/57] OZG-7474 fix e2e tests --- .../vorgang-forward-by-ozgcloud.cy.ts | 46 ++++++++++++++++ ...y.ts => vorgang-forward-by-ozgcloud.cy.ts} | 55 +++++++++---------- 2 files changed, 72 insertions(+), 29 deletions(-) create mode 100644 alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts rename alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/{vorgang-weiterleiten.cy.ts => vorgang-forward-by-ozgcloud.cy.ts} (60%) diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts new file mode 100644 index 0000000000..8b346e0d75 --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts @@ -0,0 +1,46 @@ +import { registerLocaleData } from '@angular/common'; +import localeDe from '@angular/common/locales/de'; +import localeDeExtra from '@angular/common/locales/extra/de'; +import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; +import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; +import { VorgangE2E } from '../../../model/vorgang'; +import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; +import { VorgangPage } from '../../../page-objects/vorgang.po'; +import { dropCollections } from '../../../support/cypress-helper'; +import { exist, notExist } from '../../../support/cypress.util'; +import { loginAsEmil } from '../../../support/user-util'; +import { createVorgang, initVorgaenge } from '../../../support/vorgang-util'; + +registerLocaleData(localeDe, 'de', localeDeExtra); + +describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { + const mainPage: MainPage = new MainPage(); + const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); + + const vorgangPage: VorgangPage = new VorgangPage(); + const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = vorgangPage.getFormularButtons(); + + const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; + + before(() => { + initVorgaenge([vorgangWeiterleiten]); + + loginAsEmil(); + + waitForSpinnerToDisappear(); + exist(vorgangList.getRoot()); + }); + + after(() => { + dropCollections(); + }); + + describe('Weiterleiten', () => { + it('should display Weiterleiten button in Status Neu', () => { + vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); + waitForSpinnerToDisappear(); + + notExist(vorgangFormularButtons.getForwardButton()); + }); + }); +}); diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward-by-ozgcloud.cy.ts similarity index 60% rename from alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts rename to alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward-by-ozgcloud.cy.ts index a99564ea6c..d4661c6d5f 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-weiterleiten.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward-by-ozgcloud.cy.ts @@ -2,19 +2,18 @@ import { registerLocaleData } from '@angular/common'; import localeDe from '@angular/common/locales/de'; import localeDeExtra from '@angular/common/locales/extra/de'; import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; -import { HeaderE2EComponent } from 'apps/alfa-e2e/src/page-objects/header.po'; import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; import { VorgangE2E } from '../../../model/vorgang'; import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; import { dropCollections } from '../../../support/cypress-helper'; import { exist, notExist } from '../../../support/cypress.util'; -import { loginAsEmil, loginAsPeter, loginAsSabine } from '../../../support/user-util'; -import { buildVorgang, createVorgang, initVorgaenge, objectIds } from '../../../support/vorgang-util'; +import { loginAsPeter, loginAsSabine } from '../../../support/user-util'; +import { createVorgang, initVorgaenge } from '../../../support/vorgang-util'; registerLocaleData(localeDe, 'de', localeDeExtra); -describe('Vorgang weiterleiten', () => { +describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { const mainPage: MainPage = new MainPage(); const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); @@ -22,23 +21,21 @@ describe('Vorgang weiterleiten', () => { const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = vorgangPage.getFormularButtons(); const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; - const vorgangWeiterleitenUnchanged: VorgangE2E = buildVorgang(objectIds[0], 'Weiterleitung Peter und Emil'); - const header: HeaderE2EComponent = new HeaderE2EComponent(); - - before(() => { - initVorgaenge([vorgangWeiterleiten, vorgangWeiterleitenUnchanged]); - - loginAsSabine(); - - waitForSpinnerToDisappear(); - exist(vorgangList.getRoot()); - }); after(() => { dropCollections(); }); - describe('Weiterleiten', () => { + describe('For Sabine', () => { + before(() => { + initVorgaenge([vorgangWeiterleiten]); + + loginAsSabine(); + + waitForSpinnerToDisappear(); + exist(vorgangList.getRoot()); + }); + it('should display Weiterleiten button in Status Neu', () => { vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); waitForSpinnerToDisappear(); @@ -46,33 +43,33 @@ describe('Vorgang weiterleiten', () => { exist(vorgangFormularButtons.getForwardButton()); }); - it('should not display Weiterleiten button in other Status', () => { + it('should not display Weiterleiten button in Status Angenommen', () => { vorgangFormularButtons.getAnnehmenButton().click(); waitForSpinnerToDisappear(); + notExist(vorgangFormularButtons.getForwardButton()); + }); + it('should not display Weiterleiten button in Status In Bearbeitung', () => { vorgangFormularButtons.getBearbeitenButton().click(); waitForSpinnerToDisappear(); + notExist(vorgangFormularButtons.getForwardButton()); }); + }); + + describe('For Peter', () => { + before(() => { + initVorgaenge([vorgangWeiterleiten]); - it('should not be displayed for user Peter in Status Neu', () => { - header.getCurrentUserProfile().logout(); loginAsPeter(); - waitForSpinnerToDisappear(); - vorgangList.getListItem(vorgangWeiterleitenUnchanged.name).getRoot().click(); waitForSpinnerToDisappear(); - - notExist(vorgangFormularButtons.getForwardButton()); + exist(vorgangList.getRoot()); }); - it('should not be displayed for user Emil in Status Neu', () => { - header.getCurrentUserProfile().logout(); - loginAsEmil(); - waitForSpinnerToDisappear(); - - vorgangList.getListItem(vorgangWeiterleitenUnchanged.name).getRoot().click(); + it('should not display Weiterleiten button in Status In Neu', () => { + vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); waitForSpinnerToDisappear(); notExist(vorgangFormularButtons.getForwardButton()); -- GitLab From f5139e661e3acbf4fce1380fe2c10a5347ebb761 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 09:58:23 +0100 Subject: [PATCH 43/57] OZG-7474 Rename discard icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../discard-icon.component.spec.ts | 21 ------------------- .../discard-vorgang-icon.component.spec.ts | 21 +++++++++++++++++++ .../discard-vorgang-icon.component.ts} | 4 ++-- .../discard-vorgang-icon.stories.ts} | 10 ++++----- .../verwerfen-button.component.html | 4 ++-- .../verwerfen-button.component.spec.ts | 4 ++-- .../src/lib/vorgang-detail.module.ts | 4 ++-- 8 files changed, 35 insertions(+), 35 deletions(-) delete mode 100644 alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.spec.ts rename alfa-client/libs/design-system/src/lib/icons/{discard-icon/discard-icon.component.ts => discard-vorgang-icon/discard-vorgang-icon.component.ts} (93%) rename alfa-client/libs/design-system/src/lib/icons/{discard-icon/discard-icon.stories.ts => discard-vorgang-icon/discard-vorgang-icon.stories.ts} (63%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 67b4390634..fb9bd32b7b 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -54,7 +54,7 @@ export * from './lib/icons/check-circle-icon/check-circle-icon.component'; export * from './lib/icons/check-icon/check-icon.component'; export * from './lib/icons/close-icon/close-icon.component'; export * from './lib/icons/delete-finally-icon/delete-finally-icon.component'; -export * from './lib/icons/discard-icon/discard-icon.component'; +export * from './lib/icons/discard-vorgang-icon/discard-vorgang-icon.component'; export * from './lib/icons/edit-icon/edit-icon.component'; export * from './lib/icons/error-icon/error-icon.component'; export * from './lib/icons/exclamation-icon/exclamation-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts deleted file mode 100644 index 485cdcd99d..0000000000 --- a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { DiscardIconComponent } from './discard-icon.component'; - -describe('DiscardIconComponent', () => { - let component: DiscardIconComponent; - let fixture: ComponentFixture<DiscardIconComponent>; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [DiscardIconComponent], - }).compileComponents(); - - fixture = TestBed.createComponent(DiscardIconComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.spec.ts new file mode 100644 index 0000000000..42eed91241 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { DiscardVorgangIconComponent } from './discard-vorgang-icon.component'; + +describe('DiscardVorgangIconComponent', () => { + let component: DiscardVorgangIconComponent; + let fixture: ComponentFixture<DiscardVorgangIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DiscardVorgangIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(DiscardVorgangIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.ts similarity index 93% rename from alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.ts index 377bf1af5b..1cee910fac 100644 --- a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { IconVariants, iconVariants } from '../iconVariants'; @Component({ - selector: 'ods-discard-icon', + selector: 'ods-discard-vorgang-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -23,7 +23,7 @@ import { IconVariants, iconVariants } from '../iconVariants'; /> </svg>`, }) -export class DiscardIconComponent { +export class DiscardVorgangIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.stories.ts similarity index 63% rename from alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.stories.ts index 9237024932..6c73a8fd59 100644 --- a/alfa-client/libs/design-system/src/lib/icons/discard-icon/discard-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/discard-vorgang-icon/discard-vorgang-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { DiscardIconComponent } from './discard-icon.component'; +import { DiscardVorgangIconComponent } from './discard-vorgang-icon.component'; -const meta: Meta<DiscardIconComponent> = { - title: 'Icons/Discard icon', - component: DiscardIconComponent, +const meta: Meta<DiscardVorgangIconComponent> = { + title: 'Icons/Discard Vorgang icon', + component: DiscardVorgangIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<DiscardIconComponent>; +type Story = StoryObj<DiscardVorgangIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html index b5e8bd07fb..8d663e5e9b 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html @@ -33,7 +33,7 @@ size="fit" (clickEmitter)="verwerfen()" > - <ods-discard-icon icon class="fill-text" /> + <ods-discard-vorgang-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -43,7 +43,7 @@ variant="outline" (clickEmitter)="verwerfen()" > - <ods-discard-icon icon /> + <ods-discard-vorgang-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts index b751788dcc..ebdb6df88b 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts @@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { DiscardIconComponent } from '@ods/system'; +import { DiscardVorgangIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -51,7 +51,7 @@ describe('VerwerfenButtonComponent', () => { declarations: [ VerwerfenButtonComponent, MockComponent(ButtonWithSpinnerComponent), - MockComponent(DiscardIconComponent), + MockComponent(DiscardVorgangIconComponent), HasLinkPipe, ], providers: [ diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index dc75d98df3..6c46766049 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -61,7 +61,7 @@ import { CheckCircleIconComponent, CheckIconComponent, CloseIconComponent, - DiscardIconComponent, + DiscardVorgangIconComponent, DropdownMenuComponent, DropdownMenuTextItemComponent, EditIconComponent, @@ -188,7 +188,7 @@ const routes: Routes = [ ForwardByOzgcloudButtonContainerComponent, TooltipDirective, EditIconComponent, - DiscardIconComponent, + DiscardVorgangIconComponent, ], declarations: [ VorgangDetailPageComponent, -- GitLab From 9687f284aa13ef031115802528ba3a2cf411b5e6 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:14:43 +0100 Subject: [PATCH 44/57] OZG-7474 Rename delete finally icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../delete-finally-icon.component.spec.ts | 21 ------------------- ...ete-vorgang-finally-icon.component.spec.ts | 21 +++++++++++++++++++ .../delete-vorgang-finally-icon.component.ts} | 4 ++-- .../delete-vorgang-finally-icon.stories.ts} | 10 ++++----- .../endgueltig-loeschen-button.component.html | 4 ++-- ...dgueltig-loeschen-button.component.spec.ts | 4 ++-- .../src/lib/loesch-anforderung.module.ts | 4 ++-- 8 files changed, 35 insertions(+), 35 deletions(-) delete mode 100644 alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.spec.ts rename alfa-client/libs/design-system/src/lib/icons/{delete-finally-icon/delete-finally-icon.component.ts => delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.ts} (96%) rename alfa-client/libs/design-system/src/lib/icons/{delete-finally-icon/delete-finally-icon.stories.ts => delete-vorgang-finally-icon/delete-vorgang-finally-icon.stories.ts} (60%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index fb9bd32b7b..7d048f1009 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -53,7 +53,7 @@ export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; export * from './lib/icons/check-circle-icon/check-circle-icon.component'; export * from './lib/icons/check-icon/check-icon.component'; export * from './lib/icons/close-icon/close-icon.component'; -export * from './lib/icons/delete-finally-icon/delete-finally-icon.component'; +export * from './lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component'; export * from './lib/icons/discard-vorgang-icon/discard-vorgang-icon.component'; export * from './lib/icons/edit-icon/edit-icon.component'; export * from './lib/icons/error-icon/error-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts deleted file mode 100644 index 88eee559f2..0000000000 --- a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { DeleteFinallyIconComponent } from './delete-finally-icon.component'; - -describe('DeleteFinallyIconComponent', () => { - let component: DeleteFinallyIconComponent; - let fixture: ComponentFixture<DeleteFinallyIconComponent>; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [DeleteFinallyIconComponent], - }).compileComponents(); - - fixture = TestBed.createComponent(DeleteFinallyIconComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.spec.ts new file mode 100644 index 0000000000..badea86a5e --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { DeleteVorgangFinallyIconComponent } from './delete-vorgang-finally-icon.component'; + +describe('DeleteVorgangFinallyIconComponent', () => { + let component: DeleteVorgangFinallyIconComponent; + let fixture: ComponentFixture<DeleteVorgangFinallyIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [DeleteVorgangFinallyIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(DeleteVorgangFinallyIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.ts similarity index 96% rename from alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.ts index 5fc6c68cfa..4d99ed334f 100644 --- a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { IconVariants, iconVariants } from '../iconVariants'; @Component({ - selector: 'ods-delete-finally-icon', + selector: 'ods-delete-vorgang-finally-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -56,7 +56,7 @@ import { IconVariants, iconVariants } from '../iconVariants'; /> </svg> `, }) -export class DeleteFinallyIconComponent { +export class DeleteVorgangFinallyIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.stories.ts similarity index 60% rename from alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.stories.ts index dee35416ea..ddb92e8a00 100644 --- a/alfa-client/libs/design-system/src/lib/icons/delete-finally-icon/delete-finally-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/delete-vorgang-finally-icon/delete-vorgang-finally-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { DeleteFinallyIconComponent } from './delete-finally-icon.component'; +import { DeleteVorgangFinallyIconComponent } from './delete-vorgang-finally-icon.component'; -const meta: Meta<DeleteFinallyIconComponent> = { - title: 'Icons/Delete finally icon', - component: DeleteFinallyIconComponent, +const meta: Meta<DeleteVorgangFinallyIconComponent> = { + title: 'Icons/Delete Vorgang finally icon', + component: DeleteVorgangFinallyIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<DeleteFinallyIconComponent>; +type Story = StoryObj<DeleteVorgangFinallyIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html index 4b20817356..bf476f537b 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html @@ -31,7 +31,7 @@ size="fit" (clickEmitter)="endgueltigLoeschen.emit()" > - <ods-delete-finally-icon icon class="fill-text" /> + <ods-delete-vorgang-finally-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -40,6 +40,6 @@ variant="outline" (clickEmitter)="endgueltigLoeschen.emit()" > - <ods-delete-finally-icon icon /> + <ods-delete-vorgang-finally-icon icon /> </ods-button-with-spinner> } diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts index 525dbbc86c..66d46e2f07 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts @@ -24,7 +24,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { DeleteFinallyIconComponent } from '@ods/system'; +import { DeleteVorgangFinallyIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button.component'; @@ -41,7 +41,7 @@ describe('EndgueltigLoeschenButtonComponent', () => { declarations: [ EndgueltigLoeschenButtonComponent, MockComponent(ButtonWithSpinnerComponent), - MockComponent(DeleteFinallyIconComponent), + MockComponent(DeleteVorgangFinallyIconComponent), ], }).compileComponents(); diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index 46602fb2d9..959c858988 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -28,7 +28,7 @@ import { VorgangSharedModule } from '@alfa-client/vorgang-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { DeleteFinallyIconComponent, RequestDeletionIconComponent, UndoRequestDeletionIconComponent } from '@ods/system'; +import { DeleteVorgangFinallyIconComponent, RequestDeletionIconComponent, UndoRequestDeletionIconComponent } from '@ods/system'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; @@ -45,7 +45,7 @@ import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-co VorgangSharedModule, RequestDeletionIconComponent, ButtonWithSpinnerComponent, - DeleteFinallyIconComponent, + DeleteVorgangFinallyIconComponent, UndoRequestDeletionIconComponent, ], declarations: [ -- GitLab From 11e3e77245fbeebdb66a60ea040c433782ff167d Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:28:41 +0100 Subject: [PATCH 45/57] OZG-7474 Rename request deletion icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../request-deletion-icon.component.spec.ts | 21 ------------------- ...st-vorgang-deletion-icon.component.spec.ts | 21 +++++++++++++++++++ ...equest-vorgang-deletion-icon.component.ts} | 4 ++-- .../request-vorgang-deletion-icon.stories.ts} | 10 ++++----- .../src/lib/loesch-anforderung.module.ts | 8 +++++-- .../loeschen-anfordern-button.component.html | 4 ++-- ...oeschen-anfordern-button.component.spec.ts | 4 ++-- 8 files changed, 39 insertions(+), 35 deletions(-) delete mode 100644 alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.spec.ts rename alfa-client/libs/design-system/src/lib/icons/{request-deletion-icon/request-deletion-icon.component.ts => request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.ts} (90%) rename alfa-client/libs/design-system/src/lib/icons/{request-deletion-icon/request-deletion-icon.stories.ts => request-vorgang-deletion-icon/request-vorgang-deletion-icon.stories.ts} (59%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 7d048f1009..4c5f8e10ce 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -72,7 +72,7 @@ export * from './lib/icons/ozg-logo-icon/ozg-logo-icon.component'; export * from './lib/icons/person-icon/person-icon.component'; export * from './lib/icons/plus-icon/plus-icon.component'; export * from './lib/icons/public-administration-icon/public-administration-icon.component'; -export * from './lib/icons/request-deletion-icon/request-deletion-icon.component'; +export * from './lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component'; export * from './lib/icons/save-icon/save-icon.component'; export * from './lib/icons/search-icon/search-icon.component'; export * from './lib/icons/send-icon/send-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts deleted file mode 100644 index 4de4999c60..0000000000 --- a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { RequestDeletionIconComponent } from './request-deletion-icon.component'; - -describe('RequestDeletionIconComponent', () => { - let component: RequestDeletionIconComponent; - let fixture: ComponentFixture<RequestDeletionIconComponent>; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [RequestDeletionIconComponent], - }).compileComponents(); - - fixture = TestBed.createComponent(RequestDeletionIconComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.spec.ts new file mode 100644 index 0000000000..e8655275d9 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { RequestVorgangDeletionIconComponent } from './request-vorgang-deletion-icon.component'; + +describe('RequestVorgangDeletionIconComponent', () => { + let component: RequestVorgangDeletionIconComponent; + let fixture: ComponentFixture<RequestVorgangDeletionIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [RequestVorgangDeletionIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(RequestVorgangDeletionIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.ts similarity index 90% rename from alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.ts index 7e42262610..ca9dd83e0e 100644 --- a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { iconVariants, IconVariants } from '../iconVariants'; @Component({ - selector: 'ods-request-deletion-icon', + selector: 'ods-request-vorgang-deletion-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -19,7 +19,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; /> </svg>`, }) -export class RequestDeletionIconComponent { +export class RequestVorgangDeletionIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.stories.ts similarity index 59% rename from alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.stories.ts index d0ff870f40..eed9f6bc60 100644 --- a/alfa-client/libs/design-system/src/lib/icons/request-deletion-icon/request-deletion-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/request-vorgang-deletion-icon/request-vorgang-deletion-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { RequestDeletionIconComponent } from './request-deletion-icon.component'; +import { RequestVorgangDeletionIconComponent } from './request-vorgang-deletion-icon.component'; -const meta: Meta<RequestDeletionIconComponent> = { - title: 'Icons/Request deletion icon', - component: RequestDeletionIconComponent, +const meta: Meta<RequestVorgangDeletionIconComponent> = { + title: 'Icons/Request Vorgang deletion icon', + component: RequestVorgangDeletionIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<RequestDeletionIconComponent>; +type Story = StoryObj<RequestVorgangDeletionIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index 959c858988..741f80a0e3 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -28,7 +28,11 @@ import { VorgangSharedModule } from '@alfa-client/vorgang-shared'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { DeleteVorgangFinallyIconComponent, RequestDeletionIconComponent, UndoRequestDeletionIconComponent } from '@ods/system'; +import { + DeleteVorgangFinallyIconComponent, + RequestVorgangDeletionIconComponent, + UndoRequestDeletionIconComponent, +} from '@ods/system'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; import { LoeschAnforderungZuruecknehmenButtonContainerComponent } from './loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button-container.component'; @@ -43,7 +47,7 @@ import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-co TechSharedModule, UiModule, VorgangSharedModule, - RequestDeletionIconComponent, + RequestVorgangDeletionIconComponent, ButtonWithSpinnerComponent, DeleteVorgangFinallyIconComponent, UndoRequestDeletionIconComponent, diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html index 0598d5dfae..4a7cc9cb40 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html @@ -32,7 +32,7 @@ size="fit" (clickEmitter)="loeschenAnfordern.emit()" > - <ods-request-deletion-icon icon class="fill-text" /> + <ods-request-vorgang-deletion-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -42,6 +42,6 @@ variant="outline" (clickEmitter)="loeschenAnfordern.emit()" > - <ods-request-deletion-icon icon /> + <ods-request-vorgang-deletion-icon icon /> </ods-button-with-spinner> } diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts index 33fad21246..f859031baf 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts @@ -24,7 +24,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { RequestDeletionIconComponent } from '@ods/system'; +import { RequestVorgangDeletionIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button.component'; @@ -41,7 +41,7 @@ describe('LoeschenAnfordernButtonComponent', () => { declarations: [ LoeschenAnfordernButtonComponent, MockComponent(ButtonWithSpinnerComponent), - MockComponent(RequestDeletionIconComponent), + MockComponent(RequestVorgangDeletionIconComponent), ], }).compileComponents(); -- GitLab From 23238baceb27a54c881fd5544b250c6b2a1cced1 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:34:39 +0100 Subject: [PATCH 46/57] OZG-7474 Rename undo request deletion icon --- alfa-client/libs/design-system/src/index.ts | 2 +- ...do-request-deletion-icon.component.spec.ts | 21 ------------------- ...st-vorgang-deletion-icon.component.spec.ts | 21 +++++++++++++++++++ ...equest-vorgang-deletion-icon.component.ts} | 4 ++-- ...-request-vorgang-deletion-icon.stories.ts} | 10 ++++----- ...derung-zuruecknehmen-button.component.html | 4 ++-- ...ung-zuruecknehmen-button.component.spec.ts | 4 ++-- .../src/lib/loesch-anforderung.module.ts | 4 ++-- 8 files changed, 35 insertions(+), 35 deletions(-) delete mode 100644 alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts create mode 100644 alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.spec.ts rename alfa-client/libs/design-system/src/lib/icons/{undo-request-deletion-icon/undo-request-deletion-icon.component.ts => undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.ts} (89%) rename alfa-client/libs/design-system/src/lib/icons/{undo-request-deletion-icon/undo-request-deletion-icon.stories.ts => undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.stories.ts} (57%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 4c5f8e10ce..29e0e0d41a 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -80,7 +80,7 @@ export * from './lib/icons/settings-icon/settings-icon.component'; export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; -export * from './lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component'; +export * from './lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component'; export * from './lib/icons/update-icon/update-icon.component'; export * from './lib/icons/user-icon/user-icon.component'; export * from './lib/icons/users-icon/users-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts deleted file mode 100644 index 46b0e0fd8e..0000000000 --- a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { UndoRequestDeletionIconComponent } from './undo-request-deletion-icon.component'; - -describe('UndoRequestDeletionIconComponent', () => { - let component: UndoRequestDeletionIconComponent; - let fixture: ComponentFixture<UndoRequestDeletionIconComponent>; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [UndoRequestDeletionIconComponent], - }).compileComponents(); - - fixture = TestBed.createComponent(UndoRequestDeletionIconComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.spec.ts new file mode 100644 index 0000000000..8ac05bee99 --- /dev/null +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.spec.ts @@ -0,0 +1,21 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { UndoRequestVorgangDeletionIconComponent } from './undo-request-vorgang-deletion-icon.component'; + +describe('UndoRequestVorgangDeletionIconComponent', () => { + let component: UndoRequestVorgangDeletionIconComponent; + let fixture: ComponentFixture<UndoRequestVorgangDeletionIconComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [UndoRequestVorgangDeletionIconComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(UndoRequestVorgangDeletionIconComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.ts similarity index 89% rename from alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.ts index afdcfae650..0140ae651f 100644 --- a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { iconVariants, IconVariants } from '../iconVariants'; @Component({ - selector: 'ods-undo-request-deletion-icon', + selector: 'ods-undo-request-vorgang-deletion-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -18,7 +18,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; /> </svg>`, }) -export class UndoRequestDeletionIconComponent { +export class UndoRequestVorgangDeletionIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.stories.ts similarity index 57% rename from alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.stories.ts index 88a4f0fe21..c5f0bd31fa 100644 --- a/alfa-client/libs/design-system/src/lib/icons/undo-request-deletion-icon/undo-request-deletion-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { UndoRequestDeletionIconComponent } from './undo-request-deletion-icon.component'; +import { UndoRequestVorgangDeletionIconComponent } from './undo-request-vorgang-deletion-icon.component'; -const meta: Meta<UndoRequestDeletionIconComponent> = { - title: 'Icons/Undo request deletion icon', - component: UndoRequestDeletionIconComponent, +const meta: Meta<UndoRequestVorgangDeletionIconComponent> = { + title: 'Icons/Undo request vorgang deletion icon', + component: UndoRequestVorgangDeletionIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<UndoRequestDeletionIconComponent>; +type Story = StoryObj<UndoRequestVorgangDeletionIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html index 70f002e914..3aee95356b 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html @@ -32,7 +32,7 @@ size="fit" (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" > - <ods-undo-request-deletion-icon icon class="fill-text" /> + <ods-undo-request-vorgang-deletion-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -42,6 +42,6 @@ variant="outline" (clickEmitter)="loeschAnforderungZuruecknehmen.emit()" > - <ods-undo-request-deletion-icon icon /> + <ods-undo-request-vorgang-deletion-icon icon /> </ods-button-with-spinner> } diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts index f1d0a15c80..f51d85f101 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts @@ -24,7 +24,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { UndoRequestDeletionIconComponent } from '@ods/system'; +import { UndoRequestVorgangDeletionIconComponent } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent } from 'ng-mocks'; import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button.component'; @@ -41,7 +41,7 @@ describe('LoeschAnforderungZuruecknehmenButtonComponent', () => { declarations: [ LoeschAnforderungZuruecknehmenButtonComponent, MockComponent(ButtonWithSpinnerComponent), - MockComponent(UndoRequestDeletionIconComponent), + MockComponent(UndoRequestVorgangDeletionIconComponent), ], }).compileComponents(); diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts index 741f80a0e3..7c4b75ff77 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung.module.ts @@ -31,7 +31,7 @@ import { ButtonWithSpinnerComponent } from '@ods/component'; import { DeleteVorgangFinallyIconComponent, RequestVorgangDeletionIconComponent, - UndoRequestDeletionIconComponent, + UndoRequestVorgangDeletionIconComponent, } from '@ods/system'; import { EndgueltigLoeschenButtonContainerComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component'; import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component'; @@ -50,7 +50,7 @@ import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button-co RequestVorgangDeletionIconComponent, ButtonWithSpinnerComponent, DeleteVorgangFinallyIconComponent, - UndoRequestDeletionIconComponent, + UndoRequestVorgangDeletionIconComponent, ], declarations: [ LoeschenAnfordernButtonContainerComponent, -- GitLab From f0d7557f35cad433445c65ec8fbb54ee1ff5d381 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:40:06 +0100 Subject: [PATCH 47/57] OZG-7474 Rename forward icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../forward-vorgang-icon.component.spec.ts} | 12 ++++++------ .../forward-vorgang-icon.component.ts} | 4 ++-- .../forward-vorgang-icon.stories.ts} | 10 +++++----- ...rward-by-ozgcloud-button-container.component.html | 4 ++-- ...rd-by-ozgcloud-button-container.component.spec.ts | 4 ++-- ...forward-by-ozgcloud-button-container.component.ts | 4 ++-- 7 files changed, 20 insertions(+), 20 deletions(-) rename alfa-client/libs/design-system/src/lib/icons/{forward-icon/forward-icon.component.spec.ts => forward-vorgang-icon/forward-vorgang-icon.component.spec.ts} (78%) rename alfa-client/libs/design-system/src/lib/icons/{forward-icon/forward-icon.component.ts => forward-vorgang-icon/forward-vorgang-icon.component.ts} (96%) rename alfa-client/libs/design-system/src/lib/icons/{forward-icon/forward-icon.stories.ts => forward-vorgang-icon/forward-vorgang-icon.stories.ts} (84%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 29e0e0d41a..88419a602f 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -60,7 +60,7 @@ export * from './lib/icons/error-icon/error-icon.component'; export * from './lib/icons/exclamation-icon/exclamation-icon.component'; export * from './lib/icons/external-unit-icon/external-unit-icon.component'; export * from './lib/icons/file-icon/file-icon.component'; -export * from './lib/icons/forward-icon/forward-icon.component'; +export * from './lib/icons/forward-vorgang-icon/forward-vorgang-icon.component'; export * from './lib/icons/help-icon/help-icon.component'; export * from './lib/icons/iconVariants'; export * from './lib/icons/logout-icon/logout-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.spec.ts similarity index 78% rename from alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts rename to alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.spec.ts index 6f765213a0..dcbe4c3e63 100644 --- a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.spec.ts +++ b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.spec.ts @@ -22,18 +22,18 @@ * unter der Lizenz sind dem Lizenztext zu entnehmen. */ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ForwardIconComponent } from './forward-icon.component'; +import { ForwardVorgangIconComponent } from './forward-vorgang-icon.component'; -describe('ForwardIconComponent', () => { - let component: ForwardIconComponent; - let fixture: ComponentFixture<ForwardIconComponent>; +describe('ForwardVorgangIconComponent', () => { + let component: ForwardVorgangIconComponent; + let fixture: ComponentFixture<ForwardVorgangIconComponent>; beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [ForwardIconComponent], + imports: [ForwardVorgangIconComponent], }).compileComponents(); - fixture = TestBed.createComponent(ForwardIconComponent); + fixture = TestBed.createComponent(ForwardVorgangIconComponent); component = fixture.componentInstance; fixture.detectChanges(); }); diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.ts similarity index 96% rename from alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.ts index 586fbe1527..983f661619 100644 --- a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.component.ts @@ -27,7 +27,7 @@ import { twMerge } from 'tailwind-merge'; import { iconVariants, IconVariants } from '../iconVariants'; @Component({ - selector: 'ods-forward-icon', + selector: 'ods-forward-vorgang-icon', standalone: true, imports: [NgClass], template: `<svg @@ -44,7 +44,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; /> </svg>`, }) -export class ForwardIconComponent { +export class ForwardVorgangIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = undefined; diff --git a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.stories.ts similarity index 84% rename from alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.stories.ts index 07e7e62158..2fd3fa932e 100644 --- a/alfa-client/libs/design-system/src/lib/icons/forward-icon/forward-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/forward-vorgang-icon/forward-vorgang-icon.stories.ts @@ -23,17 +23,17 @@ */ import type { Meta, StoryObj } from '@storybook/angular'; -import { ForwardIconComponent } from './forward-icon.component'; +import { ForwardVorgangIconComponent } from './forward-vorgang-icon.component'; -const meta: Meta<ForwardIconComponent> = { - title: 'Icons/Forward icon', - component: ForwardIconComponent, +const meta: Meta<ForwardVorgangIconComponent> = { + title: 'Icons/Forward Vorgang icon', + component: ForwardVorgangIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<ForwardIconComponent>; +type Story = StoryObj<ForwardVorgangIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html index ef41584d17..c3a536b79e 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html @@ -6,11 +6,11 @@ size="fit" dataTestId="forward-by-ozgcloud-icon-button" > - <ods-forward-icon icon class="fill-text" /> + <ods-forward-vorgang-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button"> - <ods-forward-icon icon /> + <ods-forward-vorgang-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts index 8b978c4749..3479fbc724 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -2,7 +2,7 @@ import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-u import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { ForwardIconComponent, TooltipDirective } from '@ods/system'; +import { ForwardVorgangIconComponent, TooltipDirective } from '@ods/system'; import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent, MockDirective } from 'ng-mocks'; @@ -20,7 +20,7 @@ describe('ForwardByOzgcloudButtonContainerComponent', () => { imports: [ForwardByOzgcloudButtonContainerComponent], declarations: [ MockComponent(ButtonWithSpinnerComponent), - MockComponent(ForwardIconComponent), + MockComponent(ForwardVorgangIconComponent), MockDirective(TooltipDirective), ], }).compileComponents(); diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts index 04498b4cfc..b00da7ddb3 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts @@ -3,12 +3,12 @@ import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-cli import { CommonModule } from '@angular/common'; import { Component, Input } from '@angular/core'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { ForwardIconComponent, TooltipDirective } from '@ods/system'; +import { ForwardVorgangIconComponent, TooltipDirective } from '@ods/system'; @Component({ selector: 'alfa-forward-by-ozgcloud-button-container', standalone: true, - imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardIconComponent, TooltipDirective], + imports: [CommonModule, TechSharedModule, ButtonWithSpinnerComponent, ForwardVorgangIconComponent, TooltipDirective], templateUrl: './forward-by-ozgcloud-button-container.component.html', styles: [':host {@apply empty:hidden}'], }) -- GitLab From da5e2b6d9bfd756dca9a6346edf24753a229e74c Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:44:57 +0100 Subject: [PATCH 48/57] OZG-7474 Rename back arrow icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../undo-icon.component.spec.ts} | 12 ++++++------ .../undo-icon.component.ts} | 4 ++-- .../undo-icon.stories.ts} | 10 +++++----- .../wiedereroeffnen-button.component.html | 4 ++-- .../wiedereroeffnen-button.component.spec.ts | 4 ++-- .../zurueckholen-button.component.html | 4 ++-- .../zurueckholen-button.component.spec.ts | 4 ++-- .../zurueckstellen-button.component.html | 4 ++-- .../zurueckstellen-button.component.spec.ts | 4 ++-- .../vorgang-detail/src/lib/vorgang-detail.module.ts | 4 ++-- 11 files changed, 28 insertions(+), 28 deletions(-) rename alfa-client/libs/design-system/src/lib/icons/{back-arrow-icon/back-arrow-icon.component.spec.ts => undo-icon/undo-icon.component.spec.ts} (50%) rename alfa-client/libs/design-system/src/lib/icons/{back-arrow-icon/back-arrow-icon.component.ts => undo-icon/undo-icon.component.ts} (91%) rename alfa-client/libs/design-system/src/lib/icons/{back-arrow-icon/back-arrow-icon.stories.ts => undo-icon/undo-icon.stories.ts} (66%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 88419a602f..7c071e98e3 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -47,7 +47,6 @@ export * from './lib/icons/admin-logo-icon/admin-logo-icon.component'; export * from './lib/icons/archive-icon/archive-icon.component'; export * from './lib/icons/arrow-left-icon/arrow-left-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; -export * from './lib/icons/back-arrow-icon/back-arrow-icon.component'; export * from './lib/icons/bescheid-generate-icon/bescheid-generate-icon.component'; export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; export * from './lib/icons/check-circle-icon/check-circle-icon.component'; @@ -80,6 +79,7 @@ export * from './lib/icons/settings-icon/settings-icon.component'; export * from './lib/icons/spinner-icon/spinner-icon.component'; export * from './lib/icons/stamp-icon/stamp-icon.component'; export * from './lib/icons/statistic-icon/statistic-icon.component'; +export * from './lib/icons/undo-icon/undo-icon.component'; export * from './lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component'; export * from './lib/icons/update-icon/update-icon.component'; export * from './lib/icons/user-icon/user-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts similarity index 50% rename from alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts index 97ab265a26..fda1f7e237 100644 --- a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.spec.ts +++ b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts @@ -1,16 +1,16 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { BackArrowIconComponent } from './back-arrow-icon.component'; +import { UndoIconComponent } from './undo-icon.component'; -describe('BackArrowIconComponent', () => { - let component: BackArrowIconComponent; - let fixture: ComponentFixture<BackArrowIconComponent>; +describe('UndoIconComponent', () => { + let component: UndoIconComponent; + let fixture: ComponentFixture<UndoIconComponent>; beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [BackArrowIconComponent], + imports: [UndoIconComponent], }).compileComponents(); - fixture = TestBed.createComponent(BackArrowIconComponent); + fixture = TestBed.createComponent(UndoIconComponent); component = fixture.componentInstance; fixture.detectChanges(); }); diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts similarity index 91% rename from alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts index 6a386e8222..7b36f81af4 100644 --- a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { iconVariants, IconVariants } from '../iconVariants'; @Component({ - selector: 'ods-back-arrow-icon', + selector: 'ods-undo-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -18,7 +18,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; /> </svg>`, }) -export class BackArrowIconComponent { +export class UndoIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts similarity index 66% rename from alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts index 280e82230b..0d2d78f814 100644 --- a/alfa-client/libs/design-system/src/lib/icons/back-arrow-icon/back-arrow-icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { BackArrowIconComponent } from './back-arrow-icon.component'; +import { UndoIconComponent } from './undo-icon.component'; -const meta: Meta<BackArrowIconComponent> = { - title: 'Icons/Back arrow icon', - component: BackArrowIconComponent, +const meta: Meta<UndoIconComponent> = { + title: 'Icons/Undo icon', + component: UndoIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<BackArrowIconComponent>; +type Story = StoryObj<UndoIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html index 68384c5436..51b70df609 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html @@ -33,7 +33,7 @@ size="fit" (clickEmitter)="wiedereroeffnen()" > - <ods-back-arrow-icon icon class="fill-text" /> + <ods-undo-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -43,7 +43,7 @@ variant="outline" (clickEmitter)="wiedereroeffnen()" > - <ods-back-arrow-icon icon /> + <ods-undo-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts index 9b3918f016..3ee20a3ec3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts @@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { BackArrowIconComponent } from '@ods/system'; +import { UndoIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -51,7 +51,7 @@ describe('WiedereroeffnenButtonComponent', () => { WiedereroeffnenButtonComponent, HasLinkPipe, MockComponent(ButtonWithSpinnerComponent), - MockComponent(BackArrowIconComponent), + MockComponent(UndoIconComponent), ], providers: [ { diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html index e89caeeded..3fd57ccdb2 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html @@ -33,7 +33,7 @@ tooltip="Vorgang zurückholen" (clickEmitter)="zurueckholen()" > - <ods-back-arrow-icon icon class="fill-text" /> + <ods-undo-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -43,7 +43,7 @@ variant="outline" (clickEmitter)="zurueckholen()" > - <ods-back-arrow-icon icon /> + <ods-undo-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts index 6768e772b3..3a1cd90115 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts @@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { BackArrowIconComponent } from '@ods/system'; +import { UndoIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -52,7 +52,7 @@ describe('ZurueckholenButtonComponent', () => { ZurueckholenButtonComponent, HasLinkPipe, MockComponent(ButtonWithSpinnerComponent), - MockComponent(BackArrowIconComponent), + MockComponent(UndoIconComponent), ], providers: [ { diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html index abb4132e0f..c595747b98 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html @@ -34,7 +34,7 @@ size="fit" (clickEmitter)="zurueckstellen()" > - <ods-back-arrow-icon icon class="fill-text" /> + <ods-undo-icon icon class="fill-text" /> </ods-button-with-spinner> } @else { <ods-button-with-spinner @@ -44,7 +44,7 @@ variant="outline" (clickEmitter)="zurueckstellen()" > - <ods-back-arrow-icon icon /> + <ods-undo-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts index 5f0249853e..b17b7c5a7c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts @@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils'; import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { BackArrowIconComponent } from '@ods/system'; +import { UndoIconComponent } from '@ods/system'; import { createCommandResource } from 'libs/command-shared/test/command'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; @@ -52,7 +52,7 @@ describe('ZurueckstellenButtonComponent', () => { ZurueckstellenButtonComponent, HasLinkPipe, MockComponent(ButtonWithSpinnerComponent), - MockComponent(BackArrowIconComponent), + MockComponent(UndoIconComponent), ], providers: [ { diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts index 6c46766049..80f4453036 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts @@ -52,7 +52,6 @@ import { ArchiveIconComponent, AttachmentComponent, AttachmentWrapperComponent, - BackArrowIconComponent, BescheidGenerateIconComponent, BescheidStatusTextComponent, BescheidUploadIconComponent, @@ -75,6 +74,7 @@ import { SpinnerIconComponent, StampIconComponent, TooltipDirective, + UndoIconComponent, } from '@ods/system'; import { AktenzeichenEditDialogComponent } from './aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component'; import { AktenzeichenEditableComponent } from './aktenzeichen-editable/aktenzeichen-editable.component'; @@ -159,7 +159,7 @@ const routes: Routes = [ RadioButtonCardComponent, ButtonComponent, ButtonCardComponent, - BackArrowIconComponent, + UndoIconComponent, CloseIconComponent, ExclamationIconComponent, SaveIconComponent, -- GitLab From b273a45bd327c4e7ccd9f4e1122490bba9280acd Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 10:55:27 +0100 Subject: [PATCH 49/57] OZG-7474 Rename arrow left icon --- alfa-client/libs/design-system/src/index.ts | 2 +- .../arrow-back-icon.component.spec.ts} | 12 ++++++------ .../arrow-back-icon.component.ts} | 4 ++-- .../arrow-back-icon.stories.ts} | 10 +++++----- .../lib/ui/back-button/back-button.component.html | 2 +- .../lib/ui/back-button/back-button.component.spec.ts | 4 ++-- alfa-client/libs/ui/src/lib/ui/ui.module.ts | 4 ++-- 7 files changed, 19 insertions(+), 19 deletions(-) rename alfa-client/libs/design-system/src/lib/icons/{arrow-left-icon/arrow-left-icon.component.spec.ts => arrow-back-icon/arrow-back-icon.component.spec.ts} (51%) rename alfa-client/libs/design-system/src/lib/icons/{arrow-left-icon/arrow-left-icon.component.ts => arrow-back-icon/arrow-back-icon.component.ts} (90%) rename alfa-client/libs/design-system/src/lib/icons/{arrow-left-icon/arrow-left.icon.stories.ts => arrow-back-icon/arrow-back-icon.stories.ts} (67%) diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts index 7c071e98e3..467032047c 100644 --- a/alfa-client/libs/design-system/src/index.ts +++ b/alfa-client/libs/design-system/src/index.ts @@ -45,7 +45,7 @@ export * from './lib/icons/accessibility-icon/accessibility-icon.component'; export * from './lib/icons/account-circle-icon/account-circle-icon.component'; export * from './lib/icons/admin-logo-icon/admin-logo-icon.component'; export * from './lib/icons/archive-icon/archive-icon.component'; -export * from './lib/icons/arrow-left-icon/arrow-left-icon.component'; +export * from './lib/icons/arrow-back-icon/arrow-back-icon.component'; export * from './lib/icons/attachment-icon/attachment-icon.component'; export * from './lib/icons/bescheid-generate-icon/bescheid-generate-icon.component'; export * from './lib/icons/bescheid-upload-icon/bescheid-upload-icon.component'; diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.spec.ts similarity index 51% rename from alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts rename to alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.spec.ts index e80eb6b7be..744a885c40 100644 --- a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.spec.ts +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.spec.ts @@ -1,16 +1,16 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ArrowLeftIconComponent } from './arrow-left-icon.component'; +import { ArrowBackIconComponent } from './arrow-back-icon.component'; -describe('ArrowLeftIconComponent', () => { - let component: ArrowLeftIconComponent; - let fixture: ComponentFixture<ArrowLeftIconComponent>; +describe('ArrowBackIconComponent', () => { + let component: ArrowBackIconComponent; + let fixture: ComponentFixture<ArrowBackIconComponent>; beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [ArrowLeftIconComponent], + imports: [ArrowBackIconComponent], }).compileComponents(); - fixture = TestBed.createComponent(ArrowLeftIconComponent); + fixture = TestBed.createComponent(ArrowBackIconComponent); component = fixture.componentInstance; fixture.detectChanges(); }); diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.ts similarity index 90% rename from alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts rename to alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.ts index 1dd1c837d2..d0ab0a9d8e 100644 --- a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left-icon.component.ts +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.component.ts @@ -4,7 +4,7 @@ import { twMerge } from 'tailwind-merge'; import { iconVariants, IconVariants } from '../iconVariants'; @Component({ - selector: 'ods-arrow-left-icon', + selector: 'ods-arrow-back-icon', standalone: true, imports: [CommonModule], template: `<svg @@ -16,7 +16,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; <path d="M20.75 11H8.58L14.17 5.41L12.75 4L4.75 12L12.75 20L14.16 18.59L8.58 13H20.75V11Z" /> </svg>`, }) -export class ArrowLeftIconComponent { +export class ArrowBackIconComponent { @Input() size: IconVariants['size'] = 'medium'; @Input() class: string = ''; diff --git a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.stories.ts similarity index 67% rename from alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts rename to alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.stories.ts index 09bd3cd799..1305d80008 100644 --- a/alfa-client/libs/design-system/src/lib/icons/arrow-left-icon/arrow-left.icon.stories.ts +++ b/alfa-client/libs/design-system/src/lib/icons/arrow-back-icon/arrow-back-icon.stories.ts @@ -1,16 +1,16 @@ import type { Meta, StoryObj } from '@storybook/angular'; -import { ArrowLeftIconComponent } from './arrow-left-icon.component'; +import { ArrowBackIconComponent } from './arrow-back-icon.component'; -const meta: Meta<ArrowLeftIconComponent> = { - title: 'Icons/Arrow left icon', - component: ArrowLeftIconComponent, +const meta: Meta<ArrowBackIconComponent> = { + title: 'Icons/Arrow back icon', + component: ArrowBackIconComponent, excludeStories: /.*Data$/, tags: ['autodocs'], }; export default meta; -type Story = StoryObj<ArrowLeftIconComponent>; +type Story = StoryObj<ArrowBackIconComponent>; export const Default: Story = { args: { size: 'large' }, diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html index 1d1e56f7f7..24868baff4 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html @@ -25,6 +25,6 @@ --> <a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby" tabindex="-1"> <ods-button variant="ghost" size="fit"> - <ods-arrow-left-icon icon class="fill-text" /> + <ods-arrow-back-icon icon class="fill-text" /> </ods-button> </a> diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts index 7da998d8a8..1e440ea225 100644 --- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts +++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.spec.ts @@ -25,7 +25,7 @@ import { getElementFromFixture } from '@alfa-client/test-utils'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { faker } from '@faker-js/faker'; -import { ArrowLeftIconComponent, ButtonComponent, TooltipDirective } from '@ods/system'; +import { ArrowBackIconComponent, ButtonComponent, TooltipDirective } from '@ods/system'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { MockComponent, MockDirective } from 'ng-mocks'; import { BackButtonComponent } from './back-button.component'; @@ -43,7 +43,7 @@ describe('BackButtonComponent', () => { declarations: [ BackButtonComponent, MockComponent(ButtonComponent), - MockComponent(ArrowLeftIconComponent), + MockComponent(ArrowBackIconComponent), MockDirective(TooltipDirective), ], imports: [RouterTestingModule], diff --git a/alfa-client/libs/ui/src/lib/ui/ui.module.ts b/alfa-client/libs/ui/src/lib/ui/ui.module.ts index 4a3c422a01..e7c19b188d 100644 --- a/alfa-client/libs/ui/src/lib/ui/ui.module.ts +++ b/alfa-client/libs/ui/src/lib/ui/ui.module.ts @@ -48,7 +48,7 @@ import { MatSnackBarModule } from '@angular/material/snack-bar'; import { MatTabsModule } from '@angular/material/tabs'; import { RouterModule } from '@angular/router'; import { - ArrowLeftIconComponent, + ArrowBackIconComponent, ButtonComponent, FileUploadButtonComponent, SpinnerIconComponent, @@ -169,7 +169,7 @@ import { ValidationErrorComponent } from './validation-error/validation-error.co SpinnerIconComponent, TooltipDirective, ButtonComponent, - ArrowLeftIconComponent, + ArrowBackIconComponent, ], exports: [ MatButtonModule, -- GitLab From 2cd56971974772a3c34e21370588bc8c7ec8f07c Mon Sep 17 00:00:00 2001 From: Albert <Albert.Bruns@mgm-tp.com> Date: Mon, 10 Feb 2025 12:49:07 +0100 Subject: [PATCH 50/57] OZG-7474 7697 buttons verschieben --- .../abschliessen-button/abschliessen-button.component.html | 4 ++-- .../bearbeiten-button/bearbeiten-button.component.html | 4 ++-- .../bescheiden-button/bescheiden-button.component.html | 4 ++-- .../vorgang-detail-area/vorgang-detail-area.component.html | 7 ++++--- .../vorgang-detail-formular-buttons.component.ts | 2 +- 5 files changed, 11 insertions(+), 10 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html index f9670cbee8..8b4f93ab84 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html @@ -41,10 +41,10 @@ [stateResource]="commandStateResource$ | async" data-test-id="abschliessen-button" text="Abschließen" - variant="outline" + variant="primary" (clickEmitter)="abschliessen()" > - <ods-check-icon icon /> + <ods-check-icon icon class="fill-white" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html index d1de12ab8c..a380dac9d3 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html @@ -41,10 +41,10 @@ [stateResource]="commandStateResource$ | async" data-test-id="bearbeiten-button" text="Bearbeiten" - variant="outline" + variant="primary" (clickEmitter)="bearbeiten()" > - <ods-edit-icon icon /> + <ods-edit-icon icon class="fill-white"/> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index da120283e6..f98bc5bc4b 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -40,10 +40,10 @@ [stateResource]="commandStateResource$ | async" (clickEmitter)="bescheiden()" [text]="buttonText" - variant="outline" + variant="primary" data-test-id="bescheiden-button" > - <ods-stamp-icon icon class="fill-primary" size="medium" /> + <ods-stamp-icon icon class="fill-white" size="medium" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html index bc73d5f4c8..772fdbd059 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html @@ -35,8 +35,11 @@ data-test-id="vorgang-detail-header" ></alfa-vorgang-detail-header> + <div class="section one-column"> - <alfa-vorgang-detail-formular-daten [vorgangWithEingang]="vorgangResource"></alfa-vorgang-detail-formular-daten> + <alfa-vorgang-detail-formular-buttons [vorgangWithEingang]="vorgangResource" /> + + <alfa-vorgang-detail-formular-daten [vorgangWithEingang]="vorgangResource" /> <div *ngIf="vorgangResource | hasLink: vorgangWithEingangLinkRel.BESCHEIDE"> <ozgcloud-expansion-panel headline="Bescheid" data-test-id="bescheid-expansion-panel"> @@ -44,8 +47,6 @@ </alfa-bescheid-list-in-vorgang-container> </ozgcloud-expansion-panel> </div> - - <alfa-vorgang-detail-formular-buttons [vorgangWithEingang]="vorgangResource"></alfa-vorgang-detail-formular-buttons> </div> <div class="section one-column" *ngIf="vorgangResource | hasLink: vorgangWithEingangLinkRel.COLLABORATIONS"> diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts index 908b73de5e..a38e9190c0 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts @@ -27,7 +27,7 @@ import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-vorgang-detail-formular-buttons', templateUrl: './vorgang-detail-formular-buttons.component.html', - styles: [':host {@apply ml-12 flex gap-4}'], + styles: [':host {@apply ml-14 flex gap-4 mb-6}'], }) export class VorgangDetailFormularButtonsComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; -- GitLab From b7e843e6cb042e4940b5aa9dd8f64033ffdded44 Mon Sep 17 00:00:00 2001 From: Oliver Schmidt <kontakt@webkreation.de> Date: Mon, 10 Feb 2025 14:52:02 +0100 Subject: [PATCH 51/57] OZG-7474 button layouts --- .../libs/design-system/src/lib/button/button.component.ts | 2 +- .../abschliessen-button/abschliessen-button.component.html | 2 +- .../buttons/bearbeiten-button/bearbeiten-button.component.html | 2 +- .../buttons/bescheiden-button/bescheiden-button.component.html | 2 +- .../vorgang-detail-formular-buttons.component.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/alfa-client/libs/design-system/src/lib/button/button.component.ts b/alfa-client/libs/design-system/src/lib/button/button.component.ts index 3db69acbf3..7276be54ba 100644 --- a/alfa-client/libs/design-system/src/lib/button/button.component.ts +++ b/alfa-client/libs/design-system/src/lib/button/button.component.ts @@ -36,7 +36,7 @@ export const buttonVariants = cva( { variants: { variant: { - primary: 'bg-primary text-white shadow-md hover:enabled:bg-primary-hover', + primary: 'bg-primary text-whitetext shadow-md hover:enabled:bg-primary-hover', outline: 'border border-primary bg-background-50 text-primary shadow-md hover:enabled:bg-ghost-hover focus-visible:border-background-200', ghost: diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html index 8b4f93ab84..e4c61562d9 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html @@ -44,7 +44,7 @@ variant="primary" (clickEmitter)="abschliessen()" > - <ods-check-icon icon class="fill-white" /> + <ods-check-icon icon class="fill-whitetext" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html index a380dac9d3..ab4a765f1e 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html @@ -44,7 +44,7 @@ variant="primary" (clickEmitter)="bearbeiten()" > - <ods-edit-icon icon class="fill-white"/> + <ods-edit-icon icon class="fill-whitetext" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index f98bc5bc4b..e44c2aefa5 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -43,7 +43,7 @@ variant="primary" data-test-id="bescheiden-button" > - <ods-stamp-icon icon class="fill-white" size="medium" /> + <ods-stamp-icon icon class="fill-whitetext" size="medium" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts index a38e9190c0..462a97addb 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.ts @@ -27,7 +27,7 @@ import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-vorgang-detail-formular-buttons', templateUrl: './vorgang-detail-formular-buttons.component.html', - styles: [':host {@apply ml-14 flex gap-4 mb-6}'], + styles: [':host {@apply mt-4 mb-6 ml-14 flex gap-4}'], }) export class VorgangDetailFormularButtonsComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; -- GitLab From d4e0ad4b02beb2c57fe6d545448fdf166b3c4cb2 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 15:26:06 +0100 Subject: [PATCH 52/57] OZG-7474 Replace wiedervorlage buttons --- .../erledigen-button-container.component.html | 21 +++++----- .../erledigen-button-container.component.scss | 23 ----------- ...ledigen-button-container.component.spec.ts | 8 ++-- .../erledigen-button-container.component.ts | 9 +---- ...submit-wiedervorlage-button.component.html | 39 ++++++++++--------- ...submit-wiedervorlage-button.component.scss | 23 ----------- ...mit-wiedervorlage-button.component.spec.ts | 14 +++---- .../submit-wiedervorlage-button.component.ts | 5 +-- ...reroeffnen-button-container.component.html | 21 +++++----- ...reroeffnen-button-container.component.scss | 23 ----------- ...oeffnen-button-container.component.spec.ts | 8 ++-- ...dereroeffnen-button-container.component.ts | 9 +---- ...iedervorlage-action-buttons.component.html | 8 ++-- .../wiedervorlage-action-buttons.component.ts | 3 +- .../src/lib/wiedervorlage.module.ts | 10 ++++- 15 files changed, 82 insertions(+), 142 deletions(-) delete mode 100644 alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.scss delete mode 100644 alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.scss delete mode 100644 alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.scss diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html index 6d922ec39d..5099a02204 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html @@ -23,12 +23,15 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-icon-button-with-spinner - *ngIf="wiedervorlage | hasLink: linkRel.ERLEDIGEN" - data-test-id="erledigen-icon-button" - [stateResource]="erledigenCommand$ | async" - icon="check_circle_outline" - toolTip="Als erledigt markieren" - (clickEmitter)="erledigen()" -> -</ozgcloud-icon-button-with-spinner> +@if (wiedervorlage | hasLink: linkRel.ERLEDIGEN) { + <ods-button-with-spinner + data-test-id="erledigen-icon-button" + [stateResource]="erledigenCommand$ | async" + tooltip="Als erledigt markieren" + variant="ghost" + size="fit" + (clickEmitter)="erledigen()" + > + <ods-check-circle-icon icon class="fill-text" /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.scss b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts index f188bcdca8..69aaf5f00d 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts @@ -21,11 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { IconButtonWithSpinnerComponent } from '@alfa-client/ui'; import { WiedervorlageLinkRel, WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CheckCircleIconComponent } from '@ods/system'; import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage'; import { MockComponent } from 'ng-mocks'; import { ErledigenButtonContainerComponent } from './erledigen-button-container.component'; @@ -43,7 +44,8 @@ describe('ErledigenButtonContainerComponent', () => { declarations: [ ErledigenButtonContainerComponent, HasLinkPipe, - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(CheckCircleIconComponent), ], providers: [ { diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.ts b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.ts index dbdb25d29b..bf8239542f 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.ts @@ -21,20 +21,15 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource } from '@alfa-client/tech-shared'; -import { - WiedervorlageLinkRel, - WiedervorlageResource, - WiedervorlageService, -} from '@alfa-client/wiedervorlage-shared'; +import { WiedervorlageLinkRel, WiedervorlageResource, WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { Component, Input } from '@angular/core'; import { Observable } from 'rxjs'; @Component({ selector: 'alfa-erledigen-button-container', templateUrl: './erledigen-button-container.component.html', - styleUrls: ['./erledigen-button-container.component.scss'], }) export class ErledigenButtonContainerComponent { @Input() wiedervorlage: WiedervorlageResource; diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html index a7dc7bca94..e0229680d1 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html @@ -23,21 +23,24 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-stroked-button-with-spinner - *ngIf="!showAsIconButton" - text="Speichern" - data-test-id="speichern-button" - icon="save_alt" - [stateResource]="submitInProgress$ | async" - (clickEmitter)="submit()" -> -</ozgcloud-stroked-button-with-spinner> - -<ozgcloud-icon-button-with-spinner - *ngIf="showAsIconButton" - icon="save_alt" - toolTip="Wiedervorlage speichern" - [stateResource]="submitInProgress$ | async" - (clickEmitter)="submit()" -> -</ozgcloud-icon-button-with-spinner> +@if (showAsIconButton) { + <ods-button-with-spinner + [stateResource]="submitInProgress$ | async" + tooltip="Wiedervorlage speichern" + variant="ghost" + size="fit" + (clickEmitter)="submit()" + > + <ods-save-icon icon class="fill-text" /> + </ods-button-with-spinner> +} @else { + <ods-button-with-spinner + data-test-id="speichern-button" + [stateResource]="submitInProgress$ | async" + text="Speichern" + variant="primary" + (clickEmitter)="submit()" + > + <ods-save-icon icon class="fill-whitetext" /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.scss b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.spec.ts index 7b82b4c1d0..5dfb7fa67a 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.spec.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.spec.ts @@ -21,17 +21,16 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ActivatedRoute } from '@angular/router'; import { CommandResource } from '@alfa-client/command-shared'; import { NavigationService } from '@alfa-client/navigation-shared'; import { StateResource, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { - IconButtonWithSpinnerComponent, - OzgcloudStrokedButtonWithSpinnerComponent, -} from '@alfa-client/ui'; +import { OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui'; import { WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ActivatedRoute } from '@angular/router'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { SaveIconComponent } from '@ods/system'; import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel'; import { createCommandResource } from 'libs/command-shared/test/command'; import { MockComponent } from 'ng-mocks'; @@ -56,7 +55,8 @@ describe('SubmitWiedervorlageButtonComponent', () => { declarations: [ SubmitWiedervorlageButtonComponent, MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(SaveIconComponent), ], providers: [ { diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.ts b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.ts index c52f566030..788e3229c2 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.ts @@ -21,12 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; import { CommandResource, isDone } from '@alfa-client/command-shared'; import { NavigationService } from '@alfa-client/navigation-shared'; import { StateResource } from '@alfa-client/tech-shared'; import { WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { Component, Input } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; import { Observable } from 'rxjs'; import { filter, tap } from 'rxjs/operators'; import { WiedervorlageFormService } from '../wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-form/wiedervorlage.formservice'; @@ -34,7 +34,6 @@ import { WiedervorlageFormService } from '../wiedervorlage-page-container/wieder @Component({ selector: 'alfa-submit-wiedervorlage-button', templateUrl: './submit-wiedervorlage-button.component.html', - styleUrls: ['./submit-wiedervorlage-button.component.scss'], }) export class SubmitWiedervorlageButtonComponent { @Input() showAsIconButton: boolean = false; diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html index 06193fefe6..12ccae7d16 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html @@ -23,12 +23,15 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<ozgcloud-icon-button-with-spinner - *ngIf="wiedervorlage | hasLink: linkRel.WIEDEREROEFFNEN" - data-test-id="wiedereroeffnen-icon-button" - [stateResource]="wiedereroeffnenCommand$ | async" - icon="check_circle_outline" - toolTip="Als offen markieren" - (clickEmitter)="wiedereroeffnen()" -> -</ozgcloud-icon-button-with-spinner> +@if (wiedervorlage | hasLink: linkRel.WIEDEREROEFFNEN) { + <ods-button-with-spinner + data-test-id="wiedereroeffnen-icon-button" + [stateResource]="wiedereroeffnenCommand$ | async" + tooltip="Als offen markieren" + variant="ghost" + size="fit" + (clickEmitter)="wiedereroeffnen()" + > + <ods-check-circle-icon icon class="fill-text" /> + </ods-button-with-spinner> +} diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.scss b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts index efe689d733..af8e1281a0 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts @@ -21,11 +21,12 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; import { HasLinkPipe } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; -import { IconButtonWithSpinnerComponent } from '@alfa-client/ui'; import { WiedervorlageLinkRel, WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { CheckCircleIconComponent } from '@ods/system'; import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage'; import { MockComponent } from 'ng-mocks'; import { WiedereroeffnenButtonContainerComponent } from './wiedereroeffnen-button-container.component'; @@ -43,7 +44,8 @@ describe('WiedereroeffnenButtonContainerComponent', () => { declarations: [ WiedereroeffnenButtonContainerComponent, HasLinkPipe, - MockComponent(IconButtonWithSpinnerComponent), + MockComponent(ButtonWithSpinnerComponent), + MockComponent(CheckCircleIconComponent), ], providers: [ { diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.ts index 0dd4c216a8..6c125a5636 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.ts @@ -21,20 +21,15 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { CommandResource } from '@alfa-client/command-shared'; import { StateResource } from '@alfa-client/tech-shared'; -import { - WiedervorlageLinkRel, - WiedervorlageResource, - WiedervorlageService, -} from '@alfa-client/wiedervorlage-shared'; +import { WiedervorlageLinkRel, WiedervorlageResource, WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; +import { Component, Input } from '@angular/core'; import { Observable } from 'rxjs'; @Component({ selector: 'alfa-wiedereroeffnen-button-container', templateUrl: './wiedereroeffnen-button-container.component.html', - styleUrls: ['./wiedereroeffnen-button-container.component.scss'], }) export class WiedereroeffnenButtonContainerComponent { @Input() wiedervorlage: WiedervorlageResource; diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.html index fff741c94e..4c97aef842 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.html @@ -24,8 +24,6 @@ --> <ozgcloud-back-button linkTo="../.." label="zurück zur Detailseite"></ozgcloud-back-button> -<alfa-erledigen-button-container [wiedervorlage]="wiedervorlage"></alfa-erledigen-button-container> -<alfa-wiedereroeffnen-button-container - [wiedervorlage]="wiedervorlage" -></alfa-wiedereroeffnen-button-container> -<alfa-submit-wiedervorlage-button [showAsIconButton]="true"></alfa-submit-wiedervorlage-button> +<alfa-erledigen-button-container [wiedervorlage]="wiedervorlage" /> +<alfa-wiedereroeffnen-button-container [wiedervorlage]="wiedervorlage" /> +<alfa-submit-wiedervorlage-button [showAsIconButton]="true" /> diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.ts index 27a6875dc4..e00cfcdead 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-action-buttons/wiedervorlage-action-buttons.component.ts @@ -21,13 +21,14 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { WiedervorlageResource } from '@alfa-client/wiedervorlage-shared'; +import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-wiedervorlage-action-buttons', templateUrl: './wiedervorlage-action-buttons.component.html', styleUrls: ['./wiedervorlage-action-buttons.component.scss'], + styles: [':host {@apply flex}'], }) export class WiedervorlageActionButtonsComponent { @Input() wiedervorlage: WiedervorlageResource; diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts index df9bf418c2..7729ab5f2f 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts +++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage.module.ts @@ -31,7 +31,13 @@ import { CommonModule, DatePipe } from '@angular/common'; import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { ButtonWithSpinnerComponent } from '@ods/component'; -import { PlusIconComponent, TooltipDirective, UpdateIconComponent } from '@ods/system'; +import { + CheckCircleIconComponent, + PlusIconComponent, + SaveIconComponent, + TooltipDirective, + UpdateIconComponent, +} from '@ods/system'; import { CreateWiedervorlageButtonContainerComponent } from './create-wiedervorlage-button-container/create-wiedervorlage-button-container.component'; import { ErledigenButtonContainerComponent } from './erledigen-button-container/erledigen-button-container.component'; import { SubmitWiedervorlageButtonComponent } from './submit-wiedervorlage-button/submit-wiedervorlage-button.component'; @@ -75,6 +81,8 @@ const routes: Routes = [ TooltipDirective, UpdateIconComponent, PlusIconComponent, + CheckCircleIconComponent, + SaveIconComponent, ], declarations: [ WiedervorlagePageComponent, -- GitLab From 96f7b47a0bf458b0bfbefb3008e3be7cbfb9ec18 Mon Sep 17 00:00:00 2001 From: Oliver Schmidt <kontakt@webkreation.de> Date: Mon, 10 Feb 2025 16:16:27 +0100 Subject: [PATCH 53/57] OZG-7474 rename buttons, use outline --- .../abschliessen-button/abschliessen-button.component.html | 2 +- .../buttons/annehmen-button/annehmen-button.component.html | 6 +++--- .../bearbeiten-button/bearbeiten-button.component.html | 4 ++-- .../bescheiden-button/bescheiden-button.component.html | 4 ++-- .../submit-wiedervorlage-button.component.html | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html index e4c61562d9..6d9599fdd1 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html @@ -41,7 +41,7 @@ [stateResource]="commandStateResource$ | async" data-test-id="abschliessen-button" text="Abschließen" - variant="primary" + variant="outline" (clickEmitter)="abschliessen()" > <ods-check-icon icon class="fill-whitetext" /> diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html index 28ef66f3d4..e3113ba3b2 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html @@ -39,11 +39,11 @@ <ods-button-with-spinner [stateResource]="commandStateResource$ | async" (clickEmitter)="annehmen()" - text="Vorgang annehmen" - variant="primary" + text="Annehmen" + variant="outline" data-test-id="annehmen-button" > - <ods-check-circle-icon icon class="fill-white" /> + <ods-check-circle-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html index ab4a765f1e..d1de12ab8c 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html @@ -41,10 +41,10 @@ [stateResource]="commandStateResource$ | async" data-test-id="bearbeiten-button" text="Bearbeiten" - variant="primary" + variant="outline" (clickEmitter)="bearbeiten()" > - <ods-edit-icon icon class="fill-whitetext" /> + <ods-edit-icon icon /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index e44c2aefa5..f165d425ff 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -40,10 +40,10 @@ [stateResource]="commandStateResource$ | async" (clickEmitter)="bescheiden()" [text]="buttonText" - variant="primary" + variant="outline" data-test-id="bescheiden-button" > - <ods-stamp-icon icon class="fill-whitetext" size="medium" /> + <ods-stamp-icon icon size="medium" /> </ods-button-with-spinner> } } diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html index e0229680d1..317445e141 100644 --- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html +++ b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html @@ -38,7 +38,7 @@ data-test-id="speichern-button" [stateResource]="submitInProgress$ | async" text="Speichern" - variant="primary" + variant="outline" (clickEmitter)="submit()" > <ods-save-icon icon class="fill-whitetext" /> -- GitLab From 30259eabca81e1c553dc3d3477c6765fa4f8960c Mon Sep 17 00:00:00 2001 From: Oliver Schmidt <kontakt@webkreation.de> Date: Mon, 10 Feb 2025 16:22:14 +0100 Subject: [PATCH 54/57] OZG-7474 fix icon --- .../buttons/bescheiden-button/bescheiden-button.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html index f165d425ff..32924b770f 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html @@ -43,7 +43,7 @@ variant="outline" data-test-id="bescheiden-button" > - <ods-stamp-icon icon size="medium" /> + <ods-stamp-icon icon size="medium" class="fill-primary" /> </ods-button-with-spinner> } } -- GitLab From ad3fe1bd5758503fd683c550d44eb4abbd0334ab Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 10 Feb 2025 16:45:59 +0100 Subject: [PATCH 55/57] OZG-7474 Fix cr comments --- ...zgcloud-button-container.component.spec.ts | 39 ++++++++++++++----- .../postfach-mail-button.component.html | 6 +-- ...er-profile-button-container.component.scss | 23 ----------- ...user-profile-button-container.component.ts | 4 +- 4 files changed, 35 insertions(+), 37 deletions(-) delete mode 100644 alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.scss diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts index 3479fbc724..0bdb21fd38 100644 --- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts +++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts @@ -39,30 +39,51 @@ describe('ForwardByOzgcloudButtonContainerComponent', () => { component.vorgangWithEingang = createVorgangWithEingangResource([VorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD]); }); - it('show as button', () => { - component.showAsIconButton = false; + describe('show as icon button', () => { + beforeEach(() => { + component.showAsIconButton = true; + fixture.detectChanges(); + }); - fixture.detectChanges(); + it('should hide button', () => { + notExistsAsHtmlElement(fixture, button); + }); - existsAsHtmlElement(fixture, button); + it('should show iconButton', () => { + existsAsHtmlElement(fixture, iconButton); + }); }); - it('show as iconButton', () => { - component.showAsIconButton = true; + describe('show as button', () => { + beforeEach(() => { + component.showAsIconButton = false; + fixture.detectChanges(); + }); - fixture.detectChanges(); + it('should hide iconButton', () => { + notExistsAsHtmlElement(fixture, iconButton); + }); - existsAsHtmlElement(fixture, iconButton); + it('should show button', () => { + existsAsHtmlElement(fixture, button); + }); }); }); describe('on missing link', () => { - it('should hide buttons', () => { + it('should hide button', () => { component.vorgangWithEingang = createVorgangWithEingangResource(); fixture.detectChanges(); notExistsAsHtmlElement(fixture, button); + }); + + it('should hide icon button', () => { + component.vorgangWithEingang = createVorgangWithEingangResource(); + + fixture.detectChanges(); + notExistsAsHtmlElement(fixture, iconButton); }); }); diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html index 22f3399935..8a29c815b6 100644 --- a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html +++ b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html @@ -34,7 +34,7 @@ size="fit" (clickEmitter)="openPostfachNachrichtenDialog.emit()" > - <ods-mailbox-icon icon class="stroke-text" /> + <ods-mailbox-icon icon /> </ods-button> } @else if (text && !toolTip) { <ods-button @@ -44,7 +44,7 @@ variant="outline" (clickEmitter)="openPostfachNachrichtenDialog.emit()" > - <ods-plus-icon icon class="fill-primary" /> + <ods-plus-icon icon /> </ods-button> } @else if (!text && toolTip) { <ods-button @@ -55,7 +55,7 @@ size="fit" (clickEmitter)="openPostfachNachrichtenDialog.emit()" > - <ods-plus-icon icon class="fill-primary" /> + <ods-plus-icon icon /> </ods-button> } } diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.scss b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.scss deleted file mode 100644 index 54c4f3eb8c..0000000000 --- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.scss +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.ts b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.ts index 1ab24948af..41b1d332d5 100644 --- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.ts +++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.ts @@ -21,14 +21,14 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { UserProfileService } from '@alfa-client/user-profile-shared'; import { VorgangHeaderLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-assign-user-profile-button-container', templateUrl: './assign-user-profile-button-container.component.html', - styleUrls: ['./assign-user-profile-button-container.component.scss'], + styles: [':host {@apply empty:hidden}'], }) export class AssignUserProfileButtonContainerComponent { @Input() vorgang: VorgangWithEingangResource; -- GitLab From e28f11c6f503171c2015919a87f15f8fe6eb6e78 Mon Sep 17 00:00:00 2001 From: Albert <Albert.Bruns@mgm-tp.com> Date: Mon, 10 Feb 2025 17:01:50 +0100 Subject: [PATCH 56/57] OZG-7474 small improvements --- .../buttons/annehmen-button/annehmen-button.component.spec.ts | 2 -- .../bescheiden-button/bescheiden-button.component.spec.ts | 4 +--- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts index 2302dde549..8e531074e2 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts @@ -121,7 +121,6 @@ describe('AnnehmenButtonComponent', () => { const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, annehmenButton); - expect(button).toBeTruthy(); expect(button.stateResource).toBe(state); }); @@ -153,7 +152,6 @@ describe('AnnehmenButtonComponent', () => { const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, annehmenIconButton); - expect(button).toBeTruthy(); expect(button.stateResource).toBe(state); }); diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts index eb653d5117..1cd92c64d9 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.spec.ts @@ -202,7 +202,7 @@ describe('BescheidenButtonComponent', () => { it('should init', () => { component.openBescheidenWizard(); - expect(bescheidService.init).toHaveBeenCalled(); + expect(bescheidService.init).toHaveBeenCalled(); }); it('should open bescheiden dialog with existing draft', () => { @@ -353,7 +353,6 @@ describe('BescheidenButtonComponent', () => { it('should exist with input', () => { const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, bescheidenButton); - expect(button).toBeTruthy(); expect(button.stateResource).toBe(state); }); @@ -400,7 +399,6 @@ describe('BescheidenButtonComponent', () => { it('should exist with input', () => { const button: ButtonWithSpinnerComponent = getElementComponentFromFixtureByCss(fixture, bescheidenIconButton); - expect(button).toBeTruthy(); expect(button.stateResource).toBe(state); }); -- GitLab From 3d6138ffd867ac3c2da3bfc53b4366aa5a471252 Mon Sep 17 00:00:00 2001 From: Oliver Schmidt <kontakt@webkreation.de> Date: Tue, 11 Feb 2025 09:27:58 +0100 Subject: [PATCH 57/57] OZG-7474 OPT focus-visible styles, OPT action buttons --- .../src/lib/button/button.component.ts | 6 ++-- .../src/lib/link/link.component.ts | 2 +- .../subnavigation.component.scss | 2 +- ...rgang-detail-action-buttons.component.scss | 34 ------------------- ...vorgang-detail-action-buttons.component.ts | 4 +-- .../vorgang-detail-page.component.html | 14 +++----- 6 files changed, 11 insertions(+), 51 deletions(-) delete mode 100644 alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.scss diff --git a/alfa-client/libs/design-system/src/lib/button/button.component.ts b/alfa-client/libs/design-system/src/lib/button/button.component.ts index 7276be54ba..46b0308c20 100644 --- a/alfa-client/libs/design-system/src/lib/button/button.component.ts +++ b/alfa-client/libs/design-system/src/lib/button/button.component.ts @@ -36,11 +36,11 @@ export const buttonVariants = cva( { variants: { variant: { - primary: 'bg-primary text-whitetext shadow-md hover:enabled:bg-primary-hover', + primary: 'bg-primary text-whitetext shadow-md hover:enabled:bg-primary-hover focus-visible:bg-primary-hover', outline: - 'border border-primary bg-background-50 text-primary shadow-md hover:enabled:bg-ghost-hover focus-visible:border-background-200', + 'border border-primary bg-background-50 text-primary shadow-md hover:enabled:bg-ghost-hover focus-visible:bg-ghost-hover focus-visible:border-background-200', ghost: - 'border-2 border-transparent hover:enabled:bg-ghost-hover text-primary focus-visible:border-background-200 font-semibold', + 'border border-transparent hover:enabled:bg-ghost-hover text-primary focus-visible:border-background-200 focus-visible:bg-ghost-hover font-semibold [&]:focus-visible:outline-offset-1', }, size: { medium: 'h-9 py-2 px-4 min-w-32', diff --git a/alfa-client/libs/design-system/src/lib/link/link.component.ts b/alfa-client/libs/design-system/src/lib/link/link.component.ts index 29d63dfea0..64830deee7 100644 --- a/alfa-client/libs/design-system/src/lib/link/link.component.ts +++ b/alfa-client/libs/design-system/src/lib/link/link.component.ts @@ -11,7 +11,7 @@ import { twMerge } from 'tailwind-merge'; [href]="url" [class]=" twMerge( - 'hover:bg-ghost-hover block rounded border-2 border-transparent text-text focus:border-focus focus:outline-none dark:hover:bg-neutral-700', + 'block rounded-lg border-2 border-transparent text-text hover:bg-ghost-hover focus-visible:border-focus focus-visible:bg-ghost-hover focus-visible:outline-none dark:hover:bg-neutral-700', class ) " diff --git a/alfa-client/libs/ui/src/lib/ui/subnavigation/subnavigation.component.scss b/alfa-client/libs/ui/src/lib/ui/subnavigation/subnavigation.component.scss index 8b0ddf04c2..142aa51807 100644 --- a/alfa-client/libs/ui/src/lib/ui/subnavigation/subnavigation.component.scss +++ b/alfa-client/libs/ui/src/lib/ui/subnavigation/subnavigation.component.scss @@ -24,7 +24,7 @@ @import 'variables'; :host { - @apply flex h-12 w-full items-center justify-start pb-1 pl-4 pr-3 pt-1 sm:sticky; + @apply flex h-12 w-full items-center justify-start pb-1 pl-3 pr-3 pt-1 sm:sticky; top: $header-height; z-index: 2; box-shadow: $shadow-bottom; diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.scss b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.scss deleted file mode 100644 index 073c7c4392..0000000000 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.scss +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den - * Ministerpräsidenten des Landes Schleswig-Holstein - * Staatskanzlei - * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung - * - * Lizenziert unter der EUPL, Version 1.2 oder - sobald - * diese von der Europäischen Kommission genehmigt wurden - - * Folgeversionen der EUPL ("Lizenz"); - * Sie dürfen dieses Werk ausschließlich gemäß - * dieser Lizenz nutzen. - * Eine Kopie der Lizenz finden Sie hier: - * - * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 - * - * Sofern nicht durch anwendbare Rechtsvorschriften - * gefordert oder in schriftlicher Form vereinbart, wird - * die unter der Lizenz verbreitete Software "so wie sie - * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - - * ausdrücklich oder stillschweigend - verbreitet. - * Die sprachspezifischen Genehmigungen und Beschränkungen - * unter der Lizenz sind dem Lizenztext zu entnehmen. - */ -:host { - display: flex; - flex-grow: 1; - z-index: 1; - - ::ng-deep { - a { - color: inherit; - } - } -} diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.ts index 1d37f1a177..d6eabde2e9 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.ts +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.ts @@ -21,13 +21,13 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { Component, Input } from '@angular/core'; import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; +import { Component, Input } from '@angular/core'; @Component({ selector: 'alfa-vorgang-detail-action-buttons', templateUrl: './vorgang-detail-action-buttons.component.html', - styleUrls: ['./vorgang-detail-action-buttons.component.scss'], + styles: [':host {@apply flex grow gap-0.5}'], }) export class VorgangDetailActionButtonsComponent { @Input() vorgangWithEingang: VorgangWithEingangResource; diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-page.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-page.component.html index e85d31cb74..adc18566df 100644 --- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-page.component.html +++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-page.component.html @@ -25,7 +25,7 @@ --> <main *ngIf="vorgangStateResource$ | async as vorgangStateResource"> <h1 class="sr-only">Details zum Vorgang</h1> - <ozgcloud-subnavigation class="mat-typography mat-app-background" data-test-id="subnavigation"> + <ozgcloud-subnavigation class="flex gap-0.5 bg-background-100" data-test-id="subnavigation"> <alfa-vorgang-detail-back-button-container></alfa-vorgang-detail-back-button-container> <ng-container *ngIf="vorgangStateResource.resource"> <alfa-vorgang-detail-action-buttons @@ -39,9 +39,7 @@ </ng-container> </ozgcloud-subnavigation> - <div - class="l-scroll-area--full flex border-l border-r border-grayborder/30 dark:border-transparent" - > + <div class="l-scroll-area--full flex border-l border-r border-grayborder/30 dark:border-transparent"> <alfa-vorgang-detail-area *ngIf="vorgangStateResource" [vorgangStateResource]="vorgangStateResource" @@ -50,9 +48,5 @@ </div> </main> -<ozgcloud-progress-bar - [stateResource]="revokeCommandStateResource$ | async" -></ozgcloud-progress-bar> -<ozgcloud-spinner-transparency - [stateResource]="vorgangLoeschenCommandStateResource$ | async" -></ozgcloud-spinner-transparency> +<ozgcloud-progress-bar [stateResource]="revokeCommandStateResource$ | async"></ozgcloud-progress-bar> +<ozgcloud-spinner-transparency [stateResource]="vorgangLoeschenCommandStateResource$ | async"></ozgcloud-spinner-transparency> -- GitLab