From bafbeb4a7c3fa1a56e86162b7cf907356ade0726 Mon Sep 17 00:00:00 2001 From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com> Date: Mon, 28 Apr 2025 11:21:47 +0200 Subject: [PATCH] OZG-8129 replace delete finally icon - replace buttons in basic dialog --- ...oeschen-button-container.component.spec.ts | 33 +++++-------------- ...tig-loeschen-button-container.component.ts | 2 +- .../libs/ui/src/lib/assets/delete_finally.svg | 15 --------- .../libs/ui/src/lib/icon/icon.model.ts | 1 - .../basic-dialog/basic-dialog.component.html | 18 ++++------ .../basic-dialog/basic-dialog.component.scss | 4 --- .../basic-dialog.component.spec.ts | 11 ++----- .../ui/basic-dialog/basic-dialog.component.ts | 6 ++-- 8 files changed, 23 insertions(+), 67 deletions(-) delete mode 100644 alfa-client/libs/ui/src/lib/assets/delete_finally.svg diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.spec.ts index 74ad8e6738..8a9f39de53 100644 --- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.spec.ts +++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button-container.component.spec.ts @@ -21,22 +21,14 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { - LoeschAnforderungResource, - LoeschAnforderungService, -} from '@alfa-client/loesch-anforderung-shared'; -import { - HasLinkPipe, - StateResource, - createEmptyStateResource, - createStateResource, -} from '@alfa-client/tech-shared'; +import { LoeschAnforderungResource, LoeschAnforderungService } from '@alfa-client/loesch-anforderung-shared'; +import { HasLinkPipe, StateResource, createEmptyStateResource, createStateResource } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; import { BasicDialogComponent, BasicDialogData, DialogService } from '@alfa-client/ui'; import { VorgangService } from '@alfa-client/vorgang-shared'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { createCommandResource } from 'libs/command-shared/test/command'; import { MockComponent } from 'ng-mocks'; import { of } from 'rxjs'; @@ -47,8 +39,7 @@ describe('EndgueltigLoeschenButtonContainerComponent', () => { let component: EndgueltigLoeschenButtonContainerComponent; let fixture: ComponentFixture<EndgueltigLoeschenButtonContainerComponent>; - const loeschAnforderungResource: StateResource<LoeschAnforderungResource> = - createEmptyStateResource(); + const loeschAnforderungResource: StateResource<LoeschAnforderungResource> = createEmptyStateResource(); const dialogRef = <MatDialogRef<BasicDialogComponent>>{}; dialogRef.afterClosed = jest.fn().mockReturnValue(of(true)); @@ -59,11 +50,7 @@ describe('EndgueltigLoeschenButtonContainerComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [ - EndgueltigLoeschenButtonContainerComponent, - HasLinkPipe, - MockComponent(EndgueltigLoeschenButtonComponent), - ], + declarations: [EndgueltigLoeschenButtonContainerComponent, HasLinkPipe, MockComponent(EndgueltigLoeschenButtonComponent)], imports: [BrowserAnimationsModule, MatDialogModule], providers: [ { @@ -87,9 +74,7 @@ describe('EndgueltigLoeschenButtonContainerComponent', () => { fixture = TestBed.createComponent(EndgueltigLoeschenButtonContainerComponent); component = fixture.componentInstance; - loeschAnforderungService.getEndgueltigLoeschenCommand.mockReturnValue( - of(createStateResource(createCommandResource())), - ); + loeschAnforderungService.getEndgueltigLoeschenCommand.mockReturnValue(of(createStateResource(createCommandResource()))); dialogService.openBasic = jest.fn().mockReturnValue(dialogRef); fixture.detectChanges(); }); @@ -148,7 +133,7 @@ describe('EndgueltigLoeschenButtonContainerComponent', () => { title: 'Möchten Sie den Vorgang endgültig löschen?', message: 'Diese Aktion kann nicht widerrufen werden.', okText: 'Endgültig löschen', - okSvgIcon: 'delete_finally', + okSvgIcon: 'delete-vorgang-finally', }; const res = component.createBasicDialogConfig(); 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 bb94290b75..d20b9ef36f 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 @@ -74,7 +74,7 @@ export class EndgueltigLoeschenButtonContainerComponent { title: 'Möchten Sie den Vorgang endgültig löschen?', message: 'Diese Aktion kann nicht widerrufen werden.', okText: 'Endgültig löschen', - okSvgIcon: 'delete_finally', + okSvgIcon: 'delete-vorgang-finally', }; } diff --git a/alfa-client/libs/ui/src/lib/assets/delete_finally.svg b/alfa-client/libs/ui/src/lib/assets/delete_finally.svg deleted file mode 100644 index 9c84c6bfb5..0000000000 --- a/alfa-client/libs/ui/src/lib/assets/delete_finally.svg +++ /dev/null @@ -1,15 +0,0 @@ -<svg width="25" height="24" viewBox="0 0 25 24" xmlns="http://www.w3.org/2000/svg"> -<path fill-rule="evenodd" clip-rule="evenodd" d="M17.4866 13V3.11101H12.1905L7.49777 8.05811L7.49777 13H5.5V8.05811C5.5 7.49738 5.71112 6.95968 6.0868 6.56365L10.7796 1.61654C11.1541 1.22173 11.6615 1 12.1905 1H17.4866C18.5899 1 19.4844 1.94513 19.4844 3.11101V13H17.4866Z"/> -<path d="M7.5 20C7.5 19.4477 7.94772 19 8.5 19V19C9.05228 19 9.5 19.4477 9.5 20V20C9.5 20.5523 9.05228 21 8.5 21V21C7.94772 21 7.5 20.5523 7.5 20V20Z"/> -<path d="M7.5 20C7.5 19.4477 7.94772 19 8.5 19V19C9.05228 19 9.5 19.4477 9.5 20V20C9.5 20.5523 9.05228 21 8.5 21V21C7.94772 21 7.5 20.5523 7.5 20V20Z"/> -<path d="M11.5 21C11.5 20.4477 11.9477 20 12.5 20V20C13.0523 20 13.5 20.4477 13.5 21V22C13.5 22.5523 13.0523 23 12.5 23V23C11.9477 23 11.5 22.5523 11.5 22V21Z"/> -<path d="M11.5 21C11.5 20.4477 11.9477 20 12.5 20V20C13.0523 20 13.5 20.4477 13.5 21V22C13.5 22.5523 13.0523 23 12.5 23V23C11.9477 23 11.5 22.5523 11.5 22V21Z"/> -<path d="M11.5 13C11.5 12.4477 11.9477 12 12.5 12V12C13.0523 12 13.5 12.4477 13.5 13V17C13.5 17.5523 13.0523 18 12.5 18V18C11.9477 18 11.5 17.5523 11.5 17V13Z"/> -<path d="M11.5 13C11.5 12.4477 11.9477 12 12.5 12V12C13.0523 12 13.5 12.4477 13.5 13V17C13.5 17.5523 13.0523 18 12.5 18V18C11.9477 18 11.5 17.5523 11.5 17V13Z"/> -<path d="M7.5 15C7.5 14.4477 7.94772 14 8.5 14V14C9.05228 14 9.5 14.4477 9.5 15V16C9.5 16.5523 9.05228 17 8.5 17V17C7.94772 17 7.5 16.5523 7.5 16V15Z"/> -<path d="M7.5 15C7.5 14.4477 7.94772 14 8.5 14V14C9.05228 14 9.5 14.4477 9.5 15V16C9.5 16.5523 9.05228 17 8.5 17V17C7.94772 17 7.5 16.5523 7.5 16V15Z"/> -<path d="M15.5 20C15.5 19.4477 15.9477 19 16.5 19V19C17.0523 19 17.5 19.4477 17.5 20V21C17.5 21.5523 17.0523 22 16.5 22V22C15.9477 22 15.5 21.5523 15.5 21V20Z"/> -<path d="M15.5 20C15.5 19.4477 15.9477 19 16.5 19V19C17.0523 19 17.5 19.4477 17.5 20V21C17.5 21.5523 17.0523 22 16.5 22V22C15.9477 22 15.5 21.5523 15.5 21V20Z"/> -<path d="M15.5 15C15.5 14.4477 15.9477 14 16.5 14V14C17.0523 14 17.5 14.4477 17.5 15V16C17.5 16.5523 17.0523 17 16.5 17V17C15.9477 17 15.5 16.5523 15.5 16V15Z"/> -<path d="M15.5 15C15.5 14.4477 15.9477 14 16.5 14V14C17.0523 14 17.5 14.4477 17.5 15V16C17.5 16.5523 17.0523 17 16.5 17V17C15.9477 17 15.5 16.5523 15.5 16V15Z"/> -</svg> diff --git a/alfa-client/libs/ui/src/lib/icon/icon.model.ts b/alfa-client/libs/ui/src/lib/icon/icon.model.ts index f43d2916d5..18b05ef9fb 100644 --- a/alfa-client/libs/ui/src/lib/icon/icon.model.ts +++ b/alfa-client/libs/ui/src/lib/icon/icon.model.ts @@ -22,7 +22,6 @@ * unter der Lizenz sind dem Lizenztext zu entnehmen. */ export enum Icons { - DELETE_FINALLY = 'delete_finally', LOGO = 'logo', MAIL = 'mail', PDF_EXPORT = 'pdf_export', diff --git a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.html b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.html index d48604b353..aed345ed75 100644 --- a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.html +++ b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.html @@ -29,19 +29,15 @@ <div mat-dialog-content> <p data-test-id="dialog-message">{{ data.message }}</p> </div> -<div mat-dialog-actions> - <ozgcloud-stroked-button-with-spinner +<div mat-dialog-actions class="flex gap-4"> + <ods-button-with-spinner dataTestId="dialog-confirmation-button" [mat-dialog-close]="true" - svgIcon="{{ data.okSvgIcon }}" - text="{{ data.okText }}" + [text]="data.okText" + variant="outline" > - </ozgcloud-stroked-button-with-spinner> + <ods-icon icon [name]="data.okSvgIcon" /> + </ods-button-with-spinner> - <ozgcloud-stroked-button-with-spinner - dataTestId="dialog-cancel-button" - (click)="onNoClick()" - text="Abbrechen" - > - </ozgcloud-stroked-button-with-spinner> + <ods-button-with-spinner dataTestId="dialog-cancel-button" text="Abbrechen" (clickEmitter)="onNoClick()" variant="outline" /> </div> diff --git a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.scss b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.scss index 669978971d..17673d3316 100644 --- a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.scss +++ b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.scss @@ -30,7 +30,3 @@ button, h1 { color: mat.m2-get-color-from-palette($primaryPalette); } - -ozgcloud-stroked-button-with-spinner { - margin-left: 1rem; -} diff --git a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.spec.ts b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.spec.ts index 23ca3dbbc8..60fbe66360 100644 --- a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.spec.ts +++ b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.spec.ts @@ -21,10 +21,9 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { IconButtonWithSpinnerComponent, OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog'; -import { MatIcon } from '@angular/material/icon'; +import { IconComponent } from '@ods/system'; import { MockComponent } from 'ng-mocks'; import { BasicDialogComponent } from './basic-dialog.component'; @@ -34,13 +33,7 @@ describe('BasicDialogComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - imports: [ - MatDialogModule, - BasicDialogComponent, - MatIcon, - MockComponent(OzgcloudStrokedButtonWithSpinnerComponent), - MockComponent(IconButtonWithSpinnerComponent), - ], + imports: [MatDialogModule, BasicDialogComponent, MockComponent(IconComponent)], providers: [ { provide: MatDialogRef, diff --git a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.ts b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.ts index cbe53ff122..5788aecf31 100644 --- a/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.ts +++ b/alfa-client/libs/ui/src/lib/ui/basic-dialog/basic-dialog.component.ts @@ -31,7 +31,8 @@ import { MatDialogRef, MatDialogTitle, } from '@angular/material/dialog'; -import { OzgcloudStrokedButtonWithSpinnerComponent } from '../ozgcloud-button/ozgcloud-stroked-button-with-spinner/ozgcloud-stroked-button-with-spinner.component'; +import { ButtonWithSpinnerComponent } from '@ods/component'; +import { IconComponent } from '@ods/system'; import { BasicDialogData } from './basic-dialog-data.model'; @Component({ @@ -44,8 +45,9 @@ import { BasicDialogData } from './basic-dialog-data.model'; CdkScrollable, MatDialogContent, MatDialogActions, - OzgcloudStrokedButtonWithSpinnerComponent, MatDialogClose, + ButtonWithSpinnerComponent, + IconComponent, ], }) export class BasicDialogComponent { -- GitLab