angular-toastify
Advanced tools
@@ -113,3 +113,3 @@ (function (global, factory) { | ||
| // Do not start timer when toast is prompted while window is out of focus | ||
| if (this.handleVisibilityChange && document.visibilityState === "visible") { | ||
| if (this.handleVisibilityChange && document.visibilityState === 'visible') { | ||
| this.startCloseTimer(); | ||
@@ -131,5 +131,6 @@ } | ||
| var percentage = 100 - ((remainingTime / _this.autoCloseAfterSpecificChange()) * 100); | ||
| _this.progressBarCover.nativeElement.style.width = percentage + "%"; | ||
| if (percentage <= 0) | ||
| _this.progressBarCover.nativeElement.style.width = percentage + '%'; | ||
| if (percentage <= 0) { | ||
| return; | ||
| } | ||
| } | ||
@@ -237,3 +238,3 @@ _this._progressBarAnimation = requestAnimationFrame(frame); | ||
| } | ||
| if (document.visibilityState !== "visible") { | ||
| if (document.visibilityState !== 'visible') { | ||
| this.pauseCloseTimer(); | ||
@@ -249,3 +250,3 @@ this._cd.detectChanges(); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0__namespace, type: ToastifyToastComponent, deps: [{ token: i0__namespace.ChangeDetectorRef }, { token: i0__namespace.NgZone }], target: i0__namespace.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0__namespace, template: "<div role=\"alert\" class=\"toast-body\">\n <div class=\"icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.info\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.default\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.warning\">warning_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.error\">error_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.success\">done</i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"fa fa-exclamation\"></i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"fa fa-check\"></i>\n </span>\n </div>\n <div class=\"toast-container\">\n <div>{{toast.message}}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\" class=\"close-button close-button--{{ToastType[toast.type]}}\" type=\"button\" aria-label=\"close\">\u2716</button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\" class=\"progress-bar progress-bar--{{ToastType[toast.type]}}\" style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\" class=\"progress-bar-cover toast--{{ToastType[toast.type]}}\" [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\" [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}.close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.close-button--default{color:#000;opacity:.3}.close-button:focus,.close-button:hover{opacity:1}.progress-bar-cover{right:0;z-index:100;direction:rtl}.progress-bar,.progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.progress-bar--controlled{transition:transform .2s}.progress-bar--rtl{right:0;left:auto;transform-origin:right}.progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.toast-body{min-width:0;min-height:0}.icon-container,.toast-body{vertical-align:middle;display:flex}.icon-container{flex-direction:column;justify-content:center;width:25px}.icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.icon-container span i{vertical-align:middle}.fa,.material-icons{font-size:18px}.toast-container{width:calc(100% - 25px);overflow-y:scroll;display:flex;flex-direction:column;min-height:0}.toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0__namespace, template: "<div role=\"alert\" class=\"angular-toastify-toast-body\">\n <div class=\"angular-toastify-icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.info\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#fff\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.default\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#aaa\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.warning\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M-3.28-104.15 480-911.43l483.28 807.28H-3.28Zm483.83-137.63q19.97 0 34.23-14.05 14.26-14.05 14.26-34.02 0-19.74-14.05-34-14.05-14.26-34.02-14.26-19.73 0-34.11 14.05-14.38 14.05-14.38 33.78 0 19.98 14.17 34.24 14.17 14.26 33.9 14.26Zm-46.88-138.7h94.18v-192.89h-94.18v192.89Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.error\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M479.56-266.26q21.83 0 36.89-14.61 15.05-14.62 15.05-36.45 0-21.83-14.61-37.01-14.62-15.17-36.45-15.17-21.83 0-36.89 14.79-15.05 14.79-15.05 36.62t14.61 36.83q14.62 15 36.45 15Zm-51.39-167.02h105.18v-250.55H428.17v250.55Zm52.11 372.63q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.success\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M389-240.7 166.93-461.76l74.27-75.26L389-388.98l331.57-330.56 74.26 74.02L389-240.7Z\"/></svg>\n </i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#aaa\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128 512\" height=\"18\" fill=\"#fff\">\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M96 64c0-17.7-14.3-32-32-32S32 46.3 32 64l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32L96 64zM64 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>\n </svg>\n </i>\n </span>\n </div>\n <div class=\"angular-toastify-toast-container\">\n <div>{{ toast.message }}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\"\n class=\"angular-toastify-close-button angular-toastify-close-button--{{ToastType[toast.type]}}\" type=\"button\"\n aria-label=\"close\">\u2716\n </button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar angular-toastify-progress-bar--{{ToastType[toast.type]}}\"\n style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar-cover angular-toastify-toast--{{ToastType[toast.type]}}\"\n [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\"\n [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}.angular-toastify-close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.angular-toastify-close-button--default{color:#000;opacity:.3}.angular-toastify-close-button:focus,.angular-toastify-close-button:hover{opacity:1}.angular-toastify-progress-bar-cover{right:0;z-index:100;direction:rtl}.angular-toastify-progress-bar,.angular-toastify-progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.angular-toastify-progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.angular-toastify-progress-bar--controlled{transition:transform .2s}.angular-toastify-progress-bar--rtl{right:0;left:auto;transform-origin:right}.angular-toastify-progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.angular-toastify-toast-body{min-width:0;min-height:0;vertical-align:middle;display:flex}.angular-toastify-icon-container{display:flex;flex-direction:column;justify-content:center;width:25px;vertical-align:middle}.angular-toastify-icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.angular-toastify-icon-container span i{vertical-align:middle}.angular-toastify-toast-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:18px}.angular-toastify-toast-container{width:calc(100% - 25px);overflow-y:auto;display:flex;flex-direction:column;min-height:0}.angular-toastify-toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1__namespace.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0__namespace, type: ToastifyToastComponent, decorators: [{ | ||
@@ -255,5 +256,5 @@ type: i0.Component, | ||
| // tslint:disable-next-line:component-selector | ||
| selector: "lib-toastify-toast", | ||
| templateUrl: "./toastify-toast.component.html", | ||
| styleUrls: ["./toastify-toast.component.scss"], | ||
| selector: 'lib-toastify-toast', | ||
| templateUrl: './toastify-toast.component.html', | ||
| styleUrls: ['./toastify-toast.component.scss'], | ||
| // changeDetection: ChangeDetectionStrategy.OnPush | ||
@@ -263,6 +264,6 @@ }] | ||
| type: i0.ViewChild, | ||
| args: ["progressBar"] | ||
| args: ['progressBar'] | ||
| }], progressBarCover: [{ | ||
| type: i0.ViewChild, | ||
| args: ["progressBarCover"] | ||
| args: ['progressBarCover'] | ||
| }], autoClose: [{ | ||
@@ -294,12 +295,12 @@ type: i0.Input | ||
| type: i0.HostListener, | ||
| args: ["click"] | ||
| args: ['click'] | ||
| }], handleMouseEnter: [{ | ||
| type: i0.HostListener, | ||
| args: ["mouseenter"] | ||
| args: ['mouseenter'] | ||
| }], handleMouseLeave: [{ | ||
| type: i0.HostListener, | ||
| args: ["mouseleave"] | ||
| args: ['mouseleave'] | ||
| }], handleVisibilityChange: [{ | ||
| type: i0.HostListener, | ||
| args: ["document:visibilitychange"] | ||
| args: ['document:visibilitychange'] | ||
| }] } }); | ||
@@ -343,9 +344,9 @@ | ||
| ToastifyToastContainerComponent.prototype.getClass = function (toast) { | ||
| var base = "toast toast--" + ToastType[toast.type] + " "; | ||
| var base = "angular-toastify-toast angular-toastify-toast--" + ToastType[toast.type] + " "; | ||
| var state = this.toastTransitionDict[toast.id]; | ||
| if (state === TransitionState.entering) { | ||
| base += this.transition + "-enter " + this.transition + "-enter--" + this.position; | ||
| base += "angular-toastify-" + this.transition + "-enter angular-toastify-" + this.transition + "-enter--" + this.position; | ||
| } | ||
| else if (state === TransitionState.exiting) { | ||
| base += this.transition + "-exit " + this.transition + "-exit--" + this.position; | ||
| base += "angular-toastify-" + this.transition + "-exit angular-toastify-" + this.transition + "-exit--" + this.position; | ||
| } | ||
@@ -392,3 +393,3 @@ return base; | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0__namespace, type: ToastifyToastContainerComponent, deps: [{ token: ToastService }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0__namespace, template: "<div class=\"toast-container toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.toast-container--top-left{top:1em;left:1em}.toast-container--top-center{top:1em;left:50%;margin-left:-160px}.toast-container--top-right{top:1em;right:1em}.toast-container--bottom-left{bottom:1em;left:1em}.toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.toast-container{width:100vw;padding:0;left:0;margin:0}.toast-container--top-center,.toast-container--top-left,.toast-container--top-right{top:0}.toast-container--bottom-center,.toast-container--bottom-left,.toast-container--bottom-right{bottom:0}.toast-container--rtl{right:0;left:auto}}.toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}@keyframes bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.bounce-enter--bottom-left,.bounce-enter--top-left{animation-name:bounceInLeft}.bounce-enter--bottom-right,.bounce-enter--top-right{animation-name:bounceInRight}.bounce-enter--top-center{animation-name:bounceInDown}.bounce-enter--bottom-center{animation-name:bounceInUp}.bounce-exit--bottom-left,.bounce-exit--top-left{animation-name:bounceOutLeft}.bounce-exit--bottom-right,.bounce-exit--top-right{animation-name:bounceOutRight}.bounce-exit--top-center{animation-name:bounceOutUp}.bounce-exit--bottom-center{animation-name:bounceOutDown}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoom-enter{animation-name:zoomIn}.zoom-exit{animation-name:zoomOut}@keyframes flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.flip-enter{animation-name:flipIn}.flip-exit{animation-name:flipOut}@keyframes slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.slide-enter--bottom-left,.slide-enter--top-left{animation-name:slideInLeft}.slide-enter--bottom-right,.slide-enter--top-right{animation-name:slideInRight}.slide-enter--top-center{animation-name:slideInDown}.slide-enter--bottom-center{animation-name:slideInUp}.slide-exit--bottom-left,.slide-exit--top-left{animation-name:slideOutLeft}.slide-exit--bottom-right,.slide-exit--top-right{animation-name:slideOutRight}.slide-exit--top-center{animation-name:slideOutUp}.slide-exit--bottom-center{animation-name:slideOutDown}"], components: [{ type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0__namespace, template: "<div class=\"angular-toastify-toast-container angular-toastify-toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".angular-toastify-toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.angular-toastify-toast-container--top-left{top:1em;left:1em}.angular-toastify-toast-container--top-center{top:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--top-right{top:1em;right:1em}.angular-toastify-toast-container--bottom-left{bottom:1em;left:1em}.angular-toastify-toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.angular-toastify-toast-container{width:100vw;padding:0;left:0;margin:0}.angular-toastify-toast-container--top-center,.angular-toastify-toast-container--top-left,.angular-toastify-toast-container--top-right{top:0}.angular-toastify-toast-container--bottom-center,.angular-toastify-toast-container--bottom-left,.angular-toastify-toast-container--bottom-right{bottom:0}.angular-toastify-toast-container--rtl{right:0;left:auto}}.angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}@keyframes angular-toastify-bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes angular-toastify-bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes angular-toastify-bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes angular-toastify-bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes angular-toastify-bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes angular-toastify-bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.angular-toastify-bounce-enter--bottom-left,.angular-toastify-bounce-enter--top-left{animation-name:angular-toastify-bounceInLeft}.angular-toastify-bounce-enter--bottom-right,.angular-toastify-bounce-enter--top-right{animation-name:angular-toastify-bounceInRight}.angular-toastify-bounce-enter--top-center{animation-name:angular-toastify-bounceInDown}.angular-toastify-bounce-enter--bottom-center{animation-name:angular-toastify-bounceInUp}.angular-toastify-bounce-exit--bottom-left,.angular-toastify-bounce-exit--top-left{animation-name:angular-toastify-bounceOutLeft}.angular-toastify-bounce-exit--bottom-right,.angular-toastify-bounce-exit--top-right{animation-name:angular-toastify-bounceOutRight}.angular-toastify-bounce-exit--top-center{animation-name:angular-toastify-bounceOutUp}.angular-toastify-bounce-exit--bottom-center{animation-name:angular-toastify-bounceOutDown}@keyframes angular-toastify-zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes angular-toastify-zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.angular-toastify-zoom-enter{animation-name:angular-toastify-zoomIn}.angular-toastify-zoom-exit{animation-name:angular-toastify-zoomOut}@keyframes angular-toastify-flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes angular-toastify-flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.angular-toastify-flip-enter{animation-name:angular-toastify-flipIn}.angular-toastify-flip-exit{animation-name:angular-toastify-flipOut}@keyframes angular-toastify-slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes angular-toastify-slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes angular-toastify-slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes angular-toastify-slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.angular-toastify-slide-enter--bottom-left,.angular-toastify-slide-enter--top-left{animation-name:angular-toastify-slideInLeft}.angular-toastify-slide-enter--bottom-right,.angular-toastify-slide-enter--top-right{animation-name:angular-toastify-slideInRight}.angular-toastify-slide-enter--top-center{animation-name:angular-toastify-slideInDown}.angular-toastify-slide-enter--bottom-center{animation-name:angular-toastify-slideInUp}.angular-toastify-slide-exit--bottom-left,.angular-toastify-slide-exit--top-left{animation-name:angular-toastify-slideOutLeft}.angular-toastify-slide-exit--bottom-right,.angular-toastify-slide-exit--top-right{animation-name:angular-toastify-slideOutRight}.angular-toastify-slide-exit--top-center{animation-name:angular-toastify-slideOutUp}.angular-toastify-slide-exit--bottom-center{animation-name:angular-toastify-slideOutDown}"], components: [{ type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i1__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush }); | ||
| i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0__namespace, type: ToastifyToastContainerComponent, decorators: [{ | ||
@@ -395,0 +396,0 @@ type: i0.Component, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"angular-toastify.umd.js","sources":["../../../projects/angular-toastify/src/lib/toast.ts","../../../projects/angular-toastify/src/lib/toast-type.ts","../../../projects/angular-toastify/src/lib/toast.service.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.html","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.html","../../../projects/angular-toastify/src/lib/angular-toastify.module.ts","../../../projects/angular-toastify/src/public-api.ts","../../../projects/angular-toastify/src/angular-toastify.ts"],"sourcesContent":["import { ToastType } from './toast-type';\nimport { Observable, Subject } from 'rxjs';\n\nlet toastIdentitySequence = 0;\n\nexport class Toast {\n id: number;\n message: string;\n type: ToastType;\n readonly time: number;\n\n $resetToast: Subject<any>;\n\n constructor(message: string, type: ToastType) {\n this.message = message;\n this.type = type;\n this.time = new Date().getTime();\n this.id = toastIdentitySequence++;\n\n this.$resetToast = new Subject();\n }\n}\n","export enum ToastType {\n info,\n success,\n warning,\n error,\n default\n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { Toast } from './toast';\nimport { ToastType } from './toast-type';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ToastService {\n\n toastAddedEvent = new EventEmitter();\n constructor() { }\n\n dismissAllEvent = new EventEmitter();\n\n dismissAll() {\n this.dismissAllEvent.emit();\n }\n\n info(message: string) {\n const toast = new Toast(message, ToastType.info);\n this.toastAddedEvent.emit(toast);\n }\n\n success(message: string) {\n const toast = new Toast(message, ToastType.success);\n this.toastAddedEvent.emit(toast);\n }\n\n warn(message: string) {\n const toast = new Toast(message, ToastType.warning);\n this.toastAddedEvent.emit(toast);\n }\n\n error(message: string) {\n const toast = new Toast(message, ToastType.error);\n this.toastAddedEvent.emit(toast);\n }\n\n default(message: string) {\n const toast = new Toast(message, ToastType.default);\n this.toastAddedEvent.emit(toast);\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from \"@angular/core\";\nimport { ToastType } from \"../toast-type\";\nimport { Toast } from \"../toast\";\nimport { interval } from \"rxjs\";\nimport { throttle, throttleTime } from \"rxjs/operators\";\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: \"lib-toastify-toast\",\n templateUrl: \"./toastify-toast.component.html\",\n styleUrls: [\"./toastify-toast.component.scss\"],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToastifyToastComponent implements OnInit, OnDestroy {\n @ViewChild(\"progressBar\") progressBar: ElementRef<HTMLElement>;\n @ViewChild(\"progressBarCover\") progressBarCover: ElementRef<HTMLElement>;\n\n @Input() autoClose = 5000; \n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() toast: Toast;\n @Input() iconLibrary: \"material\" | \"font-awesome\" | \"none\";\n\n @Output() dismissEvent = new EventEmitter();\n\n private expectedAutoDismissTime: number;\n private autoDismissTimeout: any;\n private autoCloseRemaining: number;\n\n private pauseTime: number;\n private startTime: number;\n\n private _progressBarAnimation: number;\n private _$updateTimer;\n\n ToastType = ToastType;\n running = false;\n\n constructor(private _cd: ChangeDetectorRef, private _zone: NgZone) {}\n\n ngOnInit(): void {\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startTime = this.toast.time;\n this.toast.$resetToast.subscribe(() => this.resetToastTimer());\n // Do not start timer when toast is prompted while window is out of focus\n if (this.handleVisibilityChange && document.visibilityState === \"visible\") {\n this.startCloseTimer();\n }\n\n // Start progress bar animation\n this.triggerProgressBarAnimation();\n }\n\n private triggerProgressBarAnimation(): void {\n // Cancel previous animlation to avoid leaks\n if (this._progressBarAnimation !== undefined) {\n cancelAnimationFrame(this._progressBarAnimation);\n }\n\n // Start animation\n const frame = () => {\n if (this.running) {\n const remainingTime = Math.max(0, this.expectedAutoDismissTime - new Date().getTime());\n const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100);\n this.progressBarCover.nativeElement.style.width = percentage + \"%\";\n if (percentage <= 0) return;\n }\n this._progressBarAnimation = requestAnimationFrame(frame);\n };\n this._progressBarAnimation = requestAnimationFrame(frame);\n }\n\n ngOnDestroy(): void {\n // Cancel animation\n if (this._progressBarAnimation) {\n cancelAnimationFrame(this._progressBarAnimation);\n this._progressBarAnimation = undefined;\n }\n // Clear auto close timeout\n this.clearTimerTimeout();\n // Complete all observables\n this.toast.$resetToast?.complete();\n this.toast.$resetToast = null;\n this._$updateTimer?.complete();\n this._$updateTimer = null;\n }\n\n startCloseTimer(): void {\n if (this.running || !this.autoCloseAfterSpecificChange()) {\n return;\n }\n\n this.running = true;\n this.expectedAutoDismissTime =\n new Date().getTime() + this.autoCloseRemaining;\n this.autoDismissTimeout = this._zone.runOutsideAngular(() =>\n setTimeout(() => {\n this._zone.run(() => {\n this.dismissEvent.emit();\n this._cd.markForCheck();\n });\n }, this.autoCloseRemaining)\n );\n }\n\n autoCloseAfterSpecificChange(): number {\n const specificAmount = (() => {\n switch (this.toast.type) {\n case ToastType.success:\n return this.autoCloseSuccess;\n case ToastType.error:\n return this.autoCloseError;\n case ToastType.warning:\n return this.autoCloseWarn;\n case ToastType.info:\n return this.autoCloseInfo;\n default:\n return undefined;\n }\n })();\n\n return specificAmount === undefined ? this.autoClose : specificAmount;\n }\n\n pauseCloseTimer(): void {\n this.running = false;\n this.clearTimerTimeout();\n\n // Calculate the elapsed time, subtract remaining time\n this.pauseTime = new Date().getTime();\n const elapsed = this.pauseTime - this.startTime;\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange() - elapsed;\n }\n\n resetToastTimer() {\n this.clearTimerTimeout();\n this.running = false;\n this.startTime = new Date().getTime();\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startCloseTimer();\n }\n\n clearTimerTimeout(): void {\n if (this.autoDismissTimeout !== undefined) {\n this.expectedAutoDismissTime = undefined;\n clearTimeout(this.autoDismissTimeout);\n }\n }\n\n handleDismissButtonAction(): void {\n if (this.closeOnClick) {\n return; // Let the other event handle the dismissal\n }\n\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n\n @HostListener(\"click\")\n handleHostClick(): void {\n if (this.closeOnClick) {\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n }\n\n @HostListener(\"mouseenter\")\n handleMouseEnter(): void {\n if (this.pauseOnHover) {\n this.pauseCloseTimer();\n }\n }\n\n @HostListener(\"mouseleave\")\n handleMouseLeave(): void {\n if (this.pauseOnHover) {\n this.startCloseTimer();\n this.startTime = new Date().getTime() + (this.startTime - this.pauseTime);\n }\n }\n\n @HostListener(\"document:visibilitychange\")\n handleVisibilityChange(): void {\n if (!this.pauseOnVisibilityChange) {\n return;\n }\n\n if (document.visibilityState !== \"visible\") {\n this.pauseCloseTimer();\n this._cd.detectChanges();\n } else {\n this.startCloseTimer();\n }\n }\n}\n","<div role=\"alert\" class=\"toast-body\">\n <div class=\"icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.info\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.default\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.warning\">warning_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.error\">error_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.success\">done</i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"fa fa-exclamation\"></i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"fa fa-check\"></i>\n </span>\n </div>\n <div class=\"toast-container\">\n <div>{{toast.message}}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\" class=\"close-button close-button--{{ToastType[toast.type]}}\" type=\"button\" aria-label=\"close\">✖</button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\" class=\"progress-bar progress-bar--{{ToastType[toast.type]}}\" style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\" class=\"progress-bar-cover toast--{{ToastType[toast.type]}}\" [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\" [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n","import { Component, OnInit, Input, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { ToastService } from '../toast.service';\nimport { Toast } from '../toast';\nimport { ToastType } from '../toast-type';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast-container',\n templateUrl: './toastify-toast-container.component.html',\n styleUrls: ['./toastify-toast-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToastifyToastContainerComponent implements OnInit, OnChanges {\n private readonly transitionDurations = 400;\n\n @Input() position: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' = 'top-right';\n @Input() transition: 'bounce' | 'slide' | 'zoom' | 'flip' = 'bounce';\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() newestOnTop = false;\n @Input() preventDuplicates = false;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none' = 'none';\n\n ToastType = ToastType;\n toasts = new Array<Toast>();\n toastTransitionDict = {};\n\n constructor(private _toastService: ToastService, private _cd: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this._cd.markForCheck();\n }\n\n dismiss(toast: Toast): void {\n this.toastTransitionDict[toast.id] = TransitionState.exiting;\n setTimeout(() => {\n const index = this.toasts.indexOf(toast);\n this.toasts.splice(index, 1);\n this._cd.markForCheck();\n }, this.transitionDurations);\n }\n\n getClass(toast: Toast): string {\n let base = `toast toast--${ToastType[toast.type]} `;\n const state = this.toastTransitionDict[toast.id];\n if (state === TransitionState.entering) {\n base += `${this.transition}-enter ${this.transition}-enter--${this.position}`;\n } else if (state === TransitionState.exiting) {\n base += `${this.transition}-exit ${this.transition}-exit--${this.position}`;\n }\n\n return base;\n }\n\n ngOnInit(): void {\n this._toastService.dismissAllEvent.subscribe(() => {\n this.toasts = new Array<Toast>();\n this._cd.markForCheck();\n });\n\n this._toastService.toastAddedEvent.subscribe((toast: Toast) => this.handleToastAddedEvent(toast));\n }\n\n handleToastAddedEvent(toast: Toast): void {\n // If \"preventDuplicates\" is enabled, toast is not added if one toast with same message exists\n // The only thing to do is to update the toast time to keep it visible\n if(this.preventDuplicates === true) {\n const sameToast: Toast = this.toasts.find((existingToast) => existingToast.message === toast.message);\n if (sameToast) {\n sameToast.$resetToast.next();\n this._cd.markForCheck();\n return;\n }\n }\n\n // Add new toast transition\n this.toastTransitionDict[toast.id] = TransitionState.entering;\n setTimeout(() => {\n this.toastTransitionDict[toast.id] = TransitionState.noTransition;\n this._cd.markForCheck();\n }, this.transitionDurations);\n\n // Add new toast\n if (this.newestOnTop) {\n this.toasts.unshift(toast);\n } else {\n this.toasts.push(toast);\n }\n this._cd.markForCheck();\n }\n}\n\nenum TransitionState {\n entering,\n noTransition,\n exiting\n}\n","<div class=\"toast-container toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ToastifyToastComponent } from './toastify-toast/toastify-toast.component';\nimport { ToastifyToastContainerComponent } from './toastify-toast-container/toastify-toast-container.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ToastifyToastComponent, ToastifyToastContainerComponent],\n imports: [ CommonModule ],\n exports: [ToastifyToastContainerComponent]\n})\nexport class AngularToastifyModule { }\n","/*\n * Public API Surface of angular-toastify\n */\n\nexport * from './lib/toast.service';\nexport * from './lib/toastify-toast-container/toastify-toast-container.component';\nexport * from './lib/angular-toastify.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Subject","EventEmitter","Injectable","Component","ViewChild","Input","Output","HostListener","ChangeDetectionStrategy","CommonModule","NgModule"],"mappings":"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"} | ||
| {"version":3,"file":"angular-toastify.umd.js","sources":["../../../projects/angular-toastify/src/lib/toast.ts","../../../projects/angular-toastify/src/lib/toast-type.ts","../../../projects/angular-toastify/src/lib/toast.service.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.html","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.html","../../../projects/angular-toastify/src/lib/angular-toastify.module.ts","../../../projects/angular-toastify/src/public-api.ts","../../../projects/angular-toastify/src/angular-toastify.ts"],"sourcesContent":["import { ToastType } from './toast-type';\nimport { Observable, Subject } from 'rxjs';\n\nlet toastIdentitySequence = 0;\n\nexport class Toast {\n id: number;\n message: string;\n type: ToastType;\n readonly time: number;\n\n $resetToast: Subject<any>;\n\n constructor(message: string, type: ToastType) {\n this.message = message;\n this.type = type;\n this.time = new Date().getTime();\n this.id = toastIdentitySequence++;\n\n this.$resetToast = new Subject();\n }\n}\n","export enum ToastType {\n info,\n success,\n warning,\n error,\n default\n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { Toast } from './toast';\nimport { ToastType } from './toast-type';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ToastService {\n\n toastAddedEvent = new EventEmitter();\n constructor() { }\n\n dismissAllEvent = new EventEmitter();\n\n dismissAll() {\n this.dismissAllEvent.emit();\n }\n\n info(message: string) {\n const toast = new Toast(message, ToastType.info);\n this.toastAddedEvent.emit(toast);\n }\n\n success(message: string) {\n const toast = new Toast(message, ToastType.success);\n this.toastAddedEvent.emit(toast);\n }\n\n warn(message: string) {\n const toast = new Toast(message, ToastType.warning);\n this.toastAddedEvent.emit(toast);\n }\n\n error(message: string) {\n const toast = new Toast(message, ToastType.error);\n this.toastAddedEvent.emit(toast);\n }\n\n default(message: string) {\n const toast = new Toast(message, ToastType.default);\n this.toastAddedEvent.emit(toast);\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ToastType } from '../toast-type';\nimport { Toast } from '../toast';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast',\n templateUrl: './toastify-toast.component.html',\n styleUrls: ['./toastify-toast.component.scss'],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToastifyToastComponent implements OnInit, OnDestroy {\n @ViewChild('progressBar') progressBar: ElementRef<HTMLElement>;\n @ViewChild('progressBarCover') progressBarCover: ElementRef<HTMLElement>;\n\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() toast: Toast;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none';\n\n @Output() dismissEvent = new EventEmitter();\n\n private expectedAutoDismissTime: number;\n private autoDismissTimeout: any;\n private autoCloseRemaining: number;\n\n private pauseTime: number;\n private startTime: number;\n\n private _progressBarAnimation: number;\n private _$updateTimer;\n\n ToastType = ToastType;\n running = false;\n\n constructor(private _cd: ChangeDetectorRef, private _zone: NgZone) {}\n\n ngOnInit(): void {\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startTime = this.toast.time;\n this.toast.$resetToast.subscribe(() => this.resetToastTimer());\n // Do not start timer when toast is prompted while window is out of focus\n if (this.handleVisibilityChange && document.visibilityState === 'visible') {\n this.startCloseTimer();\n }\n\n // Start progress bar animation\n this.triggerProgressBarAnimation();\n }\n\n private triggerProgressBarAnimation(): void {\n // Cancel previous animlation to avoid leaks\n if (this._progressBarAnimation !== undefined) {\n cancelAnimationFrame(this._progressBarAnimation);\n }\n\n // Start animation\n const frame = () => {\n if (this.running) {\n const remainingTime = Math.max(0, this.expectedAutoDismissTime - new Date().getTime());\n const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100);\n this.progressBarCover.nativeElement.style.width = percentage + '%';\n if (percentage <= 0) { return; }\n }\n this._progressBarAnimation = requestAnimationFrame(frame);\n };\n this._progressBarAnimation = requestAnimationFrame(frame);\n }\n\n ngOnDestroy(): void {\n // Cancel animation\n if (this._progressBarAnimation) {\n cancelAnimationFrame(this._progressBarAnimation);\n this._progressBarAnimation = undefined;\n }\n // Clear auto close timeout\n this.clearTimerTimeout();\n // Complete all observables\n this.toast.$resetToast?.complete();\n this.toast.$resetToast = null;\n this._$updateTimer?.complete();\n this._$updateTimer = null;\n }\n\n startCloseTimer(): void {\n if (this.running || !this.autoCloseAfterSpecificChange()) {\n return;\n }\n\n this.running = true;\n this.expectedAutoDismissTime =\n new Date().getTime() + this.autoCloseRemaining;\n this.autoDismissTimeout = this._zone.runOutsideAngular(() =>\n setTimeout(() => {\n this._zone.run(() => {\n this.dismissEvent.emit();\n this._cd.markForCheck();\n });\n }, this.autoCloseRemaining)\n );\n }\n\n autoCloseAfterSpecificChange(): number {\n const specificAmount = (() => {\n switch (this.toast.type) {\n case ToastType.success:\n return this.autoCloseSuccess;\n case ToastType.error:\n return this.autoCloseError;\n case ToastType.warning:\n return this.autoCloseWarn;\n case ToastType.info:\n return this.autoCloseInfo;\n default:\n return undefined;\n }\n })();\n\n return specificAmount === undefined ? this.autoClose : specificAmount;\n }\n\n pauseCloseTimer(): void {\n this.running = false;\n this.clearTimerTimeout();\n\n // Calculate the elapsed time, subtract remaining time\n this.pauseTime = new Date().getTime();\n const elapsed = this.pauseTime - this.startTime;\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange() - elapsed;\n }\n\n resetToastTimer() {\n this.clearTimerTimeout();\n this.running = false;\n this.startTime = new Date().getTime();\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startCloseTimer();\n }\n\n clearTimerTimeout(): void {\n if (this.autoDismissTimeout !== undefined) {\n this.expectedAutoDismissTime = undefined;\n clearTimeout(this.autoDismissTimeout);\n }\n }\n\n handleDismissButtonAction(): void {\n if (this.closeOnClick) {\n return; // Let the other event handle the dismissal\n }\n\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n\n @HostListener('click')\n handleHostClick(): void {\n if (this.closeOnClick) {\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n }\n\n @HostListener('mouseenter')\n handleMouseEnter(): void {\n if (this.pauseOnHover) {\n this.pauseCloseTimer();\n }\n }\n\n @HostListener('mouseleave')\n handleMouseLeave(): void {\n if (this.pauseOnHover) {\n this.startCloseTimer();\n this.startTime = new Date().getTime() + (this.startTime - this.pauseTime);\n }\n }\n\n @HostListener('document:visibilitychange')\n handleVisibilityChange(): void {\n if (!this.pauseOnVisibilityChange) {\n return;\n }\n\n if (document.visibilityState !== 'visible') {\n this.pauseCloseTimer();\n this._cd.detectChanges();\n } else {\n this.startCloseTimer();\n }\n }\n}\n","<div role=\"alert\" class=\"angular-toastify-toast-body\">\n <div class=\"angular-toastify-icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.info\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#fff\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.default\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#aaa\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.warning\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M-3.28-104.15 480-911.43l483.28 807.28H-3.28Zm483.83-137.63q19.97 0 34.23-14.05 14.26-14.05 14.26-34.02 0-19.74-14.05-34-14.05-14.26-34.02-14.26-19.73 0-34.11 14.05-14.38 14.05-14.38 33.78 0 19.98 14.17 34.24 14.17 14.26 33.9 14.26Zm-46.88-138.7h94.18v-192.89h-94.18v192.89Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.error\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M479.56-266.26q21.83 0 36.89-14.61 15.05-14.62 15.05-36.45 0-21.83-14.61-37.01-14.62-15.17-36.45-15.17-21.83 0-36.89 14.79-15.05 14.79-15.05 36.62t14.61 36.83q14.62 15 36.45 15Zm-51.39-167.02h105.18v-250.55H428.17v250.55Zm52.11 372.63q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.success\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M389-240.7 166.93-461.76l74.27-75.26L389-388.98l331.57-330.56 74.26 74.02L389-240.7Z\"/></svg>\n </i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#aaa\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128 512\" height=\"18\" fill=\"#fff\">\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M96 64c0-17.7-14.3-32-32-32S32 46.3 32 64l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32L96 64zM64 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>\n </svg>\n </i>\n </span>\n </div>\n <div class=\"angular-toastify-toast-container\">\n <div>{{ toast.message }}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\"\n class=\"angular-toastify-close-button angular-toastify-close-button--{{ToastType[toast.type]}}\" type=\"button\"\n aria-label=\"close\">✖\n </button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar angular-toastify-progress-bar--{{ToastType[toast.type]}}\"\n style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar-cover angular-toastify-toast--{{ToastType[toast.type]}}\"\n [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\"\n [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n","import { Component, OnInit, Input, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { ToastService } from '../toast.service';\nimport { Toast } from '../toast';\nimport { ToastType } from '../toast-type';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast-container',\n templateUrl: './toastify-toast-container.component.html',\n styleUrls: ['./toastify-toast-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToastifyToastContainerComponent implements OnInit, OnChanges {\n private readonly transitionDurations = 400;\n\n @Input() position: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' = 'top-right';\n @Input() transition: 'bounce' | 'slide' | 'zoom' | 'flip' = 'bounce';\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() newestOnTop = false;\n @Input() preventDuplicates = false;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none' = 'none';\n\n ToastType = ToastType;\n toasts = new Array<Toast>();\n toastTransitionDict = {};\n\n constructor(private _toastService: ToastService, private _cd: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this._cd.markForCheck();\n }\n\n dismiss(toast: Toast): void {\n this.toastTransitionDict[toast.id] = TransitionState.exiting;\n setTimeout(() => {\n const index = this.toasts.indexOf(toast);\n this.toasts.splice(index, 1);\n this._cd.markForCheck();\n }, this.transitionDurations);\n }\n\n getClass(toast: Toast): string {\n let base = `angular-toastify-toast angular-toastify-toast--${ToastType[toast.type]} `;\n const state = this.toastTransitionDict[toast.id];\n if (state === TransitionState.entering) {\n base += `angular-toastify-${this.transition}-enter angular-toastify-${this.transition}-enter--${this.position}`;\n } else if (state === TransitionState.exiting) {\n base += `angular-toastify-${this.transition}-exit angular-toastify-${this.transition}-exit--${this.position}`;\n }\n\n return base;\n }\n\n ngOnInit(): void {\n this._toastService.dismissAllEvent.subscribe(() => {\n this.toasts = new Array<Toast>();\n this._cd.markForCheck();\n });\n\n this._toastService.toastAddedEvent.subscribe((toast: Toast) => this.handleToastAddedEvent(toast));\n }\n\n handleToastAddedEvent(toast: Toast): void {\n // If \"preventDuplicates\" is enabled, toast is not added if one toast with same message exists\n // The only thing to do is to update the toast time to keep it visible\n if(this.preventDuplicates === true) {\n const sameToast: Toast = this.toasts.find((existingToast) => existingToast.message === toast.message);\n if (sameToast) {\n sameToast.$resetToast.next();\n this._cd.markForCheck();\n return;\n }\n }\n\n // Add new toast transition\n this.toastTransitionDict[toast.id] = TransitionState.entering;\n setTimeout(() => {\n this.toastTransitionDict[toast.id] = TransitionState.noTransition;\n this._cd.markForCheck();\n }, this.transitionDurations);\n\n // Add new toast\n if (this.newestOnTop) {\n this.toasts.unshift(toast);\n } else {\n this.toasts.push(toast);\n }\n this._cd.markForCheck();\n }\n}\n\nenum TransitionState {\n entering,\n noTransition,\n exiting\n}\n","<div class=\"angular-toastify-toast-container angular-toastify-toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ToastifyToastComponent } from './toastify-toast/toastify-toast.component';\nimport { ToastifyToastContainerComponent } from './toastify-toast-container/toastify-toast-container.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ToastifyToastComponent, ToastifyToastContainerComponent],\n imports: [ CommonModule ],\n exports: [ToastifyToastContainerComponent]\n})\nexport class AngularToastifyModule { }\n","/*\n * Public API Surface of angular-toastify\n */\n\nexport * from './lib/toast.service';\nexport * from './lib/toastify-toast-container/toastify-toast-container.component';\nexport * from './lib/angular-toastify.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Subject","EventEmitter","Injectable","Component","ViewChild","Input","Output","HostListener","ChangeDetectionStrategy","CommonModule","NgModule"],"mappings":"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"} |
@@ -43,9 +43,9 @@ import { Component, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core'; | ||
| getClass(toast) { | ||
| let base = `toast toast--${ToastType[toast.type]} `; | ||
| let base = `angular-toastify-toast angular-toastify-toast--${ToastType[toast.type]} `; | ||
| const state = this.toastTransitionDict[toast.id]; | ||
| if (state === TransitionState.entering) { | ||
| base += `${this.transition}-enter ${this.transition}-enter--${this.position}`; | ||
| base += `angular-toastify-${this.transition}-enter angular-toastify-${this.transition}-enter--${this.position}`; | ||
| } | ||
| else if (state === TransitionState.exiting) { | ||
| base += `${this.transition}-exit ${this.transition}-exit--${this.position}`; | ||
| base += `angular-toastify-${this.transition}-exit angular-toastify-${this.transition}-exit--${this.position}`; | ||
| } | ||
@@ -89,3 +89,3 @@ return base; | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastContainerComponent, deps: [{ token: i1.ToastService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"toast-container toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.toast-container--top-left{top:1em;left:1em}.toast-container--top-center{top:1em;left:50%;margin-left:-160px}.toast-container--top-right{top:1em;right:1em}.toast-container--bottom-left{bottom:1em;left:1em}.toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.toast-container{width:100vw;padding:0;left:0;margin:0}.toast-container--top-center,.toast-container--top-left,.toast-container--top-right{top:0}.toast-container--bottom-center,.toast-container--bottom-left,.toast-container--bottom-right{bottom:0}.toast-container--rtl{right:0;left:auto}}.toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}@keyframes bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.bounce-enter--bottom-left,.bounce-enter--top-left{animation-name:bounceInLeft}.bounce-enter--bottom-right,.bounce-enter--top-right{animation-name:bounceInRight}.bounce-enter--top-center{animation-name:bounceInDown}.bounce-enter--bottom-center{animation-name:bounceInUp}.bounce-exit--bottom-left,.bounce-exit--top-left{animation-name:bounceOutLeft}.bounce-exit--bottom-right,.bounce-exit--top-right{animation-name:bounceOutRight}.bounce-exit--top-center{animation-name:bounceOutUp}.bounce-exit--bottom-center{animation-name:bounceOutDown}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoom-enter{animation-name:zoomIn}.zoom-exit{animation-name:zoomOut}@keyframes flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.flip-enter{animation-name:flipIn}.flip-exit{animation-name:flipOut}@keyframes slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.slide-enter--bottom-left,.slide-enter--top-left{animation-name:slideInLeft}.slide-enter--bottom-right,.slide-enter--top-right{animation-name:slideInRight}.slide-enter--top-center{animation-name:slideInDown}.slide-enter--bottom-center{animation-name:slideInUp}.slide-exit--bottom-left,.slide-exit--top-left{animation-name:slideOutLeft}.slide-exit--bottom-right,.slide-exit--top-right{animation-name:slideOutRight}.slide-exit--top-center{animation-name:slideOutUp}.slide-exit--bottom-center{animation-name:slideOutDown}"], components: [{ type: i2.ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"angular-toastify-toast-container angular-toastify-toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".angular-toastify-toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.angular-toastify-toast-container--top-left{top:1em;left:1em}.angular-toastify-toast-container--top-center{top:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--top-right{top:1em;right:1em}.angular-toastify-toast-container--bottom-left{bottom:1em;left:1em}.angular-toastify-toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.angular-toastify-toast-container{width:100vw;padding:0;left:0;margin:0}.angular-toastify-toast-container--top-center,.angular-toastify-toast-container--top-left,.angular-toastify-toast-container--top-right{top:0}.angular-toastify-toast-container--bottom-center,.angular-toastify-toast-container--bottom-left,.angular-toastify-toast-container--bottom-right{bottom:0}.angular-toastify-toast-container--rtl{right:0;left:auto}}.angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}@keyframes angular-toastify-bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes angular-toastify-bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes angular-toastify-bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes angular-toastify-bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes angular-toastify-bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes angular-toastify-bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.angular-toastify-bounce-enter--bottom-left,.angular-toastify-bounce-enter--top-left{animation-name:angular-toastify-bounceInLeft}.angular-toastify-bounce-enter--bottom-right,.angular-toastify-bounce-enter--top-right{animation-name:angular-toastify-bounceInRight}.angular-toastify-bounce-enter--top-center{animation-name:angular-toastify-bounceInDown}.angular-toastify-bounce-enter--bottom-center{animation-name:angular-toastify-bounceInUp}.angular-toastify-bounce-exit--bottom-left,.angular-toastify-bounce-exit--top-left{animation-name:angular-toastify-bounceOutLeft}.angular-toastify-bounce-exit--bottom-right,.angular-toastify-bounce-exit--top-right{animation-name:angular-toastify-bounceOutRight}.angular-toastify-bounce-exit--top-center{animation-name:angular-toastify-bounceOutUp}.angular-toastify-bounce-exit--bottom-center{animation-name:angular-toastify-bounceOutDown}@keyframes angular-toastify-zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes angular-toastify-zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.angular-toastify-zoom-enter{animation-name:angular-toastify-zoomIn}.angular-toastify-zoom-exit{animation-name:angular-toastify-zoomOut}@keyframes angular-toastify-flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes angular-toastify-flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.angular-toastify-flip-enter{animation-name:angular-toastify-flipIn}.angular-toastify-flip-exit{animation-name:angular-toastify-flipOut}@keyframes angular-toastify-slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes angular-toastify-slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes angular-toastify-slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes angular-toastify-slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.angular-toastify-slide-enter--bottom-left,.angular-toastify-slide-enter--top-left{animation-name:angular-toastify-slideInLeft}.angular-toastify-slide-enter--bottom-right,.angular-toastify-slide-enter--top-right{animation-name:angular-toastify-slideInRight}.angular-toastify-slide-enter--top-center{animation-name:angular-toastify-slideInDown}.angular-toastify-slide-enter--bottom-center{animation-name:angular-toastify-slideInUp}.angular-toastify-slide-exit--bottom-left,.angular-toastify-slide-exit--top-left{animation-name:angular-toastify-slideOutLeft}.angular-toastify-slide-exit--bottom-right,.angular-toastify-slide-exit--top-right{animation-name:angular-toastify-slideOutRight}.angular-toastify-slide-exit--top-center{animation-name:angular-toastify-slideOutUp}.angular-toastify-slide-exit--bottom-center{animation-name:angular-toastify-slideOutDown}"], components: [{ type: i2.ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); | ||
| i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastContainerComponent, decorators: [{ | ||
@@ -135,2 +135,2 @@ type: Component, | ||
| })(TransitionState || (TransitionState = {})); | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC1jb250YWluZXIvdG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC1jb250YWluZXIvdG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTMUMsTUFBTSxPQUFPLCtCQUErQjtJQXNCMUMsWUFBb0IsYUFBMkIsRUFBVSxHQUFzQjtRQUEzRCxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBckI5RCx3QkFBbUIsR0FBRyxHQUFHLENBQUM7UUFFbEMsYUFBUSxHQUE4RCxXQUFXLENBQUM7UUFDbEYsZUFBVSxHQUF5QyxRQUFRLENBQUM7UUFDNUQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixtQkFBYyxHQUFHLFNBQVMsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxTQUFTLENBQUM7UUFDN0Isa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsNEJBQXVCLEdBQUcs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QUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7O0FBdUVSLElBQUssZUFJSjtBQUpELFdBQUssZUFBZTtJQUNsQiw2REFBUSxDQUFBO0lBQ1IscUVBQVksQ0FBQTtJQUNaLDJEQUFPLENBQUE7QUFDVCxDQUFDLEVBSkksZUFBZSxLQUFmLGVBQWUsUUFJbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IFRvYXN0IH0gZnJvbSAnLi4vdG9hc3QnO1xuaW1wb3J0IHsgVG9hc3RUeXBlIH0gZnJvbSAnLi4vdG9hc3QtdHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGliLXRvYXN0aWZ5LXRvYXN0LWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdGlmeS10b2FzdC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdGlmeS10b2FzdC1jb250YWluZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0aWZ5VG9hc3RDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNpdGlvbkR1cmF0aW9ucyA9IDQwMDtcblxuICBASW5wdXQoKSBwb3NpdGlvbjogJ3RvcC1sZWZ0JyB8ICd0b3AtcmlnaHQnIHwgJ2JvdHRvbS1yaWdodCcgfCAnYm90dG9tLWxlZnQnID0gJ3RvcC1yaWdodCc7XG4gIEBJbnB1dCgpIHRyYW5zaXRpb246ICdib3VuY2UnIHwgJ3NsaWRlJyB8ICd6b29tJyB8ICdmbGlwJyA9ICdib3VuY2UnO1xuICBASW5wdXQoKSBhdXRvQ2xvc2UgPSA1MDAwO1xuICBASW5wdXQoKSBhdXRvQ2xvc2VFcnJvciA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYXV0b0Nsb3NlU3VjY2VzcyA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYXV0b0Nsb3NlSW5mbyA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYXV0b0Nsb3NlV2FybiA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaGlkZVByb2dyZXNzQmFyID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhdXNlT25Ib3ZlciA9IHRydWU7XG4gIEBJbnB1dCgpIHBhdXNlT25WaXNpYmlsaXR5Q2hhbmdlID0gdHJ1ZTtcbiAgQElucHV0KCkgY2xvc2VPbkNsaWNrID0gdHJ1ZTtcbiAgQElucHV0KCkgbmV3ZXN0T25Ub3AgPSBmYWxzZTtcbiAgQElucHV0KCkgcHJldmVudER1cGxpY2F0ZXMgPSBmYWxzZTtcbiAgQElucHV0KCkgaWNvbkxpYnJhcnk6ICdtYXRlcmlhbCcgfCAnZm9udC1hd2Vzb21lJyB8ICdub25lJyA9ICdub25lJztcblxuICBUb2FzdFR5cGUgPSBUb2FzdFR5cGU7XG4gIHRvYXN0cyA9IG5ldyBBcnJheTxUb2FzdD4oKTtcbiAgdG9hc3RUcmFuc2l0aW9uRGljdCA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3RvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlLCBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHsgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgZGlzbWlzcyh0b2FzdDogVG9hc3QpOiB2b2lkIHtcbiAgICB0aGlzLnRvYXN0VHJhbnNpdGlvbkRpY3RbdG9hc3QuaWRdID0gVHJhbnNpdGlvblN0YXRlLmV4aXRpbmc7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMudG9hc3RzLmluZGV4T2YodG9hc3QpO1xuICAgICAgdGhpcy50b2FzdHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgIH0sIHRoaXMudHJhbnNpdGlvbkR1cmF0aW9ucyk7XG4gIH1cblxuICBnZXRDbGFzcyh0b2FzdDogVG9hc3QpOiBzdHJpbmcge1xuICAgIGxldCBiYXNlID0gYHRvYXN0IHRvYXN0LS0ke1RvYXN0VHlwZVt0b2FzdC50eXBlXX0gYDtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMudG9hc3RUcmFuc2l0aW9uRGljdFt0b2FzdC5pZF07XG4gICAgaWYgKHN0YXRlID09PSBUcmFuc2l0aW9uU3RhdGUuZW50ZXJpbmcpIHtcbiAgICAgIGJhc2UgKz0gYCR7dGhpcy50cmFuc2l0aW9ufS1lbnRlciAke3RoaXMudHJhbnNpdGlvbn0tZW50ZXItLSR7dGhpcy5wb3NpdGlvbn1gO1xuICAgIH0gZWxzZSBpZiAoc3RhdGUgPT09IFRyYW5zaXRpb25TdGF0ZS5leGl0aW5nKSB7XG4gICAgICBiYXNlICs9IGAke3RoaXMudHJhbnNpdGlvbn0tZXhpdCAke3RoaXMudHJhbnNpdGlvbn0tZXhpdC0tJHt0aGlzLnBvc2l0aW9ufWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJhc2U7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl90b2FzdFNlcnZpY2UuZGlzbWlzc0FsbEV2ZW50LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnRvYXN0cyA9IG5ldyBBcnJheTxUb2FzdD4oKTtcbiAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fdG9hc3RTZXJ2aWNlLnRvYXN0QWRkZWRFdmVudC5zdWJzY3JpYmUoKHRvYXN0OiBUb2FzdCkgPT4gdGhpcy5oYW5kbGVUb2FzdEFkZGVkRXZlbnQodG9hc3QpKTtcbiAgfVxuXG4gIGhhbmRsZVRvYXN0QWRkZWRFdmVudCh0b2FzdDogVG9hc3QpOiB2b2lkIHtcbiAgICAvLyBJZiBcInByZXZlbnREdXBsaWNhdGVzXCIgaXMgZW5hYmxlZCwgdG9hc3QgaXMgbm90IGFkZGVkIGlmIG9uZSB0b2FzdCB3aXRoIHNhbWUgbWVzc2FnZSBleGlzdHNcbiAgICAvLyBUaGUgb25seSB0aGluZyB0byBkbyBpcyB0byB1cGRhdGUgdGhlIHRvYXN0IHRpbWUgdG8ga2VlcCBpdCB2aXNpYmxlXG4gICAgaWYodGhpcy5wcmV2ZW50RHVwbGljYXRlcyA9PT0gdHJ1ZSkge1xuICAgICAgY29uc3Qgc2FtZVRvYXN0OiBUb2FzdCA9IHRoaXMudG9hc3RzLmZpbmQoKGV4aXN0aW5nVG9hc3QpID0+IGV4aXN0aW5nVG9hc3QubWVzc2FnZSA9PT0gdG9hc3QubWVzc2FnZSk7XG4gICAgICBpZiAoc2FtZVRvYXN0KSB7XG4gICAgICAgIHNhbWVUb2FzdC4kcmVzZXRUb2FzdC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIG5ldyB0b2FzdCB0cmFuc2l0aW9uXG4gICAgdGhpcy50b2FzdFRyYW5zaXRpb25EaWN0W3RvYXN0LmlkXSA9IFRyYW5zaXRpb25TdGF0ZS5lbnRlcmluZztcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMudG9hc3RUcmFuc2l0aW9uRGljdFt0b2FzdC5pZF0gPSBUcmFuc2l0aW9uU3RhdGUubm9UcmFuc2l0aW9uO1xuICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgdGhpcy50cmFuc2l0aW9uRHVyYXRpb25zKTtcblxuICAgIC8vIEFkZCBuZXcgdG9hc3RcbiAgICBpZiAodGhpcy5uZXdlc3RPblRvcCkge1xuICAgICAgdGhpcy50b2FzdHMudW5zaGlmdCh0b2FzdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9hc3RzLnB1c2godG9hc3QpO1xuICAgIH1cbiAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuXG5lbnVtIFRyYW5zaXRpb25TdGF0ZSB7XG4gIGVudGVyaW5nLFxuICBub1RyYW5zaXRpb24sXG4gIGV4aXRpbmdcbn1cbiIsIjxkaXYgY2xhc3M9XCJ0b2FzdC1jb250YWluZXIgdG9hc3QtY29udGFpbmVyLS17e3Bvc2l0aW9ufX1cIj5cbiAgICA8bGliLXRvYXN0aWZ5LXRvYXN0ICpuZ0Zvcj1cImxldCB0b2FzdCBvZiB0b2FzdHNcIiBbY2xhc3NdPVwiZ2V0Q2xhc3ModG9hc3QpXCIgc3R5bGU9XCJhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1wiXG4gICAgICAgIFthdXRvQ2xvc2VdPVwiYXV0b0Nsb3NlXCIgW2F1dG9DbG9zZVN1Y2Nlc3NdPVwidGhpcy5hdXRvQ2xvc2VTdWNjZXNzXCIgW2F1dG9DbG9zZUVycm9yXT1cInRoaXMuYXV0b0Nsb3NlRXJyb3JcIiBbYXV0b0Nsb3NlV2Fybl09XCJ0aGlzLmF1dG9DbG9zZVdhcm5cIlxuICAgICAgICBbYXV0b0Nsb3NlSW5mb109XCJ0aGlzLmF1dG9DbG9zZUluZm9cIiBbdG9hc3RdPVwidG9hc3RcIiAoZGlzbWlzc0V2ZW50KT1cImRpc21pc3ModG9hc3QpXCIgW2hpZGVQcm9ncmVzc0Jhcl09XCJoaWRlUHJvZ3Jlc3NCYXJcIiBbcGF1c2VPbkhvdmVyXT1cInBhdXNlT25Ib3ZlclwiXG4gICAgICAgIFtwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZV09XCJwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZVwiIFtjbG9zZU9uQ2xpY2tdPVwiY2xvc2VPbkNsaWNrXCIgW2ljb25MaWJyYXJ5XT1cImljb25MaWJyYXJ5XCI+XG4gICAgPC9saWItdG9hc3RpZnktdG9hc3Q+XG48L2Rpdj5cbiJdfQ== | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC1jb250YWluZXIvdG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC1jb250YWluZXIvdG9hc3RpZnktdG9hc3QtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTMUMsTUFBTSxPQUFPLCtCQUErQjtJQXNCMUMsWUFBb0IsYUFBMkIsRUFBVSxHQUFzQjtRQUEzRCxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBckI5RCx3QkFBbUIsR0FBRyxHQUFHLENBQUM7UUFFbEMsYUFBUSxHQUE4RCxXQUFXLENBQUM7UUFDbEYsZUFBVSxHQUF5QyxRQUFRLENBQUM7UUFDNUQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixtQkFBYyxHQUFHLFNBQVMsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxTQUFTLENBQUM7UUFDN0Isa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsNEJBQXVCLEdBQUcs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c0JBQXpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSzs7QUF1RVIsSUFBSyxlQUlKO0FBSkQsV0FBSyxlQUFlO0lBQ2xCLDZEQUFRLENBQUE7SUFDUixxRUFBWSxDQUFBO0lBQ1osMkRBQU8sQ0FBQTtBQUNULENBQUMsRUFKSSxlQUFlLEtBQWYsZUFBZSxRQUluQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uL3RvYXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3QgfSBmcm9tICcuLi90b2FzdCc7XG5pbXBvcnQgeyBUb2FzdFR5cGUgfSBmcm9tICcuLi90b2FzdC10eXBlJztcblxuQENvbXBvbmVudCh7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaWItdG9hc3RpZnktdG9hc3QtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvYXN0aWZ5LXRvYXN0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0aWZ5LXRvYXN0LWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RpZnlUb2FzdENvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2l0aW9uRHVyYXRpb25zID0gNDAwO1xuXG4gIEBJbnB1dCgpIHBvc2l0aW9uOiAndG9wLWxlZnQnIHwgJ3RvcC1yaWdodCcgfCAnYm90dG9tLXJpZ2h0JyB8ICdib3R0b20tbGVmdCcgPSAndG9wLXJpZ2h0JztcbiAgQElucHV0KCkgdHJhbnNpdGlvbjogJ2JvdW5jZScgfCAnc2xpZGUnIHwgJ3pvb20nIHwgJ2ZsaXAnID0gJ2JvdW5jZSc7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZSA9IDUwMDA7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZUVycm9yID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBhdXRvQ2xvc2VTdWNjZXNzID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBhdXRvQ2xvc2VJbmZvID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBhdXRvQ2xvc2VXYXJuID0gdW5kZWZpbmVkO1xuICBASW5wdXQoKSBoaWRlUHJvZ3Jlc3NCYXIgPSBmYWxzZTtcbiAgQElucHV0KCkgcGF1c2VPbkhvdmVyID0gdHJ1ZTtcbiAgQElucHV0KCkgcGF1c2VPblZpc2liaWxpdHlDaGFuZ2UgPSB0cnVlO1xuICBASW5wdXQoKSBjbG9zZU9uQ2xpY2sgPSB0cnVlO1xuICBASW5wdXQoKSBuZXdlc3RPblRvcCA9IGZhbHNlO1xuICBASW5wdXQoKSBwcmV2ZW50RHVwbGljYXRlcyA9IGZhbHNlO1xuICBASW5wdXQoKSBpY29uTGlicmFyeTogJ21hdGVyaWFsJyB8ICdmb250LWF3ZXNvbWUnIHwgJ25vbmUnID0gJ25vbmUnO1xuXG4gIFRvYXN0VHlwZSA9IFRvYXN0VHlwZTtcbiAgdG9hc3RzID0gbmV3IEFycmF5PFRvYXN0PigpO1xuICB0b2FzdFRyYW5zaXRpb25EaWN0ID0ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBkaXNtaXNzKHRvYXN0OiBUb2FzdCk6IHZvaWQge1xuICAgIHRoaXMudG9hc3RUcmFuc2l0aW9uRGljdFt0b2FzdC5pZF0gPSBUcmFuc2l0aW9uU3RhdGUuZXhpdGluZztcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy50b2FzdHMuaW5kZXhPZih0b2FzdCk7XG4gICAgICB0aGlzLnRvYXN0cy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgdGhpcy50cmFuc2l0aW9uRHVyYXRpb25zKTtcbiAgfVxuXG4gIGdldENsYXNzKHRvYXN0OiBUb2FzdCk6IHN0cmluZyB7XG4gICAgbGV0IGJhc2UgPSBgYW5ndWxhci10b2FzdGlmeS10b2FzdCBhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LS0ke1RvYXN0VHlwZVt0b2FzdC50eXBlXX0gYDtcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMudG9hc3RUcmFuc2l0aW9uRGljdFt0b2FzdC5pZF07XG4gICAgaWYgKHN0YXRlID09PSBUcmFuc2l0aW9uU3RhdGUuZW50ZXJpbmcpIHtcbiAgICAgIGJhc2UgKz0gYGFuZ3VsYXItdG9hc3RpZnktJHt0aGlzLnRyYW5zaXRpb259LWVudGVyIGFuZ3VsYXItdG9hc3RpZnktJHt0aGlzLnRyYW5zaXRpb259LWVudGVyLS0ke3RoaXMucG9zaXRpb259YDtcbiAgICB9IGVsc2UgaWYgKHN0YXRlID09PSBUcmFuc2l0aW9uU3RhdGUuZXhpdGluZykge1xuICAgICAgYmFzZSArPSBgYW5ndWxhci10b2FzdGlmeS0ke3RoaXMudHJhbnNpdGlvbn0tZXhpdCBhbmd1bGFyLXRvYXN0aWZ5LSR7dGhpcy50cmFuc2l0aW9ufS1leGl0LS0ke3RoaXMucG9zaXRpb259YDtcbiAgICB9XG5cbiAgICByZXR1cm4gYmFzZTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3RvYXN0U2VydmljZS5kaXNtaXNzQWxsRXZlbnQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudG9hc3RzID0gbmV3IEFycmF5PFRvYXN0PigpO1xuICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl90b2FzdFNlcnZpY2UudG9hc3RBZGRlZEV2ZW50LnN1YnNjcmliZSgodG9hc3Q6IFRvYXN0KSA9PiB0aGlzLmhhbmRsZVRvYXN0QWRkZWRFdmVudCh0b2FzdCkpO1xuICB9XG5cbiAgaGFuZGxlVG9hc3RBZGRlZEV2ZW50KHRvYXN0OiBUb2FzdCk6IHZvaWQge1xuICAgIC8vIElmIFwicHJldmVudER1cGxpY2F0ZXNcIiBpcyBlbmFibGVkLCB0b2FzdCBpcyBub3QgYWRkZWQgaWYgb25lIHRvYXN0IHdpdGggc2FtZSBtZXNzYWdlIGV4aXN0c1xuICAgIC8vIFRoZSBvbmx5IHRoaW5nIHRvIGRvIGlzIHRvIHVwZGF0ZSB0aGUgdG9hc3QgdGltZSB0byBrZWVwIGl0IHZpc2libGVcbiAgICBpZih0aGlzLnByZXZlbnREdXBsaWNhdGVzID09PSB0cnVlKSB7XG4gICAgICBjb25zdCBzYW1lVG9hc3Q6IFRvYXN0ID0gdGhpcy50b2FzdHMuZmluZCgoZXhpc3RpbmdUb2FzdCkgPT4gZXhpc3RpbmdUb2FzdC5tZXNzYWdlID09PSB0b2FzdC5tZXNzYWdlKTtcbiAgICAgIGlmIChzYW1lVG9hc3QpIHtcbiAgICAgICAgc2FtZVRvYXN0LiRyZXNldFRvYXN0Lm5leHQoKTtcbiAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgbmV3IHRvYXN0IHRyYW5zaXRpb25cbiAgICB0aGlzLnRvYXN0VHJhbnNpdGlvbkRpY3RbdG9hc3QuaWRdID0gVHJhbnNpdGlvblN0YXRlLmVudGVyaW5nO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy50b2FzdFRyYW5zaXRpb25EaWN0W3RvYXN0LmlkXSA9IFRyYW5zaXRpb25TdGF0ZS5ub1RyYW5zaXRpb247XG4gICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9LCB0aGlzLnRyYW5zaXRpb25EdXJhdGlvbnMpO1xuXG4gICAgLy8gQWRkIG5ldyB0b2FzdFxuICAgIGlmICh0aGlzLm5ld2VzdE9uVG9wKSB7XG4gICAgICB0aGlzLnRvYXN0cy51bnNoaWZ0KHRvYXN0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy50b2FzdHMucHVzaCh0b2FzdCk7XG4gICAgfVxuICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG5cbmVudW0gVHJhbnNpdGlvblN0YXRlIHtcbiAgZW50ZXJpbmcsXG4gIG5vVHJhbnNpdGlvbixcbiAgZXhpdGluZ1xufVxuIiwiPGRpdiBjbGFzcz1cImFuZ3VsYXItdG9hc3RpZnktdG9hc3QtY29udGFpbmVyIGFuZ3VsYXItdG9hc3RpZnktdG9hc3QtY29udGFpbmVyLS17e3Bvc2l0aW9ufX1cIj5cbiAgICA8bGliLXRvYXN0aWZ5LXRvYXN0ICpuZ0Zvcj1cImxldCB0b2FzdCBvZiB0b2FzdHNcIiBbY2xhc3NdPVwiZ2V0Q2xhc3ModG9hc3QpXCIgc3R5bGU9XCJhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzOyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1wiXG4gICAgICAgIFthdXRvQ2xvc2VdPVwiYXV0b0Nsb3NlXCIgW2F1dG9DbG9zZVN1Y2Nlc3NdPVwidGhpcy5hdXRvQ2xvc2VTdWNjZXNzXCIgW2F1dG9DbG9zZUVycm9yXT1cInRoaXMuYXV0b0Nsb3NlRXJyb3JcIiBbYXV0b0Nsb3NlV2Fybl09XCJ0aGlzLmF1dG9DbG9zZVdhcm5cIlxuICAgICAgICBbYXV0b0Nsb3NlSW5mb109XCJ0aGlzLmF1dG9DbG9zZUluZm9cIiBbdG9hc3RdPVwidG9hc3RcIiAoZGlzbWlzc0V2ZW50KT1cImRpc21pc3ModG9hc3QpXCIgW2hpZGVQcm9ncmVzc0Jhcl09XCJoaWRlUHJvZ3Jlc3NCYXJcIiBbcGF1c2VPbkhvdmVyXT1cInBhdXNlT25Ib3ZlclwiXG4gICAgICAgIFtwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZV09XCJwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZVwiIFtjbG9zZU9uQ2xpY2tdPVwiY2xvc2VPbkNsaWNrXCIgW2ljb25MaWJyYXJ5XT1cImljb25MaWJyYXJ5XCI+XG4gICAgPC9saWItdG9hc3RpZnktdG9hc3Q+XG48L2Rpdj5cbiJdfQ== |
@@ -1,4 +0,4 @@ | ||
| import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, NgZone, Output, ViewChild, } from "@angular/core"; | ||
| import { ToastType } from "../toast-type"; | ||
| import { Toast } from "../toast"; | ||
| import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, NgZone, Output, ViewChild, } from '@angular/core'; | ||
| import { ToastType } from '../toast-type'; | ||
| import { Toast } from '../toast'; | ||
| import * as i0 from "@angular/core"; | ||
@@ -28,3 +28,3 @@ import * as i1 from "@angular/common"; | ||
| // Do not start timer when toast is prompted while window is out of focus | ||
| if (this.handleVisibilityChange && document.visibilityState === "visible") { | ||
| if (this.handleVisibilityChange && document.visibilityState === 'visible') { | ||
| this.startCloseTimer(); | ||
@@ -45,5 +45,6 @@ } | ||
| const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100); | ||
| this.progressBarCover.nativeElement.style.width = percentage + "%"; | ||
| if (percentage <= 0) | ||
| this.progressBarCover.nativeElement.style.width = percentage + '%'; | ||
| if (percentage <= 0) { | ||
| return; | ||
| } | ||
| } | ||
@@ -149,3 +150,3 @@ this._progressBarAnimation = requestAnimationFrame(frame); | ||
| } | ||
| if (document.visibilityState !== "visible") { | ||
| if (document.visibilityState !== 'visible') { | ||
| this.pauseCloseTimer(); | ||
@@ -160,3 +161,3 @@ this._cd.detectChanges(); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0, template: "<div role=\"alert\" class=\"toast-body\">\n <div class=\"icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.info\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.default\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.warning\">warning_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.error\">error_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.success\">done</i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"fa fa-exclamation\"></i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"fa fa-check\"></i>\n </span>\n </div>\n <div class=\"toast-container\">\n <div>{{toast.message}}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\" class=\"close-button close-button--{{ToastType[toast.type]}}\" type=\"button\" aria-label=\"close\">\u2716</button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\" class=\"progress-bar progress-bar--{{ToastType[toast.type]}}\" style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\" class=\"progress-bar-cover toast--{{ToastType[toast.type]}}\" [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\" [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}.close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.close-button--default{color:#000;opacity:.3}.close-button:focus,.close-button:hover{opacity:1}.progress-bar-cover{right:0;z-index:100;direction:rtl}.progress-bar,.progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.progress-bar--controlled{transition:transform .2s}.progress-bar--rtl{right:0;left:auto;transform-origin:right}.progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.toast-body{min-width:0;min-height:0}.icon-container,.toast-body{vertical-align:middle;display:flex}.icon-container{flex-direction:column;justify-content:center;width:25px}.icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.icon-container span i{vertical-align:middle}.fa,.material-icons{font-size:18px}.toast-container{width:calc(100% - 25px);overflow-y:scroll;display:flex;flex-direction:column;min-height:0}.toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0, template: "<div role=\"alert\" class=\"angular-toastify-toast-body\">\n <div class=\"angular-toastify-icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.info\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#fff\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.default\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#aaa\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.warning\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M-3.28-104.15 480-911.43l483.28 807.28H-3.28Zm483.83-137.63q19.97 0 34.23-14.05 14.26-14.05 14.26-34.02 0-19.74-14.05-34-14.05-14.26-34.02-14.26-19.73 0-34.11 14.05-14.38 14.05-14.38 33.78 0 19.98 14.17 34.24 14.17 14.26 33.9 14.26Zm-46.88-138.7h94.18v-192.89h-94.18v192.89Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.error\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M479.56-266.26q21.83 0 36.89-14.61 15.05-14.62 15.05-36.45 0-21.83-14.61-37.01-14.62-15.17-36.45-15.17-21.83 0-36.89 14.79-15.05 14.79-15.05 36.62t14.61 36.83q14.62 15 36.45 15Zm-51.39-167.02h105.18v-250.55H428.17v250.55Zm52.11 372.63q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.success\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M389-240.7 166.93-461.76l74.27-75.26L389-388.98l331.57-330.56 74.26 74.02L389-240.7Z\"/></svg>\n </i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#aaa\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128 512\" height=\"18\" fill=\"#fff\">\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M96 64c0-17.7-14.3-32-32-32S32 46.3 32 64l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32L96 64zM64 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>\n </svg>\n </i>\n </span>\n </div>\n <div class=\"angular-toastify-toast-container\">\n <div>{{ toast.message }}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\"\n class=\"angular-toastify-close-button angular-toastify-close-button--{{ToastType[toast.type]}}\" type=\"button\"\n aria-label=\"close\">\u2716\n </button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar angular-toastify-progress-bar--{{ToastType[toast.type]}}\"\n style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar-cover angular-toastify-toast--{{ToastType[toast.type]}}\"\n [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\"\n [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}.angular-toastify-close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.angular-toastify-close-button--default{color:#000;opacity:.3}.angular-toastify-close-button:focus,.angular-toastify-close-button:hover{opacity:1}.angular-toastify-progress-bar-cover{right:0;z-index:100;direction:rtl}.angular-toastify-progress-bar,.angular-toastify-progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.angular-toastify-progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.angular-toastify-progress-bar--controlled{transition:transform .2s}.angular-toastify-progress-bar--rtl{right:0;left:auto;transform-origin:right}.angular-toastify-progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.angular-toastify-toast-body{min-width:0;min-height:0;vertical-align:middle;display:flex}.angular-toastify-icon-container{display:flex;flex-direction:column;justify-content:center;width:25px;vertical-align:middle}.angular-toastify-icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.angular-toastify-icon-container span i{vertical-align:middle}.angular-toastify-toast-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:18px}.angular-toastify-toast-container{width:calc(100% - 25px);overflow-y:auto;display:flex;flex-direction:column;min-height:0}.angular-toastify-toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastComponent, decorators: [{ | ||
@@ -166,5 +167,5 @@ type: Component, | ||
| // tslint:disable-next-line:component-selector | ||
| selector: "lib-toastify-toast", | ||
| templateUrl: "./toastify-toast.component.html", | ||
| styleUrls: ["./toastify-toast.component.scss"], | ||
| selector: 'lib-toastify-toast', | ||
| templateUrl: './toastify-toast.component.html', | ||
| styleUrls: ['./toastify-toast.component.scss'], | ||
| // changeDetection: ChangeDetectionStrategy.OnPush | ||
@@ -174,6 +175,6 @@ }] | ||
| type: ViewChild, | ||
| args: ["progressBar"] | ||
| args: ['progressBar'] | ||
| }], progressBarCover: [{ | ||
| type: ViewChild, | ||
| args: ["progressBarCover"] | ||
| args: ['progressBarCover'] | ||
| }], autoClose: [{ | ||
@@ -205,13 +206,13 @@ type: Input | ||
| type: HostListener, | ||
| args: ["click"] | ||
| args: ['click'] | ||
| }], handleMouseEnter: [{ | ||
| type: HostListener, | ||
| args: ["mouseenter"] | ||
| args: ['mouseenter'] | ||
| }], handleMouseLeave: [{ | ||
| type: HostListener, | ||
| args: ["mouseleave"] | ||
| args: ['mouseleave'] | ||
| }], handleVisibilityChange: [{ | ||
| type: HostListener, | ||
| args: ["document:visibilitychange"] | ||
| args: ['document:visibilitychange'] | ||
| }] } }); | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RpZnktdG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10b2FzdGlmeS9zcmMvbGliL3RvYXN0aWZ5LXRvYXN0L3RvYXN0aWZ5LXRvYXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC90b2FzdGlmeS10b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7QUFXakMsTUFBTSxPQUFPLHNCQUFzQjtJQStCakMsWUFBb0IsR0FBc0IsRUFBVSxLQUFhO1FBQTdDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQTNCeEQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixtQkFBYyxHQUFHLFNBQVMsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxTQUFTLENBQUM7UUFDN0Isa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBSW5CLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVk1QyxjQUFTLEdBQUcs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WTtzQkFBckIsTUFBTTtnQkF3SVAsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLE9BQU87Z0JBU3JCLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFlBQVk7Z0JBUTFCLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFlBQVk7Z0JBUzFCLHNCQUFzQjtzQkFEckIsWUFBWTt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRvYXN0VHlwZSB9IGZyb20gXCIuLi90b2FzdC10eXBlXCI7XG5pbXBvcnQgeyBUb2FzdCB9IGZyb20gXCIuLi90b2FzdFwiO1xuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGhyb3R0bGUsIHRocm90dGxlVGltZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogXCJsaWItdG9hc3RpZnktdG9hc3RcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi90b2FzdGlmeS10b2FzdC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vdG9hc3RpZnktdG9hc3QuY29tcG9uZW50LnNjc3NcIl0sXG4gIC8vIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0aWZ5VG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoXCJwcm9ncmVzc0JhclwiKSBwcm9ncmVzc0JhcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoXCJwcm9ncmVzc0JhckNvdmVyXCIpIHByb2dyZXNzQmFyQ292ZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpIGF1dG9DbG9zZSA9IDUwMDA7ICBcbiAgQElucHV0KCkgYXV0b0Nsb3NlRXJyb3IgPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZVN1Y2Nlc3MgPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZUluZm8gPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZVdhcm4gPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGhpZGVQcm9ncmVzc0JhciA9IGZhbHNlO1xuICBASW5wdXQoKSBwYXVzZU9uSG92ZXIgPSB0cnVlO1xuICBASW5wdXQoKSBwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZSA9IHRydWU7XG4gIEBJbnB1dCgpIGNsb3NlT25DbGljayA9IHRydWU7XG4gIEBJbnB1dCgpIHRvYXN0OiBUb2FzdDtcbiAgQElucHV0KCkgaWNvbkxpYnJhcnk6IFwibWF0ZXJpYWxcIiB8IFwiZm9udC1hd2Vzb21lXCIgfCBcIm5vbmVcIjtcblxuICBAT3V0cHV0KCkgZGlzbWlzc0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgZXhwZWN0ZWRBdXRvRGlzbWlzc1RpbWU6IG51bWJlcjtcbiAgcHJpdmF0ZSBhdXRvRGlzbWlzc1RpbWVvdXQ6IGFueTtcbiAgcHJpdmF0ZSBhdXRvQ2xvc2VSZW1haW5pbmc6IG51bWJlcjtcblxuICBwcml2YXRlIHBhdXNlVGltZTogbnVtYmVyO1xuICBwcml2YXRlIHN0YXJ0VGltZTogbnVtYmVyO1xuXG4gIHByaXZhdGUgX3Byb2dyZXNzQmFyQW5pbWF0aW9uOiBudW1iZXI7XG4gIHByaXZhdGUgXyR1cGRhdGVUaW1lcjtcblxuICBUb2FzdFR5cGUgPSBUb2FzdFR5cGU7XG4gIHJ1bm5pbmcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgX3pvbmU6IE5nWm9uZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpO1xuICAgIHRoaXMuc3RhcnRUaW1lID0gdGhpcy50b2FzdC50aW1lO1xuICAgIHRoaXMudG9hc3QuJHJlc2V0VG9hc3Quc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRUb2FzdFRpbWVyKCkpO1xuICAgIC8vIERvIG5vdCBzdGFydCB0aW1lciB3aGVuIHRvYXN0IGlzIHByb21wdGVkIHdoaWxlIHdpbmRvdyBpcyBvdXQgb2YgZm9jdXNcbiAgICBpZiAodGhpcy5oYW5kbGVWaXNpYmlsaXR5Q2hhbmdlICYmIGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSA9PT0gXCJ2aXNpYmxlXCIpIHtcbiAgICAgIHRoaXMuc3RhcnRDbG9zZVRpbWVyKCk7XG4gICAgfVxuXG4gICAgLy8gU3RhcnQgcHJvZ3Jlc3MgYmFyIGFuaW1hdGlvblxuICAgIHRoaXMudHJpZ2dlclByb2dyZXNzQmFyQW5pbWF0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIHRyaWdnZXJQcm9ncmVzc0JhckFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICAvLyBDYW5jZWwgcHJldmlvdXMgYW5pbWxhdGlvbiB0byBhdm9pZCBsZWFrc1xuICAgIGlmICh0aGlzLl9wcm9ncmVzc0JhckFuaW1hdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLl9wcm9ncmVzc0JhckFuaW1hdGlvbik7XG4gICAgfVxuXG4gICAgLy8gU3RhcnQgYW5pbWF0aW9uXG4gICAgY29uc3QgZnJhbWUgPSAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5ydW5uaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlbWFpbmluZ1RpbWUgPSBNYXRoLm1heCgwLCB0aGlzLmV4cGVjdGVkQXV0b0Rpc21pc3NUaW1lIC0gbmV3IERhdGUoKS5nZXRUaW1lKCkpO1xuICAgICAgICBjb25zdCBwZXJjZW50YWdlID0gMTAwIC0gKChyZW1haW5pbmdUaW1lIC8gdGhpcy5hdXRvQ2xvc2VBZnRlclNwZWNpZmljQ2hhbmdlKCkpICogMTAwKTtcbiAgICAgICAgdGhpcy5wcm9ncmVzc0JhckNvdmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUud2lkdGggPSBwZXJjZW50YWdlICsgXCIlXCI7XG4gICAgICAgIGlmIChwZXJjZW50YWdlIDw9IDApIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZyYW1lKTtcbiAgICB9O1xuICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZyYW1lKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8vIENhbmNlbCBhbmltYXRpb25cbiAgICBpZiAodGhpcy5fcHJvZ3Jlc3NCYXJBbmltYXRpb24pIHtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uKTtcbiAgICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICAvLyBDbGVhciBhdXRvIGNsb3NlIHRpbWVvdXRcbiAgICB0aGlzLmNsZWFyVGltZXJUaW1lb3V0KCk7XG4gICAgLy8gQ29tcGxldGUgYWxsIG9ic2VydmFibGVzXG4gICAgdGhpcy50b2FzdC4kcmVzZXRUb2FzdD8uY29tcGxldGUoKTtcbiAgICB0aGlzLnRvYXN0LiRyZXNldFRvYXN0ID0gbnVsbDtcbiAgICB0aGlzLl8kdXBkYXRlVGltZXI/LmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fJHVwZGF0ZVRpbWVyID0gbnVsbDtcbiAgfVxuXG4gIHN0YXJ0Q2xvc2VUaW1lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5ydW5uaW5nIHx8ICF0aGlzLmF1dG9DbG9zZUFmdGVyU3BlY2lmaWNDaGFuZ2UoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucnVubmluZyA9IHRydWU7XG4gICAgdGhpcy5leHBlY3RlZEF1dG9EaXNtaXNzVGltZSA9XG4gICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHRoaXMuYXV0b0Nsb3NlUmVtYWluaW5nO1xuICAgIHRoaXMuYXV0b0Rpc21pc3NUaW1lb3V0ID0gdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmRpc21pc3NFdmVudC5lbWl0KCk7XG4gICAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSwgdGhpcy5hdXRvQ2xvc2VSZW1haW5pbmcpXG4gICAgKTtcbiAgfVxuXG4gIGF1dG9DbG9zZUFmdGVyU3BlY2lmaWNDaGFuZ2UoKTogbnVtYmVyIHtcbiAgICBjb25zdCBzcGVjaWZpY0Ftb3VudCA9ICgoKSA9PiB7XG4gICAgICBzd2l0Y2ggKHRoaXMudG9hc3QudHlwZSkge1xuICAgICAgICBjYXNlIFRvYXN0VHlwZS5zdWNjZXNzOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZVN1Y2Nlc3M7XG4gICAgICAgIGNhc2UgVG9hc3RUeXBlLmVycm9yOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZUVycm9yO1xuICAgICAgICBjYXNlIFRvYXN0VHlwZS53YXJuaW5nOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZVdhcm47XG4gICAgICAgIGNhc2UgVG9hc3RUeXBlLmluZm86XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXV0b0Nsb3NlSW5mbztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH0pKCk7XG5cbiAgICByZXR1cm4gc3BlY2lmaWNBbW91bnQgPT09IHVuZGVmaW5lZCA/IHRoaXMuYXV0b0Nsb3NlIDogc3BlY2lmaWNBbW91bnQ7XG4gIH1cblxuICBwYXVzZUNsb3NlVGltZXIoKTogdm9pZCB7XG4gICAgdGhpcy5ydW5uaW5nID0gZmFsc2U7XG4gICAgdGhpcy5jbGVhclRpbWVyVGltZW91dCgpO1xuXG4gICAgLy8gQ2FsY3VsYXRlIHRoZSBlbGFwc2VkIHRpbWUsIHN1YnRyYWN0IHJlbWFpbmluZyB0aW1lXG4gICAgdGhpcy5wYXVzZVRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICBjb25zdCBlbGFwc2VkID0gdGhpcy5wYXVzZVRpbWUgLSB0aGlzLnN0YXJ0VGltZTtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpIC0gZWxhcHNlZDtcbiAgfVxuXG4gIHJlc2V0VG9hc3RUaW1lcigpIHtcbiAgICB0aGlzLmNsZWFyVGltZXJUaW1lb3V0KCk7XG4gICAgdGhpcy5ydW5uaW5nID0gZmFsc2U7XG4gICAgdGhpcy5zdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpO1xuICAgIHRoaXMuc3RhcnRDbG9zZVRpbWVyKCk7XG4gIH1cblxuICBjbGVhclRpbWVyVGltZW91dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hdXRvRGlzbWlzc1RpbWVvdXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5leHBlY3RlZEF1dG9EaXNtaXNzVGltZSA9IHVuZGVmaW5lZDtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmF1dG9EaXNtaXNzVGltZW91dCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRGlzbWlzc0J1dHRvbkFjdGlvbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbG9zZU9uQ2xpY2spIHtcbiAgICAgIHJldHVybjsgLy8gTGV0IHRoZSBvdGhlciBldmVudCBoYW5kbGUgdGhlIGRpc21pc3NhbFxuICAgIH1cblxuICAgIHRoaXMuY2xlYXJUaW1lclRpbWVvdXQoKTtcbiAgICB0aGlzLmRpc21pc3NFdmVudC5lbWl0KCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIilcbiAgaGFuZGxlSG9zdENsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNsb3NlT25DbGljaykge1xuICAgICAgdGhpcy5jbGVhclRpbWVyVGltZW91dCgpO1xuICAgICAgdGhpcy5kaXNtaXNzRXZlbnQuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoXCJtb3VzZWVudGVyXCIpXG4gIGhhbmRsZU1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkhvdmVyKSB7XG4gICAgICB0aGlzLnBhdXNlQ2xvc2VUaW1lcigpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoXCJtb3VzZWxlYXZlXCIpXG4gIGhhbmRsZU1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkhvdmVyKSB7XG4gICAgICB0aGlzLnN0YXJ0Q2xvc2VUaW1lcigpO1xuICAgICAgdGhpcy5zdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSArICh0aGlzLnN0YXJ0VGltZSAtIHRoaXMucGF1c2VUaW1lKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKFwiZG9jdW1lbnQ6dmlzaWJpbGl0eWNoYW5nZVwiKVxuICBoYW5kbGVWaXNpYmlsaXR5Q2hhbmdlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wYXVzZU9uVmlzaWJpbGl0eUNoYW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgIT09IFwidmlzaWJsZVwiKSB7XG4gICAgICB0aGlzLnBhdXNlQ2xvc2VUaW1lcigpO1xuICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YXJ0Q2xvc2VUaW1lcigpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiByb2xlPVwiYWxlcnRcIiBjbGFzcz1cInRvYXN0LWJvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWluZXJcIj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJpY29uTGlicmFyeSA9PSAnbWF0ZXJpYWwnXCIgW25nU3dpdGNoXT1cInRvYXN0LnR5cGVcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLmluZm9cIj5pbmZvX291dGxpbmU8L2k+XG4gICAgICAgICAgICA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCIgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5kZWZhdWx0XCI+aW5mb19vdXRsaW5lPC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiICpuZ1N3aXRjaENhc2U9XCJUb2FzdFR5cGUud2FybmluZ1wiPndhcm5pbmdfb3V0bGluZTwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLmVycm9yXCI+ZXJyb3Jfb3V0bGluZTwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLnN1Y2Nlc3NcIj5kb25lPC9pPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaWNvbkxpYnJhcnkgPT0gJ2ZvbnQtYXdlc29tZSdcIiBbbmdTd2l0Y2hdPVwidG9hc3QudHlwZVwiPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5pbmZvXCIgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5kZWZhdWx0XCIgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS53YXJuaW5nXCIgY2xhc3M9XCJmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZVwiPjwvaT5cbiAgICAgICAgICAgIDxpICpuZ1N3aXRjaENhc2U9XCJUb2FzdFR5cGUuZXJyb3JcIiBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5zdWNjZXNzXCIgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT5cbiAgICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0b2FzdC1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdj57e3RvYXN0Lm1lc3NhZ2V9fTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjbG9zZS1jb250YWluZXJcIj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZURpc21pc3NCdXR0b25BY3Rpb24oKVwiIGNsYXNzPVwiY2xvc2UtYnV0dG9uIGNsb3NlLWJ1dHRvbi0te3tUb2FzdFR5cGVbdG9hc3QudHlwZV19fVwiIHR5cGU9XCJidXR0b25cIiBhcmlhLWxhYmVsPVwiY2xvc2VcIj7inJY8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2ICNwcm9ncmVzc0JhciAqbmdJZj1cIiFoaWRlUHJvZ3Jlc3NCYXJcIiBjbGFzcz1cInByb2dyZXNzLWJhciBwcm9ncmVzcy1iYXImIzQ1OyYjNDU7e3tUb2FzdFR5cGVbdG9hc3QudHlwZV19fVwiIHN0eWxlPVwib3BhY2l0eTogMTtcIj48L2Rpdj5cbjxkaXYgI3Byb2dyZXNzQmFyQ292ZXIgKm5nSWY9XCIhaGlkZVByb2dyZXNzQmFyXCIgY2xhc3M9XCJwcm9ncmVzcy1iYXItY292ZXIgdG9hc3QtLXt7VG9hc3RUeXBlW3RvYXN0LnR5cGVdfX1cIiBbc3R5bGUuYW5pbWF0aW9uLWR1cmF0aW9uXT1cInRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpICsgJ21zJ1wiICBbc3R5bGUuYW5pbWF0aW9uLXBsYXktc3RhdGVdPVwicnVubmluZz8gJ3J1bm5pbmcnIDogJ3BhdXNlZCdcIj48L2Rpdj5cbiJdfQ== | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3RpZnktdG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10b2FzdGlmeS9zcmMvbGliL3RvYXN0aWZ5LXRvYXN0L3RvYXN0aWZ5LXRvYXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9hc3RpZnkvc3JjL2xpYi90b2FzdGlmeS10b2FzdC90b2FzdGlmeS10b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7QUFTakMsTUFBTSxPQUFPLHNCQUFzQjtJQStCakMsWUFBb0IsR0FBc0IsRUFBVSxLQUFhO1FBQTdDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQTNCeEQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixtQkFBYyxHQUFHLFNBQVMsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxTQUFTLENBQUM7UUFDN0Isa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBSW5CLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVk1QyxjQUFTLEdBQUcs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QUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTTtnQkF3SVAsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLE9BQU87Z0JBU3JCLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFlBQVk7Z0JBUTFCLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFlBQVk7Z0JBUzFCLHNCQUFzQjtzQkFEckIsWUFBWTt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb2FzdFR5cGUgfSBmcm9tICcuLi90b2FzdC10eXBlJztcbmltcG9ydCB7IFRvYXN0IH0gZnJvbSAnLi4vdG9hc3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2xpYi10b2FzdGlmeS10b2FzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdGlmeS10b2FzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0aWZ5LXRvYXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIC8vIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0aWZ5VG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ3Byb2dyZXNzQmFyJykgcHJvZ3Jlc3NCYXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdwcm9ncmVzc0JhckNvdmVyJykgcHJvZ3Jlc3NCYXJDb3ZlcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQElucHV0KCkgYXV0b0Nsb3NlID0gNTAwMDtcbiAgQElucHV0KCkgYXV0b0Nsb3NlRXJyb3IgPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZVN1Y2Nlc3MgPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZUluZm8gPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZVdhcm4gPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGhpZGVQcm9ncmVzc0JhciA9IGZhbHNlO1xuICBASW5wdXQoKSBwYXVzZU9uSG92ZXIgPSB0cnVlO1xuICBASW5wdXQoKSBwYXVzZU9uVmlzaWJpbGl0eUNoYW5nZSA9IHRydWU7XG4gIEBJbnB1dCgpIGNsb3NlT25DbGljayA9IHRydWU7XG4gIEBJbnB1dCgpIHRvYXN0OiBUb2FzdDtcbiAgQElucHV0KCkgaWNvbkxpYnJhcnk6ICdtYXRlcmlhbCcgfCAnZm9udC1hd2Vzb21lJyB8ICdub25lJztcblxuICBAT3V0cHV0KCkgZGlzbWlzc0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgZXhwZWN0ZWRBdXRvRGlzbWlzc1RpbWU6IG51bWJlcjtcbiAgcHJpdmF0ZSBhdXRvRGlzbWlzc1RpbWVvdXQ6IGFueTtcbiAgcHJpdmF0ZSBhdXRvQ2xvc2VSZW1haW5pbmc6IG51bWJlcjtcblxuICBwcml2YXRlIHBhdXNlVGltZTogbnVtYmVyO1xuICBwcml2YXRlIHN0YXJ0VGltZTogbnVtYmVyO1xuXG4gIHByaXZhdGUgX3Byb2dyZXNzQmFyQW5pbWF0aW9uOiBudW1iZXI7XG4gIHByaXZhdGUgXyR1cGRhdGVUaW1lcjtcblxuICBUb2FzdFR5cGUgPSBUb2FzdFR5cGU7XG4gIHJ1bm5pbmcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgX3pvbmU6IE5nWm9uZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpO1xuICAgIHRoaXMuc3RhcnRUaW1lID0gdGhpcy50b2FzdC50aW1lO1xuICAgIHRoaXMudG9hc3QuJHJlc2V0VG9hc3Quc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRUb2FzdFRpbWVyKCkpO1xuICAgIC8vIERvIG5vdCBzdGFydCB0aW1lciB3aGVuIHRvYXN0IGlzIHByb21wdGVkIHdoaWxlIHdpbmRvdyBpcyBvdXQgb2YgZm9jdXNcbiAgICBpZiAodGhpcy5oYW5kbGVWaXNpYmlsaXR5Q2hhbmdlICYmIGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSA9PT0gJ3Zpc2libGUnKSB7XG4gICAgICB0aGlzLnN0YXJ0Q2xvc2VUaW1lcigpO1xuICAgIH1cblxuICAgIC8vIFN0YXJ0IHByb2dyZXNzIGJhciBhbmltYXRpb25cbiAgICB0aGlzLnRyaWdnZXJQcm9ncmVzc0JhckFuaW1hdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmlnZ2VyUHJvZ3Jlc3NCYXJBbmltYXRpb24oKTogdm9pZCB7XG4gICAgLy8gQ2FuY2VsIHByZXZpb3VzIGFuaW1sYXRpb24gdG8gYXZvaWQgbGVha3NcbiAgICBpZiAodGhpcy5fcHJvZ3Jlc3NCYXJBbmltYXRpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5fcHJvZ3Jlc3NCYXJBbmltYXRpb24pO1xuICAgIH1cblxuICAgIC8vIFN0YXJ0IGFuaW1hdGlvblxuICAgIGNvbnN0IGZyYW1lID0gKCkgPT4ge1xuICAgICAgaWYgKHRoaXMucnVubmluZykge1xuICAgICAgICBjb25zdCByZW1haW5pbmdUaW1lID0gTWF0aC5tYXgoMCwgdGhpcy5leHBlY3RlZEF1dG9EaXNtaXNzVGltZSAtIG5ldyBEYXRlKCkuZ2V0VGltZSgpKTtcbiAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IDEwMCAtICgocmVtYWluaW5nVGltZSAvIHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpKSAqIDEwMCk7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NCYXJDb3Zlci5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gcGVyY2VudGFnZSArICclJztcbiAgICAgICAgaWYgKHBlcmNlbnRhZ2UgPD0gMCkgeyByZXR1cm47IH1cbiAgICAgIH1cbiAgICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZyYW1lKTtcbiAgICB9O1xuICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZyYW1lKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8vIENhbmNlbCBhbmltYXRpb25cbiAgICBpZiAodGhpcy5fcHJvZ3Jlc3NCYXJBbmltYXRpb24pIHtcbiAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uKTtcbiAgICAgIHRoaXMuX3Byb2dyZXNzQmFyQW5pbWF0aW9uID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICAvLyBDbGVhciBhdXRvIGNsb3NlIHRpbWVvdXRcbiAgICB0aGlzLmNsZWFyVGltZXJUaW1lb3V0KCk7XG4gICAgLy8gQ29tcGxldGUgYWxsIG9ic2VydmFibGVzXG4gICAgdGhpcy50b2FzdC4kcmVzZXRUb2FzdD8uY29tcGxldGUoKTtcbiAgICB0aGlzLnRvYXN0LiRyZXNldFRvYXN0ID0gbnVsbDtcbiAgICB0aGlzLl8kdXBkYXRlVGltZXI/LmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fJHVwZGF0ZVRpbWVyID0gbnVsbDtcbiAgfVxuXG4gIHN0YXJ0Q2xvc2VUaW1lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5ydW5uaW5nIHx8ICF0aGlzLmF1dG9DbG9zZUFmdGVyU3BlY2lmaWNDaGFuZ2UoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucnVubmluZyA9IHRydWU7XG4gICAgdGhpcy5leHBlY3RlZEF1dG9EaXNtaXNzVGltZSA9XG4gICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHRoaXMuYXV0b0Nsb3NlUmVtYWluaW5nO1xuICAgIHRoaXMuYXV0b0Rpc21pc3NUaW1lb3V0ID0gdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmRpc21pc3NFdmVudC5lbWl0KCk7XG4gICAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSwgdGhpcy5hdXRvQ2xvc2VSZW1haW5pbmcpXG4gICAgKTtcbiAgfVxuXG4gIGF1dG9DbG9zZUFmdGVyU3BlY2lmaWNDaGFuZ2UoKTogbnVtYmVyIHtcbiAgICBjb25zdCBzcGVjaWZpY0Ftb3VudCA9ICgoKSA9PiB7XG4gICAgICBzd2l0Y2ggKHRoaXMudG9hc3QudHlwZSkge1xuICAgICAgICBjYXNlIFRvYXN0VHlwZS5zdWNjZXNzOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZVN1Y2Nlc3M7XG4gICAgICAgIGNhc2UgVG9hc3RUeXBlLmVycm9yOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZUVycm9yO1xuICAgICAgICBjYXNlIFRvYXN0VHlwZS53YXJuaW5nOlxuICAgICAgICAgIHJldHVybiB0aGlzLmF1dG9DbG9zZVdhcm47XG4gICAgICAgIGNhc2UgVG9hc3RUeXBlLmluZm86XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXV0b0Nsb3NlSW5mbztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH0pKCk7XG5cbiAgICByZXR1cm4gc3BlY2lmaWNBbW91bnQgPT09IHVuZGVmaW5lZCA/IHRoaXMuYXV0b0Nsb3NlIDogc3BlY2lmaWNBbW91bnQ7XG4gIH1cblxuICBwYXVzZUNsb3NlVGltZXIoKTogdm9pZCB7XG4gICAgdGhpcy5ydW5uaW5nID0gZmFsc2U7XG4gICAgdGhpcy5jbGVhclRpbWVyVGltZW91dCgpO1xuXG4gICAgLy8gQ2FsY3VsYXRlIHRoZSBlbGFwc2VkIHRpbWUsIHN1YnRyYWN0IHJlbWFpbmluZyB0aW1lXG4gICAgdGhpcy5wYXVzZVRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICBjb25zdCBlbGFwc2VkID0gdGhpcy5wYXVzZVRpbWUgLSB0aGlzLnN0YXJ0VGltZTtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpIC0gZWxhcHNlZDtcbiAgfVxuXG4gIHJlc2V0VG9hc3RUaW1lcigpIHtcbiAgICB0aGlzLmNsZWFyVGltZXJUaW1lb3V0KCk7XG4gICAgdGhpcy5ydW5uaW5nID0gZmFsc2U7XG4gICAgdGhpcy5zdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICB0aGlzLmF1dG9DbG9zZVJlbWFpbmluZyA9IHRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpO1xuICAgIHRoaXMuc3RhcnRDbG9zZVRpbWVyKCk7XG4gIH1cblxuICBjbGVhclRpbWVyVGltZW91dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hdXRvRGlzbWlzc1RpbWVvdXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5leHBlY3RlZEF1dG9EaXNtaXNzVGltZSA9IHVuZGVmaW5lZDtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmF1dG9EaXNtaXNzVGltZW91dCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRGlzbWlzc0J1dHRvbkFjdGlvbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbG9zZU9uQ2xpY2spIHtcbiAgICAgIHJldHVybjsgLy8gTGV0IHRoZSBvdGhlciBldmVudCBoYW5kbGUgdGhlIGRpc21pc3NhbFxuICAgIH1cblxuICAgIHRoaXMuY2xlYXJUaW1lclRpbWVvdXQoKTtcbiAgICB0aGlzLmRpc21pc3NFdmVudC5lbWl0KCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIGhhbmRsZUhvc3RDbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbG9zZU9uQ2xpY2spIHtcbiAgICAgIHRoaXMuY2xlYXJUaW1lclRpbWVvdXQoKTtcbiAgICAgIHRoaXMuZGlzbWlzc0V2ZW50LmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcbiAgaGFuZGxlTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wYXVzZU9uSG92ZXIpIHtcbiAgICAgIHRoaXMucGF1c2VDbG9zZVRpbWVyKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXG4gIGhhbmRsZU1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkhvdmVyKSB7XG4gICAgICB0aGlzLnN0YXJ0Q2xvc2VUaW1lcigpO1xuICAgICAgdGhpcy5zdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSArICh0aGlzLnN0YXJ0VGltZSAtIHRoaXMucGF1c2VUaW1lKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDp2aXNpYmlsaXR5Y2hhbmdlJylcbiAgaGFuZGxlVmlzaWJpbGl0eUNoYW5nZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucGF1c2VPblZpc2liaWxpdHlDaGFuZ2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlICE9PSAndmlzaWJsZScpIHtcbiAgICAgIHRoaXMucGF1c2VDbG9zZVRpbWVyKCk7XG4gICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhcnRDbG9zZVRpbWVyKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IHJvbGU9XCJhbGVydFwiIGNsYXNzPVwiYW5ndWxhci10b2FzdGlmeS10b2FzdC1ib2R5XCI+XG4gIDxkaXYgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LWljb24tY29udGFpbmVyXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaWNvbkxpYnJhcnkgPT0gJ21hdGVyaWFsJ1wiIFtuZ1N3aXRjaF09XCJ0b2FzdC50eXBlXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImFuZ3VsYXItdG9hc3RpZnktdG9hc3QtaWNvblwiICpuZ1N3aXRjaENhc2U9XCJUb2FzdFR5cGUuaW5mb1wiPlxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjIwcHhcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwcHhcIlxuICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiNmZmZcIj48cGF0aFxuICAgICAgICAgICAgICAgICAgZD1cIk00MzAuMDktMjcwLjhoMTAxLjM0Vi01MjhINDMwLjA5djI1Ny4yWm00OS41Mi0zMzguMDNxMjAuOTQgMCAzNS4zNC0xNC4wMSAxNC40LTE0LjAxIDE0LjQtMzQuOTUgMC0yMC45NC0xNC4wMS0zNS4zNC0xNC4wMS0xNC4zOS0zNC45NS0xNC4zOS0yMC45NCAwLTM1LjM0IDE0LjAxLTE0LjQgMTQuMDEtMTQuNCAzNC45NSAwIDIwLjk0IDE0LjAxIDM1LjM0IDE0LjAxIDE0LjM5IDM0Ljk1IDE0LjM5Wm0uNjcgNTQ4LjE4cS04Ni42NCAwLTE2My4xOS0zMi42Ni03Ni41Ni0zMi42Ni0xMzMuODQtODkuOTR0LTg5Ljk0LTEzMy44cS0zMi42Ni03Ni41MS0zMi42Ni0xNjMuNDEgMC04Ny4xNSAzMi43Mi0xNjMuMzF0OTAuMTQtMTMzLjYxcTU3LjQyLTU3LjQ0IDEzMy43OS04OS43IDc2LjM4LTMyLjI3IDE2My4xNi0zMi4yNyA4Ny4xNCAwIDE2My4zMSAzMi4yNiA3Ni4xNiAzMi4yNiAxMzMuNjEgODkuNzEgNTcuNDUgNTcuNDUgODkuNzEgMTMzLjg2IDMyLjI2IDc2LjQyIDMyLjI2IDE2My4zMyAwIDg2LjkxLTMyLjI3IDE2My4wOC0zMi4yNiA3Ni4xOC04OS43IDEzMy42LTU3LjQ1IDU3LjQyLTEzMy44MyA5MC4xNC03Ni4zOSAzMi43Mi0xNjMuMjcgMzIuNzJabS0uMzMtMTA1LjE4cTEzMS4xMyAwIDIyMi42OC05MS40OSA5MS41NC05MS40OSA5MS41NC0yMjIuNjMgMC0xMzEuMTMtOTEuNDktMjIyLjY4LTkxLjQ5LTkxLjU0LTIyMi42My05MS41NC0xMzEuMTMgMC0yMjIuNjggOTEuNDktOTEuNTQgOTEuNDktOTEuNTQgMjIyLjYzIDAgMTMxLjEzIDkxLjQ5IDIyMi42OCA5MS40OSA5MS41NCAyMjIuNjMgOTEuNTRaTTQ4MC00ODBaXCIvPjwvc3ZnPlxuICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LWljb25cIiAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLmRlZmF1bHRcIj5cbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMHB4XCJcbiAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjYWFhXCI+PHBhdGhcbiAgICAgICAgICAgICAgICAgIGQ9XCJNNDMwLjA5LTI3MC44aDEwMS4zNFYtNTI4SDQzMC4wOXYyNTcuMlptNDkuNTItMzM4LjAzcTIwLjk0IDAgMzUuMzQtMTQuMDEgMTQuNC0xNC4wMSAxNC40LTM0Ljk1IDAtMjAuOTQtMTQuMDEtMzUuMzQtMTQuMDEtMTQuMzktMzQuOTUtMTQuMzktMjAuOTQgMC0zNS4zNCAxNC4wMS0xNC40IDE0LjAxLTE0LjQgMzQuOTUgMCAyMC45NCAxNC4wMSAzNS4zNCAxNC4wMSAxNC4zOSAzNC45NSAxNC4zOVptLjY3IDU0OC4xOHEtODYuNjQgMC0xNjMuMTktMzIuNjYtNzYuNTYtMzIuNjYtMTMzLjg0LTg5Ljk0dC04OS45NC0xMzMuOHEtMzIuNjYtNzYuNTEtMzIuNjYtMTYzLjQxIDAtODcuMTUgMzIuNzItMTYzLjMxdDkwLjE0LTEzMy42MXE1Ny40Mi01Ny40NCAxMzMuNzktODkuNyA3Ni4zOC0zMi4yNyAxNjMuMTYtMzIuMjcgODcuMTQgMCAxNjMuMzEgMzIuMjYgNzYuMTYgMzIuMjYgMTMzLjYxIDg5LjcxIDU3LjQ1IDU3LjQ1IDg5LjcxIDEzMy44NiAzMi4yNiA3Ni40MiAzMi4yNiAxNjMuMzMgMCA4Ni45MS0zMi4yNyAxNjMuMDgtMzIuMjYgNzYuMTgtODkuNyAxMzMuNi01Ny40NSA1Ny40Mi0xMzMuODMgOTAuMTQtNzYuMzkgMzIuNzItMTYzLjI3IDMyLjcyWm0tLjMzLTEwNS4xOHExMzEuMTMgMCAyMjIuNjgtOTEuNDkgOTEuNTQtOTEuNDkgOTEuNTQtMjIyLjYzIDAtMTMxLjEzLTkxLjQ5LTIyMi42OC05MS40OS05MS41NC0yMjIuNjMtOTEuNTQtMTMxLjEzIDAtMjIyLjY4IDkxLjQ5LTkxLjU0IDkxLjQ5LTkxLjU0IDIyMi42MyAwIDEzMS4xMyA5MS40OSAyMjIuNjggOTEuNDkgOTEuNTQgMjIyLjYzIDkxLjU0Wk00ODAtNDgwWlwiLz48L3N2Zz5cbiAgICAgICAgICAgIDwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiYW5ndWxhci10b2FzdGlmeS10b2FzdC1pY29uXCIgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS53YXJuaW5nXCI+XG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMHB4XCIgZmlsbD1cIiNmZmZcIj48cGF0aCBkPVwiTS0zLjI4LTEwNC4xNSA0ODAtOTExLjQzbDQ4My4yOCA4MDcuMjhILTMuMjhabTQ4My44My0xMzcuNjNxMTkuOTcgMCAzNC4yMy0xNC4wNSAxNC4yNi0xNC4wNSAxNC4yNi0zNC4wMiAwLTE5Ljc0LTE0LjA1LTM0LTE0LjA1LTE0LjI2LTM0LjAyLTE0LjI2LTE5LjczIDAtMzQuMTEgMTQuMDUtMTQuMzggMTQuMDUtMTQuMzggMzMuNzggMCAxOS45OCAxNC4xNyAzNC4yNCAxNC4xNyAxNC4yNiAzMy45IDE0LjI2Wm0tNDYuODgtMTM4LjdoOTQuMTh2LTE5Mi44OWgtOTQuMTh2MTkyLjg5WlwiLz48L3N2Zz5cbiAgICAgICAgICAgIDwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiYW5ndWxhci10b2FzdGlmeS10b2FzdC1pY29uXCIgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5lcnJvclwiPlxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBweFwiIHZpZXdCb3g9XCIwIC05NjAgOTYwIDk2MFwiIHdpZHRoPVwiMjBweFwiIGZpbGw9XCIjZmZmXCI+PHBhdGggZD1cIk00NzkuNTYtMjY2LjI2cTIxLjgzIDAgMzYuODktMTQuNjEgMTUuMDUtMTQuNjIgMTUuMDUtMzYuNDUgMC0yMS44My0xNC42MS0zNy4wMS0xNC42Mi0xNS4xNy0zNi40NS0xNS4xNy0yMS44MyAwLTM2Ljg5IDE0Ljc5LTE1LjA1IDE0Ljc5LTE1LjA1IDM2LjYydDE0LjYxIDM2LjgzcTE0LjYyIDE1IDM2LjQ1IDE1Wm0tNTEuMzktMTY3LjAyaDEwNS4xOHYtMjUwLjU1SDQyOC4xN3YyNTAuNTVabTUyLjExIDM3Mi42M3EtODYuNjQgMC0xNjMuMTktMzIuNjYtNzYuNTYtMzIuNjYtMTMzLjg0LTg5Ljk0dC04OS45NC0xMzMuOHEtMzIuNjYtNzYuNTEtMzIuNjYtMTYzLjQxIDAtODcuMTUgMzIuNzItMTYzLjMxdDkwLjE0LTEzMy42MXE1Ny40Mi01Ny40NCAxMzMuNzktODkuNyA3Ni4zOC0zMi4yNyAxNjMuMTYtMzIuMjcgODcuMTQgMCAxNjMuMzEgMzIuMjYgNzYuMTYgMzIuMjYgMTMzLjYxIDg5LjcxIDU3LjQ1IDU3LjQ1IDg5LjcxIDEzMy44NiAzMi4yNiA3Ni40MiAzMi4yNiAxNjMuMzMgMCA4Ni45MS0zMi4yNyAxNjMuMDgtMzIuMjYgNzYuMTgtODkuNyAxMzMuNi01Ny40NSA1Ny40Mi0xMzMuODMgOTAuMTQtNzYuMzkgMzIuNzItMTYzLjI3IDMyLjcyWm0tLjMzLTEwNS4xOHExMzEuMTMgMCAyMjIuNjgtOTEuNDkgOTEuNTQtOTEuNDkgOTEuNTQtMjIyLjYzIDAtMTMxLjEzLTkxLjQ5LTIyMi42OC05MS40OS05MS41NC0yMjIuNjMtOTEuNTQtMTMxLjEzIDAtMjIyLjY4IDkxLjQ5LTkxLjU0IDkxLjQ5LTkxLjU0IDIyMi42MyAwIDEzMS4xMyA5MS40OSAyMjIuNjggOTEuNDkgOTEuNTQgMjIyLjYzIDkxLjU0Wk00ODAtNDgwWlwiLz48L3N2Zz5cbiAgICAgICAgICAgIDwvaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiYW5ndWxhci10b2FzdGlmeS10b2FzdC1pY29uXCIgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5zdWNjZXNzXCI+XG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCIgd2lkdGg9XCIyMHB4XCIgZmlsbD1cIiNmZmZcIj48cGF0aCBkPVwiTTM4OS0yNDAuNyAxNjYuOTMtNDYxLjc2bDc0LjI3LTc1LjI2TDM4OS0zODguOThsMzMxLjU3LTMzMC41NiA3NC4yNiA3NC4wMkwzODktMjQwLjdaXCIvPjwvc3ZnPlxuICAgICAgICAgICAgPC9pPlxuICAgICAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nSWY9XCJpY29uTGlicmFyeSA9PSAnZm9udC1hd2Vzb21lJ1wiIFtuZ1N3aXRjaF09XCJ0b2FzdC50eXBlXCI+XG4gICAgICAgICAgICA8aSAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLmluZm9cIiBjbGFzcz1cImFuZ3VsYXItdG9hc3RpZnktdG9hc3QtaWNvblwiPlxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE5MiA1MTJcIiBoZWlnaHQ9XCIxOFwiIGZpbGw9XCIjZmZmXCI+PlxuICAgICAgICAgICAgICAgIDwhLS0hRm9udCBBd2Vzb21lIEZyZWUgNi42LjAgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20gTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSBDb3B5cmlnaHQgMjAyNCBGb250aWNvbnMsIEluYy4tLT5cbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQ4IDgwYTQ4IDQ4IDAgMSAxIDk2IDBBNDggNDggMCAxIDEgNDggODB6TTAgMjI0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyMjQgMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzIgMCAwLTE5Mi0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnpcIi8+XG4gICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5kZWZhdWx0XCIgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LWljb25cIj5cbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxOTIgNTEyXCIgaGVpZ2h0PVwiMThcIiBmaWxsPVwiI2FhYVwiPj5cbiAgICAgICAgICAgICAgICA8IS0tIUZvbnQgQXdlc29tZSBGcmVlIDYuNi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgQ29weXJpZ2h0IDIwMjQgRm9udGljb25zLCBJbmMuLS0+XG4gICAgICAgICAgICAgICAgPHBhdGggZD1cIk00OCA4MGE0OCA0OCAwIDEgMSA5NiAwQTQ4IDQ4IDAgMSAxIDQ4IDgwek0wIDIyNGMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjI0IDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgNTEyYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC0xOTItMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6XCIvPlxuICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvaT5cbiAgICAgICAgICAgIDxpICpuZ1N3aXRjaENhc2U9XCJUb2FzdFR5cGUud2FybmluZ1wiIGNsYXNzPVwiYW5ndWxhci10b2FzdGlmeS10b2FzdC1pY29uXCI+XG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiIGhlaWdodD1cIjE4XCIgZmlsbD1cIiNmZmZcIj4+XG4gICAgICAgICAgICAgICAgPCEtLSFGb250IEF3ZXNvbWUgRnJlZSA2LjYuMCBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbSBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIENvcHlyaWdodCAyMDI0IEZvbnRpY29ucywgSW5jLi0tPlxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMjU2IDMyYzE0LjIgMCAyNy4zIDcuNSAzNC41IDE5LjhsMjE2IDM2OGM3LjMgMTIuNCA3LjMgMjcuNyAuMiA0MC4xUzQ4Ni4zIDQ4MCA0NzIgNDgwTDQwIDQ4MGMtMTQuMyAwLTI3LjYtNy43LTM0LjctMjAuMXMtNy0yNy44IC4yLTQwLjFsMjE2LTM2OEMyMjguNyAzOS41IDI0MS44IDMyIDI1NiAzMnptMCAxMjhjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTEyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMTJjMC0xMy4zLTEwLjctMjQtMjQtMjR6bTMyIDIyNGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwelwiLz5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2k+XG4gICAgICAgICAgICA8aSAqbmdTd2l0Y2hDYXNlPVwiVG9hc3RUeXBlLmVycm9yXCIgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LWljb25cIj5cbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxMjggNTEyXCIgaGVpZ2h0PVwiMThcIiBmaWxsPVwiI2ZmZlwiPlxuICAgICAgICAgICAgICAgIDwhLS0hRm9udCBBd2Vzb21lIEZyZWUgNi42LjAgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20gTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UvZnJlZSBDb3B5cmlnaHQgMjAyNCBGb250aWNvbnMsIEluYy4tLT5cbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTk2IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzMyIDQ2LjMgMzIgNjRsMCAyNTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMkw5NiA2NHpNNjQgNDgwYTQwIDQwIDAgMSAwIDAtODAgNDAgNDAgMCAxIDAgMCA4MHpcIi8+XG4gICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9pPlxuICAgICAgICAgICAgPGkgKm5nU3dpdGNoQ2FzZT1cIlRvYXN0VHlwZS5zdWNjZXNzXCIgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LWljb25cIj5cbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA0NDggNTEyXCIgaGVpZ2h0PVwiMThcIiBmaWxsPVwiI2ZmZlwiPj5cbiAgICAgICAgICAgICAgICA8IS0tIUZvbnQgQXdlc29tZSBGcmVlIDYuNi4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlL2ZyZWUgQ29weXJpZ2h0IDIwMjQgRm9udGljb25zLCBJbmMuLS0+XG4gICAgICAgICAgICAgICAgPHBhdGggZD1cIk00MzguNiAxMDUuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtMjU2IDI1NmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTEyOC0xMjhjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMMTYwIDMzOC43IDM5My40IDEwNS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwelwiLz5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2k+XG4gICAgICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXRvYXN0LWNvbnRhaW5lclwiPlxuICAgIDxkaXY+e3sgdG9hc3QubWVzc2FnZSB9fTwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImNsb3NlLWNvbnRhaW5lclwiPlxuICAgIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZURpc21pc3NCdXR0b25BY3Rpb24oKVwiXG4gICAgICAgICAgICBjbGFzcz1cImFuZ3VsYXItdG9hc3RpZnktY2xvc2UtYnV0dG9uIGFuZ3VsYXItdG9hc3RpZnktY2xvc2UtYnV0dG9uLS17e1RvYXN0VHlwZVt0b2FzdC50eXBlXX19XCIgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiY2xvc2VcIj7inJZcbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiAjcHJvZ3Jlc3NCYXIgKm5nSWY9XCIhaGlkZVByb2dyZXNzQmFyXCJcbiAgICAgY2xhc3M9XCJhbmd1bGFyLXRvYXN0aWZ5LXByb2dyZXNzLWJhciBhbmd1bGFyLXRvYXN0aWZ5LXByb2dyZXNzLWJhciYjNDU7JiM0NTt7e1RvYXN0VHlwZVt0b2FzdC50eXBlXX19XCJcbiAgICAgc3R5bGU9XCJvcGFjaXR5OiAxO1wiPjwvZGl2PlxuPGRpdiAjcHJvZ3Jlc3NCYXJDb3ZlciAqbmdJZj1cIiFoaWRlUHJvZ3Jlc3NCYXJcIlxuICAgICBjbGFzcz1cImFuZ3VsYXItdG9hc3RpZnktcHJvZ3Jlc3MtYmFyLWNvdmVyIGFuZ3VsYXItdG9hc3RpZnktdG9hc3QtLXt7VG9hc3RUeXBlW3RvYXN0LnR5cGVdfX1cIlxuICAgICBbc3R5bGUuYW5pbWF0aW9uLWR1cmF0aW9uXT1cInRoaXMuYXV0b0Nsb3NlQWZ0ZXJTcGVjaWZpY0NoYW5nZSgpICsgJ21zJ1wiXG4gICAgIFtzdHlsZS5hbmltYXRpb24tcGxheS1zdGF0ZV09XCJydW5uaW5nPyAncnVubmluZycgOiAncGF1c2VkJ1wiPjwvZGl2PlxuIl19 |
@@ -87,3 +87,3 @@ import * as i0 from '@angular/core'; | ||
| // Do not start timer when toast is prompted while window is out of focus | ||
| if (this.handleVisibilityChange && document.visibilityState === "visible") { | ||
| if (this.handleVisibilityChange && document.visibilityState === 'visible') { | ||
| this.startCloseTimer(); | ||
@@ -104,5 +104,6 @@ } | ||
| const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100); | ||
| this.progressBarCover.nativeElement.style.width = percentage + "%"; | ||
| if (percentage <= 0) | ||
| this.progressBarCover.nativeElement.style.width = percentage + '%'; | ||
| if (percentage <= 0) { | ||
| return; | ||
| } | ||
| } | ||
@@ -208,3 +209,3 @@ this._progressBarAnimation = requestAnimationFrame(frame); | ||
| } | ||
| if (document.visibilityState !== "visible") { | ||
| if (document.visibilityState !== 'visible') { | ||
| this.pauseCloseTimer(); | ||
@@ -219,3 +220,3 @@ this._cd.detectChanges(); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0, template: "<div role=\"alert\" class=\"toast-body\">\n <div class=\"icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.info\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.default\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.warning\">warning_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.error\">error_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.success\">done</i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"fa fa-exclamation\"></i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"fa fa-check\"></i>\n </span>\n </div>\n <div class=\"toast-container\">\n <div>{{toast.message}}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\" class=\"close-button close-button--{{ToastType[toast.type]}}\" type=\"button\" aria-label=\"close\">\u2716</button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\" class=\"progress-bar progress-bar--{{ToastType[toast.type]}}\" style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\" class=\"progress-bar-cover toast--{{ToastType[toast.type]}}\" [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\" [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}.close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.close-button--default{color:#000;opacity:.3}.close-button:focus,.close-button:hover{opacity:1}.progress-bar-cover{right:0;z-index:100;direction:rtl}.progress-bar,.progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.progress-bar--controlled{transition:transform .2s}.progress-bar--rtl{right:0;left:auto;transform-origin:right}.progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.toast-body{min-width:0;min-height:0}.icon-container,.toast-body{vertical-align:middle;display:flex}.icon-container{flex-direction:column;justify-content:center;width:25px}.icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.icon-container span i{vertical-align:middle}.fa,.material-icons{font-size:18px}.toast-container{width:calc(100% - 25px);overflow-y:scroll;display:flex;flex-direction:column;min-height:0}.toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| /** @nocollapse */ ToastifyToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: { autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", toast: "toast", iconLibrary: "iconLibrary" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "handleHostClick()", "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "document:visibilitychange": "handleVisibilityChange()" } }, viewQueries: [{ propertyName: "progressBar", first: true, predicate: ["progressBar"], descendants: true }, { propertyName: "progressBarCover", first: true, predicate: ["progressBarCover"], descendants: true }], ngImport: i0, template: "<div role=\"alert\" class=\"angular-toastify-toast-body\">\n <div class=\"angular-toastify-icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.info\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#fff\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.default\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#aaa\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.warning\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M-3.28-104.15 480-911.43l483.28 807.28H-3.28Zm483.83-137.63q19.97 0 34.23-14.05 14.26-14.05 14.26-34.02 0-19.74-14.05-34-14.05-14.26-34.02-14.26-19.73 0-34.11 14.05-14.38 14.05-14.38 33.78 0 19.98 14.17 34.24 14.17 14.26 33.9 14.26Zm-46.88-138.7h94.18v-192.89h-94.18v192.89Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.error\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M479.56-266.26q21.83 0 36.89-14.61 15.05-14.62 15.05-36.45 0-21.83-14.61-37.01-14.62-15.17-36.45-15.17-21.83 0-36.89 14.79-15.05 14.79-15.05 36.62t14.61 36.83q14.62 15 36.45 15Zm-51.39-167.02h105.18v-250.55H428.17v250.55Zm52.11 372.63q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.success\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M389-240.7 166.93-461.76l74.27-75.26L389-388.98l331.57-330.56 74.26 74.02L389-240.7Z\"/></svg>\n </i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#aaa\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128 512\" height=\"18\" fill=\"#fff\">\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M96 64c0-17.7-14.3-32-32-32S32 46.3 32 64l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32L96 64zM64 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>\n </svg>\n </i>\n </span>\n </div>\n <div class=\"angular-toastify-toast-container\">\n <div>{{ toast.message }}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\"\n class=\"angular-toastify-close-button angular-toastify-close-button--{{ToastType[toast.type]}}\" type=\"button\"\n aria-label=\"close\">\u2716\n </button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar angular-toastify-progress-bar--{{ToastType[toast.type]}}\"\n style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar-cover angular-toastify-toast--{{ToastType[toast.type]}}\"\n [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\"\n [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n", styles: [".angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}.angular-toastify-close-button{color:#fff;font-weight:700;font-size:14px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;align-self:flex-start}.angular-toastify-close-button--default{color:#000;opacity:.3}.angular-toastify-close-button:focus,.angular-toastify-close-button:hover{opacity:1}.angular-toastify-progress-bar-cover{right:0;z-index:100;direction:rtl}.angular-toastify-progress-bar,.angular-toastify-progress-bar-cover{position:absolute;bottom:0;width:100%;height:5px;transform-origin:left}.angular-toastify-progress-bar{left:0;z-index:99;opacity:.7;background-color:hsla(0,0%,100%,.7)}.angular-toastify-progress-bar--controlled{transition:transform .2s}.angular-toastify-progress-bar--rtl{right:0;left:auto;transform-origin:right}.angular-toastify-progress-bar--default{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55)}.angular-toastify-toast-body{min-width:0;min-height:0;vertical-align:middle;display:flex}.angular-toastify-icon-container{display:flex;flex-direction:column;justify-content:center;width:25px;vertical-align:middle}.angular-toastify-icon-container span{margin-right:.5rem;display:inline-block;text-align:center;width:20px}.angular-toastify-icon-container span i{vertical-align:middle}.angular-toastify-toast-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:18px}.angular-toastify-toast-container{width:calc(100% - 25px);overflow-y:auto;display:flex;flex-direction:column;min-height:0}.angular-toastify-toast-container>div{display:flex;flex:1;flex-direction:column;justify-content:center}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] }); | ||
| i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastComponent, decorators: [{ | ||
@@ -225,5 +226,5 @@ type: Component, | ||
| // tslint:disable-next-line:component-selector | ||
| selector: "lib-toastify-toast", | ||
| templateUrl: "./toastify-toast.component.html", | ||
| styleUrls: ["./toastify-toast.component.scss"], | ||
| selector: 'lib-toastify-toast', | ||
| templateUrl: './toastify-toast.component.html', | ||
| styleUrls: ['./toastify-toast.component.scss'], | ||
| // changeDetection: ChangeDetectionStrategy.OnPush | ||
@@ -233,6 +234,6 @@ }] | ||
| type: ViewChild, | ||
| args: ["progressBar"] | ||
| args: ['progressBar'] | ||
| }], progressBarCover: [{ | ||
| type: ViewChild, | ||
| args: ["progressBarCover"] | ||
| args: ['progressBarCover'] | ||
| }], autoClose: [{ | ||
@@ -264,12 +265,12 @@ type: Input | ||
| type: HostListener, | ||
| args: ["click"] | ||
| args: ['click'] | ||
| }], handleMouseEnter: [{ | ||
| type: HostListener, | ||
| args: ["mouseenter"] | ||
| args: ['mouseenter'] | ||
| }], handleMouseLeave: [{ | ||
| type: HostListener, | ||
| args: ["mouseleave"] | ||
| args: ['mouseleave'] | ||
| }], handleVisibilityChange: [{ | ||
| type: HostListener, | ||
| args: ["document:visibilitychange"] | ||
| args: ['document:visibilitychange'] | ||
| }] } }); | ||
@@ -312,9 +313,9 @@ | ||
| getClass(toast) { | ||
| let base = `toast toast--${ToastType[toast.type]} `; | ||
| let base = `angular-toastify-toast angular-toastify-toast--${ToastType[toast.type]} `; | ||
| const state = this.toastTransitionDict[toast.id]; | ||
| if (state === TransitionState.entering) { | ||
| base += `${this.transition}-enter ${this.transition}-enter--${this.position}`; | ||
| base += `angular-toastify-${this.transition}-enter angular-toastify-${this.transition}-enter--${this.position}`; | ||
| } | ||
| else if (state === TransitionState.exiting) { | ||
| base += `${this.transition}-exit ${this.transition}-exit--${this.position}`; | ||
| base += `angular-toastify-${this.transition}-exit angular-toastify-${this.transition}-exit--${this.position}`; | ||
| } | ||
@@ -358,3 +359,3 @@ return base; | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastContainerComponent, deps: [{ token: ToastService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"toast-container toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.toast-container--top-left{top:1em;left:1em}.toast-container--top-center{top:1em;left:50%;margin-left:-160px}.toast-container--top-right{top:1em;right:1em}.toast-container--bottom-left{bottom:1em;left:1em}.toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.toast-container{width:100vw;padding:0;left:0;margin:0}.toast-container--top-center,.toast-container--top-left,.toast-container--top-right{top:0}.toast-container--bottom-center,.toast-container--bottom-left,.toast-container--bottom-right{bottom:0}.toast-container--rtl{right:0;left:auto}}.toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.toast--rtl{direction:rtl}.toast--default{background:#fff;color:#aaa}.toast--info{background:#3498db}.toast--success{background:#07bc0c}.toast--warning{background:#f1c40f}.toast--error{background:#e74c3c}.toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.toast{margin-bottom:0}}@keyframes bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.bounce-enter--bottom-left,.bounce-enter--top-left{animation-name:bounceInLeft}.bounce-enter--bottom-right,.bounce-enter--top-right{animation-name:bounceInRight}.bounce-enter--top-center{animation-name:bounceInDown}.bounce-enter--bottom-center{animation-name:bounceInUp}.bounce-exit--bottom-left,.bounce-exit--top-left{animation-name:bounceOutLeft}.bounce-exit--bottom-right,.bounce-exit--top-right{animation-name:bounceOutRight}.bounce-exit--top-center{animation-name:bounceOutUp}.bounce-exit--bottom-center{animation-name:bounceOutDown}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoom-enter{animation-name:zoomIn}.zoom-exit{animation-name:zoomOut}@keyframes flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.flip-enter{animation-name:flipIn}.flip-exit{animation-name:flipOut}@keyframes slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.slide-enter--bottom-left,.slide-enter--top-left{animation-name:slideInLeft}.slide-enter--bottom-right,.slide-enter--top-right{animation-name:slideInRight}.slide-enter--top-center{animation-name:slideInDown}.slide-enter--bottom-center{animation-name:slideInUp}.slide-exit--bottom-left,.slide-exit--top-left{animation-name:slideOutLeft}.slide-exit--bottom-right,.slide-exit--top-right{animation-name:slideOutRight}.slide-exit--top-center{animation-name:slideOutUp}.slide-exit--bottom-center{animation-name:slideOutDown}"], components: [{ type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); | ||
| /** @nocollapse */ ToastifyToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: ToastifyToastContainerComponent, selector: "lib-toastify-toast-container", inputs: { position: "position", transition: "transition", autoClose: "autoClose", autoCloseError: "autoCloseError", autoCloseSuccess: "autoCloseSuccess", autoCloseInfo: "autoCloseInfo", autoCloseWarn: "autoCloseWarn", hideProgressBar: "hideProgressBar", pauseOnHover: "pauseOnHover", pauseOnVisibilityChange: "pauseOnVisibilityChange", closeOnClick: "closeOnClick", newestOnTop: "newestOnTop", preventDuplicates: "preventDuplicates", iconLibrary: "iconLibrary" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"angular-toastify-toast-container angular-toastify-toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n", styles: [".angular-toastify-toast-container{word-break:break-word;z-index:9999;-webkit-transform:translateZ(9999px);position:fixed;padding:4px;width:320px;box-sizing:border-box;color:#fff}.angular-toastify-toast-container--top-left{top:1em;left:1em}.angular-toastify-toast-container--top-center{top:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--top-right{top:1em;right:1em}.angular-toastify-toast-container--bottom-left{bottom:1em;left:1em}.angular-toastify-toast-container--bottom-center{bottom:1em;left:50%;margin-left:-160px}.angular-toastify-toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.angular-toastify-toast-container{width:100vw;padding:0;left:0;margin:0}.angular-toastify-toast-container--top-center,.angular-toastify-toast-container--top-left,.angular-toastify-toast-container--top-right{top:0}.angular-toastify-toast-container--bottom-center,.angular-toastify-toast-container--bottom-left,.angular-toastify-toast-container--bottom-right{bottom:0}.angular-toastify-toast-container--rtl{right:0;left:auto}}.angular-toastify-toast{position:relative;min-height:64px;box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:1px;box-shadow:0 1px 10px 0 rgba(0,0,0,.1),0 2px 15px 0 rgba(0,0,0,.05);display:flex;justify-content:space-between;max-height:800px;overflow:hidden;font-family:sans-serif;cursor:pointer;direction:ltr}.angular-toastify-toast--rtl{direction:rtl}.angular-toastify-toast--default{background:#fff;color:#aaa}.angular-toastify-toast--info{background:#3498db}.angular-toastify-toast--success{background:#07bc0c}.angular-toastify-toast--warning{background:#f1c40f}.angular-toastify-toast--error{background:#e74c3c}.angular-toastify-toast-body{margin:auto 0;flex:1}@media only screen and (max-width:480px){.angular-toastify-toast{margin-bottom:0}}@keyframes angular-toastify-bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes angular-toastify-bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes angular-toastify-bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes angular-toastify-bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes angular-toastify-bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes angular-toastify-bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes angular-toastify-bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.angular-toastify-bounce-enter--bottom-left,.angular-toastify-bounce-enter--top-left{animation-name:angular-toastify-bounceInLeft}.angular-toastify-bounce-enter--bottom-right,.angular-toastify-bounce-enter--top-right{animation-name:angular-toastify-bounceInRight}.angular-toastify-bounce-enter--top-center{animation-name:angular-toastify-bounceInDown}.angular-toastify-bounce-enter--bottom-center{animation-name:angular-toastify-bounceInUp}.angular-toastify-bounce-exit--bottom-left,.angular-toastify-bounce-exit--top-left{animation-name:angular-toastify-bounceOutLeft}.angular-toastify-bounce-exit--bottom-right,.angular-toastify-bounce-exit--top-right{animation-name:angular-toastify-bounceOutRight}.angular-toastify-bounce-exit--top-center{animation-name:angular-toastify-bounceOutUp}.angular-toastify-bounce-exit--bottom-center{animation-name:angular-toastify-bounceOutDown}@keyframes angular-toastify-zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes angular-toastify-zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.angular-toastify-zoom-enter{animation-name:angular-toastify-zoomIn}.angular-toastify-zoom-exit{animation-name:angular-toastify-zoomOut}@keyframes angular-toastify-flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes angular-toastify-flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.angular-toastify-flip-enter{animation-name:angular-toastify-flipIn}.angular-toastify-flip-exit{animation-name:angular-toastify-flipOut}@keyframes angular-toastify-slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes angular-toastify-slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes angular-toastify-slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes angular-toastify-slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes angular-toastify-slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.angular-toastify-slide-enter--bottom-left,.angular-toastify-slide-enter--top-left{animation-name:angular-toastify-slideInLeft}.angular-toastify-slide-enter--bottom-right,.angular-toastify-slide-enter--top-right{animation-name:angular-toastify-slideInRight}.angular-toastify-slide-enter--top-center{animation-name:angular-toastify-slideInDown}.angular-toastify-slide-enter--bottom-center{animation-name:angular-toastify-slideInUp}.angular-toastify-slide-exit--bottom-left,.angular-toastify-slide-exit--top-left{animation-name:angular-toastify-slideOutLeft}.angular-toastify-slide-exit--bottom-right,.angular-toastify-slide-exit--top-right{animation-name:angular-toastify-slideOutRight}.angular-toastify-slide-exit--top-center{animation-name:angular-toastify-slideOutUp}.angular-toastify-slide-exit--bottom-center{animation-name:angular-toastify-slideOutDown}"], components: [{ type: ToastifyToastComponent, selector: "lib-toastify-toast", inputs: ["autoClose", "autoCloseError", "autoCloseSuccess", "autoCloseInfo", "autoCloseWarn", "hideProgressBar", "pauseOnHover", "pauseOnVisibilityChange", "closeOnClick", "toast", "iconLibrary"], outputs: ["dismissEvent"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); | ||
| i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: ToastifyToastContainerComponent, decorators: [{ | ||
@@ -361,0 +362,0 @@ type: Component, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"angular-toastify.js","sources":["../../../projects/angular-toastify/src/lib/toast.ts","../../../projects/angular-toastify/src/lib/toast-type.ts","../../../projects/angular-toastify/src/lib/toast.service.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.html","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.html","../../../projects/angular-toastify/src/lib/angular-toastify.module.ts","../../../projects/angular-toastify/src/public-api.ts","../../../projects/angular-toastify/src/angular-toastify.ts"],"sourcesContent":["import { ToastType } from './toast-type';\nimport { Observable, Subject } from 'rxjs';\n\nlet toastIdentitySequence = 0;\n\nexport class Toast {\n id: number;\n message: string;\n type: ToastType;\n readonly time: number;\n\n $resetToast: Subject<any>;\n\n constructor(message: string, type: ToastType) {\n this.message = message;\n this.type = type;\n this.time = new Date().getTime();\n this.id = toastIdentitySequence++;\n\n this.$resetToast = new Subject();\n }\n}\n","export enum ToastType {\n info,\n success,\n warning,\n error,\n default\n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { Toast } from './toast';\nimport { ToastType } from './toast-type';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ToastService {\n\n toastAddedEvent = new EventEmitter();\n constructor() { }\n\n dismissAllEvent = new EventEmitter();\n\n dismissAll() {\n this.dismissAllEvent.emit();\n }\n\n info(message: string) {\n const toast = new Toast(message, ToastType.info);\n this.toastAddedEvent.emit(toast);\n }\n\n success(message: string) {\n const toast = new Toast(message, ToastType.success);\n this.toastAddedEvent.emit(toast);\n }\n\n warn(message: string) {\n const toast = new Toast(message, ToastType.warning);\n this.toastAddedEvent.emit(toast);\n }\n\n error(message: string) {\n const toast = new Toast(message, ToastType.error);\n this.toastAddedEvent.emit(toast);\n }\n\n default(message: string) {\n const toast = new Toast(message, ToastType.default);\n this.toastAddedEvent.emit(toast);\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from \"@angular/core\";\nimport { ToastType } from \"../toast-type\";\nimport { Toast } from \"../toast\";\nimport { interval } from \"rxjs\";\nimport { throttle, throttleTime } from \"rxjs/operators\";\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: \"lib-toastify-toast\",\n templateUrl: \"./toastify-toast.component.html\",\n styleUrls: [\"./toastify-toast.component.scss\"],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToastifyToastComponent implements OnInit, OnDestroy {\n @ViewChild(\"progressBar\") progressBar: ElementRef<HTMLElement>;\n @ViewChild(\"progressBarCover\") progressBarCover: ElementRef<HTMLElement>;\n\n @Input() autoClose = 5000; \n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() toast: Toast;\n @Input() iconLibrary: \"material\" | \"font-awesome\" | \"none\";\n\n @Output() dismissEvent = new EventEmitter();\n\n private expectedAutoDismissTime: number;\n private autoDismissTimeout: any;\n private autoCloseRemaining: number;\n\n private pauseTime: number;\n private startTime: number;\n\n private _progressBarAnimation: number;\n private _$updateTimer;\n\n ToastType = ToastType;\n running = false;\n\n constructor(private _cd: ChangeDetectorRef, private _zone: NgZone) {}\n\n ngOnInit(): void {\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startTime = this.toast.time;\n this.toast.$resetToast.subscribe(() => this.resetToastTimer());\n // Do not start timer when toast is prompted while window is out of focus\n if (this.handleVisibilityChange && document.visibilityState === \"visible\") {\n this.startCloseTimer();\n }\n\n // Start progress bar animation\n this.triggerProgressBarAnimation();\n }\n\n private triggerProgressBarAnimation(): void {\n // Cancel previous animlation to avoid leaks\n if (this._progressBarAnimation !== undefined) {\n cancelAnimationFrame(this._progressBarAnimation);\n }\n\n // Start animation\n const frame = () => {\n if (this.running) {\n const remainingTime = Math.max(0, this.expectedAutoDismissTime - new Date().getTime());\n const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100);\n this.progressBarCover.nativeElement.style.width = percentage + \"%\";\n if (percentage <= 0) return;\n }\n this._progressBarAnimation = requestAnimationFrame(frame);\n };\n this._progressBarAnimation = requestAnimationFrame(frame);\n }\n\n ngOnDestroy(): void {\n // Cancel animation\n if (this._progressBarAnimation) {\n cancelAnimationFrame(this._progressBarAnimation);\n this._progressBarAnimation = undefined;\n }\n // Clear auto close timeout\n this.clearTimerTimeout();\n // Complete all observables\n this.toast.$resetToast?.complete();\n this.toast.$resetToast = null;\n this._$updateTimer?.complete();\n this._$updateTimer = null;\n }\n\n startCloseTimer(): void {\n if (this.running || !this.autoCloseAfterSpecificChange()) {\n return;\n }\n\n this.running = true;\n this.expectedAutoDismissTime =\n new Date().getTime() + this.autoCloseRemaining;\n this.autoDismissTimeout = this._zone.runOutsideAngular(() =>\n setTimeout(() => {\n this._zone.run(() => {\n this.dismissEvent.emit();\n this._cd.markForCheck();\n });\n }, this.autoCloseRemaining)\n );\n }\n\n autoCloseAfterSpecificChange(): number {\n const specificAmount = (() => {\n switch (this.toast.type) {\n case ToastType.success:\n return this.autoCloseSuccess;\n case ToastType.error:\n return this.autoCloseError;\n case ToastType.warning:\n return this.autoCloseWarn;\n case ToastType.info:\n return this.autoCloseInfo;\n default:\n return undefined;\n }\n })();\n\n return specificAmount === undefined ? this.autoClose : specificAmount;\n }\n\n pauseCloseTimer(): void {\n this.running = false;\n this.clearTimerTimeout();\n\n // Calculate the elapsed time, subtract remaining time\n this.pauseTime = new Date().getTime();\n const elapsed = this.pauseTime - this.startTime;\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange() - elapsed;\n }\n\n resetToastTimer() {\n this.clearTimerTimeout();\n this.running = false;\n this.startTime = new Date().getTime();\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startCloseTimer();\n }\n\n clearTimerTimeout(): void {\n if (this.autoDismissTimeout !== undefined) {\n this.expectedAutoDismissTime = undefined;\n clearTimeout(this.autoDismissTimeout);\n }\n }\n\n handleDismissButtonAction(): void {\n if (this.closeOnClick) {\n return; // Let the other event handle the dismissal\n }\n\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n\n @HostListener(\"click\")\n handleHostClick(): void {\n if (this.closeOnClick) {\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n }\n\n @HostListener(\"mouseenter\")\n handleMouseEnter(): void {\n if (this.pauseOnHover) {\n this.pauseCloseTimer();\n }\n }\n\n @HostListener(\"mouseleave\")\n handleMouseLeave(): void {\n if (this.pauseOnHover) {\n this.startCloseTimer();\n this.startTime = new Date().getTime() + (this.startTime - this.pauseTime);\n }\n }\n\n @HostListener(\"document:visibilitychange\")\n handleVisibilityChange(): void {\n if (!this.pauseOnVisibilityChange) {\n return;\n }\n\n if (document.visibilityState !== \"visible\") {\n this.pauseCloseTimer();\n this._cd.detectChanges();\n } else {\n this.startCloseTimer();\n }\n }\n}\n","<div role=\"alert\" class=\"toast-body\">\n <div class=\"icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.info\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.default\">info_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.warning\">warning_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.error\">error_outline</i>\n <i class=\"material-icons\" *ngSwitchCase=\"ToastType.success\">done</i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"fa fa-info\"></i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"fa fa-exclamation\"></i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"fa fa-check\"></i>\n </span>\n </div>\n <div class=\"toast-container\">\n <div>{{toast.message}}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\" class=\"close-button close-button--{{ToastType[toast.type]}}\" type=\"button\" aria-label=\"close\">✖</button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\" class=\"progress-bar progress-bar--{{ToastType[toast.type]}}\" style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\" class=\"progress-bar-cover toast--{{ToastType[toast.type]}}\" [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\" [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n","import { Component, OnInit, Input, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { ToastService } from '../toast.service';\nimport { Toast } from '../toast';\nimport { ToastType } from '../toast-type';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast-container',\n templateUrl: './toastify-toast-container.component.html',\n styleUrls: ['./toastify-toast-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToastifyToastContainerComponent implements OnInit, OnChanges {\n private readonly transitionDurations = 400;\n\n @Input() position: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' = 'top-right';\n @Input() transition: 'bounce' | 'slide' | 'zoom' | 'flip' = 'bounce';\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() newestOnTop = false;\n @Input() preventDuplicates = false;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none' = 'none';\n\n ToastType = ToastType;\n toasts = new Array<Toast>();\n toastTransitionDict = {};\n\n constructor(private _toastService: ToastService, private _cd: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this._cd.markForCheck();\n }\n\n dismiss(toast: Toast): void {\n this.toastTransitionDict[toast.id] = TransitionState.exiting;\n setTimeout(() => {\n const index = this.toasts.indexOf(toast);\n this.toasts.splice(index, 1);\n this._cd.markForCheck();\n }, this.transitionDurations);\n }\n\n getClass(toast: Toast): string {\n let base = `toast toast--${ToastType[toast.type]} `;\n const state = this.toastTransitionDict[toast.id];\n if (state === TransitionState.entering) {\n base += `${this.transition}-enter ${this.transition}-enter--${this.position}`;\n } else if (state === TransitionState.exiting) {\n base += `${this.transition}-exit ${this.transition}-exit--${this.position}`;\n }\n\n return base;\n }\n\n ngOnInit(): void {\n this._toastService.dismissAllEvent.subscribe(() => {\n this.toasts = new Array<Toast>();\n this._cd.markForCheck();\n });\n\n this._toastService.toastAddedEvent.subscribe((toast: Toast) => this.handleToastAddedEvent(toast));\n }\n\n handleToastAddedEvent(toast: Toast): void {\n // If \"preventDuplicates\" is enabled, toast is not added if one toast with same message exists\n // The only thing to do is to update the toast time to keep it visible\n if(this.preventDuplicates === true) {\n const sameToast: Toast = this.toasts.find((existingToast) => existingToast.message === toast.message);\n if (sameToast) {\n sameToast.$resetToast.next();\n this._cd.markForCheck();\n return;\n }\n }\n\n // Add new toast transition\n this.toastTransitionDict[toast.id] = TransitionState.entering;\n setTimeout(() => {\n this.toastTransitionDict[toast.id] = TransitionState.noTransition;\n this._cd.markForCheck();\n }, this.transitionDurations);\n\n // Add new toast\n if (this.newestOnTop) {\n this.toasts.unshift(toast);\n } else {\n this.toasts.push(toast);\n }\n this._cd.markForCheck();\n }\n}\n\nenum TransitionState {\n entering,\n noTransition,\n exiting\n}\n","<div class=\"toast-container toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ToastifyToastComponent } from './toastify-toast/toastify-toast.component';\nimport { ToastifyToastContainerComponent } from './toastify-toast-container/toastify-toast-container.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ToastifyToastComponent, ToastifyToastContainerComponent],\n imports: [ CommonModule ],\n exports: [ToastifyToastContainerComponent]\n})\nexport class AngularToastifyModule { }\n","/*\n * Public API Surface of angular-toastify\n */\n\nexport * from './lib/toast.service';\nexport * from './lib/toastify-toast-container/toastify-toast-container.component';\nexport * from './lib/angular-toastify.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAGA,IAAI,qBAAqB,GAAG,CAAC,CAAC;MAEjB,KAAK;IAQd,YAAY,OAAe,EAAE,IAAe;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,EAAE,GAAG,qBAAqB,EAAE,CAAC;QAElC,IAAI,CAAC,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;KACpC;;;ACpBL,IAAY,SAMX;AAND,WAAY,SAAS;IACjB,yCAAI,CAAA;IACJ,+CAAO,CAAA;IACP,+CAAO,CAAA;IACP,2CAAK,CAAA;IACL,+CAAO,CAAA;AACX,CAAC,EANW,SAAS,KAAT,SAAS;;MCOR,YAAY;IAGvB;QADA,oBAAe,GAAG,IAAI,YAAY,EAAE,CAAC;QAGrC,oBAAe,GAAG,IAAI,YAAY,EAAE,CAAC;KAFpB;IAIjB,UAAU;QACR,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;KAC7B;IAED,IAAI,CAAC,OAAe;QAClB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,OAAO,CAAC,OAAe;QACrB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,IAAI,CAAC,OAAe;QAClB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,KAAK,CAAC,OAAe;QACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,OAAO,CAAC,OAAe;QACrB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAClC;;4HAlCU,YAAY;gIAAZ,YAAY,cAFX,MAAM;2FAEP,YAAY;kBAHxB,UAAU;mBAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;MCoBY,sBAAsB;IA+BjC,YAAoB,GAAsB,EAAU,KAAa;QAA7C,QAAG,GAAH,GAAG,CAAmB;QAAU,UAAK,GAAL,KAAK,CAAQ;QA3BxD,cAAS,GAAG,IAAI,CAAC;QACjB,mBAAc,GAAG,SAAS,CAAC;QAC3B,qBAAgB,GAAG,SAAS,CAAC;QAC7B,kBAAa,GAAG,SAAS,CAAC;QAC1B,kBAAa,GAAG,SAAS,CAAC;QAC1B,oBAAe,GAAG,KAAK,CAAC;QACxB,iBAAY,GAAG,IAAI,CAAC;QACpB,4BAAuB,GAAG,IAAI,CAAC;QAC/B,iBAAY,GAAG,IAAI,CAAC;QAInB,iBAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QAY5C,cAAS,GAAG,SAAS,CAAC;QACtB,YAAO,GAAG,KAAK,CAAC;KAEqD;IAErE,QAAQ;QACN,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;;QAE/D,IAAI,IAAI,CAAC,sBAAsB,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;YACzE,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;;QAGD,IAAI,CAAC,2BAA2B,EAAE,CAAC;KACpC;IAEO,2BAA2B;;QAEjC,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE;YAC5C,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAClD;;QAGD,MAAM,KAAK,GAAG;YACZ,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,uBAAuB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvF,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,4BAA4B,EAAE,IAAI,GAAG,CAAC,CAAC;gBACvF,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,GAAG,GAAG,CAAC;gBACnE,IAAI,UAAU,IAAI,CAAC;oBAAE,OAAO;aAC7B;YACD,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;SAC3D,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KAC3D;IAED,WAAW;;;QAET,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACjD,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;SACxC;;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;;QAEzB,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,0CAAE,QAAQ,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,MAAA,IAAI,CAAC,aAAa,0CAAE,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;KAC3B;IAED,eAAe;QACb,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE;YACxD,OAAO;SACR;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,uBAAuB;YAC1B,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MACrD,UAAU,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;gBACb,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;aACzB,CAAC,CAAC;SACJ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAC5B,CAAC;KACH;IAED,4BAA4B;QAC1B,MAAM,cAAc,GAAG,CAAC;YACtB,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,KAAK,SAAS,CAAC,OAAO;oBACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC;gBAC/B,KAAK,SAAS,CAAC,KAAK;oBAClB,OAAO,IAAI,CAAC,cAAc,CAAC;gBAC7B,KAAK,SAAS,CAAC,OAAO;oBACpB,OAAO,IAAI,CAAC,aAAa,CAAC;gBAC5B,KAAK,SAAS,CAAC,IAAI;oBACjB,OAAO,IAAI,CAAC,aAAa,CAAC;gBAC5B;oBACE,OAAO,SAAS,CAAC;aACpB;SACF,GAAG,CAAC;QAEL,OAAO,cAAc,KAAK,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;KACvE;IAED,eAAe;QACb,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;;QAGzB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,4BAA4B,EAAE,GAAG,OAAO,CAAC;KACzE;IAED,eAAe;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC9D,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE;YACzC,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC;YACzC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACvC;KACF;IAED,yBAAyB;QACvB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;IAGD,eAAe;QACb,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B;KACF;IAGD,gBAAgB;QACd,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;KACF;IAGD,gBAAgB;QACd,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;SAC3E;KACF;IAGD,sBAAsB;QACpB,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACjC,OAAO;SACR;QAED,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;YAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;KACF;;sIA1LU,sBAAsB;0HAAtB,sBAAsB,41BC1BnC,s1DA2BA;2FDDa,sBAAsB;kBAPlC,SAAS;mBAAC;;oBAET,QAAQ,EAAE,oBAAoB;oBAC9B,WAAW,EAAE,iCAAiC;oBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;;iBAE/C;6HAE2B,WAAW;sBAApC,SAAS;uBAAC,aAAa;gBACO,gBAAgB;sBAA9C,SAAS;uBAAC,kBAAkB;gBAEpB,SAAS;sBAAjB,KAAK;gBACG,cAAc;sBAAtB,KAAK;gBACG,gBAAgB;sBAAxB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,uBAAuB;sBAA/B,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBAEI,YAAY;sBAArB,MAAM;gBAwIP,eAAe;sBADd,YAAY;uBAAC,OAAO;gBASrB,gBAAgB;sBADf,YAAY;uBAAC,YAAY;gBAQ1B,gBAAgB;sBADf,YAAY;uBAAC,YAAY;gBAS1B,sBAAsB;sBADrB,YAAY;uBAAC,2BAA2B;;;ME5L9B,+BAA+B;IAsB1C,YAAoB,aAA2B,EAAU,GAAsB;QAA3D,kBAAa,GAAb,aAAa,CAAc;QAAU,QAAG,GAAH,GAAG,CAAmB;QArB9D,wBAAmB,GAAG,GAAG,CAAC;QAElC,aAAQ,GAA8D,WAAW,CAAC;QAClF,eAAU,GAAyC,QAAQ,CAAC;QAC5D,cAAS,GAAG,IAAI,CAAC;QACjB,mBAAc,GAAG,SAAS,CAAC;QAC3B,qBAAgB,GAAG,SAAS,CAAC;QAC7B,kBAAa,GAAG,SAAS,CAAC;QAC1B,kBAAa,GAAG,SAAS,CAAC;QAC1B,oBAAe,GAAG,KAAK,CAAC;QACxB,iBAAY,GAAG,IAAI,CAAC;QACpB,4BAAuB,GAAG,IAAI,CAAC;QAC/B,iBAAY,GAAG,IAAI,CAAC;QACpB,gBAAW,GAAG,KAAK,CAAC;QACpB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,gBAAW,GAAyC,MAAM,CAAC;QAEpE,cAAS,GAAG,SAAS,CAAC;QACtB,WAAM,GAAG,IAAI,KAAK,EAAS,CAAC;QAC5B,wBAAmB,GAAG,EAAE,CAAC;KAE2D;IAEpF,WAAW;QACT,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;IAED,OAAO,CAAC,KAAY;QAClB,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC;QAC7D,UAAU,CAAC;YACT,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;SACzB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;KAC9B;IAED,QAAQ,CAAC,KAAY;QACnB,IAAI,IAAI,GAAG,gBAAgB,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,eAAe,CAAC,QAAQ,EAAE;YACtC,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,UAAU,IAAI,CAAC,UAAU,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC/E;aAAM,IAAI,KAAK,KAAK,eAAe,CAAC,OAAO,EAAE;YAC5C,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,SAAS,IAAI,CAAC,UAAU,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC7E;QAED,OAAO,IAAI,CAAC;KACb;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC;YAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,EAAS,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;SACzB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,KAAY,KAAK,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;KACnG;IAED,qBAAqB,CAAC,KAAY;;;QAGhC,IAAG,IAAI,CAAC,iBAAiB,KAAK,IAAI,EAAE;YAClC,MAAM,SAAS,GAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,KAAK,aAAa,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC;YACtG,IAAI,SAAS,EAAE;gBACb,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBACxB,OAAO;aACR;SACF;;QAGD,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC;QAC9D,UAAU,CAAC;YACT,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,YAAY,CAAC;YAClE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;SACzB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;;QAG7B,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACzB;QACD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;;+IApFU,+BAA+B;mIAA/B,+BAA+B,yiBCZ5C,wtBAOA;2FDKa,+BAA+B;kBAP3C,SAAS;mBAAC;;oBAET,QAAQ,EAAE,8BAA8B;oBACxC,WAAW,EAAE,2CAA2C;oBACxD,SAAS,EAAE,CAAC,2CAA2C,CAAC;oBACxD,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;gIAIU,QAAQ;sBAAhB,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,SAAS;sBAAjB,KAAK;gBACG,cAAc;sBAAtB,KAAK;gBACG,gBAAgB;sBAAxB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,aAAa;sBAArB,KAAK;gBACG,eAAe;sBAAvB,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,uBAAuB;sBAA/B,KAAK;gBACG,YAAY;sBAApB,KAAK;gBACG,WAAW;sBAAnB,KAAK;gBACG,iBAAiB;sBAAzB,KAAK;gBACG,WAAW;sBAAnB,KAAK;;AAuER,IAAK,eAIJ;AAJD,WAAK,eAAe;IAClB,6DAAQ,CAAA;IACR,qEAAY,CAAA;IACZ,2DAAO,CAAA;AACT,CAAC,EAJI,eAAe,KAAf,eAAe;;MEzFP,qBAAqB;;qIAArB,qBAAqB;sIAArB,qBAAqB,iBAJjB,sBAAsB,EAAE,+BAA+B,aAC3D,YAAY,aACb,+BAA+B;sIAE9B,qBAAqB,YAHvB,CAAE,YAAY,CAAE;2FAGd,qBAAqB;kBALjC,QAAQ;mBAAC;oBACR,YAAY,EAAE,CAAC,sBAAsB,EAAE,+BAA+B,CAAC;oBACvE,OAAO,EAAE,CAAE,YAAY,CAAE;oBACzB,OAAO,EAAE,CAAC,+BAA+B,CAAC;iBAC3C;;;ACTD;;;;ACAA;;;;;;"} | ||
| {"version":3,"file":"angular-toastify.js","sources":["../../../projects/angular-toastify/src/lib/toast.ts","../../../projects/angular-toastify/src/lib/toast-type.ts","../../../projects/angular-toastify/src/lib/toast.service.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast/toastify-toast.component.html","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.ts","../../../projects/angular-toastify/src/lib/toastify-toast-container/toastify-toast-container.component.html","../../../projects/angular-toastify/src/lib/angular-toastify.module.ts","../../../projects/angular-toastify/src/public-api.ts","../../../projects/angular-toastify/src/angular-toastify.ts"],"sourcesContent":["import { ToastType } from './toast-type';\nimport { Observable, Subject } from 'rxjs';\n\nlet toastIdentitySequence = 0;\n\nexport class Toast {\n id: number;\n message: string;\n type: ToastType;\n readonly time: number;\n\n $resetToast: Subject<any>;\n\n constructor(message: string, type: ToastType) {\n this.message = message;\n this.type = type;\n this.time = new Date().getTime();\n this.id = toastIdentitySequence++;\n\n this.$resetToast = new Subject();\n }\n}\n","export enum ToastType {\n info,\n success,\n warning,\n error,\n default\n}\n","import { Injectable, EventEmitter } from '@angular/core';\nimport { Toast } from './toast';\nimport { ToastType } from './toast-type';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ToastService {\n\n toastAddedEvent = new EventEmitter();\n constructor() { }\n\n dismissAllEvent = new EventEmitter();\n\n dismissAll() {\n this.dismissAllEvent.emit();\n }\n\n info(message: string) {\n const toast = new Toast(message, ToastType.info);\n this.toastAddedEvent.emit(toast);\n }\n\n success(message: string) {\n const toast = new Toast(message, ToastType.success);\n this.toastAddedEvent.emit(toast);\n }\n\n warn(message: string) {\n const toast = new Toast(message, ToastType.warning);\n this.toastAddedEvent.emit(toast);\n }\n\n error(message: string) {\n const toast = new Toast(message, ToastType.error);\n this.toastAddedEvent.emit(toast);\n }\n\n default(message: string) {\n const toast = new Toast(message, ToastType.default);\n this.toastAddedEvent.emit(toast);\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ToastType } from '../toast-type';\nimport { Toast } from '../toast';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast',\n templateUrl: './toastify-toast.component.html',\n styleUrls: ['./toastify-toast.component.scss'],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToastifyToastComponent implements OnInit, OnDestroy {\n @ViewChild('progressBar') progressBar: ElementRef<HTMLElement>;\n @ViewChild('progressBarCover') progressBarCover: ElementRef<HTMLElement>;\n\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() toast: Toast;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none';\n\n @Output() dismissEvent = new EventEmitter();\n\n private expectedAutoDismissTime: number;\n private autoDismissTimeout: any;\n private autoCloseRemaining: number;\n\n private pauseTime: number;\n private startTime: number;\n\n private _progressBarAnimation: number;\n private _$updateTimer;\n\n ToastType = ToastType;\n running = false;\n\n constructor(private _cd: ChangeDetectorRef, private _zone: NgZone) {}\n\n ngOnInit(): void {\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startTime = this.toast.time;\n this.toast.$resetToast.subscribe(() => this.resetToastTimer());\n // Do not start timer when toast is prompted while window is out of focus\n if (this.handleVisibilityChange && document.visibilityState === 'visible') {\n this.startCloseTimer();\n }\n\n // Start progress bar animation\n this.triggerProgressBarAnimation();\n }\n\n private triggerProgressBarAnimation(): void {\n // Cancel previous animlation to avoid leaks\n if (this._progressBarAnimation !== undefined) {\n cancelAnimationFrame(this._progressBarAnimation);\n }\n\n // Start animation\n const frame = () => {\n if (this.running) {\n const remainingTime = Math.max(0, this.expectedAutoDismissTime - new Date().getTime());\n const percentage = 100 - ((remainingTime / this.autoCloseAfterSpecificChange()) * 100);\n this.progressBarCover.nativeElement.style.width = percentage + '%';\n if (percentage <= 0) { return; }\n }\n this._progressBarAnimation = requestAnimationFrame(frame);\n };\n this._progressBarAnimation = requestAnimationFrame(frame);\n }\n\n ngOnDestroy(): void {\n // Cancel animation\n if (this._progressBarAnimation) {\n cancelAnimationFrame(this._progressBarAnimation);\n this._progressBarAnimation = undefined;\n }\n // Clear auto close timeout\n this.clearTimerTimeout();\n // Complete all observables\n this.toast.$resetToast?.complete();\n this.toast.$resetToast = null;\n this._$updateTimer?.complete();\n this._$updateTimer = null;\n }\n\n startCloseTimer(): void {\n if (this.running || !this.autoCloseAfterSpecificChange()) {\n return;\n }\n\n this.running = true;\n this.expectedAutoDismissTime =\n new Date().getTime() + this.autoCloseRemaining;\n this.autoDismissTimeout = this._zone.runOutsideAngular(() =>\n setTimeout(() => {\n this._zone.run(() => {\n this.dismissEvent.emit();\n this._cd.markForCheck();\n });\n }, this.autoCloseRemaining)\n );\n }\n\n autoCloseAfterSpecificChange(): number {\n const specificAmount = (() => {\n switch (this.toast.type) {\n case ToastType.success:\n return this.autoCloseSuccess;\n case ToastType.error:\n return this.autoCloseError;\n case ToastType.warning:\n return this.autoCloseWarn;\n case ToastType.info:\n return this.autoCloseInfo;\n default:\n return undefined;\n }\n })();\n\n return specificAmount === undefined ? this.autoClose : specificAmount;\n }\n\n pauseCloseTimer(): void {\n this.running = false;\n this.clearTimerTimeout();\n\n // Calculate the elapsed time, subtract remaining time\n this.pauseTime = new Date().getTime();\n const elapsed = this.pauseTime - this.startTime;\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange() - elapsed;\n }\n\n resetToastTimer() {\n this.clearTimerTimeout();\n this.running = false;\n this.startTime = new Date().getTime();\n this.autoCloseRemaining = this.autoCloseAfterSpecificChange();\n this.startCloseTimer();\n }\n\n clearTimerTimeout(): void {\n if (this.autoDismissTimeout !== undefined) {\n this.expectedAutoDismissTime = undefined;\n clearTimeout(this.autoDismissTimeout);\n }\n }\n\n handleDismissButtonAction(): void {\n if (this.closeOnClick) {\n return; // Let the other event handle the dismissal\n }\n\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n\n @HostListener('click')\n handleHostClick(): void {\n if (this.closeOnClick) {\n this.clearTimerTimeout();\n this.dismissEvent.emit();\n }\n }\n\n @HostListener('mouseenter')\n handleMouseEnter(): void {\n if (this.pauseOnHover) {\n this.pauseCloseTimer();\n }\n }\n\n @HostListener('mouseleave')\n handleMouseLeave(): void {\n if (this.pauseOnHover) {\n this.startCloseTimer();\n this.startTime = new Date().getTime() + (this.startTime - this.pauseTime);\n }\n }\n\n @HostListener('document:visibilitychange')\n handleVisibilityChange(): void {\n if (!this.pauseOnVisibilityChange) {\n return;\n }\n\n if (document.visibilityState !== 'visible') {\n this.pauseCloseTimer();\n this._cd.detectChanges();\n } else {\n this.startCloseTimer();\n }\n }\n}\n","<div role=\"alert\" class=\"angular-toastify-toast-body\">\n <div class=\"angular-toastify-icon-container\">\n <span *ngIf=\"iconLibrary == 'material'\" [ngSwitch]=\"toast.type\">\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.info\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#fff\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.default\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\"\n fill=\"#aaa\"><path\n d=\"M430.09-270.8h101.34V-528H430.09v257.2Zm49.52-338.03q20.94 0 35.34-14.01 14.4-14.01 14.4-34.95 0-20.94-14.01-35.34-14.01-14.39-34.95-14.39-20.94 0-35.34 14.01-14.4 14.01-14.4 34.95 0 20.94 14.01 35.34 14.01 14.39 34.95 14.39Zm.67 548.18q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.warning\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M-3.28-104.15 480-911.43l483.28 807.28H-3.28Zm483.83-137.63q19.97 0 34.23-14.05 14.26-14.05 14.26-34.02 0-19.74-14.05-34-14.05-14.26-34.02-14.26-19.73 0-34.11 14.05-14.38 14.05-14.38 33.78 0 19.98 14.17 34.24 14.17 14.26 33.9 14.26Zm-46.88-138.7h94.18v-192.89h-94.18v192.89Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.error\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M479.56-266.26q21.83 0 36.89-14.61 15.05-14.62 15.05-36.45 0-21.83-14.61-37.01-14.62-15.17-36.45-15.17-21.83 0-36.89 14.79-15.05 14.79-15.05 36.62t14.61 36.83q14.62 15 36.45 15Zm-51.39-167.02h105.18v-250.55H428.17v250.55Zm52.11 372.63q-86.64 0-163.19-32.66-76.56-32.66-133.84-89.94t-89.94-133.8q-32.66-76.51-32.66-163.41 0-87.15 32.72-163.31t90.14-133.61q57.42-57.44 133.79-89.7 76.38-32.27 163.16-32.27 87.14 0 163.31 32.26 76.16 32.26 133.61 89.71 57.45 57.45 89.71 133.86 32.26 76.42 32.26 163.33 0 86.91-32.27 163.08-32.26 76.18-89.7 133.6-57.45 57.42-133.83 90.14-76.39 32.72-163.27 32.72Zm-.33-105.18q131.13 0 222.68-91.49 91.54-91.49 91.54-222.63 0-131.13-91.49-222.68-91.49-91.54-222.63-91.54-131.13 0-222.68 91.49-91.54 91.49-91.54 222.63 0 131.13 91.49 222.68 91.49 91.54 222.63 91.54ZM480-480Z\"/></svg>\n </i>\n <i class=\"angular-toastify-toast-icon\" *ngSwitchCase=\"ToastType.success\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20px\" viewBox=\"0 -960 960 960\" width=\"20px\" fill=\"#fff\"><path d=\"M389-240.7 166.93-461.76l74.27-75.26L389-388.98l331.57-330.56 74.26 74.02L389-240.7Z\"/></svg>\n </i>\n </span>\n <span *ngIf=\"iconLibrary == 'font-awesome'\" [ngSwitch]=\"toast.type\">\n <i *ngSwitchCase=\"ToastType.info\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.default\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 192 512\" height=\"18\" fill=\"#aaa\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32l64 0c17.7 0 32 14.3 32 32l0 224 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0 0-192-32 0c-17.7 0-32-14.3-32-32z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.warning\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.error\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128 512\" height=\"18\" fill=\"#fff\">\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M96 64c0-17.7-14.3-32-32-32S32 46.3 32 64l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32L96 64zM64 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"/>\n </svg>\n </i>\n <i *ngSwitchCase=\"ToastType.success\" class=\"angular-toastify-toast-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" height=\"18\" fill=\"#fff\">>\n <!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->\n <path d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>\n </svg>\n </i>\n </span>\n </div>\n <div class=\"angular-toastify-toast-container\">\n <div>{{ toast.message }}</div>\n </div>\n <div class=\"close-container\">\n <button (click)=\"handleDismissButtonAction()\"\n class=\"angular-toastify-close-button angular-toastify-close-button--{{ToastType[toast.type]}}\" type=\"button\"\n aria-label=\"close\">✖\n </button>\n </div>\n</div>\n\n<div #progressBar *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar angular-toastify-progress-bar--{{ToastType[toast.type]}}\"\n style=\"opacity: 1;\"></div>\n<div #progressBarCover *ngIf=\"!hideProgressBar\"\n class=\"angular-toastify-progress-bar-cover angular-toastify-toast--{{ToastType[toast.type]}}\"\n [style.animation-duration]=\"this.autoCloseAfterSpecificChange() + 'ms'\"\n [style.animation-play-state]=\"running? 'running' : 'paused'\"></div>\n","import { Component, OnInit, Input, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { ToastService } from '../toast.service';\nimport { Toast } from '../toast';\nimport { ToastType } from '../toast-type';\n\n@Component({\n // tslint:disable-next-line:component-selector\n selector: 'lib-toastify-toast-container',\n templateUrl: './toastify-toast-container.component.html',\n styleUrls: ['./toastify-toast-container.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToastifyToastContainerComponent implements OnInit, OnChanges {\n private readonly transitionDurations = 400;\n\n @Input() position: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' = 'top-right';\n @Input() transition: 'bounce' | 'slide' | 'zoom' | 'flip' = 'bounce';\n @Input() autoClose = 5000;\n @Input() autoCloseError = undefined;\n @Input() autoCloseSuccess = undefined;\n @Input() autoCloseInfo = undefined;\n @Input() autoCloseWarn = undefined;\n @Input() hideProgressBar = false;\n @Input() pauseOnHover = true;\n @Input() pauseOnVisibilityChange = true;\n @Input() closeOnClick = true;\n @Input() newestOnTop = false;\n @Input() preventDuplicates = false;\n @Input() iconLibrary: 'material' | 'font-awesome' | 'none' = 'none';\n\n ToastType = ToastType;\n toasts = new Array<Toast>();\n toastTransitionDict = {};\n\n constructor(private _toastService: ToastService, private _cd: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this._cd.markForCheck();\n }\n\n dismiss(toast: Toast): void {\n this.toastTransitionDict[toast.id] = TransitionState.exiting;\n setTimeout(() => {\n const index = this.toasts.indexOf(toast);\n this.toasts.splice(index, 1);\n this._cd.markForCheck();\n }, this.transitionDurations);\n }\n\n getClass(toast: Toast): string {\n let base = `angular-toastify-toast angular-toastify-toast--${ToastType[toast.type]} `;\n const state = this.toastTransitionDict[toast.id];\n if (state === TransitionState.entering) {\n base += `angular-toastify-${this.transition}-enter angular-toastify-${this.transition}-enter--${this.position}`;\n } else if (state === TransitionState.exiting) {\n base += `angular-toastify-${this.transition}-exit angular-toastify-${this.transition}-exit--${this.position}`;\n }\n\n return base;\n }\n\n ngOnInit(): void {\n this._toastService.dismissAllEvent.subscribe(() => {\n this.toasts = new Array<Toast>();\n this._cd.markForCheck();\n });\n\n this._toastService.toastAddedEvent.subscribe((toast: Toast) => this.handleToastAddedEvent(toast));\n }\n\n handleToastAddedEvent(toast: Toast): void {\n // If \"preventDuplicates\" is enabled, toast is not added if one toast with same message exists\n // The only thing to do is to update the toast time to keep it visible\n if(this.preventDuplicates === true) {\n const sameToast: Toast = this.toasts.find((existingToast) => existingToast.message === toast.message);\n if (sameToast) {\n sameToast.$resetToast.next();\n this._cd.markForCheck();\n return;\n }\n }\n\n // Add new toast transition\n this.toastTransitionDict[toast.id] = TransitionState.entering;\n setTimeout(() => {\n this.toastTransitionDict[toast.id] = TransitionState.noTransition;\n this._cd.markForCheck();\n }, this.transitionDurations);\n\n // Add new toast\n if (this.newestOnTop) {\n this.toasts.unshift(toast);\n } else {\n this.toasts.push(toast);\n }\n this._cd.markForCheck();\n }\n}\n\nenum TransitionState {\n entering,\n noTransition,\n exiting\n}\n","<div class=\"angular-toastify-toast-container angular-toastify-toast-container--{{position}}\">\n <lib-toastify-toast *ngFor=\"let toast of toasts\" [class]=\"getClass(toast)\" style=\"animation-fill-mode: both; animation-duration: 0.75s; flex-direction: column;\"\n [autoClose]=\"autoClose\" [autoCloseSuccess]=\"this.autoCloseSuccess\" [autoCloseError]=\"this.autoCloseError\" [autoCloseWarn]=\"this.autoCloseWarn\"\n [autoCloseInfo]=\"this.autoCloseInfo\" [toast]=\"toast\" (dismissEvent)=\"dismiss(toast)\" [hideProgressBar]=\"hideProgressBar\" [pauseOnHover]=\"pauseOnHover\"\n [pauseOnVisibilityChange]=\"pauseOnVisibilityChange\" [closeOnClick]=\"closeOnClick\" [iconLibrary]=\"iconLibrary\">\n </lib-toastify-toast>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ToastifyToastComponent } from './toastify-toast/toastify-toast.component';\nimport { ToastifyToastContainerComponent } from './toastify-toast-container/toastify-toast-container.component';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ToastifyToastComponent, ToastifyToastContainerComponent],\n imports: [ CommonModule ],\n exports: [ToastifyToastContainerComponent]\n})\nexport class AngularToastifyModule { }\n","/*\n * Public API Surface of angular-toastify\n */\n\nexport * from './lib/toast.service';\nexport * from './lib/toastify-toast-container/toastify-toast-container.component';\nexport * from './lib/angular-toastify.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"} |
@@ -1,4 +0,4 @@ | ||
| import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit } from "@angular/core"; | ||
| import { ToastType } from "../toast-type"; | ||
| import { Toast } from "../toast"; | ||
| import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit } from '@angular/core'; | ||
| import { ToastType } from '../toast-type'; | ||
| import { Toast } from '../toast'; | ||
| import * as i0 from "@angular/core"; | ||
@@ -20,3 +20,3 @@ export declare class ToastifyToastComponent implements OnInit, OnDestroy { | ||
| toast: Toast; | ||
| iconLibrary: "material" | "font-awesome" | "none"; | ||
| iconLibrary: 'material' | 'font-awesome' | 'none'; | ||
| dismissEvent: EventEmitter<any>; | ||
@@ -23,0 +23,0 @@ private expectedAutoDismissTime; |
+1
-1
| { | ||
| "name": "angular-toastify", | ||
| "version": "1.0.8", | ||
| "version": "2.0.0-dev1", | ||
| "description": "Somewhat working clone of React Toastify.", | ||
@@ -5,0 +5,0 @@ "author": "Scenius", |
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
241595
25.91%1664
5.99%1
Infinity%10
11.11%