myrta-ui 17.0.0-beta.26 → 17.0.0-beta.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -78,11 +78,11 @@ export class DropdownComponent {
78
78
  });
79
79
  }
80
80
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
81
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: DropdownComponent, selector: "mrx-dropdown", inputs: { mainPlacement: "mainPlacement", fallbackPlacements: "fallbackPlacements", closeOnClick: "closeOnClick", customClasses: "customClasses" }, queries: [{ propertyName: "dropdownToggle", first: true, predicate: ["dropdownToggle"], descendants: true }, { propertyName: "dropdownMenu", first: true, predicate: ["dropdownMenu"], descendants: true }], viewQueries: [{ propertyName: "dropdownToggleEl", first: true, predicate: ["dropdownToggleEl"], descendants: true }, { propertyName: "dropdownContent", first: true, predicate: ["dropdownContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;overflow:hidden;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;padding:5px 0;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.175)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
81
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: DropdownComponent, selector: "mrx-dropdown", inputs: { mainPlacement: "mainPlacement", fallbackPlacements: "fallbackPlacements", closeOnClick: "closeOnClick", customClasses: "customClasses" }, queries: [{ propertyName: "dropdownToggle", first: true, predicate: ["dropdownToggle"], descendants: true }, { propertyName: "dropdownMenu", first: true, predicate: ["dropdownMenu"], descendants: true }], viewQueries: [{ propertyName: "dropdownToggleEl", first: true, predicate: ["dropdownToggleEl"], descendants: true }, { propertyName: "dropdownContent", first: true, predicate: ["dropdownContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;background-color:#fff;background-clip:padding-box;box-shadow:0 1px 4px #3a3a3a4d;min-width:240px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-2);padding-left:var(--spacing-4);cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item:hover{background-color:var(--brand-bg-tertiary-hover)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content{display:flex;align-items:flex-start;gap:var(--spacing-2)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content .mrx-icon{transform:translateY(2px)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-text{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);color:var(--neutral-text-primary)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
82
82
  }
83
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: DropdownComponent, decorators: [{
84
84
  type: Component,
85
- args: [{ selector: 'mrx-dropdown', template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;overflow:hidden;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;padding:5px 0;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.175)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"] }]
85
+ args: [{ selector: 'mrx-dropdown', template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;background-color:#fff;background-clip:padding-box;box-shadow:0 1px 4px #3a3a3a4d;min-width:240px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-2);padding-left:var(--spacing-4);cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item:hover{background-color:var(--brand-bg-tertiary-hover)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content{display:flex;align-items:flex-start;gap:var(--spacing-2)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content .mrx-icon{transform:translateY(2px)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-text{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);color:var(--neutral-text-primary)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"] }]
86
86
  }], propDecorators: { dropdownToggleEl: [{
87
87
  type: ViewChild,
88
88
  args: ['dropdownToggleEl']
@@ -56,8 +56,7 @@ export class PdfViewerComponent {
56
56
  this._ref = _ref;
57
57
  }
58
58
  ngOnChanges(changes) {
59
- const { defaultZoom } = changes;
60
- if (defaultZoom.currentValue != defaultZoom.previousValue) {
59
+ if (changes['defaultZoom'] && changes['defaultZoom'].currentValue != changes['defaultZoom'].previousValue) {
61
60
  this.initZoom();
62
61
  }
63
62
  }
@@ -266,4 +265,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
266
265
  type: ViewChild,
267
266
  args: ['findMenu']
268
267
  }] } });
269
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvcGRmLXZpZXdlci9wZGYtdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9wZGYtdmlld2VyL3BkZi12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsS0FBSyxFQUtMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBRUwsU0FBUyxFQUNULDZCQUE2QixFQUc5QixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7QUFzQmpDLE1BQU0sT0FBTyxrQkFBa0I7SUEwQ25CO0lBQ0E7SUFDQTtJQTNDSCxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLFNBQVMsR0FBYyxTQUFTLENBQUMsT0FBTyxDQUFDO0lBQ3pDLFVBQVUsR0FBVyxDQUFDLENBQUM7SUFDdkIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ1Qsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQzdCLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFDdEIsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNkLFlBQVksR0FBOEMsRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQztJQUNsRyxXQUFXLEdBQUc7UUFDbkIsRUFBQyxL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QyxDQUFDLENBQUM7eUJBQ3JELENBQUM7cUJBQ0gsYUFDVSxDQUFDLGNBQWMsQ0FBQyxtQkFDVix1QkFBdUIsQ0FBQyxNQUFNO3dKQTRCdEMsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFFb0MsU0FBUztzQkFBbEQsU0FBUzt1QkFBQyw2QkFBNkI7Z0JBQ2pCLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uSW5pdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFRvb2x0aXBTZXJ2aWNlIH0gZnJvbSAnLi4vdG9vbHRpcC9zZXJ2aWNlcy90b29sdGlwLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEZpbmRSZXN1bHRNYXRjaGVzQ291bnQsXHJcbiAgRmluZFN0YXRlLFxyXG4gIE5neEV4dGVuZGVkUGRmVmlld2VyQ29tcG9uZW50LFxyXG4gIE5neEV4dGVuZGVkUGRmVmlld2VyU2VydmljZSxcclxuICBQYWdlc0xvYWRlZEV2ZW50XHJcbn0gZnJvbSAnbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXInO1xyXG5cclxudHlwZSBSb3RhdGlvblR5cGUgPSAwIHwgOTAgfCAxODAgfCAyNzA7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1wZGYtdmlld2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGRmLXZpZXdlci5jb21wb25lbnQubGVzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ29wZW5DbG9zZScsIFtcclxuICAgICAgc3RhdGUoXHJcbiAgICAgICAgJ29wZW4nLFxyXG4gICAgICAgIHN0eWxlKHtoZWlnaHQ6ICcqJywgcGFkZGluZzogJyonLCAnbWFyZ2luLWJvdHRvbSc6ICc4cHgnfSlcclxuICAgICAgKSxcclxuICAgICAgc3RhdGUoJ2Nsb3NlZCcsIHN0eWxlKHtoZWlnaHQ6IDAsIHBhZGRpbmc6IDAsICdtYXJnaW4tYm90dG9tJzogMH0pKSxcclxuICAgICAgdHJhbnNpdGlvbignb3BlbiA9PiBjbG9zZWQnLCBbYW5pbWF0ZSgnMC41cyBlYXNlJyldKSxcclxuICAgICAgdHJhbnNpdGlvbignY2xvc2VkID0+IG9wZW4nLCBbYW5pbWF0ZSgnMC41cyBlYXNlJyldKSxcclxuICAgIF0pLFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbVG9vbHRpcFNlcnZpY2VdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGRmVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIHB1YmxpYyBzZWFyY2hRdWVyeSA9ICcnO1xyXG4gIHB1YmxpYyBmaW5kU3RhdGU6IEZpbmRTdGF0ZSA9IEZpbmRTdGF0ZS5QRU5ESU5HO1xyXG4gIHB1YmxpYyB0b3RhbEZvdW5kOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBjdXJyZW50RmluZDogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcGFnZSA9IDE7XHJcbiAgcHVibGljIGlzU2VhcmNoUGFuZWxWaXNpYmxlID0gZmFsc2U7XHJcbiAgcHVibGljIHNpZGViYXJWaXNpYmxlID0gdHJ1ZTtcclxuICBwdWJsaWMgcGFnZUNvdW50ID0gMTtcclxuICBwdWJsaWMgc2VsZWN0ZWRab29tOiB7IHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsIGxhYmVsOiBzdHJpbmcgfSA9IHt2YWx1ZTogJ2F1dG8nLCBsYWJlbDogJ9CQ0LLRgtC+0LzQsNGC0LjRh9C10YHQutC4J307XHJcbiAgcHVibGljIHpvb21PcHRpb25zID0gW1xyXG4gICAge3ZhbHVlOiAnYXV0bycsIGxhYmVsOiAn0JDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LgnfSxcclxuICAgIHt2YWx1ZTogJ3BhZ2UtYWN0dWFsJywgbGFiZWw6ICfQoNC10LDQu9GM0L3Ri9C5INGA0LDQt9C80LXRgCd9LFxyXG4gICAge3ZhbHVlOiAncGdlLWZpdCcsIGxhYmVsOiAn0J/QviDRgNCw0LfQvNC10YDRgyDRgdGC0YDQsNC90LjRhtGLJ30sXHJcbiAgICB7dmFsdWU6ICdwYWdlLXdpZHRoJywgbGFiZWw6ICfQn9C+INGI0LjRgNC40L3QtSDRgdGC0YDQsNC90LjRhtGLJ30sXHJcbiAgICB7dmFsdWU6IDUwLCBsYWJlbDogJzUwJSd9LFxyXG4gICAge3ZhbHVlOiAxMDAsIGxhYmVsOiAnMTAwJSd9LFxyXG4gICAge3ZhbHVlOiAxMjUsIGxhYmVsOiAnMTI1JSd9LFxyXG4gICAge3ZhbHVlOiAxNTAsIGxhYmVsOiAnMTUwJSd9LFxyXG4gICAge3ZhbHVlOiAyMDAsIGxhYmVsOiAnMjAwJSd9LFxyXG4gICAge3ZhbHVlOiAzMDAsIGxhYmVsOiAnMzAwJSd9LFxyXG4gICAge3ZhbHVlOiA0MDAsIGxhYmVsOiAnNDAwJSd9LFxyXG4gIF07XHJcblxyXG4gIHB1YmxpYyByb3RhdGlvbjogUm90YXRpb25UeXBlID0gMDtcclxuXHJcbiAgQElucHV0KCkgc2hvd1NpZGViYXJCdXR0b24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dIYW5kVG9vbEJ1dHRvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGhhbmRUb29sID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93RmluZGJhckJ1dHRvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd1JvdGF0ZUJ1dHRvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd1ByaW50QnV0dG9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93RG93bmxvYWRCdXR0b24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dFeHBhbmRCdXR0b24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRab29tOiBudW1iZXIgfCAnYXV0bycgfCAncGFnZS1hY3R1YWwnIHwgJ3BnZS1maXQnIHwgJ3BhZ2Utd2lkdGgnID0gJ2F1dG8nO1xyXG4gIEBJbnB1dCgpIGRvd25sb2FkRmlsZU5hbWUgPSAnJztcclxuICBASW5wdXQoKSBzcmMgPSAnJztcclxuXHJcbiAgQFZpZXdDaGlsZChOZ3hFeHRlbmRlZFBkZlZpZXdlckNvbXBvbmVudCkgcGRmVmlld2VyITogTmd4RXh0ZW5kZWRQZGZWaWV3ZXJDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnZmluZE1lbnUnKSBmaW5kTWVudTogRWxlbWVudFJlZiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3BkZlZpZXdlclNlcnZpY2U6IE5neEV4dGVuZGVkUGRmVmlld2VyU2VydmljZSxcclxuICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIF9yZWY6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7ZGVmYXVsdFpvb219ID0gY2hhbmdlcztcclxuXHJcbiAgICBpZiAoZGVmYXVsdFpvb20uY3VycmVudFZhbHVlICE9IGRlZmF1bHRab29tLnByZXZpb3VzVmFsdWUpIHtcclxuICAgICAgdGhpcy5pbml0Wm9vbSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5pdFpvb20oKSB7XHJcbiAgICBjb25zdCBleGlzdGluZ1ZhbHVlID0gdGhpcy56b29tT3B0aW9ucy5maW5kKHggPT4geC52YWx1ZSA9PT0gdGhpcy5kZWZhdWx0Wm9vbSk7XHJcblxyXG4gICAgaWYgKGV4aXN0aW5nVmFsdWUpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFpvb20gPSB7Li4uZXhpc3RpbmdWYWx1ZX07XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkWm9vbSA9IHt2YWx1ZTogdGhpcy5kZWZhdWx0Wm9vbSwgbGFiZWw6IGAke3RoaXMuZGVmYXVsdFpvb219JWB9O1xyXG4gIH1cclxuXHJcbiAgaW5pdFNlYXJjaCgpIHtcclxuICAgIGlmICh0aGlzLnNob3dGaW5kYmFyQnV0dG9uKSB7XHJcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkgPT09ICdmJyAmJiBldmVudC5jdHJsS2V5KSB7XHJcbiAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWxWaXNpYmxlID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaXRTZWFyY2goKTtcclxuICAgIHRoaXMuaW5pdFpvb20oKTtcclxuXHJcbiAgICB0aGlzLl9yZW5kZXJlci5saXN0ZW4oJ3dpbmRvdycsICdjbGljaycsIChldmVudDogRXZlbnQpID0+IHtcclxuICAgICAgaWYgKHRoaXMuaXNTZWFyY2hQYW5lbFZpc2libGUpIHtcclxuICAgICAgICBjb25zdCBpc0luTWVudSA9IHRoaXMuZmluZE1lbnU/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KVxyXG4gICAgICAgICAgfHwgKGV2ZW50LnRhcmdldCBhcyBhbnkpLmlkID09PSAnZmluZE5leHQnXHJcbiAgICAgICAgICB8fCAoZXZlbnQudGFyZ2V0IGFzIGFueSkuaWQgPT09ICdmaW5kUHJldmlvdXMnO1xyXG5cclxuICAgICAgICBjb25zdCBpc0ZpbmRCdXR0b24gPSAoZXZlbnQudGFyZ2V0IGFzIGFueSkuY2xhc3NMaXN0LmNvbnRhaW5zKCdtcngtcGRmLXZpZXdlcl9fZmluZC1idXR0b24nKTtcclxuXHJcbiAgICAgICAgaWYgKCFpc0luTWVudSAmJiAhaXNGaW5kQnV0dG9uKSB7XHJcbiAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWxWaXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLl9yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uUGFnZUNoYW5nZSgkZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5wYWdlID0gJGV2ZW50IHx8IDE7XHJcbiAgfVxyXG5cclxuICBvbk5leHRQYWdlKCkge1xyXG4gICAgaWYgKHRoaXMucGFnZSA8IHRoaXMucGFnZUNvdW50KSB7XHJcbiAgICAgIHRoaXMucGFnZSA9IHRoaXMucGFnZSArIDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkxhc3RQYWdlKCkge1xyXG4gICAgdGhpcy5wYWdlID0gdGhpcy5wYWdlQ291bnQ7XHJcbiAgfVxyXG5cclxuICBvblBhZ2VzTG9hZGVkKCRldmVudDogUGFnZXNMb2FkZWRFdmVudCkge1xyXG4gICAgY29uc3Qgdmlld091dGxpbmUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjdmlld091dGxpbmUnKTtcclxuICAgIGNvbnN0IHZpZXdUaHVtYm5haWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjdmlld1RodW1ibmFpbCcpO1xyXG5cclxuICAgIHRoaXMucGFnZUNvdW50ID0gJGV2ZW50LnBhZ2VzQ291bnQ7XHJcblxyXG4gICAgaWYgKHZpZXdPdXRsaW5lKSB7XHJcbiAgICAgICh2aWV3T3V0bGluZSBhcyBhbnkpLnRpdGxlID0gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHZpZXdUaHVtYm5haWwpIHtcclxuICAgICAgKHZpZXdUaHVtYm5haWwgYXMgYW55KS50aXRsZSA9ICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgem9vbUNsaWNrKGluY3JlYXNlOiBib29sZWFuKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMuc2VsZWN0ZWRab29tLnZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkWm9vbSA9IHt2YWx1ZTogMTAwLCBsYWJlbDogJzEwMCUnfTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5ld1ZhbHVlID0gaW5jcmVhc2UgPyB0aGlzLnNlbGVjdGVkWm9vbS52YWx1ZSArPSAyMCA6IHRoaXMuc2VsZWN0ZWRab29tLnZhbHVlIC09IDIwO1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRab29tID0ge3ZhbHVlOiBuZXdWYWx1ZSwgbGFiZWw6IGAke25ld1ZhbHVlfSVgfTtcclxuICB9XHJcblxyXG4gIG9uWm9vbUxldmVsU2VsZWN0KGl0ZW06IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZFpvb20gPSBpdGVtO1xyXG4gIH1cclxuXHJcbiAgb25ab29tQ2hhbmdlKCRldmVudDogc3RyaW5nIHwgbnVtYmVyKSB7XHJcbiAgICBjb25zdCBleGlzdGluZ09wdGlvbiA9IHRoaXMuem9vbU9wdGlvbnMuZmluZCh4ID0+IHgudmFsdWUgPT09ICRldmVudCk7XHJcblxyXG4gICAgaWYgKGV4aXN0aW5nT3B0aW9uKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRab29tID0gey4uLmV4aXN0aW5nT3B0aW9ufTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGZpeGVkVmFsdWUgPSBNYXRoLnJvdW5kKE51bWJlcigkZXZlbnQpKTtcclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkWm9vbSA9IHt2YWx1ZTogZml4ZWRWYWx1ZSwgbGFiZWw6IGAke2ZpeGVkVmFsdWV9JWB9O1xyXG4gIH1cclxuXHJcbiAgb25Sb3RhdGUoZGlyZWN0aW9uOiBudW1iZXIpIHtcclxuICAgIGxldCBkYXRhID0gdGhpcy5yb3RhdGlvbjtcclxuXHJcbiAgICBpZiAoZGlyZWN0aW9uIDwgMCkge1xyXG4gICAgICBkYXRhIC09IDkwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZGF0YSArPSA5MDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZGF0YSA+PSAzNjApIHtcclxuICAgICAgdGhpcy5yb3RhdGlvbiA9IGRhdGEgLSAzNjAgYXMgUm90YXRpb25UeXBlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGRhdGEgPCAwKSB7XHJcbiAgICAgIHRoaXMucm90YXRpb24gPSAzNjAgKyBkYXRhIGFzIFJvdGF0aW9uVHlwZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucm90YXRpb24gPSBkYXRhIGFzIFJvdGF0aW9uVHlwZTtcclxuICB9XHJcblxyXG4gIG9uUHJpbnRDbGljaygpIHtcclxuICAgIHRoaXMuX3BkZlZpZXdlclNlcnZpY2UucHJpbnQoKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgcHJpbnREaWFsb2cgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdkaWFsb2cjcHJpbnRTZXJ2aWNlRGlhbG9nJyk7XHJcbiAgICAgIGNvbnN0IHByb2dyZXNzVGV4dCA9IHByaW50RGlhbG9nPy5xdWVyeVNlbGVjdG9yKCcucm93IHNwYW4nKTtcclxuICAgICAgY29uc3QgY2FuY2VsQnV0dG9uID0gcHJpbnREaWFsb2c/LnF1ZXJ5U2VsZWN0b3IoJyNwcmludENhbmNlbCBzcGFuJyk7XHJcblxyXG4gICAgICBpZiAocHJvZ3Jlc3NUZXh0KSB7XHJcbiAgICAgICAgcHJvZ3Jlc3NUZXh0LnRleHRDb250ZW50ID0gJ9Cf0L7QtNCz0L7RgtC+0LLQutCwINC00L7QutGD0LzQtdC90YLQsCDQuiDQv9C10YfQsNGC0LguLi4nO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY2FuY2VsQnV0dG9uKSB7XHJcbiAgICAgICAgY2FuY2VsQnV0dG9uLnRleHRDb250ZW50ID0gJ9Ce0YLQvNC10L3QsCc7XHJcbiAgICAgIH1cclxuICAgIH0sIDEpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgb25Eb3dubG9hZENsaWNrKCkge1xyXG4gICAgY29uc3QgYmxvYjogQmxvYiA9IGF3YWl0IHRoaXMuX3BkZlZpZXdlclNlcnZpY2UuZ2V0Q3VycmVudERvY3VtZW50QXNCbG9iKCk7XHJcbiAgICBjb25zdCBvYmplY3RVcmw6IHN0cmluZyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICBjb25zdCBhOiBIVE1MQW5jaG9yRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKSBhcyBIVE1MQW5jaG9yRWxlbWVudDtcclxuXHJcbiAgICBhLmhyZWYgPSBvYmplY3RVcmw7XHJcbiAgICBhLmRvd25sb2FkID0gdGhpcy5kb3dubG9hZEZpbGVOYW1lIHx8IHRoaXMuc3JjO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuICAgIGEuY2xpY2soKTtcclxuXHJcbiAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpO1xyXG4gICAgVVJMLnJldm9rZU9iamVjdFVSTChvYmplY3RVcmwpO1xyXG4gIH1cclxuXHJcbiAgb25TaWRlYmFyVmlld0NsaWNrKCkge1xyXG4gICAgdGhpcy5zaWRlYmFyVmlzaWJsZSA9ICF0aGlzLnNpZGViYXJWaXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgb25FeHBhbmRNb2RlQ2xpY2soKSB7XHJcbiAgICBjb25zdCBwZGZWaWV3ZXJBcHBsaWNhdGlvbiA9ICh3aW5kb3cgYXMgYW55KS5QREZWaWV3ZXJBcHBsaWNhdGlvbjtcclxuXHJcbiAgICBpZiAocGRmVmlld2VyQXBwbGljYXRpb24/LnBkZlZpZXdlcikge1xyXG4gICAgICBwZGZWaWV3ZXJBcHBsaWNhdGlvbi5yZXF1ZXN0UHJlc2VudGF0aW9uTW9kZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25TZWFyY2hDbGljaygpIHtcclxuICAgIHRoaXMuaXNTZWFyY2hQYW5lbFZpc2libGUgPSAhdGhpcy5pc1NlYXJjaFBhbmVsVmlzaWJsZTtcclxuICB9XHJcblxyXG4gIG9uU2VhcmNoKCRldmVudDogc3RyaW5nKSB7XHJcbiAgICBpZiAoJGV2ZW50KSB7XHJcbiAgICAgIHRoaXMuX3BkZlZpZXdlclNlcnZpY2UuZmluZCgkZXZlbnQsIHtoaWdobGlnaHRBbGw6IHRydWV9KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcGRmVmlld2VyU2VydmljZS5maW5kKCcnLCB7fSk7XHJcbiAgfVxyXG5cclxuICBmaW5kTmV4dCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3BkZlZpZXdlclNlcnZpY2UuZmluZE5leHQoKTtcclxuICB9XHJcblxyXG4gIGZpbmRQcmV2aW91cygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3BkZlZpZXdlclNlcnZpY2UuZmluZFByZXZpb3VzKCk7XHJcbiAgfVxyXG5cclxuICBvblVwZGF0ZU1hdGNoQ2FzZSgkZXZlbnQ6IEZpbmRSZXN1bHRNYXRjaGVzQ291bnQpIHtcclxuICAgIHRoaXMudG90YWxGb3VuZCA9ICRldmVudC50b3RhbDtcclxuICAgIHRoaXMuY3VycmVudEZpbmQgPSAkZXZlbnQuY3VycmVudDtcclxuICB9XHJcblxyXG4gIG9uRmluZFN0YXRlQ2hhbmdlZCgkZXZlbnQ6IEZpbmRTdGF0ZSkge1xyXG4gICAgdGhpcy5maW5kU3RhdGUgPSAkZXZlbnQ7XHJcbiAgfVxyXG5cclxuICBvblNpZGViYXJWaXNpYmxlQ2hhbmdlKCRldmVudDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zaWRlYmFyVmlzaWJsZSA9ICRldmVudDtcclxuICB9XHJcblxyXG4gIG9uSGFuZFRvb2xDbGljaygpIHtcclxuICAgIHRoaXMuaGFuZFRvb2wgPSAhdGhpcy5oYW5kVG9vbDtcclxuICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNjdXN0b21Ub29sYmFyPlxyXG4gIDxkaXYgY2xhc3M9XCJtcngtcGRmLXZpZXdlcl9fdG9vbGJhclwiIGlkPVwidG9vbGJhclZpZXdlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAqbmdJZj1cInNob3dTaWRlYmFyQnV0dG9uXCJcclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tYnVyZ2VyJ1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvblNpZGViYXJWaWV3Q2xpY2soKVwiXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7J21yeC1pY29uLWJ1dHRvbi0tdG9nZ2xlZCc6IHNpZGViYXJWaXNpYmxlfVwiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgICAgICBbdGl0bGVdPVwiJ3Rlc3QnXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAqbmdJZj1cInNob3dGaW5kYmFyQnV0dG9uXCJcclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tc2VhcmNoJ1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvblNlYXJjaENsaWNrKClcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMiBtcngtcGRmLXZpZXdlcl9fZmluZC1idXR0b24nXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsnbXJ4LWljb24tYnV0dG9uLS10b2dnbGVkJzogaXNTZWFyY2hQYW5lbFZpc2libGV9XCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiaXNTZWFyY2hQYW5lbFZpc2libGVcIiBjbGFzcz1cIm1yeC1wZGYtdmlld2VyX19maW5kYmFyXCIgI2ZpbmRNZW51PlxyXG4gICAgICAgIDxtcngtaW5wdXQtdGV4dFxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiZmluZFN0YXRlID09PSAxID8gJ21yeC1pbnB1dC1lcnJvcicgOicnKydzZWFyY2hUZXh0J1wiXHJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cItCd0LDQudGC0Lgg0LIg0LTQvtC60YPQvNC10L3RgtC1Li4uXCJcclxuICAgICAgICAgIFtuZ01vZGVsXT1cInNlYXJjaFF1ZXJ5XCJcclxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU2VhcmNoKCRldmVudClcIj5cclxuICAgICAgICA8L21yeC1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tY2hldnJvbi1sZWZ0J1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidwLTEnXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJmaW5kUHJldmlvdXMoKVwiXHJcbiAgICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tY2hldnJvbi1yaWdodCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncC0xJ1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwiZmluZE5leHQoKVwiXHJcbiAgICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJmaW5kU3RhdGUgPT09IDAgfHwgZmluZFN0YXRlID09PSAyXCIgY2xhc3M9XCJtcngtcGRmLXZpZXdlcl9fZmluZGJhci1yZXN1bHRcIj5cclxuICAgICAgICAgIHt7Y3VycmVudEZpbmR9fSDQuNC3IHt7dG90YWxGb3VuZH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImZpbmRTdGF0ZSA9PT0gMVwiIGNsYXNzPVwiY29sb3ItbmVnYXRpdmUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPtCk0YDQsNC30LAg0L3QtSDQvdCw0LnQtNC10L3QsDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC1wZGYtdmlld2VyX190b29sYmFyLS1uYXZcIj5cclxuICAgICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLWluLXRoZS1lbmQtbGVmdCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25QYWdlQ2hhbmdlKDEpXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1jaGV2cm9uLWxlZnQnXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uUGFnZUNoYW5nZShwYWdlIC0gMSB8fCAxKVwiXHJcbiAgICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICAgIDxtcngtaW5wdXQtbnVtYmVyIFtzaXplXT1cIidzbWFsbCdcIiBbY3VzdG9tQ2xhc3Nlc109XCInd3B4LTU2J1wiXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJwYWdlXCJcclxuICAgICAgICAgIFtudW1iZXJUeXBlXT1cIidpbnQnXCJcclxuICAgICAgICAgIFttaW5WYWx1ZV09XCIxXCJcclxuICAgICAgICAgIFttYXhWYWx1ZV09XCJwYWdlQ291bnRcIlxyXG4gICAgICAgICAgW2lzQXV0b0NvcnJlY3RpbmdWYWx1ZV09XCJ0cnVlXCJcclxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICA+PC9tcngtaW5wdXQtbnVtYmVyPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXgtMVwiPtC40Lcge3twYWdlQ291bnR9fTwvc3Bhbj5cclxuICAgICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLWNoZXZyb24tcmlnaHQnXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uTmV4dFBhZ2UoKVwiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24taW4tdGhlLWVuZC1yaWdodCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25MYXN0UGFnZSgpXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgKG1yeENsaWNrKT1cInpvb21DbGljayhmYWxzZSlcIlxyXG4gICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tbWludXMnXCJcclxuICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIChtcnhDbGljayk9XCJ6b29tQ2xpY2sodHJ1ZSlcIlxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1wbHVzJ1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWlucHV0LXNlbGVjdFxyXG4gICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCInd3B4LTE1NidcIlxyXG4gICAgICAgIFtpdGVtc109XCJ6b29tT3B0aW9uc1wiXHJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25ab29tTGV2ZWxTZWxlY3QoJGV2ZW50KVwiXHJcbiAgICAgICAgW25nTW9kZWxdPVwic2VsZWN0ZWRab29tXCJcclxuICAgICAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCI+XHJcbiAgICAgIDwvbXJ4LWlucHV0LXNlbGVjdD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tZmMtdGV4dCdcIlxyXG4gICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAqbmdJZj1cInNob3dIYW5kVG9vbEJ1dHRvblwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydtcngtaWNvbi1idXR0b24tLXRvZ2dsZWQnOiAhaGFuZFRvb2x9XCJcclxuICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAobXJ4Q2xpY2spPVwib25IYW5kVG9vbENsaWNrKClcIlxyXG4gICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1yZWxvYWQnXCJcclxuICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgKm5nSWY9XCJzaG93Um90YXRlQnV0dG9uXCJcclxuICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAobXJ4Q2xpY2spPVwib25Sb3RhdGUoMSlcIlxyXG4gICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLXJldHVybidcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgKm5nSWY9XCJzaG93Um90YXRlQnV0dG9uXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uUm90YXRlKC0xKVwiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1hcnJvdy1leHBhbmQnXCJcclxuICAgICAgICAgICpuZ0lmPVwic2hvd0V4cGFuZEJ1dHRvblwiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvbkV4cGFuZE1vZGVDbGljaygpXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLXByaW50J1wiXHJcbiAgICAgICAgICAqbmdJZj1cInNob3dQcmludEJ1dHRvblwiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvblByaW50Q2xpY2soKVwiXHJcbiAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgKm5nSWY9XCJzaG93RG93bmxvYWRCdXR0b25cIlxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1kb3dubG9hZCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25Eb3dubG9hZENsaWNrKClcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmd4LWV4dGVuZGVkLXBkZi12aWV3ZXJcclxuICAgICNwZGZWaWV3ZXJcclxuICAgIGNsYXNzPVwibXJ4LXBkZi12aWV3ZXJcIlxyXG4gICAgW3BhZ2VdPVwicGFnZVwiXHJcbiAgICBbc2lkZWJhclZpc2libGVdPVwic2hvd1NpZGViYXJCdXR0b24gJiYgc2lkZWJhclZpc2libGVcIlxyXG4gICAgKHNpZGViYXJWaXNpYmxlQ2hhbmdlKT1cIm9uU2lkZWJhclZpc2libGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbY3VzdG9tVG9vbGJhcl09XCJjdXN0b21Ub29sYmFyXCJcclxuICAgIFtzaG93U2lkZWJhckJ1dHRvbl09XCJ0cnVlXCJcclxuICAgIChwYWdlc0xvYWRlZCk9XCJvblBhZ2VzTG9hZGVkKCRldmVudClcIlxyXG4gICAgW3pvb21dPVwic2VsZWN0ZWRab29tLnZhbHVlXCJcclxuICAgICh6b29tQ2hhbmdlKT1cIm9uWm9vbUNoYW5nZSgkZXZlbnQpXCJcclxuICAgIFt0ZXh0TGF5ZXJdPVwidHJ1ZVwiXHJcbiAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICBbaGFuZFRvb2xdPVwiaGFuZFRvb2xcIlxyXG4gICAgW3JvdGF0aW9uXT1cInJvdGF0aW9uXCJcclxuICAgICh1cGRhdGVGaW5kTWF0Y2hlc0NvdW50KT1cIm9uVXBkYXRlTWF0Y2hDYXNlKCRldmVudClcIlxyXG4gICAgKHVwZGF0ZUZpbmRTdGF0ZSk9XCJvbkZpbmRTdGF0ZUNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICBbc3JjXT1cInNyY1wiPlxyXG48L25neC1leHRlbmRlZC1wZGYtdmlld2VyPlxyXG4iXX0=
268
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvcGRmLXZpZXdlci9wZGYtdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9wZGYtdmlld2VyL3BkZi12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsS0FBSyxFQUtMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBRUwsU0FBUyxFQUNULDZCQUE2QixFQUc5QixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7QUFzQmpDLE1BQU0sT0FBTyxrQkFBa0I7SUEwQ25CO0lBQ0E7SUFDQTtJQTNDSCxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLFNBQVMsR0FBYyxTQUFTLENBQUMsT0FBTyxDQUFDO0lBQ3pDLFVBQVUsR0FBVyxDQUFDLENBQUM7SUFDdkIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ1Qsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQzdCLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFDdEIsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNkLFlBQVksR0FBOEMsRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQztJQUNsRyxXQUFXLEdBQUc7UUFDbkIsRUFBQyxL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LENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQzt5QkFDckQsQ0FBQztxQkFDSCxhQUNVLENBQUMsY0FBYyxDQUFDLG1CQUNWLHVCQUF1QixDQUFDLE1BQU07d0pBNEJ0QyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUVvQyxTQUFTO3NCQUFsRCxTQUFTO3VCQUFDLDZCQUE2QjtnQkFDakIsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25Jbml0LFxyXG4gIFJlbmRlcmVyMixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgVG9vbHRpcFNlcnZpY2UgfSBmcm9tICcuLi90b29sdGlwL3NlcnZpY2VzL3Rvb2x0aXAuc2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgRmluZFJlc3VsdE1hdGNoZXNDb3VudCxcclxuICBGaW5kU3RhdGUsXHJcbiAgTmd4RXh0ZW5kZWRQZGZWaWV3ZXJDb21wb25lbnQsXHJcbiAgTmd4RXh0ZW5kZWRQZGZWaWV3ZXJTZXJ2aWNlLFxyXG4gIFBhZ2VzTG9hZGVkRXZlbnRcclxufSBmcm9tICduZ3gtZXh0ZW5kZWQtcGRmLXZpZXdlcic7XHJcblxyXG50eXBlIFJvdGF0aW9uVHlwZSA9IDAgfCA5MCB8IDE4MCB8IDI3MDtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LXBkZi12aWV3ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wZGYtdmlld2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wZGYtdmlld2VyLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcignb3BlbkNsb3NlJywgW1xyXG4gICAgICBzdGF0ZShcclxuICAgICAgICAnb3BlbicsXHJcbiAgICAgICAgc3R5bGUoe2hlaWdodDogJyonLCBwYWRkaW5nOiAnKicsICdtYXJnaW4tYm90dG9tJzogJzhweCd9KVxyXG4gICAgICApLFxyXG4gICAgICBzdGF0ZSgnY2xvc2VkJywgc3R5bGUoe2hlaWdodDogMCwgcGFkZGluZzogMCwgJ21hcmdpbi1ib3R0b20nOiAwfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgXSksXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtUb29sdGlwU2VydmljZV0sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZGZWaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgcHVibGljIHNlYXJjaFF1ZXJ5ID0gJyc7XHJcbiAgcHVibGljIGZpbmRTdGF0ZTogRmluZFN0YXRlID0gRmluZFN0YXRlLlBFTkRJTkc7XHJcbiAgcHVibGljIHRvdGFsRm91bmQ6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGN1cnJlbnRGaW5kOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBwYWdlID0gMTtcclxuICBwdWJsaWMgaXNTZWFyY2hQYW5lbFZpc2libGUgPSBmYWxzZTtcclxuICBwdWJsaWMgc2lkZWJhclZpc2libGUgPSB0cnVlO1xyXG4gIHB1YmxpYyBwYWdlQ291bnQgPSAxO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFpvb206IHsgdmFsdWU6IG51bWJlciB8IHN0cmluZywgbGFiZWw6IHN0cmluZyB9ID0ge3ZhbHVlOiAnYXV0bycsIGxhYmVsOiAn0JDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LgnfTtcclxuICBwdWJsaWMgem9vbU9wdGlvbnMgPSBbXHJcbiAgICB7dmFsdWU6ICdhdXRvJywgbGFiZWw6ICfQkNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCd9LFxyXG4gICAge3ZhbHVlOiAncGFnZS1hY3R1YWwnLCBsYWJlbDogJ9Cg0LXQsNC70YzQvdGL0Lkg0YDQsNC30LzQtdGAJ30sXHJcbiAgICB7dmFsdWU6ICdwZ2UtZml0JywgbGFiZWw6ICfQn9C+INGA0LDQt9C80LXRgNGDINGB0YLRgNCw0L3QuNGG0YsnfSxcclxuICAgIHt2YWx1ZTogJ3BhZ2Utd2lkdGgnLCBsYWJlbDogJ9Cf0L4g0YjQuNGA0LjQvdC1INGB0YLRgNCw0L3QuNGG0YsnfSxcclxuICAgIHt2YWx1ZTogNTAsIGxhYmVsOiAnNTAlJ30sXHJcbiAgICB7dmFsdWU6IDEwMCwgbGFiZWw6ICcxMDAlJ30sXHJcbiAgICB7dmFsdWU6IDEyNSwgbGFiZWw6ICcxMjUlJ30sXHJcbiAgICB7dmFsdWU6IDE1MCwgbGFiZWw6ICcxNTAlJ30sXHJcbiAgICB7dmFsdWU6IDIwMCwgbGFiZWw6ICcyMDAlJ30sXHJcbiAgICB7dmFsdWU6IDMwMCwgbGFiZWw6ICczMDAlJ30sXHJcbiAgICB7dmFsdWU6IDQwMCwgbGFiZWw6ICc0MDAlJ30sXHJcbiAgXTtcclxuXHJcbiAgcHVibGljIHJvdGF0aW9uOiBSb3RhdGlvblR5cGUgPSAwO1xyXG5cclxuICBASW5wdXQoKSBzaG93U2lkZWJhckJ1dHRvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0hhbmRUb29sQnV0dG9uID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaGFuZFRvb2wgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dGaW5kYmFyQnV0dG9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93Um90YXRlQnV0dG9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93UHJpbnRCdXR0b24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dEb3dubG9hZEJ1dHRvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0V4cGFuZEJ1dHRvbiA9IHRydWU7XHJcbiAgQElucHV0KCkgZGVmYXVsdFpvb206IG51bWJlciB8ICdhdXRvJyB8ICdwYWdlLWFjdHVhbCcgfCAncGdlLWZpdCcgfCAncGFnZS13aWR0aCcgPSAnYXV0byc7XHJcbiAgQElucHV0KCkgZG93bmxvYWRGaWxlTmFtZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHNyYyA9ICcnO1xyXG5cclxuICBAVmlld0NoaWxkKE5neEV4dGVuZGVkUGRmVmlld2VyQ29tcG9uZW50KSBwZGZWaWV3ZXIhOiBOZ3hFeHRlbmRlZFBkZlZpZXdlckNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdmaW5kTWVudScpIGZpbmRNZW51OiBFbGVtZW50UmVmIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfcGRmVmlld2VyU2VydmljZTogTmd4RXh0ZW5kZWRQZGZWaWV3ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHByaXZhdGUgX3JlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzWydkZWZhdWx0Wm9vbSddICYmIGNoYW5nZXNbJ2RlZmF1bHRab29tJ10uY3VycmVudFZhbHVlICE9IGNoYW5nZXNbJ2RlZmF1bHRab29tJ10ucHJldmlvdXNWYWx1ZSkge1xyXG4gICAgICB0aGlzLmluaXRab29tKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0Wm9vbSgpIHtcclxuICAgIGNvbnN0IGV4aXN0aW5nVmFsdWUgPSB0aGlzLnpvb21PcHRpb25zLmZpbmQoeCA9PiB4LnZhbHVlID09PSB0aGlzLmRlZmF1bHRab29tKTtcclxuXHJcbiAgICBpZiAoZXhpc3RpbmdWYWx1ZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkWm9vbSA9IHsuLi5leGlzdGluZ1ZhbHVlfTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRab29tID0ge3ZhbHVlOiB0aGlzLmRlZmF1bHRab29tLCBsYWJlbDogYCR7dGhpcy5kZWZhdWx0Wm9vbX0lYH07XHJcbiAgfVxyXG5cclxuICBpbml0U2VhcmNoKCkge1xyXG4gICAgaWYgKHRoaXMuc2hvd0ZpbmRiYXJCdXR0b24pIHtcclxuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xyXG4gICAgICAgIGlmIChldmVudC5rZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2YnICYmIGV2ZW50LmN0cmxLZXkpIHtcclxuICAgICAgICAgIHRoaXMuaXNTZWFyY2hQYW5lbFZpc2libGUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5pdFNlYXJjaCgpO1xyXG4gICAgdGhpcy5pbml0Wm9vbSgpO1xyXG5cclxuICAgIHRoaXMuX3JlbmRlcmVyLmxpc3Rlbignd2luZG93JywgJ2NsaWNrJywgKGV2ZW50OiBFdmVudCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5pc1NlYXJjaFBhbmVsVmlzaWJsZSkge1xyXG4gICAgICAgIGNvbnN0IGlzSW5NZW51ID0gdGhpcy5maW5kTWVudT8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpXHJcbiAgICAgICAgICB8fCAoZXZlbnQudGFyZ2V0IGFzIGFueSkuaWQgPT09ICdmaW5kTmV4dCdcclxuICAgICAgICAgIHx8IChldmVudC50YXJnZXQgYXMgYW55KS5pZCA9PT0gJ2ZpbmRQcmV2aW91cyc7XHJcblxyXG4gICAgICAgIGNvbnN0IGlzRmluZEJ1dHRvbiA9IChldmVudC50YXJnZXQgYXMgYW55KS5jbGFzc0xpc3QuY29udGFpbnMoJ21yeC1wZGYtdmlld2VyX19maW5kLWJ1dHRvbicpO1xyXG5cclxuICAgICAgICBpZiAoIWlzSW5NZW51ICYmICFpc0ZpbmRCdXR0b24pIHtcclxuICAgICAgICAgIHRoaXMuaXNTZWFyY2hQYW5lbFZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuX3JlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlQ2hhbmdlKCRldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnBhZ2UgPSAkZXZlbnQgfHwgMTtcclxuICB9XHJcblxyXG4gIG9uTmV4dFBhZ2UoKSB7XHJcbiAgICBpZiAodGhpcy5wYWdlIDwgdGhpcy5wYWdlQ291bnQpIHtcclxuICAgICAgdGhpcy5wYWdlID0gdGhpcy5wYWdlICsgMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTGFzdFBhZ2UoKSB7XHJcbiAgICB0aGlzLnBhZ2UgPSB0aGlzLnBhZ2VDb3VudDtcclxuICB9XHJcblxyXG4gIG9uUGFnZXNMb2FkZWQoJGV2ZW50OiBQYWdlc0xvYWRlZEV2ZW50KSB7XHJcbiAgICBjb25zdCB2aWV3T3V0bGluZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyN2aWV3T3V0bGluZScpO1xyXG4gICAgY29uc3Qgdmlld1RodW1ibmFpbCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyN2aWV3VGh1bWJuYWlsJyk7XHJcblxyXG4gICAgdGhpcy5wYWdlQ291bnQgPSAkZXZlbnQucGFnZXNDb3VudDtcclxuXHJcbiAgICBpZiAodmlld091dGxpbmUpIHtcclxuICAgICAgKHZpZXdPdXRsaW5lIGFzIGFueSkudGl0bGUgPSAnJztcclxuICAgIH1cclxuXHJcbiAgICBpZiAodmlld1RodW1ibmFpbCkge1xyXG4gICAgICAodmlld1RodW1ibmFpbCBhcyBhbnkpLnRpdGxlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB6b29tQ2xpY2soaW5jcmVhc2U6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5zZWxlY3RlZFpvb20udmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRab29tID0ge3ZhbHVlOiAxMDAsIGxhYmVsOiAnMTAwJSd9O1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbmV3VmFsdWUgPSBpbmNyZWFzZSA/IHRoaXMuc2VsZWN0ZWRab29tLnZhbHVlICs9IDIwIDogdGhpcy5zZWxlY3RlZFpvb20udmFsdWUgLT0gMjA7XHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZFpvb20gPSB7dmFsdWU6IG5ld1ZhbHVlLCBsYWJlbDogYCR7bmV3VmFsdWV9JWB9O1xyXG4gIH1cclxuXHJcbiAgb25ab29tTGV2ZWxTZWxlY3QoaXRlbTogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkWm9vbSA9IGl0ZW07XHJcbiAgfVxyXG5cclxuICBvblpvb21DaGFuZ2UoJGV2ZW50OiBzdHJpbmcgfCBudW1iZXIpIHtcclxuICAgIGNvbnN0IGV4aXN0aW5nT3B0aW9uID0gdGhpcy56b29tT3B0aW9ucy5maW5kKHggPT4geC52YWx1ZSA9PT0gJGV2ZW50KTtcclxuXHJcbiAgICBpZiAoZXhpc3RpbmdPcHRpb24pIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFpvb20gPSB7Li4uZXhpc3RpbmdPcHRpb259O1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZml4ZWRWYWx1ZSA9IE1hdGgucm91bmQoTnVtYmVyKCRldmVudCkpO1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRab29tID0ge3ZhbHVlOiBmaXhlZFZhbHVlLCBsYWJlbDogYCR7Zml4ZWRWYWx1ZX0lYH07XHJcbiAgfVxyXG5cclxuICBvblJvdGF0ZShkaXJlY3Rpb246IG51bWJlcikge1xyXG4gICAgbGV0IGRhdGEgPSB0aGlzLnJvdGF0aW9uO1xyXG5cclxuICAgIGlmIChkaXJlY3Rpb24gPCAwKSB7XHJcbiAgICAgIGRhdGEgLT0gOTA7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBkYXRhICs9IDkwO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkYXRhID49IDM2MCkge1xyXG4gICAgICB0aGlzLnJvdGF0aW9uID0gZGF0YSAtIDM2MCBhcyBSb3RhdGlvblR5cGU7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZGF0YSA8IDApIHtcclxuICAgICAgdGhpcy5yb3RhdGlvbiA9IDM2MCArIGRhdGEgYXMgUm90YXRpb25UeXBlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yb3RhdGlvbiA9IGRhdGEgYXMgUm90YXRpb25UeXBlO1xyXG4gIH1cclxuXHJcbiAgb25QcmludENsaWNrKCkge1xyXG4gICAgdGhpcy5fcGRmVmlld2VyU2VydmljZS5wcmludCgpO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBwcmludERpYWxvZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2RpYWxvZyNwcmludFNlcnZpY2VEaWFsb2cnKTtcclxuICAgICAgY29uc3QgcHJvZ3Jlc3NUZXh0ID0gcHJpbnREaWFsb2c/LnF1ZXJ5U2VsZWN0b3IoJy5yb3cgc3BhbicpO1xyXG4gICAgICBjb25zdCBjYW5jZWxCdXR0b24gPSBwcmludERpYWxvZz8ucXVlcnlTZWxlY3RvcignI3ByaW50Q2FuY2VsIHNwYW4nKTtcclxuXHJcbiAgICAgIGlmIChwcm9ncmVzc1RleHQpIHtcclxuICAgICAgICBwcm9ncmVzc1RleHQudGV4dENvbnRlbnQgPSAn0J/QvtC00LPQvtGC0L7QstC60LAg0LTQvtC60YPQvNC10L3RgtCwINC6INC/0LXRh9Cw0YLQuC4uLic7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjYW5jZWxCdXR0b24pIHtcclxuICAgICAgICBjYW5jZWxCdXR0b24udGV4dENvbnRlbnQgPSAn0J7RgtC80LXQvdCwJztcclxuICAgICAgfVxyXG4gICAgfSwgMSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBvbkRvd25sb2FkQ2xpY2soKSB7XHJcbiAgICBjb25zdCBibG9iOiBCbG9iID0gYXdhaXQgdGhpcy5fcGRmVmlld2VyU2VydmljZS5nZXRDdXJyZW50RG9jdW1lbnRBc0Jsb2IoKTtcclxuICAgIGNvbnN0IG9iamVjdFVybDogc3RyaW5nID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgIGNvbnN0IGE6IEhUTUxBbmNob3JFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpIGFzIEhUTUxBbmNob3JFbGVtZW50O1xyXG5cclxuICAgIGEuaHJlZiA9IG9iamVjdFVybDtcclxuICAgIGEuZG93bmxvYWQgPSB0aGlzLmRvd25sb2FkRmlsZU5hbWUgfHwgdGhpcy5zcmM7XHJcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO1xyXG4gICAgYS5jbGljaygpO1xyXG5cclxuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcbiAgICBVUkwucmV2b2tlT2JqZWN0VVJMKG9iamVjdFVybCk7XHJcbiAgfVxyXG5cclxuICBvblNpZGViYXJWaWV3Q2xpY2soKSB7XHJcbiAgICB0aGlzLnNpZGViYXJWaXNpYmxlID0gIXRoaXMuc2lkZWJhclZpc2libGU7XHJcbiAgfVxyXG5cclxuICBvbkV4cGFuZE1vZGVDbGljaygpIHtcclxuICAgIGNvbnN0IHBkZlZpZXdlckFwcGxpY2F0aW9uID0gKHdpbmRvdyBhcyBhbnkpLlBERlZpZXdlckFwcGxpY2F0aW9uO1xyXG5cclxuICAgIGlmIChwZGZWaWV3ZXJBcHBsaWNhdGlvbj8ucGRmVmlld2VyKSB7XHJcbiAgICAgIHBkZlZpZXdlckFwcGxpY2F0aW9uLnJlcXVlc3RQcmVzZW50YXRpb25Nb2RlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaENsaWNrKCkge1xyXG4gICAgdGhpcy5pc1NlYXJjaFBhbmVsVmlzaWJsZSA9ICF0aGlzLmlzU2VhcmNoUGFuZWxWaXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgb25TZWFyY2goJGV2ZW50OiBzdHJpbmcpIHtcclxuICAgIGlmICgkZXZlbnQpIHtcclxuICAgICAgdGhpcy5fcGRmVmlld2VyU2VydmljZS5maW5kKCRldmVudCwge2hpZ2hsaWdodEFsbDogdHJ1ZX0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLl9wZGZWaWV3ZXJTZXJ2aWNlLmZpbmQoJycsIHt9KTtcclxuICB9XHJcblxyXG4gIGZpbmROZXh0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcGRmVmlld2VyU2VydmljZS5maW5kTmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgZmluZFByZXZpb3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcGRmVmlld2VyU2VydmljZS5maW5kUHJldmlvdXMoKTtcclxuICB9XHJcblxyXG4gIG9uVXBkYXRlTWF0Y2hDYXNlKCRldmVudDogRmluZFJlc3VsdE1hdGNoZXNDb3VudCkge1xyXG4gICAgdGhpcy50b3RhbEZvdW5kID0gJGV2ZW50LnRvdGFsO1xyXG4gICAgdGhpcy5jdXJyZW50RmluZCA9ICRldmVudC5jdXJyZW50O1xyXG4gIH1cclxuXHJcbiAgb25GaW5kU3RhdGVDaGFuZ2VkKCRldmVudDogRmluZFN0YXRlKSB7XHJcbiAgICB0aGlzLmZpbmRTdGF0ZSA9ICRldmVudDtcclxuICB9XHJcblxyXG4gIG9uU2lkZWJhclZpc2libGVDaGFuZ2UoJGV2ZW50OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNpZGViYXJWaXNpYmxlID0gJGV2ZW50O1xyXG4gIH1cclxuXHJcbiAgb25IYW5kVG9vbENsaWNrKCkge1xyXG4gICAgdGhpcy5oYW5kVG9vbCA9ICF0aGlzLmhhbmRUb29sO1xyXG4gIH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2N1c3RvbVRvb2xiYXI+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1wZGYtdmlld2VyX190b29sYmFyXCIgaWQ9XCJ0b29sYmFyVmlld2VyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgICpuZ0lmPVwic2hvd1NpZGViYXJCdXR0b25cIlxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1idXJnZXInXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uU2lkZWJhclZpZXdDbGljaygpXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInsnbXJ4LWljb24tYnV0dG9uLS10b2dnbGVkJzogc2lkZWJhclZpc2libGV9XCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICAgIFt0aXRsZV09XCIndGVzdCdcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgICpuZ0lmPVwic2hvd0ZpbmRiYXJCdXR0b25cIlxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1zZWFyY2gnXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uU2VhcmNoQ2xpY2soKVwiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yIG1yeC1wZGYtdmlld2VyX19maW5kLWJ1dHRvbidcIlxyXG4gICAgICAgICAgW25nQ2xhc3NdPVwieydtcngtaWNvbi1idXR0b24tLXRvZ2dsZWQnOiBpc1NlYXJjaFBhbmVsVmlzaWJsZX1cIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJpc1NlYXJjaFBhbmVsVmlzaWJsZVwiIGNsYXNzPVwibXJ4LXBkZi12aWV3ZXJfX2ZpbmRiYXJcIiAjZmluZE1lbnU+XHJcbiAgICAgICAgPG1yeC1pbnB1dC10ZXh0XHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCJmaW5kU3RhdGUgPT09IDEgPyAnbXJ4LWlucHV0LWVycm9yJyA6JycrJ3NlYXJjaFRleHQnXCJcclxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwi0J3QsNC50YLQuCDQsiDQtNC+0LrRg9C80LXQvdGC0LUuLi5cIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoUXVlcnlcIlxyXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWFyY2goJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvbXJ4LWlucHV0LXRleHQ+XHJcbiAgICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1jaGV2cm9uLWxlZnQnXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3AtMSdcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cImZpbmRQcmV2aW91cygpXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1jaGV2cm9uLXJpZ2h0J1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidwLTEnXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJmaW5kTmV4dCgpXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImZpbmRTdGF0ZSA9PT0gMCB8fCBmaW5kU3RhdGUgPT09IDJcIiBjbGFzcz1cIm1yeC1wZGYtdmlld2VyX19maW5kYmFyLXJlc3VsdFwiPlxyXG4gICAgICAgICAge3tjdXJyZW50RmluZH19INC40Lcge3t0b3RhbEZvdW5kfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiZmluZFN0YXRlID09PSAxXCIgY2xhc3M9XCJjb2xvci1uZWdhdGl2ZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+0KTRgNCw0LfQsCDQvdC1INC90LDQudC00LXQvdCwPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXBkZi12aWV3ZXJfX3Rvb2xiYXItLW5hdlwiPlxyXG4gICAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24taW4tdGhlLWVuZC1sZWZ0J1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvblBhZ2VDaGFuZ2UoMSlcIlxyXG4gICAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLWNoZXZyb24tbGVmdCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25QYWdlQ2hhbmdlKHBhZ2UgLSAxIHx8IDEpXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPG1yeC1pbnB1dC1udW1iZXIgW3NpemVdPVwiJ3NtYWxsJ1wiIFtjdXN0b21DbGFzc2VzXT1cIid3cHgtNTYnXCJcclxuICAgICAgICAgIFtuZ01vZGVsXT1cInBhZ2VcIlxyXG4gICAgICAgICAgW251bWJlclR5cGVdPVwiJ2ludCdcIlxyXG4gICAgICAgICAgW21pblZhbHVlXT1cIjFcIlxyXG4gICAgICAgICAgW21heFZhbHVlXT1cInBhZ2VDb3VudFwiXHJcbiAgICAgICAgICBbaXNBdXRvQ29ycmVjdGluZ1ZhbHVlXT1cInRydWVcIlxyXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgID48L21yeC1pbnB1dC1udW1iZXI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJteC0xXCI+0LjQtyB7e3BhZ2VDb3VudH19PC9zcGFuPlxyXG4gICAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tY2hldnJvbi1yaWdodCdcIlxyXG4gICAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25OZXh0UGFnZSgpXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1pbi10aGUtZW5kLXJpZ2h0J1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvbkxhc3RQYWdlKClcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAobXJ4Q2xpY2spPVwiem9vbUNsaWNrKGZhbHNlKVwiXHJcbiAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1taW51cydcIlxyXG4gICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCIncHktMSBweC0yJ1wiXHJcbiAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgICAgPG1yeC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cInpvb21DbGljayh0cnVlKVwiXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLXBsdXMnXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaW5wdXQtc2VsZWN0XHJcbiAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIid3cHgtMTU2J1wiXHJcbiAgICAgICAgW2l0ZW1zXT1cInpvb21PcHRpb25zXCJcclxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblpvb21MZXZlbFNlbGVjdCgkZXZlbnQpXCJcclxuICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFpvb21cIlxyXG4gICAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIj5cclxuICAgICAgPC9tcngtaW5wdXQtc2VsZWN0PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgW2ljb25DbGFzc109XCInaWNvbi1mYy10ZXh0J1wiXHJcbiAgICAgICAgW3NpemVdPVwiJ21lZGl1bSdcIlxyXG4gICAgICAgICpuZ0lmPVwic2hvd0hhbmRUb29sQnV0dG9uXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7J21yeC1pY29uLWJ1dHRvbi0tdG9nZ2xlZCc6ICFoYW5kVG9vbH1cIlxyXG4gICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgIChtcnhDbGljayk9XCJvbkhhbmRUb29sQ2xpY2soKVwiXHJcbiAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLXJlbG9hZCdcIlxyXG4gICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAqbmdJZj1cInNob3dSb3RhdGVCdXR0b25cIlxyXG4gICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgIChtcnhDbGljayk9XCJvblJvdGF0ZSgxKVwiXHJcbiAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tcmV0dXJuJ1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICAqbmdJZj1cInNob3dSb3RhdGVCdXR0b25cIlxyXG4gICAgICAgICAgW3N0YXRlXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICAobXJ4Q2xpY2spPVwib25Sb3RhdGUoLTEpXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLWFycm93LWV4cGFuZCdcIlxyXG4gICAgICAgICAgKm5nSWY9XCJzaG93RXhwYW5kQnV0dG9uXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uRXhwYW5kTW9kZUNsaWNrKClcIlxyXG4gICAgICA+PC9tcngtaWNvbi1idXR0b24+XHJcbiAgICAgIDxtcngtaWNvbi1idXR0b25cclxuICAgICAgICAgIFtpY29uQ2xhc3NdPVwiJ2ljb24tcHJpbnQnXCJcclxuICAgICAgICAgICpuZ0lmPVwic2hvd1ByaW50QnV0dG9uXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtzdGF0ZV09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ3B5LTEgcHgtMidcIlxyXG4gICAgICAgICAgKG1yeENsaWNrKT1cIm9uUHJpbnRDbGljaygpXCJcclxuICAgICAgPjwvbXJ4LWljb24tYnV0dG9uPlxyXG4gICAgICA8bXJ4LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAqbmdJZj1cInNob3dEb3dubG9hZEJ1dHRvblwiXHJcbiAgICAgICAgICBbaWNvbkNsYXNzXT1cIidpY29uLWRvd25sb2FkJ1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbc3RhdGVdPVwiJ2RlZmF1bHQnXCJcclxuICAgICAgICAgIFtjdXN0b21DbGFzc2VzXT1cIidweS0xIHB4LTInXCJcclxuICAgICAgICAgIChtcnhDbGljayk9XCJvbkRvd25sb2FkQ2xpY2soKVwiXHJcbiAgICAgID48L21yeC1pY29uLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZ3gtZXh0ZW5kZWQtcGRmLXZpZXdlclxyXG4gICAgI3BkZlZpZXdlclxyXG4gICAgY2xhc3M9XCJtcngtcGRmLXZpZXdlclwiXHJcbiAgICBbcGFnZV09XCJwYWdlXCJcclxuICAgIFtzaWRlYmFyVmlzaWJsZV09XCJzaG93U2lkZWJhckJ1dHRvbiAmJiBzaWRlYmFyVmlzaWJsZVwiXHJcbiAgICAoc2lkZWJhclZpc2libGVDaGFuZ2UpPVwib25TaWRlYmFyVmlzaWJsZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgIFtjdXN0b21Ub29sYmFyXT1cImN1c3RvbVRvb2xiYXJcIlxyXG4gICAgW3Nob3dTaWRlYmFyQnV0dG9uXT1cInRydWVcIlxyXG4gICAgKHBhZ2VzTG9hZGVkKT1cIm9uUGFnZXNMb2FkZWQoJGV2ZW50KVwiXHJcbiAgICBbem9vbV09XCJzZWxlY3RlZFpvb20udmFsdWVcIlxyXG4gICAgKHpvb21DaGFuZ2UpPVwib25ab29tQ2hhbmdlKCRldmVudClcIlxyXG4gICAgW3RleHRMYXllcl09XCJ0cnVlXCJcclxuICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgIFtoYW5kVG9vbF09XCJoYW5kVG9vbFwiXHJcbiAgICBbcm90YXRpb25dPVwicm90YXRpb25cIlxyXG4gICAgKHVwZGF0ZUZpbmRNYXRjaGVzQ291bnQpPVwib25VcGRhdGVNYXRjaENhc2UoJGV2ZW50KVwiXHJcbiAgICAodXBkYXRlRmluZFN0YXRlKT1cIm9uRmluZFN0YXRlQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgIFtzcmNdPVwic3JjXCI+XHJcbjwvbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXI+XHJcbiJdfQ==
@@ -14,6 +14,7 @@ export class ToasterService {
14
14
  closeButton: true,
15
15
  positionClass: ToasterPosition.BottomRight,
16
16
  enableHtml: false,
17
+ timeOut: 5000
17
18
  };
18
19
  if (customConfig) {
19
20
  for (let key in customConfig) {
@@ -45,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
45
46
  providedIn: 'root'
46
47
  }]
47
48
  }], ctorParameters: () => [{ type: i1.ToastrService }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci1zZXJ2aWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL3RvYXN0ZXItc2VydmljZS90b2FzdGVyLXNlcnZpY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUsxRSxNQUFNLE9BQU8sY0FBYztJQUdmO0lBRFYsWUFDVSxlQUE4QjtRQUE5QixvQkFBZSxHQUFmLGVBQWUsQ0FBZTtJQUNyQyxDQUFDO0lBRUosSUFBSSxDQUFDLElBQTRELEVBQUUsWUFBd0M7UUFDekcsTUFBTSxXQUFXLEdBQThCO1lBQzdDLGNBQWMsRUFBRSxnQkFBZ0I7WUFDaEMsV0FBVyxFQUFFLElBQUk7WUFDakIsYUFBYSxFQUFFLGVBQWUsQ0FBQyxXQUFXO1lBQzFDLFVBQVUsRUFBRSxLQUFLO1NBQ2xCLENBQUM7UUFFRixJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLEtBQUssSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7Z0JBQzdCLElBQUksWUFBWSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNyQyxXQUFXLENBQUMsR0FBc0MsQ0FBQyxHQUFHLFlBQVksQ0FBQyxHQUFzQyxDQUFDLENBQUE7Z0JBQzVHLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUVELFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLEtBQUssV0FBVyxDQUFDLFFBQVE7Z0JBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDcEUsTUFBTTtZQUNSLEtBQUssV0FBVyxDQUFDLFFBQVE7Z0JBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDbEUsTUFBTTtZQUNSLEtBQUssV0FBVyxDQUFDLFNBQVM7Z0JBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDcEUsTUFBTTtZQUNSO2dCQUNFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNyRSxDQUFDO0lBQ0gsQ0FBQzt3R0FuQ1UsY0FBYzs0R0FBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0clNlcnZpY2UgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuaW1wb3J0IHsgVG9hc3RlclBvc2l0aW9uLCBUb2FzdGVyVHlwZSB9IGZyb20gJy4vbW9kZWxzL3RvYXN0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBJbmRpdmlkdWFsQ29uZmlnIH0gZnJvbSAnbmd4LXRvYXN0ci90b2FzdHIvdG9hc3RyLWNvbmZpZyc7XHJcbmltcG9ydCB7IFRvYXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9hc3Rlci90b2FzdGVyLmNvbXBvbmVudCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb2FzdGVyU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfdG9hc3RlclNlcnZpY2U6IFRvYXN0clNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIHNob3coZGF0YToge3RpdGxlPzogc3RyaW5nLCBtZXNzYWdlPzogc3RyaW5nLCB0eXBlPzogVG9hc3RlclR5cGV9LCBjdXN0b21Db25maWc/OiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+KSB7XHJcbiAgICBjb25zdCB0b2FzdENvbmZpZzogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHtcclxuICAgICAgdG9hc3RDb21wb25lbnQ6IFRvYXN0ZXJDb21wb25lbnQsXHJcbiAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICBwb3NpdGlvbkNsYXNzOiBUb2FzdGVyUG9zaXRpb24uQm90dG9tUmlnaHQsXHJcbiAgICAgIGVuYWJsZUh0bWw6IGZhbHNlLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAoY3VzdG9tQ29uZmlnKSB7XHJcbiAgICAgIGZvciAobGV0IGtleSBpbiBjdXN0b21Db25maWcpIHtcclxuICAgICAgICBpZiAoY3VzdG9tQ29uZmlnLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICAgIHRvYXN0Q29uZmlnW2tleSBhcyBrZXlvZiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+XSA9IGN1c3RvbUNvbmZpZ1trZXkgYXMga2V5b2YgUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPl1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKGRhdGEudHlwZSkge1xyXG4gICAgICBjYXNlIFRvYXN0ZXJUeXBlLlBvc2l0aXZlOlxyXG4gICAgICAgIHRoaXMuX3RvYXN0ZXJTZXJ2aWNlLnN1Y2Nlc3MoZGF0YS5tZXNzYWdlLCBkYXRhLnRpdGxlLCB0b2FzdENvbmZpZyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgVG9hc3RlclR5cGUuTmVnYXRpdmU6XHJcbiAgICAgICAgdGhpcy5fdG9hc3RlclNlcnZpY2UuZXJyb3IoZGF0YS5tZXNzYWdlLCBkYXRhLnRpdGxlLCB0b2FzdENvbmZpZyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgVG9hc3RlclR5cGUuQXR0ZW50aW9uOlxyXG4gICAgICAgIHRoaXMuX3RvYXN0ZXJTZXJ2aWNlLndhcm5pbmcoZGF0YS5tZXNzYWdlLCBkYXRhLnRpdGxlLCB0b2FzdENvbmZpZyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgdGhpcy5fdG9hc3RlclNlcnZpY2UuaW5mbyhkYXRhLm1lc3NhZ2UsIGRhdGEudGl0bGUsIHRvYXN0Q29uZmlnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci1zZXJ2aWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL3RvYXN0ZXItc2VydmljZS90b2FzdGVyLXNlcnZpY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUsxRSxNQUFNLE9BQU8sY0FBYztJQUdmO0lBRFYsWUFDVSxlQUE4QjtRQUE5QixvQkFBZSxHQUFmLGVBQWUsQ0FBZTtJQUNyQyxDQUFDO0lBRUosSUFBSSxDQUFDLElBQTRELEVBQUUsWUFBd0M7UUFDekcsTUFBTSxXQUFXLEdBQThCO1lBQzdDLGNBQWMsRUFBRSxnQkFBZ0I7WUFDaEMsV0FBVyxFQUFFLElBQUk7WUFDakIsYUFBYSxFQUFFLGVBQWUsQ0FBQyxXQUFXO1lBQzFDLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQztRQUVGLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsS0FBSyxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxZQUFZLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3JDLFdBQVcsQ0FBQyxHQUFzQyxDQUFDLEdBQUcsWUFBWSxDQUFDLEdBQXNDLENBQUMsQ0FBQTtnQkFDNUcsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsS0FBSyxXQUFXLENBQUMsUUFBUTtnQkFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNwRSxNQUFNO1lBQ1IsS0FBSyxXQUFXLENBQUMsUUFBUTtnQkFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNsRSxNQUFNO1lBQ1IsS0FBSyxXQUFXLENBQUMsU0FBUztnQkFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNwRSxNQUFNO1lBQ1I7Z0JBQ0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7SUFDSCxDQUFDO3dHQXBDVSxjQUFjOzRHQUFkLGNBQWMsY0FGYixNQUFNOzs0RkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBUb2FzdGVyUG9zaXRpb24sIFRvYXN0ZXJUeXBlIH0gZnJvbSAnLi9tb2RlbHMvdG9hc3Rlci5tb2RlbCc7XHJcbmltcG9ydCB7IEluZGl2aWR1YWxDb25maWcgfSBmcm9tICduZ3gtdG9hc3RyL3RvYXN0ci90b2FzdHItY29uZmlnJztcclxuaW1wb3J0IHsgVG9hc3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b2FzdGVyL3RvYXN0ZXIuY29tcG9uZW50JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvYXN0ZXJTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgc2hvdyhkYXRhOiB7dGl0bGU/OiBzdHJpbmcsIG1lc3NhZ2U/OiBzdHJpbmcsIHR5cGU/OiBUb2FzdGVyVHlwZX0sIGN1c3RvbUNvbmZpZz86IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4pIHtcclxuICAgIGNvbnN0IHRvYXN0Q29uZmlnOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge1xyXG4gICAgICB0b2FzdENvbXBvbmVudDogVG9hc3RlckNvbXBvbmVudCxcclxuICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgIHBvc2l0aW9uQ2xhc3M6IFRvYXN0ZXJQb3NpdGlvbi5Cb3R0b21SaWdodCxcclxuICAgICAgZW5hYmxlSHRtbDogZmFsc2UsXHJcbiAgICAgIHRpbWVPdXQ6IDUwMDBcclxuICAgIH07XHJcblxyXG4gICAgaWYgKGN1c3RvbUNvbmZpZykge1xyXG4gICAgICBmb3IgKGxldCBrZXkgaW4gY3VzdG9tQ29uZmlnKSB7XHJcbiAgICAgICAgaWYgKGN1c3RvbUNvbmZpZy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XHJcbiAgICAgICAgICB0b2FzdENvbmZpZ1trZXkgYXMga2V5b2YgUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPl0gPSBjdXN0b21Db25maWdba2V5IGFzIGtleW9mIFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz5dXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3dpdGNoIChkYXRhLnR5cGUpIHtcclxuICAgICAgY2FzZSBUb2FzdGVyVHlwZS5Qb3NpdGl2ZTpcclxuICAgICAgICB0aGlzLl90b2FzdGVyU2VydmljZS5zdWNjZXNzKGRhdGEubWVzc2FnZSwgZGF0YS50aXRsZSwgdG9hc3RDb25maWcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFRvYXN0ZXJUeXBlLk5lZ2F0aXZlOlxyXG4gICAgICAgIHRoaXMuX3RvYXN0ZXJTZXJ2aWNlLmVycm9yKGRhdGEubWVzc2FnZSwgZGF0YS50aXRsZSwgdG9hc3RDb25maWcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFRvYXN0ZXJUeXBlLkF0dGVudGlvbjpcclxuICAgICAgICB0aGlzLl90b2FzdGVyU2VydmljZS53YXJuaW5nKGRhdGEubWVzc2FnZSwgZGF0YS50aXRsZSwgdG9hc3RDb25maWcpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRoaXMuX3RvYXN0ZXJTZXJ2aWNlLmluZm8oZGF0YS5tZXNzYWdlLCBkYXRhLnRpdGxlLCB0b2FzdENvbmZpZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1484,11 +1484,11 @@ class DropdownComponent {
1484
1484
  });
1485
1485
  }
1486
1486
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1487
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: DropdownComponent, selector: "mrx-dropdown", inputs: { mainPlacement: "mainPlacement", fallbackPlacements: "fallbackPlacements", closeOnClick: "closeOnClick", customClasses: "customClasses" }, queries: [{ propertyName: "dropdownToggle", first: true, predicate: ["dropdownToggle"], descendants: true }, { propertyName: "dropdownMenu", first: true, predicate: ["dropdownMenu"], descendants: true }], viewQueries: [{ propertyName: "dropdownToggleEl", first: true, predicate: ["dropdownToggleEl"], descendants: true }, { propertyName: "dropdownContent", first: true, predicate: ["dropdownContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;overflow:hidden;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;padding:5px 0;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.175)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
1487
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: DropdownComponent, selector: "mrx-dropdown", inputs: { mainPlacement: "mainPlacement", fallbackPlacements: "fallbackPlacements", closeOnClick: "closeOnClick", customClasses: "customClasses" }, queries: [{ propertyName: "dropdownToggle", first: true, predicate: ["dropdownToggle"], descendants: true }, { propertyName: "dropdownMenu", first: true, predicate: ["dropdownMenu"], descendants: true }], viewQueries: [{ propertyName: "dropdownToggleEl", first: true, predicate: ["dropdownToggleEl"], descendants: true }, { propertyName: "dropdownContent", first: true, predicate: ["dropdownContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;background-color:#fff;background-clip:padding-box;box-shadow:0 1px 4px #3a3a3a4d;min-width:240px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-2);padding-left:var(--spacing-4);cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item:hover{background-color:var(--brand-bg-tertiary-hover)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content{display:flex;align-items:flex-start;gap:var(--spacing-2)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content .mrx-icon{transform:translateY(2px)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-text{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);color:var(--neutral-text-primary)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
1488
1488
  }
1489
1489
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: DropdownComponent, decorators: [{
1490
1490
  type: Component,
1491
- args: [{ selector: 'mrx-dropdown', template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;overflow:hidden;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;padding:5px 0;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.175)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"] }]
1491
+ args: [{ selector: 'mrx-dropdown', template: "<div class=\"mrx-dropdown d-flex\" [class]=\"customClasses\">\r\n <div class=\"mrx-dropdown-toggle\" #dropdownToggleEl>\r\n <ng-container *ngTemplateOutlet=\"dropdownToggle\"></ng-container>\r\n </div>\r\n\r\n <div class=\"mrx-dropdown-content\" #dropdownContent>\r\n\r\n <div class=\"mrx-dropdown-wrapper\">\r\n <div class=\"mrx-dropdown-menu\" *ngIf=\"dropdownMenu\">\r\n <ng-container *ngTemplateOutlet=\"dropdownMenu\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".mrx-dropdown.mrx-dropdown .mrx-dropdown-content{border-radius:4px;z-index:1000;display:none}.mrx-dropdown.mrx-dropdown .mrx-dropdown-content[data-show]{display:block}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu{display:flex;flex-direction:column;border-radius:4px;background-color:#fff;background-clip:padding-box;box-shadow:0 1px 4px #3a3a3a4d;min-width:240px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-2);padding-left:var(--spacing-4);cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item:hover{background-color:var(--brand-bg-tertiary-hover)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content{display:flex;align-items:flex-start;gap:var(--spacing-2)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-content .mrx-icon{transform:translateY(2px)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu .dropdown-item-text{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);color:var(--neutral-text-primary)}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button{width:100%;padding:.25rem 1rem;clear:both;color:#282828;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;font-weight:400;font-size:14px;line-height:20px;display:flex;align-items:center;cursor:pointer}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button:hover{color:#282828;background-color:#edf5ff}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button svg{margin-right:10px}:host::ng-deep .mrx-dropdown-menu.mrx-dropdown-menu button span{font-weight:400;font-size:14px;line-height:20px}.mrx-dropdown-toggle.mrx-dropdown-toggle{cursor:pointer}\n"] }]
1492
1492
  }], propDecorators: { dropdownToggleEl: [{
1493
1493
  type: ViewChild,
1494
1494
  args: ['dropdownToggleEl']
@@ -4159,6 +4159,7 @@ class ToasterService {
4159
4159
  closeButton: true,
4160
4160
  positionClass: ToasterPosition.BottomRight,
4161
4161
  enableHtml: false,
4162
+ timeOut: 5000
4162
4163
  };
4163
4164
  if (customConfig) {
4164
4165
  for (let key in customConfig) {
@@ -15850,8 +15851,7 @@ class PdfViewerComponent {
15850
15851
  this._ref = _ref;
15851
15852
  }
15852
15853
  ngOnChanges(changes) {
15853
- const { defaultZoom } = changes;
15854
- if (defaultZoom.currentValue != defaultZoom.previousValue) {
15854
+ if (changes['defaultZoom'] && changes['defaultZoom'].currentValue != changes['defaultZoom'].previousValue) {
15855
15855
  this.initZoom();
15856
15856
  }
15857
15857
  }