@tapsellorg/angular-material-library
Version:
Angular library for Tapsell
113 lines (107 loc) • 9.36 kB
JavaScript
import * as i0 from '@angular/core';
import { Injectable, model, Inject, ChangeDetectionStrategy, ViewEncapsulation, Component, NgModule } from '@angular/core';
import * as i1 from '@angular/material/dialog';
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
import { PghStorageFactory } from '@tapsellorg/angular-material-library/src/lib/common';
import * as i3 from '@angular/material/button';
import { MatButtonModule } from '@angular/material/button';
import * as i4 from '@angular/material/checkbox';
import { MatCheckboxModule } from '@angular/material/checkbox';
import * as i5 from '@angular/forms';
import { FormsModule } from '@angular/forms';
import * as i6 from '@tapsellorg/angular-material-library/src/lib/translate';
import { TranslateModule } from '@tapsellorg/angular-material-library/src/lib/translate';
import { CommonModule } from '@angular/common';
class PghConfirmDialogPersistService {
constructor() {
this.localStorageFactory = PghStorageFactory.localStorageFactory();
}
persist(persistId) {
this.localStorageFactory.setItem(PghConfirmDialogPersistService.getKey(persistId), JSON.stringify(true));
}
static getKey(persistId) {
return `confirmDialogRemember_${persistId}`;
}
getPersistData(persistId) {
const rawData = this.localStorageFactory.getItem(PghConfirmDialogPersistService.getKey(persistId));
if (!rawData)
return false;
try {
return JSON.parse(rawData);
}
catch (e) {
return false;
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogPersistService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogPersistService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogPersistService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root',
}]
}] });
class PghConfirmDialogComponent {
constructor(dialogRef, data, confirmDialogPersistService) {
this.dialogRef = dialogRef;
this.data = data;
this.confirmDialogPersistService = confirmDialogPersistService;
this.dontShowAgain = model(false);
}
ngOnInit() { }
rejectHandler() {
this.dialogRef.close(false);
}
acceptHandler() {
const persistId = this.data?.dontShowAgainConfig?.persistId;
if (persistId && this.dontShowAgain()) {
this.confirmDialogPersistService.persist(persistId);
}
this.dialogRef.close(true);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: PghConfirmDialogPersistService }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: PghConfirmDialogComponent, isStandalone: false, selector: "pgh-confirm-dialog", inputs: { dontShowAgain: { classPropertyName: "dontShowAgain", publicName: "dontShowAgain", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dontShowAgain: "dontShowAgainChange" }, ngImport: i0, template: "<h3 mat-dialog-title>{{ data.title }}</h3>\n<div mat-dialog-content [class.overflow-visible]=\"data.dontShowAgainConfig\">\n <p>{{ data.message }}</p>\n @if (data?.dontShowAgainConfig) {\n <div class=\"text-gray-700\">\n <mat-checkbox [(ngModel)]=\"dontShowAgain\" color=\"accent\">\n {{\n data.dontShowAgainConfig?.checkBoxText || 'CONFIRM_DIALOG_DONT_SHOW_AGAIN_CHECKBOX'\n | translate\n }}\n </mat-checkbox>\n </div>\n }\n</div>\n<div mat-dialog-actions align=\"end\">\n <button mat-raised-button (click)=\"rejectHandler()\" [color]=\"data.uiOptions?.rejectBtnColor\">\n {{ data.rejectBtnText || 'CONFIRM_DIALOG_REJECT_BUTTON' | translate }}\n </button>\n <button\n mat-raised-button\n (click)=\"acceptHandler()\"\n cdkFocusInitial\n [color]=\"data.uiOptions?.acceptBtnColor || 'primary'\"\n >\n {{ data.acceptBtnText || 'CONFIRM_DIALOG_ACCEPT_BUTTON' | translate }}\n </button>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogComponent, decorators: [{
type: Component,
args: [{ selector: 'pgh-confirm-dialog', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<h3 mat-dialog-title>{{ data.title }}</h3>\n<div mat-dialog-content [class.overflow-visible]=\"data.dontShowAgainConfig\">\n <p>{{ data.message }}</p>\n @if (data?.dontShowAgainConfig) {\n <div class=\"text-gray-700\">\n <mat-checkbox [(ngModel)]=\"dontShowAgain\" color=\"accent\">\n {{\n data.dontShowAgainConfig?.checkBoxText || 'CONFIRM_DIALOG_DONT_SHOW_AGAIN_CHECKBOX'\n | translate\n }}\n </mat-checkbox>\n </div>\n }\n</div>\n<div mat-dialog-actions align=\"end\">\n <button mat-raised-button (click)=\"rejectHandler()\" [color]=\"data.uiOptions?.rejectBtnColor\">\n {{ data.rejectBtnText || 'CONFIRM_DIALOG_REJECT_BUTTON' | translate }}\n </button>\n <button\n mat-raised-button\n (click)=\"acceptHandler()\"\n cdkFocusInitial\n [color]=\"data.uiOptions?.acceptBtnColor || 'primary'\"\n >\n {{ data.acceptBtnText || 'CONFIRM_DIALOG_ACCEPT_BUTTON' | translate }}\n </button>\n</div>\n" }]
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
type: Inject,
args: [MAT_DIALOG_DATA]
}] }, { type: PghConfirmDialogPersistService }] });
class PghConfirmDialogModule {
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogModule, declarations: [PghConfirmDialogComponent], imports: [CommonModule,
MatButtonModule,
MatDialogModule,
MatCheckboxModule,
FormsModule,
TranslateModule], exports: [PghConfirmDialogComponent] }); }
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogModule, imports: [CommonModule,
MatButtonModule,
MatDialogModule,
MatCheckboxModule,
FormsModule,
TranslateModule] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PghConfirmDialogModule, decorators: [{
type: NgModule,
args: [{
declarations: [PghConfirmDialogComponent],
imports: [
CommonModule,
MatButtonModule,
MatDialogModule,
MatCheckboxModule,
FormsModule,
TranslateModule,
],
exports: [PghConfirmDialogComponent],
}]
}] });
/**
* Generated bundle index. Do not edit.
*/
export { PghConfirmDialogComponent, PghConfirmDialogModule, PghConfirmDialogPersistService };
//# sourceMappingURL=tapsellorg-angular-material-library-confirm-dialog.mjs.map