@enexus/dialog
Version:
@enexus/dialog - User Should call delete, confirm Method and also user can create they own component dialog.
274 lines (264 loc) • 8.57 kB
JavaScript
import { Component, Inject, Injectable, NgModule } from '@angular/core';
import { MatDialogRef, MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';
import { filter } from 'rxjs/operators';
import { CommonModule } from '@angular/common';
import { VendorsModule } from '@enexus/flipper-vendors';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @enum {string} */
const DialogSize = {
SIZE_SM: 'dialog-sm',
SIZE_MD: 'dialog-md',
SIZE_LG: 'dialog-lg',
SIZE_FULL: 'dialog-full',
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @record
*/
function DeleteDialogData() { }
if (false) {
/** @type {?} */
DeleteDialogData.prototype.name;
/** @type {?} */
DeleteDialogData.prototype.items;
/** @type {?|undefined} */
DeleteDialogData.prototype.helpPageId;
}
class DeleteDialogComponent {
/**
* @param {?} dialogRef
* @param {?} data
*/
constructor(dialogRef, data) {
this.dialogRef = dialogRef;
this.data = data;
}
}
DeleteDialogComponent.decorators = [
{ type: Component, args: [{
selector: 'lib-delete-dialog',
template: "<h1 mat-dialog-title>Delete {{data.name}}</h1>\r\n<div mat-dialog-content>\r\n <!-- <lib-help-anchor [pageId]=\"data.helpPageId\"></lib-help-anchor> -->\r\n Please confirm that you want to delete the following {{data.name | lowercase}}(s):\r\n <ul>\r\n <li *ngFor=\"let item of data.items\">{{item}}</li>\r\n </ul>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-button (click)=\"dialogRef.close()\">Cancel</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"warn\" cdkFocusInitial>Confirm\r\n </button>\r\n</div>\r\n",
styles: [""]
}] }
];
/** @nocollapse */
DeleteDialogComponent.ctorParameters = () => [
{ type: MatDialogRef },
{ type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
];
if (false) {
/** @type {?} */
DeleteDialogComponent.prototype.dialogRef;
/** @type {?} */
DeleteDialogComponent.prototype.data;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @record
*/
function ConfirmDialogData() { }
if (false) {
/** @type {?} */
ConfirmDialogData.prototype.title;
/** @type {?} */
ConfirmDialogData.prototype.message;
}
class ConfirmDialogComponent {
/**
* @param {?} dialogRef
* @param {?} data
*/
constructor(dialogRef, data) {
this.dialogRef = dialogRef;
this.data = data;
}
}
ConfirmDialogComponent.decorators = [
{ type: Component, args: [{
selector: 'lib-confirm-dialog',
template: "<h1 mat-dialog-title>{{data.title}}</h1>\r\n<div mat-dialog-content>\r\n {{data.message}}\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-button (click)=\"dialogRef.close()\">Cancel</button>\r\n <button mat-button [mat-dialog-close]=\"true\" color=\"warn\" cdkFocusInitial>Confirm\r\n </button>\r\n</div>\r\n",
styles: [""]
}] }
];
/** @nocollapse */
ConfirmDialogComponent.ctorParameters = () => [
{ type: MatDialogRef },
{ type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
];
if (false) {
/** @type {?} */
ConfirmDialogComponent.prototype.dialogRef;
/** @type {?} */
ConfirmDialogComponent.prototype.data;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class WaitDialogComponent {
/**
* @param {?} progress
*/
constructor(progress) {
this.progress = progress;
}
/**
* @param {?} progress
* @return {?}
*/
set progress(progress) {
this._progress = progress;
}
/**
* @return {?}
*/
get progress() {
return this._progress;
}
}
WaitDialogComponent.decorators = [
{ type: Component, args: [{
selector: 'lib-wait-dialog',
template: "<h1 mat-dialog-title>{{progress.title}}</h1>\r\n<div mat-dialog-content>\r\n <mat-progress-bar mode=\"determinate\" [value]=\"progress.progress\">\r\n </mat-progress-bar>\r\n</div>\r\n",
styles: [""]
}] }
];
/** @nocollapse */
WaitDialogComponent.ctorParameters = () => [
{ type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
];
if (false) {
/**
* @type {?}
* @private
*/
WaitDialogComponent.prototype._progress;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class DialogService {
/**
* @param {?} dialog
*/
constructor(dialog) {
this.dialog = dialog;
}
/**
* @template T, D, R
* @param {?} componentOrTemplateRef
* @param {?=} size
* @param {?=} data
* @return {?}
*/
open(componentOrTemplateRef, size = DialogSize.SIZE_SM, data) {
/** @type {?} */
const dialogRef = this.dialog.open(componentOrTemplateRef, {
panelClass: size,
data
});
return dialogRef.afterClosed().pipe(filter((/**
* @param {?} result
* @return {?}
*/
(result) => result !== undefined)));
}
/**
* @param {?} name
* @param {?} items
* @param {?=} helpPageId
* @return {?}
*/
delete(name, items, helpPageId) {
return this.open(DeleteDialogComponent, DialogSize.SIZE_MD, {
name,
items,
helpPageId,
});
}
/**
* @param {?} title
* @param {?} message
* @return {?}
*/
confirm(title, message) {
return this.open(ConfirmDialogComponent, DialogSize.SIZE_MD, {
title,
message,
});
}
/**
* @param {?} progress
* @return {?}
*/
wait(progress) {
return this.dialog.open(WaitDialogComponent, {
panelClass: DialogSize.SIZE_MD,
data: progress,
disableClose: true,
});
}
}
DialogService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
DialogService.ctorParameters = () => [
{ type: MatDialog }
];
if (false) {
/** @type {?} */
DialogService.prototype.dialog;
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
class DialogModule {
}
DialogModule.decorators = [
{ type: NgModule, args: [{
imports: [
CommonModule,
VendorsModule
],
declarations: [
DeleteDialogComponent,
WaitDialogComponent,
ConfirmDialogComponent,
],
exports: [
DeleteDialogComponent,
WaitDialogComponent,
ConfirmDialogComponent,
],
entryComponents: [
DeleteDialogComponent,
WaitDialogComponent,
ConfirmDialogComponent,
],
providers: [
DialogService,
]
},] }
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
export { DialogModule, DialogService, DeleteDialogComponent as ɵa, WaitDialogComponent as ɵb, ConfirmDialogComponent as ɵd };
//# sourceMappingURL=dialog.js.map