@huntsman-cancer-institute/dialog 12.11.9-SNAPSHOT → 12.11.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/material/dialog"),require("@angular/material/progress-spinner"),require("@angular/router"),require("ng-dynamic-component"),require("@angular/material/expansion"),require("@angular/material/button")):"function"==typeof define&&define.amd?define("@huntsman-cancer-institute/dialog",["exports","@angular/core","@angular/common","@angular/forms","@angular/material/dialog","@angular/material/progress-spinner","@angular/router","ng-dynamic-component","@angular/material/expansion","@angular/material/button"],e):e(((n=n||self)["huntsman-cancer-institute"]=n["huntsman-cancer-institute"]||{},n["huntsman-cancer-institute"].dialog={}),n.ng.core,n.ng.common,n.ng.forms,n.ng.material.dialog,n.ng.material.progressSpinner,n.ng.router,n.ngDynamicComponent,n.ng.material.expansion,n.ng.material.button)}(this,(function(n,e,t,i,o,a,r,s,l,c){"use strict";var g,d;(g=n.DialogType||(n.DialogType={})).ERROR="Error",g.WARNING="Warning",g.ALERT="Alert",g.SUCCESS="Succeed",g.FAILED="Failed",g.CONFIRM="Confirm",g.INFO="Info",g.VALIDATION="Validation Error",(d=n.ActionType||(n.ActionType={})).PRIMARY="primary",d.SECONDARY="accent";var p=function(){function i(e,t,i){this.dialogRef=e,this.data=t,this.changeDetector=i,this.type=n.DialogType,this.message=null,this.title="",this.icon="",this.dialogType="",this.defaultTitle="",this.actionType=n.ActionType.SECONDARY,this.originalXClick=0,this.originalYClick=0,this.positionX=0,this.positionY=0,this.movingDialog=!1,t&&(this.message=Array.isArray(t.message)?t.message:[t.message],this.title=t.title,this.icon=t.icon,this.dialogType=t.dialogType)}return i.prototype.ngOnInit=function(){this.dialogType&&(this.defaultTitle=this.dialogType);for(var n=0;n<this.message.length;n++)this.message[n]=this.message[n].replace(/\n/g,"<br>")+"<br>"},i.prototype.onClickOk=function(){this.dialogRef.close(!0)},i.prototype.onClickYes=function(){this.dialogRef.close(!0)},i.prototype.onClickNo=function(){this.dialogRef.close()},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA},{token:e.ChangeDetectorRef}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-alert-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"}},viewQueries:[{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'\n <div class="full-height full-width d-flex flex-column">\n <div class="full-width dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-center full-width padding {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="d-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="!icon">\n <i *ngIf="dialogType === type.ALERT" class="fa fa-exclamation fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.SUCCESS" class="fa fa-check-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.FAILED || dialogType === type.ERROR" class="fa fa-exclamation-triangle fa-2x i-margin i-color-red"></i>\n <i *ngIf="dialogType === type.WARNING || dialogType === type.VALIDATION" class="fa fa-exclamation-triangle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.INFO" class="fa fa-info-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.CONFIRM" class="fa fa-check fa-2x i-margin i-color-blue"></i>\n </div>\n <h1 *ngIf="dialogType !== type.ERROR"\n style="margin:0;">{{this.title ? this.title : defaultTitle}}</h1>\n <h1 *ngIf="dialogType === type.ERROR"\n style="margin:0; color: Red">{{this.title ? this.title : defaultTitle}}</h1>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\n <hr>\n <div class="flex-grow-1 full-width extra-padded message">\n <div *ngFor="let line of message" class="full-width"\n [innerHTML]="line" style="white-space: pre-line">\n </div>\n </div>\n <br>\n </mat-dialog-content>\n <mat-dialog-actions class="d-flex justify-content-center no-margin no-padding">\n <save-footer *ngIf="dialogType !== type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickOk()" name="Ok"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickYes()" name="Yes"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" [actionType]="actionType"\n class="centered-text large-size" (saveClicked)="onClickNo()"\n name="No"></save-footer>\n </mat-dialog-actions>\n </div>\n ',isInline:!0,styles:["\n hr {\n width: 98%;\n }\n\n .i-margin {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n .i-color-blue {\n color: #0077B3FF;\n }\n .i-color-red {\n color: red;\n }\n\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n .extra-padded {\n padding: 0.6em 0.9em 0.6em 0.9em;\n }\n .large-size {\n font-size: large;\n }\n .primary-action {\n font-size: large;\n }\n .secondary-action {\n font-size: large;\n }\n .message {\n color: #0F244DFF;\n }\n "],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:p,decorators:[{type:e.Component,args:[{selector:"hci-alert-dialog",template:'\n <div class="full-height full-width d-flex flex-column">\n <div class="full-width dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-center full-width padding {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="d-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="!icon">\n <i *ngIf="dialogType === type.ALERT" class="fa fa-exclamation fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.SUCCESS" class="fa fa-check-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.FAILED || dialogType === type.ERROR" class="fa fa-exclamation-triangle fa-2x i-margin i-color-red"></i>\n <i *ngIf="dialogType === type.WARNING || dialogType === type.VALIDATION" class="fa fa-exclamation-triangle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.INFO" class="fa fa-info-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.CONFIRM" class="fa fa-check fa-2x i-margin i-color-blue"></i>\n </div>\n <h1 *ngIf="dialogType !== type.ERROR"\n style="margin:0;">{{this.title ? this.title : defaultTitle}}</h1>\n <h1 *ngIf="dialogType === type.ERROR"\n style="margin:0; color: Red">{{this.title ? this.title : defaultTitle}}</h1>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\n <hr>\n <div class="flex-grow-1 full-width extra-padded message">\n <div *ngFor="let line of message" class="full-width"\n [innerHTML]="line" style="white-space: pre-line">\n </div>\n </div>\n <br>\n </mat-dialog-content>\n <mat-dialog-actions class="d-flex justify-content-center no-margin no-padding">\n <save-footer *ngIf="dialogType !== type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickOk()" name="Ok"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickYes()" name="Yes"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" [actionType]="actionType"\n class="centered-text large-size" (saveClicked)="onClickNo()"\n name="No"></save-footer>\n </mat-dialog-actions>\n </div>\n ',styles:["\n hr {\n width: 98%;\n }\n\n .i-margin {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n .i-color-blue {\n color: #0077B3FF;\n }\n .i-color-red {\n color: red;\n }\n\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n .extra-padded {\n padding: 0.6em 0.9em 0.6em 0.9em;\n }\n .large-size {\n font-size: large;\n }\n .primary-action {\n font-size: large;\n }\n .secondary-action {\n font-size: large;\n }\n .message {\n color: #0F244DFF;\n }\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]},{type:e.ChangeDetectorRef}]},propDecorators:{topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}});var m=function(){function n(n,e){this.dialogRef=n,this.data=e,this.strokeWidth=3,this.diameter=30,this.message="Loading...",this.data&&(this.data.message&&(this.message=this.data.message),this.data.diameter&&(this.diameter=this.data.diameter),this.data.strokeWidth&&(this.strokeWidth=this.data.strokeWidth))}return n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),n.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:n,selector:"hci-spinner-dialog",inputs:{strokeWidth:"strokeWidth",diameter:"diameter",message:"message"},ngImport:e,template:'<div mat-dialog-title class="not-rendered">\r\n\x3c!--<div mat-dialog-title>--\x3e\r\n</div>\r\n<div mat-dialog-content class="full-height padded">\r\n <div class="full-width full-height t">\r\n <div class="tr">\r\n <div class="td vertical-center" [style.height.px]="diameter + 5">\r\n <mat-spinner [hidden]="false" strokeWidth="{{strokeWidth}}" [diameter]="diameter"></mat-spinner>\r\n </div>\r\n <div class="td vertical-center">\r\n {{message}}\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class="not-rendered">\r\n\x3c!--<div mat-dialog-actions>--\x3e\r\n</div>\r\n',styles:["\n .t { display: table; }\n .tr { display: table-row; }\n .td { display: table-cell; }\n\n .full-height { height: 100%; }\n .full-width { width: 100%; }\n\n .vertical-center { vertical-align: middle; }\n\n .padded {\n padding-top: 0.4em;\n padding-bottom: 0.4em;\n }\n\n .not-rendered {\n padding: 0;\n margin: 0;\n\n min-height: 0;\n max-height: 0;\n height: 0;\n }\n\n "],components:[{type:a.MatSpinner,selector:"mat-spinner",inputs:["color"]}],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"}]}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:m,decorators:[{type:e.Component,args:[{selector:"hci-spinner-dialog",templateUrl:"spinner-dialog.component.html",styles:["\n .t { display: table; }\n .tr { display: table-row; }\n .td { display: table-cell; }\n\n .full-height { height: 100%; }\n .full-width { width: 100%; }\n\n .vertical-center { vertical-align: middle; }\n\n .padded {\n padding-top: 0.4em;\n padding-bottom: 0.4em;\n }\n\n .not-rendered {\n padding: 0;\n margin: 0;\n\n min-height: 0;\n max-height: 0;\n height: 0;\n }\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]},propDecorators:{strokeWidth:[{type:e.Input}],diameter:[{type:e.Input}],message:[{type:e.Input}]}});var f=function(){function i(e,t,i){this.dialogRef=e,this.data=t,this.changeDetector=i,this.title="",this.icon="",this.actionType=n.ActionType,this.originalXClick=0,this.originalYClick=0,this.movingDialog=!1,this.positionX=0,this.positionY=0,this.actions=[],this.title=t.title,this.tempRef=t.templateRef,this.icon=t.icon,this.context=t.context;var o=t.actionConfig?t.actionConfig:null;this.actions=o?o.actions:[],this.form=o&&o.formSource?o.formSource:null}return Object.defineProperty(i.prototype,"primaryDisable",{get:function(){return this.form&&this.form.invalid},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"secondaryDisable",{get:function(){return!1},enumerable:!1,configurable:!0}),i.prototype.ngOnInit=function(){this.context.dialog=this.dialogRef,this.vcr.createEmbeddedView(this.tempRef,this.context)},i.prototype.onClose=function(){this.dialogRef.close()},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.prototype.executeAction=function(n){n.externalAction&&n.externalAction(this.dialogRef),n.internalAction&&"onClose"===n.internalAction&&this.onClose()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA},{token:e.ChangeDetectorRef}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-custom-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"}},viewQueries:[{propertyName:"vcr",first:!0,predicate:["anchor"],descendants:!0,read:e.ViewContainerRef,static:!0},{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'\n <div class="d-flex full-height full-width flex-column">\n <div *ngIf="this.title" class="full-width generic-dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-items-center full-width p-2 {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\n <h3 style="margin:0;">{{this.title}}</h3>\n </div>\n <div class="flex-grow-1"></div>\n <div class="padded" (click)="onClose()">\n <i class="exit fas fa-times"></i>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 full-width no-margin p-2" style="min-height: 6em;">\n <div #anchor></div>\n </mat-dialog-content>\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\n <div *ngFor="let action of actions">\n <save-footer *ngIf="action.type === actionType.PRIMARY;else secondary"\n [actionType]="action.type"\n [icon]="action.icon"\n [disableSave]="primaryDisable"\n (saveClicked)="executeAction(action)"\n [name]="action.name">\n </save-footer>\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\n <ng-template #secondary>\n <save-footer [actionType]="action.type"\n (saveClicked)="executeAction(action)"\n [icon]="action.icon"\n [disableSave]="secondaryDisable"\n [name]="action.name">\n </save-footer>\n </ng-template>\n </div>\n </mat-dialog-actions>\n </div>\n ',isInline:!0,styles:["\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100vh !important;\n max-width: 100vw !important ;\n }\n "],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:f,decorators:[{type:e.Component,args:[{selector:"hci-custom-dialog",template:'\n <div class="d-flex full-height full-width flex-column">\n <div *ngIf="this.title" class="full-width generic-dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-items-center full-width p-2 {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\n <h3 style="margin:0;">{{this.title}}</h3>\n </div>\n <div class="flex-grow-1"></div>\n <div class="padded" (click)="onClose()">\n <i class="exit fas fa-times"></i>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 full-width no-margin p-2" style="min-height: 6em;">\n <div #anchor></div>\n </mat-dialog-content>\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\n <div *ngFor="let action of actions">\n <save-footer *ngIf="action.type === actionType.PRIMARY;else secondary"\n [actionType]="action.type"\n [icon]="action.icon"\n [disableSave]="primaryDisable"\n (saveClicked)="executeAction(action)"\n [name]="action.name">\n </save-footer>\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\n <ng-template #secondary>\n <save-footer [actionType]="action.type"\n (saveClicked)="executeAction(action)"\n [icon]="action.icon"\n [disableSave]="secondaryDisable"\n [name]="action.name">\n </save-footer>\n </ng-template>\n </div>\n </mat-dialog-actions>\n </div>\n ',styles:["\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100vh !important;\n max-width: 100vw !important ;\n }\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]},{type:e.ChangeDetectorRef}]},propDecorators:{vcr:[{type:e.ViewChild,args:["anchor",{read:e.ViewContainerRef,static:!0}]}],topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}});var u,h=function(){function i(e,t,i,o,a){this.dialog=e,this.router=t,this.changeDetector=i,this.dialogRef=o,this.data=a,this.classList="d-flex flex-column flex-grow-1 flex-shrink-1",this.type=n.ActionType,this.actions=[],this.originalXClick=0,this.originalYClick=0,this.positionX=0,this.positionY=0,this.movingDialog=!1,a&&(this.dialogContentBluePrint=a.dialogContent,this.icon=a.icon,this.title=a.title,this.useSaveFooter=!!a.actionConfig&&a.actionConfig.useSaveFooter,this.actions=a.actionConfig?a.actionConfig.actions:[])}return i.prototype.ngOnInit=function(){},i.prototype.createdComponent=function(n){this.dialogContent=n.instance},i.prototype.executeAction=function(n){if(n.externalAction&&n.externalAction(),n.internalAction){var e=n.internalAction;"cancel"===n.internalAction||"onClose"===n.internalAction?this.dialogContent[e]?this.dialogContent[e]():this.onClose():void 0!==n.internalActionReturnValue?n.internalActionReturnValue&&this.dialogContent[e](n.internalActionReturnValue):this.dialogContent[e]()}},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.prototype.onClose=function(){this.dialogRef.close()},i.prototype.ngOnDestroy=function(){},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialog},{token:r.Router},{token:e.ChangeDetectorRef},{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-generic-container-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"},properties:{class:"this.classList"}},viewQueries:[{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'<div class="full-height full-width d-flex flex-column" style="height: 100%;">\r\n <div class="full-width generic-dialog-header-colors no-margin no-padding">\r\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\r\n class="d-flex align-items-center full-width" [ngClass]="{\'grabbed\':movingDialog, \'grabbable\': !movingDialog}">\r\n <div class="d-flex flex-row align-items-center p-2">\r\n <img class="icon" *ngIf="icon && icon.substr(0, 2) !== \'<i\'" [src]="icon">\r\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\r\n <h3 style="margin:0;">{{this.title ? this.title : this.dialogContent.innerTitle}}</h3>\r\n </div>\r\n <div class="flex-grow-1"></div>\r\n <div class="padded" (click)="onClose()">\r\n <i class="exit fas fa-times"></i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\r\n <div class="flex-grow-1 full-height full-width padded">\r\n <ndc-dynamic [ndcDynamicComponent]="this.dialogContentBluePrint"\r\n [ndcDynamicInputs]="this.data"\r\n (ndcDynamicCreated)="createdComponent($event)">\r\n </ndc-dynamic>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\r\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\r\n <div *ngFor="let action of actions">\r\n <save-footer *ngIf="action.type === type.PRIMARY;else secondary"\r\n [actionType]="action.type"\r\n [icon]="action.icon"\r\n (saveClicked)="executeAction(action)"\r\n [disableSave]="this.dialogContent.primaryDisable(action)"\r\n [dirty]="this.dialogContent.dirty()"\r\n [name]="action.name"\r\n [showSpinner]="this.dialogContent.showSpinner">\r\n </save-footer>\r\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\r\n <ng-template #secondary>\r\n <save-footer [actionType]="action.type"\r\n (saveClicked)="executeAction(action)"\r\n [icon]="action.icon"\r\n [disableSave]="this.dialogContent.secondaryDisable(action)"\r\n [name]="action.name">\r\n\r\n </save-footer>\r\n </ng-template>\r\n </div>\r\n </mat-dialog-actions>\r\n</div>\r\n',styles:["\n\n .no-padding{\n padding:0;\n }\n .no-margin{\n margin: 0;\n }\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100% !important;\n }\n\n "],components:[{type:s.DynamicComponent,selector:"ndc-dynamic",inputs:["ndcDynamicComponent","ndcDynamicInjector","ndcDynamicProviders","ndcDynamicContent"],outputs:["ndcDynamicCreated"]}],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:t.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:s.DynamicIoDirective,selector:"[ndcDynamicInputs],[ndcDynamicOutputs],[ngComponentOutletNdcDynamicInputs],[ngComponentOutletNdcDynamicOutputs]",inputs:["ndcDynamicInputs","ngComponentOutletNdcDynamicInputs","ndcDynamicOutputs","ngComponentOutletNdcDynamicOutputs"]},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:h,decorators:[{type:e.Component,args:[{selector:"hci-generic-container-dialog",templateUrl:"./generic-container-dialog.component.html",styles:["\n\n .no-padding{\n padding:0;\n }\n .no-margin{\n margin: 0;\n }\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100% !important;\n }\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialog},{type:r.Router},{type:e.ChangeDetectorRef},{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]},propDecorators:{classList:[{type:e.HostBinding,args:["class"]}],topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}}),(u=n.ConfirmType||(n.ConfirmType={})).DELETE="delete",u.DELETE_W_MESSAGE="deleteMessage",u.DELETE_W_PROMPT="deletePrompt",u.DISCARD="discard",u.CONFIRM_AND_CLOSE="confirmAndClose",u.ADD="add",u.ALERT="alert",u.GENERIC="generic";var y=function(){function n(){this.showSpinner=!1,this.innerTitle="",this.primaryDisable=function(n){return!1},this.secondaryDisable=function(n){return!1},this.dirty=function(){return!1}}return n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[],target:e.ɵɵFactoryTarget.Component}),n.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:n,selector:"ng-component",inputs:{inputData:"inputData"},ngImport:e,template:"",isInline:!0}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:y,decorators:[{type:e.Component,args:[{template:""}]}],ctorParameters:function(){return[]},propDecorators:{inputData:[{type:e.Input}]}});var v,b=this&&this.__extends||(v=function(n,e){return(v=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,e){n.__proto__=e}||function(n,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(n[t]=e[t])})(n,e)},function(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function t(){this.constructor=n}v(n,e),n.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}),C=function(i){function a(e,t){var o=i.call(this)||this;o.dialogRef=e,o.data=t,o.ConfirmType=n.ConfirmType,o.prompt="",o.message1="",o.message2="",o.confirmType=n.ConfirmType.GENERIC;var a=t.confirmType?t.confirmType:n.ConfirmType.GENERIC;return Object.values(n.ConfirmType).includes(a)&&(o.confirmType=a),o.prompt=t.prompt?t.prompt:"",o.message1=t.message1?t.message1:"",o.message2=t.message2?t.message2:"",o.setupMessagesByType(),o}return b(a,i),a.prototype.setupMessagesByType=function(){switch(this.confirmType){case n.ConfirmType.DELETE:this.prompt="The following will be deleted:",this.message2="Continue?";break;case n.ConfirmType.DELETE_W_MESSAGE:this.prompt="The following will be deleted:";break;case n.ConfirmType.DELETE_W_PROMPT:break;case n.ConfirmType.DISCARD:this.prompt="",this.message2="Continue?";break;case n.ConfirmType.CONFIRM_AND_CLOSE:this.prompt="",this.message2="";break;case n.ConfirmType.ADD:this.prompt="The following will be added:",this.message2="Continue?";break;case n.ConfirmType.ALERT:break;case n.ConfirmType.GENERIC:this.prompt="",this.message2="";break;default:throw new Error("Confirm type doesn't exist")}},a.prototype.onConfirmClick=function(n){this.dialogRef.close(n)},a.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:a,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),a.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:a,selector:"hci-confirm-dialog",usesInheritance:!0,ngImport:e,template:'\n <div class="ri-confirm-body">\n\n <div *ngIf="confirmType !== ConfirmType.ALERT; else alertBlock">\n {{prompt}}\n <div class="ri-confirm-text-delete">{{ message1 }}</div>\n {{message2}}\n </div>\n\n\n <div #alertBlock>\n <p>We are working to correct it. Contact CODE support if the error persists.</p>\n <mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <strong>Show details</strong>\n </mat-panel-title>\n </mat-expansion-panel-header>\n <div>{{ message1 }}</div>\n </mat-expansion-panel>\n </div>\n\n </div>\n ',isInline:!0,styles:["\n\n "],components:[{type:l.MatExpansionPanel,selector:"mat-expansion-panel",inputs:["disabled","expanded","hideToggle","togglePosition"],outputs:["opened","closed","expandedChange","afterExpand","afterCollapse"],exportAs:["matExpansionPanel"]},{type:l.MatExpansionPanelHeader,selector:"mat-expansion-panel-header",inputs:["tabIndex","expandedHeight","collapsedHeight"]}],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:l.MatExpansionPanelTitle,selector:"mat-panel-title"}]}),a}(y);e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:C,decorators:[{type:e.Component,args:[{selector:"hci-confirm-dialog",template:'\n <div class="ri-confirm-body">\n\n <div *ngIf="confirmType !== ConfirmType.ALERT; else alertBlock">\n {{prompt}}\n <div class="ri-confirm-text-delete">{{ message1 }}</div>\n {{message2}}\n </div>\n\n\n <div #alertBlock>\n <p>We are working to correct it. Contact CODE support if the error persists.</p>\n <mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <strong>Show details</strong>\n </mat-panel-title>\n </mat-expansion-panel-header>\n <div>{{ message1 }}</div>\n </mat-expansion-panel>\n </div>\n\n </div>\n ',styles:["\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]}});var D=this&&this.__values||function(n){var e="function"==typeof Symbol&&Symbol.iterator,t=e&&n[e],i=0;if(t)return t.call(n);if(n&&"number"==typeof n.length)return{next:function(){return n&&i>=n.length&&(n=void 0),{value:n&&n[i++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},I=function(){function t(n){this.dialog=n,this._spinnerDialogIsOpen=!1,this.spinnerWorkItemCount=0,this.checkingSpinnerWorkItems=!1,this.spinnerDialogRefs=[]}return Object.defineProperty(t.prototype,"spinnerDialogIsOpen",{get:function(){return this._spinnerDialogIsOpen},enumerable:!1,configurable:!0}),t.prototype.alert=function(e,t,i,o,a){return this.openDialog(e,t,i||n.DialogType.ALERT,o,a)},t.prototype.confirm=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.CONFIRM,i,o)},t.prototype.confirmByType=function(e,t,i,a,r){if(t||(t="Confirm"),i||(i="fa fa-info-circle"),a||((a=new o.MatDialogConfig).width="33vw",a.minWidth="300px",a.disableClose=!0),a.data?a.data.confirmType=e:a.data={confirmType:e},!r){var s={type:n.ActionType.PRIMARY,name:"YES",internalAction:"onConfirmClick",internalActionReturnValue:!0},l={type:n.ActionType.SECONDARY,name:"GO BACK",internalAction:"onClose"};switch(e){case n.ConfirmType.CONFIRM_AND_CLOSE:s={type:n.ActionType.PRIMARY,name:"CONFIRM AND CLOSE",internalAction:"onConfirmClick",internalActionReturnValue:!0};break;case n.ConfirmType.ALERT:s=void 0,l={type:n.ActionType.SECONDARY,name:"CLOSE",internalAction:"onClose"};break;default:throw new Error("Confirm type doesn't exist")}var c=[];s&&c.push(s),l&&c.push(l),r={actions:c}}return this.genericDialogContainer(C,t,i,a,r)},t.prototype.error=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.ERROR,i,o)},t.prototype.info=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.INFO,i,o)},t.prototype.createCustomDialog=function(n,e,t,i,a,r){var s=null;return(s=a||new o.MatDialogConfig).data=s.data?s.data:{},s.data.templateRef=n,s.data.title=t||"",s.data.icon=i||"",s.data.context=e,r&&(s.data.actionConfig=r),s.minWidth=s.minWidth?s.minWidth:"10em",s.width=s.width?s.width:"30em",s.panelClass=["mx-sized-dialog","no-padding"],s.disableClose=!0,s.hasBackdrop=!0,this.dialog.open(f,s)},t.prototype.startDefaultSpinnerDialog=function(){return this.startSpinnerDialog("Please wait...",3,30)},t.prototype.startSpinnerDialog=function(n,e,t){var i=this;if(this._spinnerDialogIsOpen)return null;this._spinnerDialogIsOpen=!0;var a=new o.MatDialogConfig;a.data={message:n,strokeWidth:e,diameter:t},a.width="13em",a.disableClose=!0;var r=this.dialog.open(m,a);return r.afterClosed().subscribe((function(){i._spinnerDialogIsOpen=!1})),this.spinnerDialogRefs.push(r),r},t.prototype.startNonModalSpinnerDialog=function(n,e,t){var i=this;if(this._spinnerDialogIsOpen)return null;this._spinnerDialogIsOpen=!0;var a=new o.MatDialogConfig;a.data={message:n,strokeWidth:e,diameter:t},a.width="13em",a.disableClose=!0,a.hasBackdrop=!1;var r=this.dialog.open(m,a);return r.afterClosed().subscribe((function(){i._spinnerDialogIsOpen=!1})),this.spinnerDialogRefs.push(r),r},t.prototype.stopAllSpinnerDialogs=function(){var n,e;this.spinnerWorkItemCount=0;var t=function(n){setTimeout((function(){n.close()}))};try{for(var i=D(this.spinnerDialogRefs),o=i.next();!o.done;o=i.next()){t(o.value)}}catch(e){n={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(n)throw n.error}}this.spinnerDialogRefs=[]},t.prototype.addSpinnerWorkItem=function(){var n=this;this.spinnerWorkItemCount++,this.checkingSpinnerWorkItems||(this.checkingSpinnerWorkItems=!0,setTimeout((function(){n.checkSpinnerWorkItems()})))},t.prototype.removeSpinnerWorkItem=function(){var n=this;this.spinnerWorkItemCount--,this.spinnerWorkItemCount<0&&(this.spinnerWorkItemCount=0),this.checkingSpinnerWorkItems||(this.checkingSpinnerWorkItems=!0,setTimeout((function(){n.checkSpinnerWorkItems()})))},t.prototype.checkSpinnerWorkItems=function(){this.checkingSpinnerWorkItems=!1,this.spinnerWorkItemCount?this._spinnerDialogIsOpen||this.startDefaultSpinnerDialog():this._spinnerDialogIsOpen&&this.stopAllSpinnerDialogs()},t.prototype.genericDialogContainer=function(n,e,t,i,a){var r=null;return(r=i||new o.MatDialogConfig).data=r.data?r.data:{},r.data.dialogContent=n,r.data.title=e,t&&(r.data.icon=t),a&&(r.data.actionConfig=a),r.panelClass=["mx-sized-dialog","no-padding"],r.disableClose=!0,r.hasBackdrop=!0,this.dialog.open(h,r).afterClosed()},t.prototype.openDialog=function(n,e,t,i,a){var r=null;return(r=a||new o.MatDialogConfig).data=r.data?r.data:{},r.data.message=n,r.data.title=e||"",r.data.icon=i||"",r.data.dialogType=t||"",r.maxWidth=r.maxWidth?r.maxWidth:"80vw",r.maxHeight=r.maxHeight?r.maxHeight:"80vh",r.minWidth=r.minWidth?r.minWidth:"30em",r.panelClass="no-padding",r.disableClose=!0,r.autoFocus=!1,r.hasBackdrop=!1,this.dialog.open(p,r).afterClosed()},t.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:t,deps:[{token:o.MatDialog}],target:e.ɵɵFactoryTarget.Injectable}),t.ɵprov=e.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:t}),t}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:I,decorators:[{type:e.Injectable}],ctorParameters:function(){return[{type:o.MatDialog}]}});var x=function(){function i(t){this.dialogService=t,this.actionType=n.ActionType.PRIMARY,this.message="Your changes have not been saved",this.name="Save",this.disableSave=!1,this.saveClicked=new e.EventEmitter,this.type=n.ActionType}return Object.defineProperty(i.prototype,"dirty",{get:function(){return this._dirty},set:function(n){this._dirty=n||!1},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"showSpinner",{set:function(n){var e=this;setTimeout((function(){n?e.dialogService.startDefaultSpinnerDialog():e.dialogService.stopAllSpinnerDialogs()}))},enumerable:!1,configurable:!0}),i.prototype.ngOnInit=function(){},i.prototype.notifySave=function(){this.saveClicked.emit()},i.prototype.ngOnDestroy=function(){this.saveClicked.unsubscribe()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:I}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-save-footer",inputs:{actionType:"actionType",icon:"icon",message:"message",name:"name",dirty:"dirty",showSpinner:"showSpinner",disableSave:"disableSave"},outputs:{saveClicked:"saveClicked"},ngImport:e,template:'\n <div class="full-height full-width" style="margin-bottom: 8px;">\n <div class="d-flex flex-row align-items-center right-align padded">\n <div *ngIf="dirty" class="warning-background padded">\n {{ message }}\n </div>\n <div class="major-left-right-margin">\n <button mat-raised-button [disabled]="disableSave"\n [color]="actionType" (click)="notifySave()"\n [ngClass]="{\'primary-action\': actionType === type.PRIMARY,\n \'secondary-action\': actionType === type.SECONDARY && !disableSave }">\n <img *ngIf="icon" [src]="icon" alt="">\n {{ name }}\n </button>\n </div>\n </div>\n </div>\n ',isInline:!0,styles:["\n .primary-action{\n background-color: #0077B3FF;\n font-weight: bolder;\n color: white;\n }\n .secondary-action{\n background-color: #DEF4FFFF;\n font-weight: bolder;\n color: #0077B3FF;\n border: #0077B3FF solid 1px;\n }\n\n .major-left-right-margin {\n margin-left: 0.5em;\n margin-right: 0.5em;\n }\n\n .right-align {\n text-align: right;\n justify-content: flex-end;\n }\n\n\n .warning-background { background:#feec89; }\n\n "],components:[{type:c.MatButton,selector:"button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]",inputs:["disabled","disableRipple","color"],exportAs:["matButton"]}],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:t.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:x,decorators:[{type:e.Component,args:[{selector:"hci-save-footer",template:'\n <div class="full-height full-width" style="margin-bottom: 8px;">\n <div class="d-flex flex-row align-items-center right-align padded">\n <div *ngIf="dirty" class="warning-background padded">\n {{ message }}\n </div>\n <div class="major-left-right-margin">\n <button mat-raised-button [disabled]="disableSave"\n [color]="actionType" (click)="notifySave()"\n [ngClass]="{\'primary-action\': actionType === type.PRIMARY,\n \'secondary-action\': actionType === type.SECONDARY && !disableSave }">\n <img *ngIf="icon" [src]="icon" alt="">\n {{ name }}\n </button>\n </div>\n </div>\n </div>\n ',styles:["\n .primary-action{\n background-color: #0077B3FF;\n font-weight: bolder;\n color: white;\n }\n .secondary-action{\n background-color: #DEF4FFFF;\n font-weight: bolder;\n color: #0077B3FF;\n border: #0077B3FF solid 1px;\n }\n\n .major-left-right-margin {\n margin-left: 0.5em;\n margin-right: 0.5em;\n }\n\n .right-align {\n text-align: right;\n justify-content: flex-end;\n }\n\n\n .warning-background { background:#feec89; }\n\n "]}]}],ctorParameters:function(){return[{type:I}]},propDecorators:{actionType:[{type:e.Input}],icon:[{type:e.Input}],message:[{type:e.Input}],name:[{type:e.Input}],dirty:[{type:e.Input}],showSpinner:[{type:e.Input}],disableSave:[{type:e.Input}],saveClicked:[{type:e.Output}]}});var T=function(){function n(){}return n.forRoot=function(){return{providers:[I],ngModule:n}},n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[],target:e.ɵɵFactoryTarget.NgModule}),n.ɵmod=e.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,declarations:[p,C,f,h,x,m],imports:[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule],exports:[p,C,f,h,x,m]}),n.ɵinj=e.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,providers:[],imports:[[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule]]}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:T,decorators:[{type:e.NgModule,args:[{imports:[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule],providers:[],declarations:[p,C,f,h,x,m],entryComponents:[p,C,f,h,x,m],exports:[p,C,f,h,x,m]}]}]}),n.AlertDialogComponent=p,n.BaseGenericContainerDialog=y,n.ConfirmDialogComponent=C,n.CustomDialogComponent=f,n.DialogModule=T,n.DialogService=I,n.GenericContainerDialogComponent=h,n.SaveFooterComponent=x,n.SpinnerDialogComponent=m,Object.defineProperty(n,"__esModule",{value:!0})}));
1
+ !function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/material/dialog"),require("@angular/material/progress-spinner"),require("@angular/router"),require("ng-dynamic-component"),require("@angular/material/expansion"),require("@angular/material/button")):"function"==typeof define&&define.amd?define("@huntsman-cancer-institute/dialog",["exports","@angular/core","@angular/common","@angular/forms","@angular/material/dialog","@angular/material/progress-spinner","@angular/router","ng-dynamic-component","@angular/material/expansion","@angular/material/button"],e):e(((n=n||self)["huntsman-cancer-institute"]=n["huntsman-cancer-institute"]||{},n["huntsman-cancer-institute"].dialog={}),n.ng.core,n.ng.common,n.ng.forms,n.ng.material.dialog,n.ng.material.progressSpinner,n.ng.router,n.ngDynamicComponent,n.ng.material.expansion,n.ng.material.button)}(this,(function(n,e,t,i,o,a,r,s,l,c){"use strict";var g,d;(g=n.DialogType||(n.DialogType={})).ERROR="Error",g.WARNING="Warning",g.ALERT="Alert",g.SUCCESS="Succeed",g.FAILED="Failed",g.CONFIRM="Confirm",g.INFO="Info",g.VALIDATION="Validation Error",(d=n.ActionType||(n.ActionType={})).PRIMARY="primary",d.SECONDARY="accent";var p=function(){function i(e,t,i){this.dialogRef=e,this.data=t,this.changeDetector=i,this.type=n.DialogType,this.message=null,this.title="",this.icon="",this.dialogType="",this.defaultTitle="",this.actionType=n.ActionType.SECONDARY,this.originalXClick=0,this.originalYClick=0,this.positionX=0,this.positionY=0,this.movingDialog=!1,t&&(this.message=Array.isArray(t.message)?t.message:[t.message],this.title=t.title,this.icon=t.icon,this.dialogType=t.dialogType)}return i.prototype.ngOnInit=function(){this.dialogType&&(this.defaultTitle=this.dialogType);for(var n=0;n<this.message.length;n++)this.message[n]=this.message[n].replace(/\n/g,"<br>")+"<br>"},i.prototype.onClickOk=function(){this.dialogRef.close(!0)},i.prototype.onClickYes=function(){this.dialogRef.close(!0)},i.prototype.onClickNo=function(){this.dialogRef.close()},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA},{token:e.ChangeDetectorRef}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-alert-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"}},viewQueries:[{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'\n <div class="full-height full-width d-flex flex-column">\n <div class="full-width dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-center full-width padding {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="d-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="!icon">\n <i *ngIf="dialogType === type.ALERT" class="fa fa-exclamation fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.SUCCESS" class="fa fa-check-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.FAILED || dialogType === type.ERROR" class="fa fa-exclamation-triangle fa-2x i-margin i-color-red"></i>\n <i *ngIf="dialogType === type.WARNING || dialogType === type.VALIDATION" class="fa fa-exclamation-triangle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.INFO" class="fa fa-info-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.CONFIRM" class="fa fa-check fa-2x i-margin i-color-blue"></i>\n </div>\n <h1 *ngIf="dialogType !== type.ERROR"\n style="margin:0;">{{this.title ? this.title : defaultTitle}}</h1>\n <h1 *ngIf="dialogType === type.ERROR"\n style="margin:0; color: Red">{{this.title ? this.title : defaultTitle}}</h1>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\n <hr>\n <div class="flex-grow-1 full-width extra-padded message">\n <div *ngFor="let line of message" class="full-width"\n [innerHTML]="line" style="white-space: pre-line">\n </div>\n </div>\n <br>\n </mat-dialog-content>\n <mat-dialog-actions class="d-flex justify-content-center no-margin no-padding">\n <save-footer *ngIf="dialogType !== type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickOk()" name="Ok"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickYes()" name="Yes"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" [actionType]="actionType"\n class="centered-text large-size" (saveClicked)="onClickNo()"\n name="No"></save-footer>\n </mat-dialog-actions>\n </div>\n ',isInline:!0,styles:["\n hr {\n width: 98%;\n }\n\n .i-margin {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n .i-color-blue {\n color: #0077B3FF;\n }\n .i-color-red {\n color: red;\n }\n\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n .extra-padded {\n padding: 0.6em 0.9em 0.6em 0.9em;\n }\n .large-size {\n font-size: large;\n }\n .primary-action {\n font-size: large;\n }\n .secondary-action {\n font-size: large;\n }\n .message {\n color: #0F244DFF;\n }\n "],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:p,decorators:[{type:e.Component,args:[{selector:"hci-alert-dialog",template:'\n <div class="full-height full-width d-flex flex-column">\n <div class="full-width dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-center full-width padding {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="d-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="!icon">\n <i *ngIf="dialogType === type.ALERT" class="fa fa-exclamation fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.SUCCESS" class="fa fa-check-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.FAILED || dialogType === type.ERROR" class="fa fa-exclamation-triangle fa-2x i-margin i-color-red"></i>\n <i *ngIf="dialogType === type.WARNING || dialogType === type.VALIDATION" class="fa fa-exclamation-triangle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.INFO" class="fa fa-info-circle fa-2x i-margin i-color-blue"></i>\n <i *ngIf="dialogType === type.CONFIRM" class="fa fa-check fa-2x i-margin i-color-blue"></i>\n </div>\n <h1 *ngIf="dialogType !== type.ERROR"\n style="margin:0;">{{this.title ? this.title : defaultTitle}}</h1>\n <h1 *ngIf="dialogType === type.ERROR"\n style="margin:0; color: Red">{{this.title ? this.title : defaultTitle}}</h1>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\n <hr>\n <div class="flex-grow-1 full-width extra-padded message">\n <div *ngFor="let line of message" class="full-width"\n [innerHTML]="line" style="white-space: pre-line">\n </div>\n </div>\n <br>\n </mat-dialog-content>\n <mat-dialog-actions class="d-flex justify-content-center no-margin no-padding">\n <save-footer *ngIf="dialogType !== type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickOk()" name="Ok"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" class="centered-text large-size"\n (saveClicked)="onClickYes()" name="Yes"></save-footer>\n <save-footer *ngIf="dialogType === type.CONFIRM" [actionType]="actionType"\n class="centered-text large-size" (saveClicked)="onClickNo()"\n name="No"></save-footer>\n </mat-dialog-actions>\n </div>\n ',styles:["\n hr {\n width: 98%;\n }\n\n .i-margin {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n .i-color-blue {\n color: #0077B3FF;\n }\n .i-color-red {\n color: red;\n }\n\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n .extra-padded {\n padding: 0.6em 0.9em 0.6em 0.9em;\n }\n .large-size {\n font-size: large;\n }\n .primary-action {\n font-size: large;\n }\n .secondary-action {\n font-size: large;\n }\n .message {\n color: #0F244DFF;\n }\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]},{type:e.ChangeDetectorRef}]},propDecorators:{topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}});var m=function(){function n(n,e){this.dialogRef=n,this.data=e,this.strokeWidth=3,this.diameter=30,this.message="Loading...",this.data&&(this.data.message&&(this.message=this.data.message),this.data.diameter&&(this.diameter=this.data.diameter),this.data.strokeWidth&&(this.strokeWidth=this.data.strokeWidth))}return n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),n.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:n,selector:"hci-spinner-dialog",inputs:{strokeWidth:"strokeWidth",diameter:"diameter",message:"message"},ngImport:e,template:'<div mat-dialog-title class="not-rendered">\r\n\x3c!--<div mat-dialog-title>--\x3e\r\n</div>\r\n<div mat-dialog-content class="full-height padded">\r\n <div class="full-width full-height t">\r\n <div class="tr">\r\n <div class="td vertical-center" [style.height.px]="diameter + 5">\r\n <mat-spinner [hidden]="false" strokeWidth="{{strokeWidth}}" [diameter]="diameter"></mat-spinner>\r\n </div>\r\n <div class="td vertical-center">\r\n {{message}}\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class="not-rendered">\r\n\x3c!--<div mat-dialog-actions>--\x3e\r\n</div>\r\n',styles:["\n .t { display: table; }\n .tr { display: table-row; }\n .td { display: table-cell; }\n\n .full-height { height: 100%; }\n .full-width { width: 100%; }\n\n .vertical-center { vertical-align: middle; }\n\n .padded {\n padding-top: 0.4em;\n padding-bottom: 0.4em;\n }\n\n .not-rendered {\n padding: 0;\n margin: 0;\n\n min-height: 0;\n max-height: 0;\n height: 0;\n }\n\n "],components:[{type:a.MatSpinner,selector:"mat-spinner",inputs:["color"]}],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"}]}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:m,decorators:[{type:e.Component,args:[{selector:"hci-spinner-dialog",templateUrl:"spinner-dialog.component.html",styles:["\n .t { display: table; }\n .tr { display: table-row; }\n .td { display: table-cell; }\n\n .full-height { height: 100%; }\n .full-width { width: 100%; }\n\n .vertical-center { vertical-align: middle; }\n\n .padded {\n padding-top: 0.4em;\n padding-bottom: 0.4em;\n }\n\n .not-rendered {\n padding: 0;\n margin: 0;\n\n min-height: 0;\n max-height: 0;\n height: 0;\n }\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]},propDecorators:{strokeWidth:[{type:e.Input}],diameter:[{type:e.Input}],message:[{type:e.Input}]}});var f=function(){function i(e,t,i){this.dialogRef=e,this.data=t,this.changeDetector=i,this.title="",this.icon="",this.actionType=n.ActionType,this.originalXClick=0,this.originalYClick=0,this.movingDialog=!1,this.positionX=0,this.positionY=0,this.actions=[],this.title=t.title,this.tempRef=t.templateRef,this.icon=t.icon,this.context=t.context;var o=t.actionConfig?t.actionConfig:null;this.actions=o?o.actions:[],this.form=o&&o.formSource?o.formSource:null}return Object.defineProperty(i.prototype,"primaryDisable",{get:function(){return this.form&&this.form.invalid},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"secondaryDisable",{get:function(){return!1},enumerable:!1,configurable:!0}),i.prototype.ngOnInit=function(){this.context.dialog=this.dialogRef,this.vcr.createEmbeddedView(this.tempRef,this.context)},i.prototype.onClose=function(){this.dialogRef.close()},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.prototype.executeAction=function(n){n.externalAction&&n.externalAction(this.dialogRef),n.internalAction&&"onClose"===n.internalAction&&this.onClose()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA},{token:e.ChangeDetectorRef}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-custom-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"}},viewQueries:[{propertyName:"vcr",first:!0,predicate:["anchor"],descendants:!0,read:e.ViewContainerRef,static:!0},{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'\n <div class="d-flex full-height full-width flex-column">\n <div *ngIf="this.title" class="full-width generic-dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-items-center full-width p-2 {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\n <h3 style="margin:0;">{{this.title}}</h3>\n </div>\n <div class="flex-grow-1"></div>\n <div class="padded" (click)="onClose()">\n <i class="exit fas fa-times"></i>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 full-width no-margin p-2" style="min-height: 6em;">\n <div #anchor></div>\n </mat-dialog-content>\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\n <div *ngFor="let action of actions">\n <save-footer *ngIf="action.type === actionType.PRIMARY;else secondary"\n [actionType]="action.type"\n [icon]="action.icon"\n [disableSave]="primaryDisable"\n (saveClicked)="executeAction(action)"\n [name]="action.name">\n </save-footer>\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\n <ng-template #secondary>\n <save-footer [actionType]="action.type"\n (saveClicked)="executeAction(action)"\n [icon]="action.icon"\n [disableSave]="secondaryDisable"\n [name]="action.name">\n </save-footer>\n </ng-template>\n </div>\n </mat-dialog-actions>\n </div>\n ',isInline:!0,styles:["\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100vh !important;\n max-width: 100vw !important ;\n }\n "],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:f,decorators:[{type:e.Component,args:[{selector:"hci-custom-dialog",template:'\n <div class="d-flex full-height full-width flex-column">\n <div *ngIf="this.title" class="full-width generic-dialog-header-colors no-margin no-padding">\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\n class="force-flex-container-row align-items-center full-width p-2 {{ movingDialog ? \'grabbed\' : \'grabbable\' }}">\n <div class="-flex flex-row align-items-center padded">\n <img *ngIf="icon" class="icon" [src]="this.icon">\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\n <h3 style="margin:0;">{{this.title}}</h3>\n </div>\n <div class="flex-grow-1"></div>\n <div class="padded" (click)="onClose()">\n <i class="exit fas fa-times"></i>\n </div>\n </div>\n </div>\n <mat-dialog-content class="flex-grow-1 full-width no-margin p-2" style="min-height: 6em;">\n <div #anchor></div>\n </mat-dialog-content>\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\n <div *ngFor="let action of actions">\n <save-footer *ngIf="action.type === actionType.PRIMARY;else secondary"\n [actionType]="action.type"\n [icon]="action.icon"\n [disableSave]="primaryDisable"\n (saveClicked)="executeAction(action)"\n [name]="action.name">\n </save-footer>\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\n <ng-template #secondary>\n <save-footer [actionType]="action.type"\n (saveClicked)="executeAction(action)"\n [icon]="action.icon"\n [disableSave]="secondaryDisable"\n [name]="action.name">\n </save-footer>\n </ng-template>\n </div>\n </mat-dialog-actions>\n </div>\n ',styles:["\n .centered-text { text-align: center; }\n\n .no-padding{\n padding:0;\n\n }\n\n .no-margin{\n margin: 0;\n }\n\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n\n .force-flex-container-row{\n display:flex !important;\n }\n\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100vh !important;\n max-width: 100vw !important ;\n }\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]},{type:e.ChangeDetectorRef}]},propDecorators:{vcr:[{type:e.ViewChild,args:["anchor",{read:e.ViewContainerRef,static:!0}]}],topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}});var u,h=function(){function i(e,t,i,o,a){this.dialog=e,this.router=t,this.changeDetector=i,this.dialogRef=o,this.data=a,this.classList="d-flex flex-column flex-grow-1 flex-shrink-1",this.type=n.ActionType,this.actions=[],this.originalXClick=0,this.originalYClick=0,this.positionX=0,this.positionY=0,this.movingDialog=!1,a&&(this.dialogContentBluePrint=a.dialogContent,this.icon=a.icon,this.title=a.title,this.useSaveFooter=!!a.actionConfig&&a.actionConfig.useSaveFooter,this.actions=a.actionConfig?a.actionConfig.actions:[])}return i.prototype.ngOnInit=function(){},i.prototype.createdComponent=function(n){this.dialogContent=n.instance},i.prototype.executeAction=function(n){if(n.externalAction&&n.externalAction(),n.internalAction){var e=n.internalAction;"cancel"===n.internalAction||"onClose"===n.internalAction?this.dialogContent[e]?this.dialogContent[e]():this.onClose():void 0!==n.internalActionReturnValue?n.internalActionReturnValue&&this.dialogContent[e](n.internalActionReturnValue):this.dialogContent[e]()}},i.prototype.onMouseDownHeader=function(n){n&&(this.positionX=this.topmostLeftmost.nativeElement.offsetLeft,this.positionY=this.topmostLeftmost.nativeElement.offsetTop,this.originalXClick=n.screenX,this.originalYClick=n.screenY,this.movingDialog=!0,this.changeDetector.detach())},i.prototype.onMouseMove=function(n){if(n&&this.movingDialog){this.positionX+=n.screenX-this.originalXClick,this.positionY+=n.screenY-this.originalYClick,this.originalXClick=n.screenX,this.originalYClick=n.screenY;var e={left:this.positionX+"px",top:this.positionY+"px"};this.dialogRef.updatePosition(e)}},i.prototype.onMouseUp=function(){this.movingDialog=!1,this.changeDetector.reattach()},i.prototype.onClose=function(){this.dialogRef.close()},i.prototype.ngOnDestroy=function(){},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:o.MatDialog},{token:r.Router},{token:e.ChangeDetectorRef},{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-generic-container-dialog",host:{listeners:{"window:mousemove":"onMouseMove($event)","window:mouseup":"onMouseUp($event)"},properties:{class:"this.classList"}},viewQueries:[{propertyName:"topmostLeftmost",first:!0,predicate:["topmostLeftmost"],descendants:!0}],ngImport:e,template:'<div class="full-height full-width d-flex flex-column" style="height: 100%;">\r\n <div class="full-width generic-dialog-header-colors no-margin no-padding">\r\n <div #topmostLeftmost mat-dialog-title (mousedown)="onMouseDownHeader($event)"\r\n class="d-flex align-items-center full-width" [ngClass]="{\'grabbed\':movingDialog, \'grabbable\': !movingDialog}">\r\n <div class="d-flex flex-row align-items-center p-2">\r\n <img class="icon" *ngIf="icon && icon.substr(0, 2) !== \'<i\'" [src]="icon">\r\n <div *ngIf="icon && icon.substr(0, 2) === \'<i\'" class="i-class" [innerHTML]="icon" ></div>\r\n <h3 style="margin:0;">{{this.title ? this.title : this.dialogContent.innerTitle}}</h3>\r\n </div>\r\n <div class="flex-grow-1"></div>\r\n <div class="padded" (click)="onClose()">\r\n <i class="exit fas fa-times"></i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <mat-dialog-content class="flex-grow-1 no-margin no-padding">\r\n <div class="flex-grow-1 full-height full-width padded">\r\n <ndc-dynamic [ndcDynamicComponent]="this.dialogContentBluePrint"\r\n [ndcDynamicInputs]="this.data"\r\n (ndcDynamicCreated)="createdComponent($event)">\r\n </ndc-dynamic>\r\n </div>\r\n </mat-dialog-content>\r\n <mat-dialog-actions *ngIf="actions && actions.length > 0"\r\n class="d-flex flex-row justify-content-end no-margin no-padding generic-dialog-footer-colors">\r\n <div *ngFor="let action of actions">\r\n <save-footer *ngIf="action.type === type.PRIMARY;else secondary"\r\n [actionType]="action.type"\r\n [icon]="action.icon"\r\n (saveClicked)="executeAction(action)"\r\n [disableSave]="this.dialogContent.primaryDisable(action)"\r\n [dirty]="this.dialogContent.dirty()"\r\n [name]="action.name"\r\n [showSpinner]="this.dialogContent.showSpinner">\r\n </save-footer>\r\n \x3c!-- to avoid issue with multiple spinner or dirty notes--\x3e\r\n <ng-template #secondary>\r\n <save-footer [actionType]="action.type"\r\n (saveClicked)="executeAction(action)"\r\n [icon]="action.icon"\r\n [disableSave]="this.dialogContent.secondaryDisable(action)"\r\n [name]="action.name">\r\n\r\n </save-footer>\r\n </ng-template>\r\n </div>\r\n </mat-dialog-actions>\r\n</div>\r\n',styles:["\n\n .no-padding{\n padding:0;\n }\n .no-margin{\n margin: 0;\n }\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100% !important;\n }\n\n "],components:[{type:s.DynamicComponent,selector:"ndc-dynamic",inputs:["ndcDynamicComponent","ndcDynamicInjector","ndcDynamicProviders","ndcDynamicContent"],outputs:["ndcDynamicCreated"]}],directives:[{type:o.MatDialogTitle,selector:"[mat-dialog-title], [matDialogTitle]",inputs:["id"],exportAs:["matDialogTitle"]},{type:t.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:o.MatDialogContent,selector:"[mat-dialog-content], mat-dialog-content, [matDialogContent]"},{type:s.DynamicIoDirective,selector:"[ndcDynamicInputs],[ndcDynamicOutputs],[ngComponentOutletNdcDynamicInputs],[ngComponentOutletNdcDynamicOutputs]",inputs:["ndcDynamicInputs","ngComponentOutletNdcDynamicInputs","ndcDynamicOutputs","ngComponentOutletNdcDynamicOutputs"]},{type:o.MatDialogActions,selector:"[mat-dialog-actions], mat-dialog-actions, [matDialogActions]"},{type:t.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:h,decorators:[{type:e.Component,args:[{selector:"hci-generic-container-dialog",templateUrl:"./generic-container-dialog.component.html",styles:["\n\n .no-padding{\n padding:0;\n }\n .no-margin{\n margin: 0;\n }\n .grabbable {\n cursor: move;\n cursor: grab;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n }\n .grabbed:active {\n cursor: move;\n cursor: grabbing;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n }\n .exit{\n max-width: 20px;\n cursor: pointer;\n }\n .i-class {\n margin-left: 0.3em;\n margin-right: 0.3em;\n }\n mat-dialog-content {\n max-height: 100% !important;\n }\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialog},{type:r.Router},{type:e.ChangeDetectorRef},{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]},propDecorators:{classList:[{type:e.HostBinding,args:["class"]}],topmostLeftmost:[{type:e.ViewChild,args:["topmostLeftmost",{static:!1}]}],onMouseMove:[{type:e.HostListener,args:["window:mousemove",["$event"]]}],onMouseUp:[{type:e.HostListener,args:["window:mouseup",["$event"]]}]}}),(u=n.ConfirmType||(n.ConfirmType={})).DELETE="delete",u.DELETE_W_MESSAGE="deleteMessage",u.DELETE_W_PROMPT="deletePrompt",u.DISCARD="discard",u.CONFIRM_AND_CLOSE="confirmAndClose",u.ADD="add",u.ALERT="alert",u.GENERIC="generic";var y=function(){function n(){this.showSpinner=!1,this.innerTitle="",this.primaryDisable=function(n){return!1},this.secondaryDisable=function(n){return!1},this.dirty=function(){return!1}}return n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[],target:e.ɵɵFactoryTarget.Component}),n.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:n,selector:"ng-component",inputs:{inputData:"inputData"},ngImport:e,template:"",isInline:!0}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:y,decorators:[{type:e.Component,args:[{template:""}]}],ctorParameters:function(){return[]},propDecorators:{inputData:[{type:e.Input}]}});var v,b=this&&this.__extends||(v=function(n,e){return(v=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,e){n.__proto__=e}||function(n,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(n[t]=e[t])})(n,e)},function(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function t(){this.constructor=n}v(n,e),n.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}),C=function(i){function a(e,t){var o=i.call(this)||this;o.dialogRef=e,o.data=t,o.ConfirmType=n.ConfirmType,o.prompt="",o.message1="",o.message2="",o.confirmType=n.ConfirmType.GENERIC;var a=t.confirmType?t.confirmType:n.ConfirmType.GENERIC;return Object.values(n.ConfirmType).includes(a)&&(o.confirmType=a),o.prompt=t.prompt?t.prompt:"",o.message1=t.message1?t.message1:"",o.message2=t.message2?t.message2:"",o.setupMessagesByType(),o}return b(a,i),a.prototype.setupMessagesByType=function(){switch(this.confirmType){case n.ConfirmType.DELETE:this.prompt="The following will be deleted:",this.message2="Continue?";break;case n.ConfirmType.DELETE_W_MESSAGE:this.prompt="The following will be deleted:";break;case n.ConfirmType.DELETE_W_PROMPT:break;case n.ConfirmType.DISCARD:this.prompt="",this.message2="Continue?";break;case n.ConfirmType.CONFIRM_AND_CLOSE:this.prompt="",this.message2="";break;case n.ConfirmType.ADD:this.prompt="The following will be added:",this.message2="Continue?";break;case n.ConfirmType.ALERT:break;case n.ConfirmType.GENERIC:this.prompt="",this.message2="";break;default:throw new Error("Confirm type doesn't exist")}},a.prototype.onConfirmClick=function(n){this.dialogRef.close(n)},a.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:a,deps:[{token:o.MatDialogRef},{token:o.MAT_DIALOG_DATA}],target:e.ɵɵFactoryTarget.Component}),a.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:a,selector:"hci-confirm-dialog",usesInheritance:!0,ngImport:e,template:'\n <div class="ri-confirm-body">\n\n <div *ngIf="confirmType !== ConfirmType.ALERT; else alertBlock">\n {{prompt}}\n <div class="ri-confirm-text-delete">{{ message1 }}</div>\n {{message2}}\n </div>\n\n\n <div #alertBlock>\n <p>We are working to correct it. Contact CODE support if the error persists.</p>\n <mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <strong>Show details</strong>\n </mat-panel-title>\n </mat-expansion-panel-header>\n <div>{{ message1 }}</div>\n </mat-expansion-panel>\n </div>\n\n </div>\n ',isInline:!0,styles:["\n\n "],components:[{type:l.MatExpansionPanel,selector:"mat-expansion-panel",inputs:["disabled","expanded","hideToggle","togglePosition"],outputs:["opened","closed","expandedChange","afterExpand","afterCollapse"],exportAs:["matExpansionPanel"]},{type:l.MatExpansionPanelHeader,selector:"mat-expansion-panel-header",inputs:["tabIndex","expandedHeight","collapsedHeight"]}],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:l.MatExpansionPanelTitle,selector:"mat-panel-title"}]}),a}(y);e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:C,decorators:[{type:e.Component,args:[{selector:"hci-confirm-dialog",template:'\n <div class="ri-confirm-body">\n\n <div *ngIf="confirmType !== ConfirmType.ALERT; else alertBlock">\n {{prompt}}\n <div class="ri-confirm-text-delete">{{ message1 }}</div>\n {{message2}}\n </div>\n\n\n <div #alertBlock>\n <p>We are working to correct it. Contact CODE support if the error persists.</p>\n <mat-expansion-panel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <strong>Show details</strong>\n </mat-panel-title>\n </mat-expansion-panel-header>\n <div>{{ message1 }}</div>\n </mat-expansion-panel>\n </div>\n\n </div>\n ',styles:["\n\n "]}]}],ctorParameters:function(){return[{type:o.MatDialogRef},{type:void 0,decorators:[{type:e.Inject,args:[o.MAT_DIALOG_DATA]}]}]}});var D=this&&this.__values||function(n){var e="function"==typeof Symbol&&Symbol.iterator,t=e&&n[e],i=0;if(t)return t.call(n);if(n&&"number"==typeof n.length)return{next:function(){return n&&i>=n.length&&(n=void 0),{value:n&&n[i++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},I=function(){function t(n){this.dialog=n,this._spinnerDialogIsOpen=!1,this.spinnerWorkItemCount=0,this.checkingSpinnerWorkItems=!1,this.spinnerDialogRefs=[]}return Object.defineProperty(t.prototype,"spinnerDialogIsOpen",{get:function(){return this._spinnerDialogIsOpen},enumerable:!1,configurable:!0}),t.prototype.alert=function(e,t,i,o,a){return this.openDialog(e,t,i||n.DialogType.ALERT,o,a)},t.prototype.confirm=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.CONFIRM,i,o)},t.prototype.confirmByType=function(e,t,i,a,r){if(t||(t="Confirm"),i||(i="fa fa-info-circle"),a||(a=new o.MatDialogConfig),a.width||(a.width="33vw"),a.minWidth||(a.minWidth="300px"),a.disableClose||(a.disableClose=!0),a.data?a.data.confirmType=e:a.data={confirmType:e},!r){var s={type:n.ActionType.PRIMARY,name:"YES",internalAction:"onConfirmClick",internalActionReturnValue:!0},l={type:n.ActionType.SECONDARY,name:"GO BACK",internalAction:"onClose"};switch(e){case n.ConfirmType.CONFIRM_AND_CLOSE:s={type:n.ActionType.PRIMARY,name:"CONFIRM AND CLOSE",internalAction:"onConfirmClick",internalActionReturnValue:!0};break;case n.ConfirmType.ALERT:s=void 0,l={type:n.ActionType.SECONDARY,name:"CLOSE",internalAction:"onClose"};break;default:throw new Error("Confirm type doesn't exist")}var c=[];s&&c.push(s),l&&c.push(l),r={actions:c}}return this.genericDialogContainer(C,t,i,a,r)},t.prototype.error=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.ERROR,i,o)},t.prototype.info=function(e,t,i,o){return this.openDialog(e,t,n.DialogType.INFO,i,o)},t.prototype.createCustomDialog=function(n,e,t,i,a,r){var s=null;return(s=a||new o.MatDialogConfig).data=s.data?s.data:{},s.data.templateRef=n,s.data.title=t||"",s.data.icon=i||"",s.data.context=e,r&&(s.data.actionConfig=r),s.minWidth=s.minWidth?s.minWidth:"10em",s.width=s.width?s.width:"30em",s.panelClass=["mx-sized-dialog","no-padding"],s.disableClose=!0,s.hasBackdrop=!0,this.dialog.open(f,s)},t.prototype.startDefaultSpinnerDialog=function(){return this.startSpinnerDialog("Please wait...",3,30)},t.prototype.startSpinnerDialog=function(n,e,t){var i=this;if(this._spinnerDialogIsOpen)return null;this._spinnerDialogIsOpen=!0;var a=new o.MatDialogConfig;a.data={message:n,strokeWidth:e,diameter:t},a.width="13em",a.disableClose=!0;var r=this.dialog.open(m,a);return r.afterClosed().subscribe((function(){i._spinnerDialogIsOpen=!1})),this.spinnerDialogRefs.push(r),r},t.prototype.startNonModalSpinnerDialog=function(n,e,t){var i=this;if(this._spinnerDialogIsOpen)return null;this._spinnerDialogIsOpen=!0;var a=new o.MatDialogConfig;a.data={message:n,strokeWidth:e,diameter:t},a.width="13em",a.disableClose=!0,a.hasBackdrop=!1;var r=this.dialog.open(m,a);return r.afterClosed().subscribe((function(){i._spinnerDialogIsOpen=!1})),this.spinnerDialogRefs.push(r),r},t.prototype.stopAllSpinnerDialogs=function(){var n,e;this.spinnerWorkItemCount=0;var t=function(n){setTimeout((function(){n.close()}))};try{for(var i=D(this.spinnerDialogRefs),o=i.next();!o.done;o=i.next()){t(o.value)}}catch(e){n={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(n)throw n.error}}this.spinnerDialogRefs=[]},t.prototype.addSpinnerWorkItem=function(){var n=this;this.spinnerWorkItemCount++,this.checkingSpinnerWorkItems||(this.checkingSpinnerWorkItems=!0,setTimeout((function(){n.checkSpinnerWorkItems()})))},t.prototype.removeSpinnerWorkItem=function(){var n=this;this.spinnerWorkItemCount--,this.spinnerWorkItemCount<0&&(this.spinnerWorkItemCount=0),this.checkingSpinnerWorkItems||(this.checkingSpinnerWorkItems=!0,setTimeout((function(){n.checkSpinnerWorkItems()})))},t.prototype.checkSpinnerWorkItems=function(){this.checkingSpinnerWorkItems=!1,this.spinnerWorkItemCount?this._spinnerDialogIsOpen||this.startDefaultSpinnerDialog():this._spinnerDialogIsOpen&&this.stopAllSpinnerDialogs()},t.prototype.genericDialogContainer=function(n,e,t,i,a){var r=null;return(r=i||new o.MatDialogConfig).data=r.data?r.data:{},r.data.dialogContent=n,r.data.title=e,t&&(r.data.icon=t),a&&(r.data.actionConfig=a),r.panelClass=["mx-sized-dialog","no-padding"],r.disableClose=!0,r.hasBackdrop=!0,this.dialog.open(h,r).afterClosed()},t.prototype.openDialog=function(n,e,t,i,a){var r=null;return(r=a||new o.MatDialogConfig).data=r.data?r.data:{},r.data.message=n,r.data.title=e||"",r.data.icon=i||"",r.data.dialogType=t||"",r.maxWidth=r.maxWidth?r.maxWidth:"80vw",r.maxHeight=r.maxHeight?r.maxHeight:"80vh",r.minWidth=r.minWidth?r.minWidth:"30em",r.panelClass="no-padding",r.disableClose=!0,r.autoFocus=!1,r.hasBackdrop=!1,this.dialog.open(p,r).afterClosed()},t.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:t,deps:[{token:o.MatDialog}],target:e.ɵɵFactoryTarget.Injectable}),t.ɵprov=e.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:t}),t}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:I,decorators:[{type:e.Injectable}],ctorParameters:function(){return[{type:o.MatDialog}]}});var x=function(){function i(t){this.dialogService=t,this.actionType=n.ActionType.PRIMARY,this.message="Your changes have not been saved",this.name="Save",this.disableSave=!1,this.saveClicked=new e.EventEmitter,this.type=n.ActionType}return Object.defineProperty(i.prototype,"dirty",{get:function(){return this._dirty},set:function(n){this._dirty=n||!1},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,"showSpinner",{set:function(n){var e=this;setTimeout((function(){n?e.dialogService.startDefaultSpinnerDialog():e.dialogService.stopAllSpinnerDialogs()}))},enumerable:!1,configurable:!0}),i.prototype.ngOnInit=function(){},i.prototype.notifySave=function(){this.saveClicked.emit()},i.prototype.ngOnDestroy=function(){this.saveClicked.unsubscribe()},i.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:i,deps:[{token:I}],target:e.ɵɵFactoryTarget.Component}),i.ɵcmp=e.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.17",type:i,selector:"hci-save-footer",inputs:{actionType:"actionType",icon:"icon",message:"message",name:"name",dirty:"dirty",showSpinner:"showSpinner",disableSave:"disableSave"},outputs:{saveClicked:"saveClicked"},ngImport:e,template:'\n <div class="full-height full-width" style="margin-bottom: 8px;">\n <div class="d-flex flex-row align-items-center right-align padded">\n <div *ngIf="dirty" class="warning-background padded">\n {{ message }}\n </div>\n <div class="major-left-right-margin">\n <button mat-raised-button [disabled]="disableSave"\n [color]="actionType" (click)="notifySave()"\n [ngClass]="{\'primary-action\': actionType === type.PRIMARY,\n \'secondary-action\': actionType === type.SECONDARY && !disableSave }">\n <img *ngIf="icon" [src]="icon" alt="">\n {{ name }}\n </button>\n </div>\n </div>\n </div>\n ',isInline:!0,styles:["\n .primary-action{\n background-color: #0077B3FF;\n font-weight: bolder;\n color: white;\n }\n .secondary-action{\n background-color: #DEF4FFFF;\n font-weight: bolder;\n color: #0077B3FF;\n border: #0077B3FF solid 1px;\n }\n\n .major-left-right-margin {\n margin-left: 0.5em;\n margin-right: 0.5em;\n }\n\n .right-align {\n text-align: right;\n justify-content: flex-end;\n }\n\n\n .warning-background { background:#feec89; }\n\n "],components:[{type:c.MatButton,selector:"button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]",inputs:["disabled","disableRipple","color"],exportAs:["matButton"]}],directives:[{type:t.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:t.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),i}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:x,decorators:[{type:e.Component,args:[{selector:"hci-save-footer",template:'\n <div class="full-height full-width" style="margin-bottom: 8px;">\n <div class="d-flex flex-row align-items-center right-align padded">\n <div *ngIf="dirty" class="warning-background padded">\n {{ message }}\n </div>\n <div class="major-left-right-margin">\n <button mat-raised-button [disabled]="disableSave"\n [color]="actionType" (click)="notifySave()"\n [ngClass]="{\'primary-action\': actionType === type.PRIMARY,\n \'secondary-action\': actionType === type.SECONDARY && !disableSave }">\n <img *ngIf="icon" [src]="icon" alt="">\n {{ name }}\n </button>\n </div>\n </div>\n </div>\n ',styles:["\n .primary-action{\n background-color: #0077B3FF;\n font-weight: bolder;\n color: white;\n }\n .secondary-action{\n background-color: #DEF4FFFF;\n font-weight: bolder;\n color: #0077B3FF;\n border: #0077B3FF solid 1px;\n }\n\n .major-left-right-margin {\n margin-left: 0.5em;\n margin-right: 0.5em;\n }\n\n .right-align {\n text-align: right;\n justify-content: flex-end;\n }\n\n\n .warning-background { background:#feec89; }\n\n "]}]}],ctorParameters:function(){return[{type:I}]},propDecorators:{actionType:[{type:e.Input}],icon:[{type:e.Input}],message:[{type:e.Input}],name:[{type:e.Input}],dirty:[{type:e.Input}],showSpinner:[{type:e.Input}],disableSave:[{type:e.Input}],saveClicked:[{type:e.Output}]}});var T=function(){function n(){}return n.forRoot=function(){return{providers:[I],ngModule:n}},n.ɵfac=e.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,deps:[],target:e.ɵɵFactoryTarget.NgModule}),n.ɵmod=e.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,declarations:[p,C,f,h,x,m],imports:[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule],exports:[p,C,f,h,x,m]}),n.ɵinj=e.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:n,providers:[],imports:[[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule]]}),n}();e.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.17",ngImport:e,type:T,decorators:[{type:e.NgModule,args:[{imports:[t.CommonModule,i.FormsModule,s.DynamicModule,c.MatButtonModule,o.MatDialogModule,l.MatExpansionModule,a.MatProgressSpinnerModule],providers:[],declarations:[p,C,f,h,x,m],entryComponents:[p,C,f,h,x,m],exports:[p,C,f,h,x,m]}]}]}),n.AlertDialogComponent=p,n.BaseGenericContainerDialog=y,n.ConfirmDialogComponent=C,n.CustomDialogComponent=f,n.DialogModule=T,n.DialogService=I,n.GenericContainerDialogComponent=h,n.SaveFooterComponent=x,n.SpinnerDialogComponent=m,Object.defineProperty(n,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=huntsman-cancer-institute-dialog.umd.min.js.map