Feature/set up a notification service for prompt dialogs (#4117)
* Set up a notification service for prompt dialogs * Update changelogpull/3037/merge
parent
6d8240dfed
commit
46422f731e
@ -0,0 +1,46 @@
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { Component } from '@angular/core';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { MatButtonModule } from '@angular/material/button';
|
||||
import { MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
||||
import { MatFormFieldModule } from '@angular/material/form-field';
|
||||
import { MatInputModule } from '@angular/material/input';
|
||||
|
||||
@Component({
|
||||
imports: [
|
||||
CommonModule,
|
||||
FormsModule,
|
||||
MatButtonModule,
|
||||
MatDialogModule,
|
||||
MatFormFieldModule,
|
||||
MatInputModule
|
||||
],
|
||||
selector: 'gf-prompt-dialog',
|
||||
standalone: true,
|
||||
templateUrl: './prompt-dialog.html'
|
||||
})
|
||||
export class GfPromptDialogComponent {
|
||||
public confirmLabel: string;
|
||||
public defaultValue: string;
|
||||
public discardLabel: string;
|
||||
public title: string;
|
||||
public value: string;
|
||||
public valueLabel: string;
|
||||
|
||||
public constructor(public dialogRef: MatDialogRef<GfPromptDialogComponent>) {}
|
||||
|
||||
public initialize(aParams: {
|
||||
confirmLabel?: string;
|
||||
defaultValue?: string;
|
||||
discardLabel?: string;
|
||||
title: string;
|
||||
valueLabel?: string;
|
||||
}) {
|
||||
this.confirmLabel = aParams.confirmLabel;
|
||||
this.defaultValue = aParams.defaultValue;
|
||||
this.discardLabel = aParams.discardLabel;
|
||||
this.title = aParams.title;
|
||||
this.value = aParams.defaultValue;
|
||||
this.valueLabel = aParams.valueLabel;
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
@if (title) {
|
||||
<div mat-dialog-title [innerHTML]="title"></div>
|
||||
}
|
||||
|
||||
<div class="py-3" mat-dialog-content>
|
||||
<mat-form-field appearance="outline" class="w-100 without-hint">
|
||||
@if (valueLabel) {
|
||||
<mat-label>{{ valueLabel }}</mat-label>
|
||||
}
|
||||
<input matInput [(ngModel)]="value" />
|
||||
</mat-form-field>
|
||||
</div>
|
||||
|
||||
<div align="end" mat-dialog-actions>
|
||||
<button mat-button (click)="dialogRef.close('discard')">
|
||||
{{ discardLabel }}
|
||||
</button>
|
||||
<button color="primary" mat-flat-button (click)="dialogRef.close(value)">
|
||||
{{ confirmLabel }}
|
||||
</button>
|
||||
</div>
|
Loading…
Reference in new issue