Skip to content
Snippets Groups Projects
Commit 76367981 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-6989 7375 icons vereinheitlichen

parent 9edc7f11
No related branches found
No related tags found
No related merge requests found
Showing
with 42 additions and 67 deletions
...@@ -36,11 +36,7 @@ type ButtonVariants = VariantProps<typeof buttonVariants>; ...@@ -36,11 +36,7 @@ type ButtonVariants = VariantProps<typeof buttonVariants>;
standalone: true, standalone: true,
imports: [CommonModule, ButtonComponent, ErrorMessageComponent], imports: [CommonModule, ButtonComponent, ErrorMessageComponent],
styles: [':host {@apply flex flex-col w-fit}'], styles: [':host {@apply flex flex-col w-fit}'],
template: ` <ods-error-message template: ` <ods-error-message *ngIf="isError" text="Ein Fehler ist aufgetreten." subText="Versuchen Sie es noch einmal.">
*ngIf="isError"
text="Ein Fehler ist aufgetreten."
subText="Versuchen Sie es noch einmal."
>
</ods-error-message> </ods-error-message>
<ods-button <ods-button
[text]="text" [text]="text"
...@@ -50,6 +46,7 @@ type ButtonVariants = VariantProps<typeof buttonVariants>; ...@@ -50,6 +46,7 @@ type ButtonVariants = VariantProps<typeof buttonVariants>;
[isLoading]="isLoading" [isLoading]="isLoading"
(click)="clickEmitter.emit()" (click)="clickEmitter.emit()"
> >
<ng-content icon select="[icon]" />
</ods-button>`, </ods-button>`,
}) })
export class ButtonWithSpinnerComponent implements OnInit { export class ButtonWithSpinnerComponent implements OnInit {
...@@ -74,8 +71,6 @@ export class ButtonWithSpinnerComponent implements OnInit { ...@@ -74,8 +71,6 @@ export class ButtonWithSpinnerComponent implements OnInit {
} }
get isError(): boolean { get isError(): boolean {
return ( return isLoaded(this.stateResource) && hasCommandError(<CommandResource>this.stateResource.resource);
isLoaded(this.stateResource) && hasCommandError(<CommandResource>this.stateResource.resource)
);
} }
} }
...@@ -32,7 +32,7 @@ import { iconVariants, IconVariants } from '../iconVariants'; ...@@ -32,7 +32,7 @@ import { iconVariants, IconVariants } from '../iconVariants';
imports: [CommonModule], imports: [CommonModule],
template: `<svg template: `<svg
viewBox="0 0 24 24" viewBox="0 0 24 24"
[ngClass]="[twMerge(iconVariants({ size }), 'fill-text', class)]" [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]"
aria-hidden="true" aria-hidden="true"
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
> >
......
...@@ -32,14 +32,13 @@ import { IconVariants, iconVariants } from '../iconVariants'; ...@@ -32,14 +32,13 @@ import { IconVariants, iconVariants } from '../iconVariants';
standalone: true, standalone: true,
imports: [NgClass], imports: [NgClass],
template: ` <svg template: ` <svg
xmlns="http://www.w3.org/2000/svg"
[ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]"
aria-hidden="true" aria-hidden="true"
viewBox="0 0 24 24" viewBox="0 0 32 32"
fill="none" xmlns="http://www.w3.org/2000/svg"
> >
<path <path
d="M21.3333 12V21.3333H2.66667V12H0V21.3333C0 22.8 1.2 24 2.66667 24H21.3333C22.8 24 24 22.8 24 21.3333V12H21.3333ZM13.3333 12.8933L16.7867 9.45333L18.6667 11.3333L12 18L5.33333 11.3333L7.21333 9.45333L10.6667 12.8933V0H13.3333V12.8933Z" d="M25.3333 16V25.3333H6.66667V16H4V25.3333C4 26.8 5.2 28 6.66667 28H25.3333C26.8 28 28 26.8 28 25.3333V16H25.3333ZM17.3333 16.8933L20.7867 13.4533L22.6667 15.3333L16 22L9.33333 15.3333L11.2133 13.4533L14.6667 16.8933V4H17.3333V16.8933Z"
/> />
</svg>`, </svg>`,
}) })
......
...@@ -32,21 +32,19 @@ import { IconVariants, iconVariants } from '../iconVariants'; ...@@ -32,21 +32,19 @@ import { IconVariants, iconVariants } from '../iconVariants';
standalone: true, standalone: true,
imports: [NgClass], imports: [NgClass],
template: `<svg template: `<svg
xmlns="http://www.w3.org/2000/svg"
[ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]" [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]"
aria-hidden="true" aria-hidden="true"
viewBox="0 0 24 24" viewBox="0 0 32 32"
fill="none" xmlns="http://www.w3.org/2000/svg"
> >
<path <path
d="M0 21.6693V0.335938L25.3333 11.0026L0 21.6693ZM2.66667 17.6693L18.4667 11.0026L2.66667 4.33594V9.0026L10.6667 11.0026L2.66667 13.0026V17.6693Z" d="M4 26.6688V5.33545L29.3333 16.0021L4 26.6688ZM6.66667 22.6688L22.4667 16.0021L6.66667 9.33545V14.0021L14.6667 16.0021L6.66667 18.0021V22.6688Z"
/> />
</svg>`, </svg>`,
}) })
export class SendIconComponent { export class SendIconComponent {
@Input() size: IconVariants['size'] = 'medium'; @Input() size: IconVariants['size'] = 'medium';
@Input() class: string = undefined; @Input() class: string = undefined;
iconVariants = iconVariants; iconVariants = iconVariants;
twMerge = twMerge; twMerge = twMerge;
} }
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
variant="bescheid_save" variant="bescheid_save"
[fullWidthText]="true" [fullWidthText]="true"
data-test-id="send-to-antragsteller-button" data-test-id="send-to-antragsteller-button"
><ods-send-icon></ods-send-icon ><ods-send-icon size="large"></ods-send-icon
></ods-radio-button-card> ></ods-radio-button-card>
<ods-radio-button-card <ods-radio-button-card
*ngIf="bescheidResource$ | async | hasLink: bescheidLinkRel.BESCHEIDEN" *ngIf="bescheidResource$ | async | hasLink: bescheidLinkRel.BESCHEIDEN"
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
variant="bescheid_save" variant="bescheid_save"
[fullWidthText]="true" [fullWidthText]="true"
data-test-id="save-button" data-test-id="save-button"
><ods-save-icon></ods-save-icon ><ods-save-icon size="large"></ods-save-icon
></ods-radio-button-card> ></ods-radio-button-card>
</ng-container> </ng-container>
</div> </div>
<ozgcloud-button-with-spinner <ods-button
dataTestId="archive-vorgang" dataTestId="archive-vorgang"
(click)="openArchiveConfirmationDialog()" (click)="openArchiveConfirmationDialog()"
variant="outline"
size="medium"
text="Archivierung starten" text="Archivierung starten"
icon="archive" >
/> <ods-archive-icon icon />
\ No newline at end of file </ods-button>
\ No newline at end of file
import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ComponentFixture, TestBed } from '@angular/core/testing';
import { mock } from '@alfa-client/test-utils'; import { mock } from '@alfa-client/test-utils';
import { OzgcloudButtonWithSpinnerComponent, OzgcloudDialogService } from '@alfa-client/ui'; import { OzgcloudDialogService } from '@alfa-client/ui';
import { ArchiveIconComponent, ButtonComponent } from '@ods/system';
import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
import { MockComponent } from 'ng-mocks'; import { MockComponent } from 'ng-mocks';
import { describe } from 'node:test';
import { VorgangArchiveConfirmationDialogContainerComponent } from './vorgang-archive-confirmation-dialog-container/vorgang-archive-confirmation-dialog-container.component'; import { VorgangArchiveConfirmationDialogContainerComponent } from './vorgang-archive-confirmation-dialog-container/vorgang-archive-confirmation-dialog-container.component';
import { VorgangArchiveContainerComponent } from './vorgang-archive-container.component'; import { VorgangArchiveContainerComponent } from './vorgang-archive-container.component';
...@@ -20,8 +20,9 @@ describe('VorgangArchiveContainerComponent', () => { ...@@ -20,8 +20,9 @@ describe('VorgangArchiveContainerComponent', () => {
await TestBed.configureTestingModule({ await TestBed.configureTestingModule({
imports: [ imports: [
VorgangArchiveContainerComponent, VorgangArchiveContainerComponent,
MockComponent(OzgcloudButtonWithSpinnerComponent), MockComponent(ButtonComponent),
MockComponent(VorgangArchiveConfirmationDialogContainerComponent), MockComponent(VorgangArchiveConfirmationDialogContainerComponent),
MockComponent(ArchiveIconComponent),
], ],
providers: [ providers: [
{ {
......
...@@ -23,14 +23,17 @@ ...@@ -23,14 +23,17 @@
unter der Lizenz sind dem Lizenztext zu entnehmen. unter der Lizenz sind dem Lizenztext zu entnehmen.
--> -->
<ozgcloud-button-with-spinner
<ods-button-with-spinner
*ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.EXPORT; else exportNotPossible" *ngIf="vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.EXPORT; else exportNotPossible"
dataTestId="export-vorgang" dataTestId="export-vorgang"
[showSpinner]="(exportStateResource$ | async)?.loading"
(clickEmitter)="export()" (clickEmitter)="export()"
[stateResource]="exportStateResource$ | async"
variant="outline"
text="Herunterladen" text="Herunterladen"
icon="save_alt" >
/> <ods-save-icon icon />
</ods-button-with-spinner>
<ng-template #exportNotPossible> <ng-template #exportNotPossible>
<div class="flex items-start gap-2" data-test-id="cannot-export-vorgang"> <div class="flex items-start gap-2" data-test-id="cannot-export-vorgang">
<ods-exclamation-icon /> <ods-exclamation-icon />
......
/**
* 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.
*/
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
*/ */
import { HasLinkPipe, StateResource, createStateResource } from '@alfa-client/tech-shared'; import { HasLinkPipe, StateResource, createStateResource } from '@alfa-client/tech-shared';
import { getElementFromFixture, mock } from '@alfa-client/test-utils'; import { getElementFromFixture, mock } from '@alfa-client/test-utils';
import { OzgcloudButtonWithSpinnerComponent } from '@alfa-client/ui';
import { VorgangService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared'; import { VorgangService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ComponentFixture, TestBed } from '@angular/core/testing';
import { ExclamationIconComponent } from '@ods/system'; import { ButtonWithSpinnerComponent } from '@ods/component';
import { ExclamationIconComponent, SaveIconComponent } from '@ods/system';
import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang'; import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
import { MockComponent } from 'ng-mocks'; import { MockComponent } from 'ng-mocks';
...@@ -48,8 +48,9 @@ describe('VorgangExportContainerComponent', () => { ...@@ -48,8 +48,9 @@ describe('VorgangExportContainerComponent', () => {
declarations: [ declarations: [
HasLinkPipe, HasLinkPipe,
VorgangExportContainerComponent, VorgangExportContainerComponent,
MockComponent(OzgcloudButtonWithSpinnerComponent), MockComponent(ButtonWithSpinnerComponent),
MockComponent(ExclamationIconComponent), MockComponent(ExclamationIconComponent),
MockComponent(SaveIconComponent),
], ],
providers: [ providers: [
{ {
......
...@@ -22,18 +22,13 @@ ...@@ -22,18 +22,13 @@
* unter der Lizenz sind dem Lizenztext zu entnehmen. * unter der Lizenz sind dem Lizenztext zu entnehmen.
*/ */
import { StateResource } from '@alfa-client/tech-shared'; import { StateResource } from '@alfa-client/tech-shared';
import { import { VorgangService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
VorgangService,
VorgangWithEingangLinkRel,
VorgangWithEingangResource,
} from '@alfa-client/vorgang-shared';
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
import { Observable, tap } from 'rxjs'; import { Observable, tap } from 'rxjs';
@Component({ @Component({
selector: 'alfa-vorgang-export-container', selector: 'alfa-vorgang-export-container',
templateUrl: './vorgang-export-container.component.html', templateUrl: './vorgang-export-container.component.html',
styleUrls: ['./vorgang-export-container.component.scss'],
}) })
export class VorgangExportContainerComponent implements OnInit { export class VorgangExportContainerComponent implements OnInit {
@Input() vorgangWithEingang: VorgangWithEingangResource; @Input() vorgangWithEingang: VorgangWithEingangResource;
......
...@@ -23,11 +23,12 @@ ...@@ -23,11 +23,12 @@
unter der Lizenz sind dem Lizenztext zu entnehmen. unter der Lizenz sind dem Lizenztext zu entnehmen.
--> -->
<ozgcloud-button-with-spinner <ods-button-with-spinner
dataTestId="process-vorgang" dataTestId="process-vorgang"
[stateResource]="commandStateResource$ | async"
(clickEmitter)="processVorgang()" (clickEmitter)="processVorgang()"
[stateResource]="commandStateResource$ | async"
variant="outline"
text="Vorgang vorprüfen" text="Vorgang vorprüfen"
svgIcon="done"
> >
</ozgcloud-button-with-spinner> <ods-check-icon icon />
</ods-button-with-spinner>
\ No newline at end of file
...@@ -57,6 +57,7 @@ import { ...@@ -57,6 +57,7 @@ import {
BescheidUploadIconComponent, BescheidUploadIconComponent,
ButtonCardComponent, ButtonCardComponent,
ButtonComponent, ButtonComponent,
CheckIconComponent,
CloseIconComponent, CloseIconComponent,
ErrorMessageComponent, ErrorMessageComponent,
ExclamationIconComponent, ExclamationIconComponent,
...@@ -168,6 +169,7 @@ const routes: Routes = [ ...@@ -168,6 +169,7 @@ const routes: Routes = [
ErrorMessageComponent, ErrorMessageComponent,
CollaborationModule, CollaborationModule,
ArchiveIconComponent, ArchiveIconComponent,
CheckIconComponent,
], ],
declarations: [ declarations: [
VorgangDetailPageComponent, VorgangDetailPageComponent,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment