diff --git a/src/app/features/dashboard/sidebar/sidebar.component.scss b/src/app/features/dashboard/sidebar/sidebar.component.scss index 423ec436aa5a503f989283b42a8c01a67da0854c..2fda413ae5ff4bd97526fbb9c66a8a37be2787e6 100644 --- a/src/app/features/dashboard/sidebar/sidebar.component.scss +++ b/src/app/features/dashboard/sidebar/sidebar.component.scss @@ -157,7 +157,7 @@ a { } .headerTxtSpan { - font-size: 14px; + font-size: 13px; font-weight: 600; color: #2e2f2f; opacity: 1; diff --git a/src/app/shared/components/confirm-action/confirm-action.component.html b/src/app/shared/components/confirm-action/confirm-action.component.html new file mode 100644 index 0000000000000000000000000000000000000000..96024c5d285f7a80d5389091c278b6a683fc2d85 --- /dev/null +++ b/src/app/shared/components/confirm-action/confirm-action.component.html @@ -0,0 +1,27 @@ +<mat-toolbar class="dialog-header"> + <div style="display: flex; align-items: center; padding: 0; flex: 1 1 auto"> + <h2>{{ title }}</h2> + </div> + <button + type="button" + mat-icon-button + [mat-dialog-close]="true" + class="close" + tabindex="-1" + > + <mat-icon aria-hidden="false" aria-label="Close icon">close</mat-icon> + </button> +</mat-toolbar> +<mat-dialog-content> + <div class="star-rating-container"> + <p> + {{ content }} + </p> + </div></mat-dialog-content +> +<mat-toolbar class="form-footer"> + <button mat-dialog-close mat-raised-button style="margin-right: auto"> + Cancel + </button> + <button color="primary" mat-raised-button (click)="onClickSecondAction()">{{secondAction}}</button> +</mat-toolbar> diff --git a/src/app/shared/components/confirm-action/confirm-action.component.scss b/src/app/shared/components/confirm-action/confirm-action.component.scss new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/app/shared/components/confirm-action/confirm-action.component.spec.ts b/src/app/shared/components/confirm-action/confirm-action.component.spec.ts new file mode 100644 index 0000000000000000000000000000000000000000..925f76bd20e1cdbb66371ce09dc40036131895e6 --- /dev/null +++ b/src/app/shared/components/confirm-action/confirm-action.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ConfirmActionComponent } from './confirm-action.component'; + +describe('ConfirmActionComponent', () => { + let component: ConfirmActionComponent; + let fixture: ComponentFixture<ConfirmActionComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ConfirmActionComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(ConfirmActionComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/shared/components/confirm-action/confirm-action.component.ts b/src/app/shared/components/confirm-action/confirm-action.component.ts new file mode 100644 index 0000000000000000000000000000000000000000..dbd208fbc419b3fc1c6d82ba3806ba88f3d6f082 --- /dev/null +++ b/src/app/shared/components/confirm-action/confirm-action.component.ts @@ -0,0 +1,51 @@ +import { Component, Inject, OnInit } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { + MAT_DIALOG_DATA, + MatDialogModule, + MatDialogRef, +} from '@angular/material/dialog'; +import { MatButtonModule } from '@angular/material/button'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatIconModule } from '@angular/material/icon'; + +@Component({ + selector: 'gp-confirm-action', + standalone: true, + imports: [ + CommonModule, + MatDialogModule, + MatButtonModule, + MatToolbarModule, + MatIconModule, + ], + templateUrl: './confirm-action.component.html', + styleUrl: './confirm-action.component.scss', +}) +export class ConfirmActionComponent implements OnInit { + title!: string; + content!: string; + secondAction!: string; + + constructor( + public dialogRef: MatDialogRef<ConfirmActionComponent>, + @Inject(MAT_DIALOG_DATA) public data: any, + ) {} + + ngOnInit(): void { + this.title = this.data.dataKey.title; + this.content = this.data.dataKey.content; + this.secondAction = this.data.dataKey.secondAction; + } + + onClickSecondAction() { + this.data.dataKey.action().subscribe({ + next: (res: any) => { + this.dialogRef.close(true); + }, + error: (err: any) => { + this.dialogRef.close(false); + }, + }); + } +} diff --git a/src/app/shared/models/public-solution.model.ts b/src/app/shared/models/public-solution.model.ts index c8c74f5d84c985c5425fe01fab11d50a57b3f839..9ff3a6f0757226e44f4f3aad6c290abcdfb5996c 100644 --- a/src/app/shared/models/public-solution.model.ts +++ b/src/app/shared/models/public-solution.model.ts @@ -1,4 +1,5 @@ export interface PublicSolutionsRequestPayload { + userId?: string; modelTypeCodes?: string[]; active?: boolean; catalogIds?: string[]; @@ -15,6 +16,7 @@ export interface PublicSolutionsRequestPayload { size?: number; }; } + export interface Solution { name: string; ownerName: string;