@datarailsshared/datarailsshared 1.5.496 → 1.5.500

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.
@@ -41,15 +41,18 @@ function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template(rf,
41
41
  i0.ɵɵelementEnd();
42
42
  } if (rf & 2) {
43
43
  const actionIcon_r12 = ctx.$implicit;
44
+ const index_r3 = i0.ɵɵnextContext(2).index;
45
+ const ctx_r10 = i0.ɵɵnextContext();
44
46
  i0.ɵɵclassMap(actionIcon_r12.icon);
45
47
  i0.ɵɵclassProp("showOnHover", actionIcon_r12.showOnHover);
48
+ i0.ɵɵattribute("data-analytics", ctx_r10.getDataAnalyticsTag(actionIcon_r12, index_r3));
46
49
  } }
47
50
  function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_2_Template(rf, ctx) { if (rf & 1) {
48
51
  i0.ɵɵelement(0, "i", 16);
49
52
  } }
50
53
  function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_Template(rf, ctx) { if (rf & 1) {
51
54
  i0.ɵɵelementContainerStart(0, 12);
52
- i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template, 1, 4, "i", 13);
55
+ i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template, 1, 5, "i", 13);
53
56
  i0.ɵɵtemplate(2, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_2_Template, 1, 0, "i", 14);
54
57
  i0.ɵɵelementContainerEnd();
55
58
  } if (rf & 2) {
@@ -69,9 +72,9 @@ function DrDropdownComponent_dr_dropdown_item_4_ng_container_3_Template(rf, ctx)
69
72
  } }
70
73
  const _c2 = function () { return { withoutArrow: true }; };
71
74
  function DrDropdownComponent_dr_dropdown_item_4_Template(rf, ctx) { if (rf & 1) {
72
- const _r19 = i0.ɵɵgetCurrentView();
75
+ const _r20 = i0.ɵɵgetCurrentView();
73
76
  i0.ɵɵelementStart(0, "dr-dropdown-item", 4);
74
- i0.ɵɵlistener("mousedown", function DrDropdownComponent_dr_dropdown_item_4_Template_dr_dropdown_item_mousedown_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const act_r2 = restoredCtx.$implicit; const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.action(act_r2)); });
77
+ i0.ɵɵlistener("mousedown", function DrDropdownComponent_dr_dropdown_item_4_Template_dr_dropdown_item_mousedown_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r20); const act_r2 = restoredCtx.$implicit; const ctx_r19 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r19.action(act_r2)); });
75
78
  i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_1_Template, 4, 2, "ng-container", 5);
76
79
  i0.ɵɵtemplate(2, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_Template, 3, 2, "ng-container", 6);
77
80
  i0.ɵɵtemplate(3, DrDropdownComponent_dr_dropdown_item_4_ng_container_3_Template, 1, 4, "ng-container", 7);
@@ -232,7 +235,7 @@ __decorate([
232
235
  ], DrDropdownComponent.prototype, "onMouseleave", null);
233
236
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDropdownComponent, [{
234
237
  type: Component,
235
- args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"'left'\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n role=\"option\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
238
+ args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"'left'\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n role=\"option\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [attr.data-analytics]=\"getDataAnalyticsTag(actionIcon, index)\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
236
239
  }], function () { return []; }, { menuContainer: [{
237
240
  type: ViewChild,
238
241
  args: ['menuContainer', { static: true }]
@@ -242,4 +245,4 @@ __decorate([
242
245
  type: Output,
243
246
  args: ['action']
244
247
  }], onMouseleave: [] }); })();
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0lDTS9CLHdCQUFxRTs7O0lBQWpELDBCQUFrQjs7O0lBRDFDLGdDQUEyRDtJQUN2RCxrR0FBcUU7SUFDckUsZ0NBQWdDO0lBQUEsWUFBZTtJQUFBLGlCQUFPO0lBQzFELDBCQUFlOzs7SUFGUCxlQUFjO0lBQWQsa0NBQWM7SUFDYyxlQUFlO0lBQWYsa0NBQWU7Ozs7SUFJL0MsNkJBSWtFO0lBQTlELDJUQUFhLGVBQUEsOERBQStDLENBQUEsSUFBQztJQUFDLGlCQUFJOzs7SUFGbEUsa0NBQXlCO0lBQ3pCLHlEQUE0Qzs7O0lBRWhELHdCQUE0RDs7O0lBTmhFLGlDQUEyRDtJQUN2RCxtR0FJ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SUFFRCxtQkFBbUIsQ0FBQyxHQUEyQixFQUFFLEtBQWE7UUFDMUQsT0FBTyxHQUFHLENBQUMsYUFBYTtZQUNwQixDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWE7WUFDbkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhO2dCQUNsQixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDO2dCQUNyRSxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2pCLENBQUM7dUdBdklRLG1CQUFtQjttR0FBbkIsbUJBQW1COzs7Ozs7O1lDekJoQyxpQ0FBaUUsYUFBQTtZQUN6Qix1R0FBYyxrQkFBYyxJQUFDLDBGQUFlLGtCQUFjLElBQTdCO1lBQzdELGtCQUFtRDtZQUVuRCwrRkFzQ21COztZQUN2QixpQkFBTSxFQUFBOztZQTNDVSxpQ0FBd0I7WUFLaEIsZUFBa0M7WUFBbEMsd0RBQWtDOzs7QUQ0STFEO0lBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQzs7Ozt1REFHYjt1RkEzSFEsbUJBQW1CO2NBTi9CLFNBQVM7MkJBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNO3NDQVkvQyxhQUFhO2tCQURaLFNBQVM7bUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQVl4QyxPQUFPO2tCQURWLEtBQUs7WUE2Qk4sUUFBUTtrQkFEUCxNQUFNO21CQUFDLFFBQVE7WUF5RWhCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBEZXN0cm95UmVmLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSURyb3Bkb3duLCBJRHJvcGRvd25BY3Rpb24sIElEcm9wZG93bkFjdGlvbkljb24sIElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi4vbW9kZWxzL3BvcG92ZXInO1xuaW1wb3J0IHsgZmlyc3QsIG1lcmdlLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERyb3Bkb3duSW5zdGFuY2VSZWYsIERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7IERlYm91bmNlIH0gZnJvbSAnLi4vdXRpbHMvZGVjb3JhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItZHJvcGRvd24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIERyb3Bkb3duSW5zdGFuY2VSZWYge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBvcG92ZXJSZWYgPSBpbmplY3QoRHJQb3BvdmVyUmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgPSBpbmplY3QoRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgX2FjdGl2ZSA9IHRydWU7XG5cbiAgICBAVmlld0NoaWxkKCdtZW51Q29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBtZW51Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIGRyRHJvcGRvd25JbkhvdmVyOiBib29sZWFuO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJEcm9wZG93bkluSG92ZXJDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBsaXN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+W10gPSBbXTtcbiAgICBjb250YWluZXJDbGFzczogc3RyaW5nO1xuICAgIHdhc0hvdmVyZWQgPSBmYWxzZTtcbiAgICBhc0NoaWxkID0gZmFsc2U7XG4gICAgZGF0YUFuYWx5dGljczogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgb3B0aW9ucyhkYXRhOiBJRHJvcGRvd248SURyb3Bkb3duSXRlbTx1bmtub3duPj4pIHtcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuZHJEcm9wZG93bkluSG92ZXIgPSBkYXRhLmRyRHJvcGRvd25JbkhvdmVyO1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJDbGFzcyA9IGRhdGEuY2xhc3M7XG4gICAgICAgICAgICB0aGlzLmRhdGFBbmFseXRpY3MgPSBkYXRhLmRhdGFBbmFseXRpY3M7XG4gICAgICAgICAgICB0aGlzLmxpc3QgPSBkYXRhLmxpc3QgfHwgW107XG4gICAgICAgICAgICB0aGlzLmxpc3QuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGlsZE9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogaXRlbT8uY2hpbGRPcHRpb25zPy5jbGFzcyB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpdGVtPy5jaGlsZE9wdGlvbnM/LnBvc2l0aW9uIHx8ICdsZWZ0LXRvcCcsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5pbmFjdGl2ZSh0aGlzKVxuICAgICAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgpLCB0YWtlVW50aWwobWVyZ2UodGhpcy5kZXN0cm95JCwgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQpKSlcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAT3V0cHV0KCdhY3Rpb24nKVxuICAgIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxJRHJvcGRvd25BY3Rpb248dW5rbm93bj4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5kcm9wZG93bkluc3RhbmNlU2VydmljZS5yZWdpc3Rlcih0aGlzKTtcbiAgICAgICAgaW5qZWN0KERlc3Ryb3lSZWYpLm9uRGVzdHJveSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlLnVucmVnaXN0ZXIodGhpcyk7XG4gICAgICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICghY2hhbmdlcz8uZHJEcm9wZG93bkluSG92ZXI/LmlzRmlyc3RDaGFuZ2UoKSkge1xuICAgICAgICAgICAgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQubmV4dCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGlzYWJsZWQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghYWN0LmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBhY3QuZGlzYWJsZWQgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5kaXNhYmxlZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBhY3QuZGlzYWJsZWQoYWN0LmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0ZWQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghYWN0LnNlbGVjdGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBhY3Quc2VsZWN0ZWQgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBhY3Quc2VsZWN0ZWQoYWN0LmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9vbHRpcFRvU2hvdyhhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBzdHJpbmcge1xuICAgICAgICBpZiAoYWN0LnRvb2xUaXBJZkRpc2FibGVkICYmICF0aGlzLmRpc2FibGVkKGFjdCkpIHJldHVybiAnJztcbiAgICAgICAgcmV0dXJuIGFjdC5jdXN0b21Ub29sdGlwID8gYWN0LmN1c3RvbVRvb2x0aXAoYWN0LmRhdGEpIDogYWN0LnRvb2xUaXA7XG4gICAgfVxuXG4gICAgYWN0aW9uKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPikge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoYWN0KSkge1xuICAgICAgICAgICAgaWYgKGFjdC5hY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBhY3QuYWN0aW9uKGFjdC5kYXRhKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnQgPSB7IGV2ZW50OiBhY3QuZXZlbnQgfHwgYWN0LnRpdGxlIHx8ICdkZWZhdWx0JywgZGF0YTogYWN0LmRhdGEgfTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQWN0aW9uLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3Rpb25JY29uQ2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50LCBhY3Rpb25JY29uOiBJRHJvcGRvd25BY3Rpb25JY29uPHVua25vd24+LCBkYXRhOiB1bmtub3duKSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgYWN0aW9uSWNvbi5hY3Rpb24oZGF0YSk7XG4gICAgfVxuXG4gICAgaGFzQ2hpbGRyZW4oaXRlbTogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISFpdGVtLmNoaWxkcmVuPy5sZW5ndGg7XG4gICAgfVxuXG4gICAgb25Nb3VzZWVudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndhc0hvdmVyZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl9hY3RpdmUgPSB0cnVlO1xuICAgIH1cblxuICAgIEBEZWJvdW5jZSgyMDApXG4gICAgb25Nb3VzZWxlYXZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0RGF0YUFuYWx5dGljc1RhZyhhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4sIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYWN0LmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgID8gYWN0LmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgIDogdGhpcy5kYXRhQW5hbHl0aWNzXG4gICAgICAgICAgICAgID8gdGhpcy5kYXRhQW5hbHl0aWNzICsgJ18nICsgKGFjdC50aXRsZT8ucmVwbGFjZSgvIC9nLCAnLScpIHx8IGluZGV4KVxuICAgICAgICAgICAgICA6IG51bGw7XG4gICAgfVxufVxuIiwiPGRpdiAjbWVudUNvbnRhaW5lciBbY2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIiBjbGFzcz1cImRyLWRyb3Bkb3duXCI+XG4gICAgPGRpdiBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJcIiAobW91c2VlbnRlcik9XCJvbk1vdXNlZW50ZXIoKVwiIChtb3VzZWxlYXZlKT1cIm9uTW91c2VsZWF2ZSgpXCIgdGFiaW5kZXg9XCItMVwiIHJvbGU9XCJsaXN0Ym94XCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRyLWRyb3Bkb3duLWl0ZW1cIj48L25nLWNvbnRlbnQ+XG5cbiAgICAgICAgPGRyLWRyb3Bkb3duLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Qgb2YgbGlzdCB8IGRyRHJvcGRvd25JdGVtU2hvd1BpcGU7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgICAgIChtb3VzZWRvd24pPVwiYWN0aW9uKGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcF09XCJ0b29sdGlwVG9TaG93KGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcFBvc2l0aW9uXT1cIidsZWZ0J1wiXG4gICAgICAgICAgICBbZHJUb29sdGlwT3B0aW9uc109XCJ7IHdpdGhvdXRBcnJvdzogdHJ1ZSB9XCJcbiAgICAgICAgICAgIFtkclRvb2x0aXBDbGFzc109XCInZHItZHJvcGRvd25fX3Rvb2x0aXAnXCJcbiAgICAgICAgICAgIFtkckRyb3Bkb3duXT1cImhhc0NoaWxkcmVuKGFjdCkgJiYgYWN0LmNoaWxkcmVuXCJcbiAgICAgICAgICAgIFtkckRyb3Bkb3duQ2xhc3NdPVwiYWN0LmNoaWxkT3B0aW9ucz8uY2xhc3NcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25JbkhvdmVyXT1cInRydWVcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25Qb3NpdGlvbl09XCJhY3QuY2hpbGRPcHRpb25zPy5wb3NpdGlvblwiXG4gICAgICAgICAgICBkckRyb3Bkb3duQ2hpbGRcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZChhY3QpXCJcbiAgICAgICAgICAgIFtzZWxlY3RlZF09XCJzZWxlY3RlZChhY3QpXCJcbiAgICAgICAgICAgIFtkaXZpZGVyXT1cImFjdC5zZXBhcmF0ZUxpbmVcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1hbmFseXRpY3NdPVwiZ2V0RGF0YUFuYWx5dGljc1RhZyhhY3QsIGluZGV4KVwiXG4gICAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1Db250ZW50ICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIiBjbGFzcz1cImRyLWRyb3Bkb3duX19pY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHItZHJvcGRvd25fX3RleHRcIj57eyBhY3QudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1BY3Rpb25zICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb25JY29uIG9mIGFjdC5hY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJhY3Rpb25JY29uLmljb25cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Muc2hvd09uSG92ZXJdPVwiYWN0aW9uSWNvbi5zaG93T25Ib3ZlclwiXG4gICAgICAgICAgICAgICAgICAgIChtb3VzZWRvd24pPVwib25BY3Rpb25JY29uQ2xpY2soJGV2ZW50LCBhY3Rpb25JY29uLCBhY3QuZGF0YSlcIj48L2k+XG4gICAgICAgICAgICAgICAgPGkgKm5nSWY9XCJoYXNDaGlsZHJlbihhY3QpXCIgY2xhc3M9XCJkci1pY29uLWFycm93LXJpZ2h0XCI+PC9pPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImFjdC50ZW1wbGF0ZVJlZlwiXG4gICAgICAgICAgICAgICAgZHJvcGRvd25JdGVtQ29udGVudFxuICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFjdC50ZW1wbGF0ZVJlZlwiXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBhY3QgfVwiPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZHItZHJvcGRvd24taXRlbT5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0lDTS9CLHdCQUFxRTs7O0lBQWpELDBCQUFrQjs7O0lBRDFDLGdDQUEyRDtJQUN2RCxrR0FBcUU7SUFDckUsZ0NBQWdDO0lBQUEsWUFBZTtJQUFBLGlCQUFPO0lBQzFELDBCQUFlOzs7SUFGUCxlQUFjO0lBQWQsa0NBQWM7SUFDYyxlQUFlO0lBQWYsa0NBQWU7Ozs7SUFJL0MsNkJBS2tFO0lBQTlELDJUQUFhLGVBQUEsOERBQStDLENBQUEsSUFBQztJQUFDLGlCQUFJOzs7OztJQUZsRSxrQ0FBeUI7SUFDekIseURBQTRDO0lBRjVDLHVGQUE4RDs7O0lBSWxFLHdCQUE0RDs7O0lBUGhFLGlD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QUFDO0lBQ3hCLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxHQUEyQixFQUFFLEtBQWE7UUFDMUQsT0FBTyxHQUFHLENBQUMsYUFBYTtZQUNwQixDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWE7WUFDbkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhO2dCQUNsQixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDO2dCQUNyRSxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2pCLENBQUM7dUdBdklRLG1CQUFtQjttR0FBbkIsbUJBQW1COzs7Ozs7O1lDekJoQyxpQ0FBaUUsYUFBQTtZQUN6Qix1R0FBYyxrQkFBYyxJQUFDLDBGQUFlLGtCQUFjLElBQTdCO1lBQzdELGtCQUFtRDtZQUVuRCwrRkF1Q21COztZQUN2QixpQkFBTSxFQUFBOztZQTVDVSxpQ0FBd0I7WUFLaEIsZUFBa0M7WUFBbEMsd0RBQWtDOzs7QUQ0STFEO0lBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQzs7Ozt1REFHYjt1RkEzSFEsbUJBQW1CO2NBTi9CLFNBQVM7MkJBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNO3NDQVkvQyxhQUFhO2tCQURaLFNBQVM7bUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQVl4QyxPQUFPO2tCQURWLEtBQUs7WUE2Qk4sUUFBUTtrQkFEUCxNQUFNO21CQUFDLFFBQVE7WUF5RWhCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBEZXN0cm95UmVmLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSURyb3Bkb3duLCBJRHJvcGRvd25BY3Rpb24sIElEcm9wZG93bkFjdGlvbkljb24sIElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi4vbW9kZWxzL3BvcG92ZXInO1xuaW1wb3J0IHsgZmlyc3QsIG1lcmdlLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERyb3Bkb3duSW5zdGFuY2VSZWYsIERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7IERlYm91bmNlIH0gZnJvbSAnLi4vdXRpbHMvZGVjb3JhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItZHJvcGRvd24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIERyb3Bkb3duSW5zdGFuY2VSZWYge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBvcG92ZXJSZWYgPSBpbmplY3QoRHJQb3BvdmVyUmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgPSBpbmplY3QoRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgX2FjdGl2ZSA9IHRydWU7XG5cbiAgICBAVmlld0NoaWxkKCdtZW51Q29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBtZW51Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIGRyRHJvcGRvd25JbkhvdmVyOiBib29sZWFuO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJEcm9wZG93bkluSG92ZXJDaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBsaXN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+W10gPSBbXTtcbiAgICBjb250YWluZXJDbGFzczogc3RyaW5nO1xuICAgIHdhc0hvdmVyZWQgPSBmYWxzZTtcbiAgICBhc0NoaWxkID0gZmFsc2U7XG4gICAgZGF0YUFuYWx5dGljczogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgb3B0aW9ucyhkYXRhOiBJRHJvcGRvd248SURyb3Bkb3duSXRlbTx1bmtub3duPj4pIHtcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuZHJEcm9wZG93bkluSG92ZXIgPSBkYXRhLmRyRHJvcGRvd25JbkhvdmVyO1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJDbGFzcyA9IGRhdGEuY2xhc3M7XG4gICAgICAgICAgICB0aGlzLmRhdGFBbmFseXRpY3MgPSBkYXRhLmRhdGFBbmFseXRpY3M7XG4gICAgICAgICAgICB0aGlzLmxpc3QgPSBkYXRhLmxpc3QgfHwgW107XG4gICAgICAgICAgICB0aGlzLmxpc3QuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGlsZE9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogaXRlbT8uY2hpbGRPcHRpb25zPy5jbGFzcyB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpdGVtPy5jaGlsZE9wdGlvbnM/LnBvc2l0aW9uIHx8ICdsZWZ0LXRvcCcsXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5pbmFjdGl2ZSh0aGlzKVxuICAgICAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgpLCB0YWtlVW50aWwobWVyZ2UodGhpcy5kZXN0cm95JCwgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQpKSlcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAT3V0cHV0KCdhY3Rpb24nKVxuICAgIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxJRHJvcGRvd25BY3Rpb248dW5rbm93bj4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5kcm9wZG93bkluc3RhbmNlU2VydmljZS5yZWdpc3Rlcih0aGlzKTtcbiAgICAgICAgaW5qZWN0KERlc3Ryb3lSZWYpLm9uRGVzdHJveSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlLnVucmVnaXN0ZXIodGhpcyk7XG4gICAgICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICghY2hhbmdlcz8uZHJEcm9wZG93bkluSG92ZXI/LmlzRmlyc3RDaGFuZ2UoKSkge1xuICAgICAgICAgICAgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQubmV4dCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGlzYWJsZWQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghYWN0LmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBhY3QuZGlzYWJsZWQgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5kaXNhYmxlZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBhY3QuZGlzYWJsZWQoYWN0LmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0ZWQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghYWN0LnNlbGVjdGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBhY3Quc2VsZWN0ZWQgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBhY3Quc2VsZWN0ZWQoYWN0LmRhdGEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9vbHRpcFRvU2hvdyhhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBzdHJpbmcge1xuICAgICAgICBpZiAoYWN0LnRvb2xUaXBJZkRpc2FibGVkICYmICF0aGlzLmRpc2FibGVkKGFjdCkpIHJldHVybiAnJztcbiAgICAgICAgcmV0dXJuIGFjdC5jdXN0b21Ub29sdGlwID8gYWN0LmN1c3RvbVRvb2x0aXAoYWN0LmRhdGEpIDogYWN0LnRvb2xUaXA7XG4gICAgfVxuXG4gICAgYWN0aW9uKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPikge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoYWN0KSkge1xuICAgICAgICAgICAgaWYgKGFjdC5hY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBhY3QuYWN0aW9uKGFjdC5kYXRhKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnQgPSB7IGV2ZW50OiBhY3QuZXZlbnQgfHwgYWN0LnRpdGxlIHx8ICdkZWZhdWx0JywgZGF0YTogYWN0LmRhdGEgfTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQWN0aW9uLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3Rpb25JY29uQ2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50LCBhY3Rpb25JY29uOiBJRHJvcGRvd25BY3Rpb25JY29uPHVua25vd24+LCBkYXRhOiB1bmtub3duKSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgYWN0aW9uSWNvbi5hY3Rpb24oZGF0YSk7XG4gICAgfVxuXG4gICAgaGFzQ2hpbGRyZW4oaXRlbTogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISFpdGVtLmNoaWxkcmVuPy5sZW5ndGg7XG4gICAgfVxuXG4gICAgb25Nb3VzZWVudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndhc0hvdmVyZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl9hY3RpdmUgPSB0cnVlO1xuICAgIH1cblxuICAgIEBEZWJvdW5jZSgyMDApXG4gICAgb25Nb3VzZWxlYXZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hY3RpdmU7XG4gICAgfVxuXG4gICAgZ2V0RGF0YUFuYWx5dGljc1RhZyhhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4sIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYWN0LmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgID8gYWN0LmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgIDogdGhpcy5kYXRhQW5hbHl0aWNzXG4gICAgICAgICAgICAgID8gdGhpcy5kYXRhQW5hbHl0aWNzICsgJ18nICsgKGFjdC50aXRsZT8ucmVwbGFjZSgvIC9nLCAnLScpIHx8IGluZGV4KVxuICAgICAgICAgICAgICA6IG51bGw7XG4gICAgfVxufVxuIiwiPGRpdiAjbWVudUNvbnRhaW5lciBbY2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIiBjbGFzcz1cImRyLWRyb3Bkb3duXCI+XG4gICAgPGRpdiBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJcIiAobW91c2VlbnRlcik9XCJvbk1vdXNlZW50ZXIoKVwiIChtb3VzZWxlYXZlKT1cIm9uTW91c2VsZWF2ZSgpXCIgdGFiaW5kZXg9XCItMVwiIHJvbGU9XCJsaXN0Ym94XCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRyLWRyb3Bkb3duLWl0ZW1cIj48L25nLWNvbnRlbnQ+XG5cbiAgICAgICAgPGRyLWRyb3Bkb3duLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Qgb2YgbGlzdCB8IGRyRHJvcGRvd25JdGVtU2hvd1BpcGU7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgICAgIChtb3VzZWRvd24pPVwiYWN0aW9uKGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcF09XCJ0b29sdGlwVG9TaG93KGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcFBvc2l0aW9uXT1cIidsZWZ0J1wiXG4gICAgICAgICAgICBbZHJUb29sdGlwT3B0aW9uc109XCJ7IHdpdGhvdXRBcnJvdzogdHJ1ZSB9XCJcbiAgICAgICAgICAgIFtkclRvb2x0aXBDbGFzc109XCInZHItZHJvcGRvd25fX3Rvb2x0aXAnXCJcbiAgICAgICAgICAgIFtkckRyb3Bkb3duXT1cImhhc0NoaWxkcmVuKGFjdCkgJiYgYWN0LmNoaWxkcmVuXCJcbiAgICAgICAgICAgIFtkckRyb3Bkb3duQ2xhc3NdPVwiYWN0LmNoaWxkT3B0aW9ucz8uY2xhc3NcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25JbkhvdmVyXT1cInRydWVcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25Qb3NpdGlvbl09XCJhY3QuY2hpbGRPcHRpb25zPy5wb3NpdGlvblwiXG4gICAgICAgICAgICBkckRyb3Bkb3duQ2hpbGRcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZChhY3QpXCJcbiAgICAgICAgICAgIFtzZWxlY3RlZF09XCJzZWxlY3RlZChhY3QpXCJcbiAgICAgICAgICAgIFtkaXZpZGVyXT1cImFjdC5zZXBhcmF0ZUxpbmVcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1hbmFseXRpY3NdPVwiZ2V0RGF0YUFuYWx5dGljc1RhZyhhY3QsIGluZGV4KVwiXG4gICAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1Db250ZW50ICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIiBjbGFzcz1cImRyLWRyb3Bkb3duX19pY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHItZHJvcGRvd25fX3RleHRcIj57eyBhY3QudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1BY3Rpb25zICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb25JY29uIG9mIGFjdC5hY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYW5hbHl0aWNzXT1cImdldERhdGFBbmFseXRpY3NUYWcoYWN0aW9uSWNvbiwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImFjdGlvbkljb24uaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zaG93T25Ib3Zlcl09XCJhY3Rpb25JY29uLnNob3dPbkhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJvbkFjdGlvbkljb25DbGljaygkZXZlbnQsIGFjdGlvbkljb24sIGFjdC5kYXRhKVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8aSAqbmdJZj1cImhhc0NoaWxkcmVuKGFjdClcIiBjbGFzcz1cImRyLWljb24tYXJyb3ctcmlnaHRcIj48L2k+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBkcm9wZG93bkl0ZW1Db250ZW50XG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGFjdCB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kci1kcm9wZG93bi1pdGVtPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -9,6 +9,8 @@ export class DrDropdownDirective {
9
9
  this.dropdownInstanceService = inject(DropdownInstanceService);
10
10
  this.drDropdownPosition = 'left-top';
11
11
  this.drDropdownAction = new EventEmitter();
12
+ this.dropdownClosed = new EventEmitter();
13
+ this.dropdownOpened = new EventEmitter();
12
14
  this.mouseleaveTimeout = 200;
13
15
  }
14
16
  elementHover() {
@@ -53,11 +55,13 @@ export class DrDropdownDirective {
53
55
  dataAnalytics: this.dataAnalytics,
54
56
  },
55
57
  });
58
+ this.dropdownOpened.emit();
56
59
  }
57
60
  close() {
58
61
  if (this.ref) {
59
62
  this.ref.close();
60
63
  this.ref = null;
64
+ this.dropdownClosed.emit();
61
65
  }
62
66
  }
63
67
  ngOnDestroy() {
@@ -66,7 +70,7 @@ export class DrDropdownDirective {
66
70
  /** @nocollapse */ static { this.ɵfac = function DrDropdownDirective_Factory(t) { return new (t || DrDropdownDirective)(); }; }
67
71
  /** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrDropdownDirective, selectors: [["", "drDropdown", ""]], hostBindings: function DrDropdownDirective_HostBindings(rf, ctx) { if (rf & 1) {
68
72
  i0.ɵɵlistener("mouseenter", function DrDropdownDirective_mouseenter_HostBindingHandler() { return ctx.elementHover(); })("click", function DrDropdownDirective_click_HostBindingHandler() { return ctx.elementClick(); })("mouseleave", function DrDropdownDirective_mouseleave_HostBindingHandler() { return ctx.leaveDropdownTriggerElement(); })("mouseup", function DrDropdownDirective_mouseup_HostBindingHandler() { return ctx.documentClick(); }, false, i0.ɵɵresolveDocument);
69
- } }, inputs: { drDropdown: "drDropdown", drDropdownPosition: "drDropdownPosition", drDropdownClass: "drDropdownClass", drDropdownInHover: "drDropdownInHover", dataAnalytics: ["data-analytics", "dataAnalytics"] }, outputs: { drDropdownAction: "drDropdownAction" }, features: [i0.ɵɵProvidersFeature([
73
+ } }, inputs: { drDropdown: "drDropdown", drDropdownPosition: "drDropdownPosition", drDropdownClass: "drDropdownClass", drDropdownInHover: "drDropdownInHover", dataAnalytics: ["data-analytics", "dataAnalytics"] }, outputs: { drDropdownAction: "drDropdownAction", dropdownClosed: "drDropdownClose", dropdownOpened: "drDropdownOpened" }, features: [i0.ɵɵProvidersFeature([
70
74
  {
71
75
  provide: DropdownInstanceService,
72
76
  useFactory: ((injector) => {
@@ -106,6 +110,12 @@ export class DrDropdownDirective {
106
110
  args: [{ alias: 'data-analytics' }]
107
111
  }], drDropdownAction: [{
108
112
  type: Output
113
+ }], dropdownClosed: [{
114
+ type: Output,
115
+ args: ['drDropdownClose']
116
+ }], dropdownOpened: [{
117
+ type: Output,
118
+ args: ['drDropdownOpened']
109
119
  }], elementHover: [{
110
120
  type: HostListener,
111
121
  args: ['mouseenter']
@@ -129,4 +139,4 @@ export class DrDropdownChildDirective {
129
139
  selector: '[drDropdownChild]',
130
140
  }]
131
141
  }], null, null); })();
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWlCbkYsTUFBTSxPQUFPLG1CQUFtQjtJQWJoQztRQWNxQixlQUFVLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUM7UUFDN0MsWUFBTyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3BDLFVBQUssR0FBRyxNQUFNLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLDRCQUF1QixHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBSzNFLHVCQUFrQixHQUFlLFVBQVUsQ0FBQztRQVM1QyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUl6QyxzQkFBaUIsR0FBRyxHQUFHLENBQUM7S0FpRTVDO0lBOURHLFlBQVk7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUFFLE9BQU87UUFDcEMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCwyQkFBMkI7UUFDdkIsSUFBSSxJQUFJLENBQUMsaUJB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QVFHLFVBQVU7a0JBRFQsS0FBSzttQkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7WUFHekIsa0JBQWtCO2tCQURqQixLQUFLO1lBR04sZUFBZTtrQkFEZCxLQUFLO1lBR04saUJBQWlCO2tCQURoQixLQUFLO1lBR04sYUFBYTtrQkFEWixLQUFLO21CQUFDLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFO1lBSWxDLGdCQUFnQjtrQkFEZixNQUFNO1lBUVAsWUFBWTtrQkFEWCxZQUFZO21CQUFDLFlBQVk7WUFPMUIsWUFBWTtrQkFEWCxZQUFZO21CQUFDLE9BQU87WUFNckIsMkJBQTJCO2tCQUQxQixZQUFZO21CQUFDLFlBQVk7WUFZMUIsYUFBYTtrQkFEWixZQUFZO21CQUFDLGtCQUFrQjs7QUE4Q3BDLE1BQU0sT0FBTyx3QkFBd0I7NEdBQXhCLHdCQUF3QjttR0FBeEIsd0JBQXdCOzt1RkFBeEIsd0JBQXdCO2NBSHBDLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2FBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFbFBvc2l0aW9uLCBJRHJvcGRvd25BY3Rpb24sIElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJEcm9wZG93blNlcnZpY2UsIERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7IERyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2RyLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEclBvcG92ZXJSZWYgfSBmcm9tICcuLi9tb2RlbHMvcG9wb3Zlcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2RyRHJvcGRvd25dJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiAoaW5qZWN0b3I6IEluamVjdG9yKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VydmljZSA9IGluamVjdG9yLmdldChEcm9wZG93bkluc3RhbmNlU2VydmljZSwgbnVsbCwgeyBza2lwU2VsZjogdHJ1ZSB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VydmljZSA/PyBuZXcgRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UoaW5qZWN0b3IpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl0sXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJEcm9wZG93bkRpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2UgPSBpbmplY3QoRHJEcm9wZG93blNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hpbGQgPSBpbmplY3QoRHJEcm9wZG93bkNoaWxkRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlLCBzZWxmOiB0cnVlIH0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgPSBpbmplY3QoRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UpO1xuXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBkckRyb3Bkb3duOiBJRHJvcGRvd25JdGVtPFQ+W107XG4gICAgQElucHV0KClcbiAgICBkckRyb3Bkb3duUG9zaXRpb246IEVsUG9zaXRpb24gPSAnbGVmdC10b3AnO1xuICAgIEBJbnB1dCgpXG4gICAgZHJEcm9wZG93bkNsYXNzOiBzdHJpbmc7XG4gICAgQElucHV0KClcbiAgICBkckRyb3Bkb3duSW5Ib3ZlcjogYm9vbGVhbjtcbiAgICBASW5wdXQoeyBhbGlhczogJ2RhdGEtYW5hbHl0aWNzJyB9KVxuICAgIGRhdGFBbmFseXRpY3M6IHN0cmluZztcblxuICAgIEBPdXRwdXQoKVxuICAgIGRyRHJvcGRvd25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPElEcm9wZG93bkFjdGlvbjxUPj4oKTtcblxuICAgIHByaXZhdGUgcmVmOiBEclBvcG92ZXJSZWY8RHJEcm9wZG93bkNvbXBvbmVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vdXNlbGVhdmVUaW1lb3V0ID0gMjAwO1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gICAgZWxlbWVudEhvdmVyKCkge1xuICAgICAgICBpZiAoIXRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHJldHVybjtcbiAgICAgICAgdGhpcy5vcGVuRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgZWxlbWVudENsaWNrKCkge1xuICAgICAgICB0aGlzLm9wZW5Ecm9wZG93bigpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICAgIGxlYXZlRHJvcGRvd25UcmlnZ2VyRWxlbWVudCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnJlZiAmJiAhdGhpcy5yZWYuaW5zdGFuY2Uud2FzSG92ZXJlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwgdGhpcy5tb3VzZWxlYXZlVGltZW91dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZXVwJylcbiAgICBkb2N1bWVudENsaWNrKCkge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvcGVuRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kckRyb3Bkb3duPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnJlZikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yZWYgPSB0aGlzLnNlcnZpY2Uub3Blbih7XG4gICAgICAgICAgICBob3N0UmVmOiB0aGlzLmVsZW1lbnRSZWYsXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5kckRyb3Bkb3duUG9zaXRpb24sXG4gICAgICAgICAgICBhc0NoaWxkOiAhIXRoaXMuY2hpbGQsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlLCB1c2VWYWx1ZTogdGhpcy5kcm9wZG93bkluc3RhbmNlU2VydmljZSB9XSxcbiAgICAgICAgICAgIGFjdGlvbiQ6IHRoaXMuZHJEcm9wZG93bkFjdGlvbixcbiAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBkckRyb3Bkb3duSW5Ib3ZlcjogdGhpcy5kckRyb3Bkb3duSW5Ib3ZlcixcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5kckRyb3Bkb3duUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgbGlzdDogdGhpcy5kckRyb3Bkb3duLFxuICAgICAgICAgICAgICAgIGNsYXNzOiB0aGlzLmRyRHJvcGRvd25DbGFzcyxcbiAgICAgICAgICAgICAgICBkYXRhQW5hbHl0aWNzOiB0aGlzLmRhdGFBbmFseXRpY3MsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMucmVmLmNsb3NlKCk7XG4gICAgICAgICAgICB0aGlzLnJlZiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2RyRHJvcGRvd25DaGlsZF0nLFxufSlcbmV4cG9ydCBjbGFzcyBEckRyb3Bkb3duQ2hpbGREaXJlY3RpdmUge31cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWlCbkYsTUFBTSxPQUFPLG1CQUFtQjtJQWJoQztRQWNxQixlQUFVLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUM7UUFDN0MsWUFBTyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3BDLFVBQUssR0FBRyxNQUFNLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLDRCQUF1QixHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBSzNFLHVCQUFrQixHQUFlLFVBQVUsQ0FBQztRQVM1QyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUMvQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDekMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBSXJELHNCQUFpQixHQUFHLEdBQUcsQ0FBQztLQW1FNUM7SUFoRUcsWUFBWTtRQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCO1lBQUUsT0FBTztRQUNwQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUdELFlBQVk7UUFD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QUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDOzRCQUNoRixPQUFPLE9BQU8sSUFBSSxJQUFJLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUM1RCxDQUFDLENBQUE7d0JBQ0QsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDO3FCQUNuQjtpQkFDSjthQUNKO2dCQVFHLFVBQVU7a0JBRFQsS0FBSzttQkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7WUFHekIsa0JBQWtCO2tCQURqQixLQUFLO1lBR04sZUFBZTtrQkFEZCxLQUFLO1lBR04saUJBQWlCO2tCQURoQixLQUFLO1lBR04sYUFBYTtrQkFEWixLQUFLO21CQUFDLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFO1lBSWxDLGdCQUFnQjtrQkFEZixNQUFNO1lBRW9CLGNBQWM7a0JBQXhDLE1BQU07bUJBQUMsaUJBQWlCO1lBQ0csY0FBYztrQkFBekMsTUFBTTttQkFBQyxrQkFBa0I7WUFPMUIsWUFBWTtrQkFEWCxZQUFZO21CQUFDLFlBQVk7WUFPMUIsWUFBWTtrQkFEWCxZQUFZO21CQUFDLE9BQU87WUFNckIsMkJBQTJCO2tCQUQxQixZQUFZO21CQUFDLFlBQVk7WUFZMUIsYUFBYTtrQkFEWixZQUFZO21CQUFDLGtCQUFrQjs7QUFnRHBDLE1BQU0sT0FBTyx3QkFBd0I7NEdBQXhCLHdCQUF3QjttR0FBeEIsd0JBQXdCOzt1RkFBeEIsd0JBQXdCO2NBSHBDLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2FBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFbFBvc2l0aW9uLCBJRHJvcGRvd25BY3Rpb24sIElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJEcm9wZG93blNlcnZpY2UsIERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7IERyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2RyLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEclBvcG92ZXJSZWYgfSBmcm9tICcuLi9tb2RlbHMvcG9wb3Zlcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2RyRHJvcGRvd25dJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiAoaW5qZWN0b3I6IEluamVjdG9yKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VydmljZSA9IGluamVjdG9yLmdldChEcm9wZG93bkluc3RhbmNlU2VydmljZSwgbnVsbCwgeyBza2lwU2VsZjogdHJ1ZSB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VydmljZSA/PyBuZXcgRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UoaW5qZWN0b3IpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl0sXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJEcm9wZG93bkRpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2UgPSBpbmplY3QoRHJEcm9wZG93blNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hpbGQgPSBpbmplY3QoRHJEcm9wZG93bkNoaWxkRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlLCBzZWxmOiB0cnVlIH0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgPSBpbmplY3QoRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UpO1xuXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgICBkckRyb3Bkb3duOiBJRHJvcGRvd25JdGVtPFQ+W107XG4gICAgQElucHV0KClcbiAgICBkckRyb3Bkb3duUG9zaXRpb246IEVsUG9zaXRpb24gPSAnbGVmdC10b3AnO1xuICAgIEBJbnB1dCgpXG4gICAgZHJEcm9wZG93bkNsYXNzOiBzdHJpbmc7XG4gICAgQElucHV0KClcbiAgICBkckRyb3Bkb3duSW5Ib3ZlcjogYm9vbGVhbjtcbiAgICBASW5wdXQoeyBhbGlhczogJ2RhdGEtYW5hbHl0aWNzJyB9KVxuICAgIGRhdGFBbmFseXRpY3M6IHN0cmluZztcblxuICAgIEBPdXRwdXQoKVxuICAgIGRyRHJvcGRvd25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPElEcm9wZG93bkFjdGlvbjxUPj4oKTtcbiAgICBAT3V0cHV0KCdkckRyb3Bkb3duQ2xvc2UnKSBkcm9wZG93bkNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCdkckRyb3Bkb3duT3BlbmVkJykgZHJvcGRvd25PcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBwcml2YXRlIHJlZjogRHJQb3BvdmVyUmVmPERyRHJvcGRvd25Db21wb25lbnQ+O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBtb3VzZWxlYXZlVGltZW91dCA9IDIwMDtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKVxuICAgIGVsZW1lbnRIb3ZlcigpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyRHJvcGRvd25JbkhvdmVyKSByZXR1cm47XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICAgIGVsZW1lbnRDbGljaygpIHtcbiAgICAgICAgdGhpcy5vcGVuRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgICBsZWF2ZURyb3Bkb3duVHJpZ2dlckVsZW1lbnQoKSB7XG4gICAgICAgIGlmICh0aGlzLmRyRHJvcGRvd25JbkhvdmVyKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5yZWYgJiYgIXRoaXMucmVmLmluc3RhbmNlLndhc0hvdmVyZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sIHRoaXMubW91c2VsZWF2ZVRpbWVvdXQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2V1cCcpXG4gICAgZG9jdW1lbnRDbGljaygpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb3BlbkRyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZHJEcm9wZG93bj8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmVmID0gdGhpcy5zZXJ2aWNlLm9wZW4oe1xuICAgICAgICAgICAgaG9zdFJlZjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgcG9zaXRpb246IHRoaXMuZHJEcm9wZG93blBvc2l0aW9uLFxuICAgICAgICAgICAgYXNDaGlsZDogISF0aGlzLmNoaWxkLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBEcm9wZG93bkluc3RhbmNlU2VydmljZSwgdXNlVmFsdWU6IHRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgfV0sXG4gICAgICAgICAgICBhY3Rpb24kOiB0aGlzLmRyRHJvcGRvd25BY3Rpb24sXG4gICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgZHJEcm9wZG93bkluSG92ZXI6IHRoaXMuZHJEcm9wZG93bkluSG92ZXIsXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHRoaXMuZHJEcm9wZG93blBvc2l0aW9uLFxuICAgICAgICAgICAgICAgIGxpc3Q6IHRoaXMuZHJEcm9wZG93bixcbiAgICAgICAgICAgICAgICBjbGFzczogdGhpcy5kckRyb3Bkb3duQ2xhc3MsXG4gICAgICAgICAgICAgICAgZGF0YUFuYWx5dGljczogdGhpcy5kYXRhQW5hbHl0aWNzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZHJvcGRvd25PcGVuZWQuZW1pdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYuY2xvc2UoKTtcbiAgICAgICAgICAgIHRoaXMucmVmID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25DbG9zZWQuZW1pdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tkckRyb3Bkb3duQ2hpbGRdJyxcbn0pXG5leHBvcnQgY2xhc3MgRHJEcm9wZG93bkNoaWxkRGlyZWN0aXZlIHt9XG4iXX0=
@@ -8332,15 +8332,18 @@ function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template(rf,
8332
8332
  i0.ɵɵelementEnd();
8333
8333
  } if (rf & 2) {
8334
8334
  const actionIcon_r12 = ctx.$implicit;
8335
+ const index_r3 = i0.ɵɵnextContext(2).index;
8336
+ const ctx_r10 = i0.ɵɵnextContext();
8335
8337
  i0.ɵɵclassMap(actionIcon_r12.icon);
8336
8338
  i0.ɵɵclassProp("showOnHover", actionIcon_r12.showOnHover);
8339
+ i0.ɵɵattribute("data-analytics", ctx_r10.getDataAnalyticsTag(actionIcon_r12, index_r3));
8337
8340
  } }
8338
8341
  function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_2_Template(rf, ctx) { if (rf & 1) {
8339
8342
  i0.ɵɵelement(0, "i", 16);
8340
8343
  } }
8341
8344
  function DrDropdownComponent_dr_dropdown_item_4_ng_container_2_Template(rf, ctx) { if (rf & 1) {
8342
8345
  i0.ɵɵelementContainerStart(0, 12);
8343
- i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template, 1, 4, "i", 13);
8346
+ i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_1_Template, 1, 5, "i", 13);
8344
8347
  i0.ɵɵtemplate(2, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_i_2_Template, 1, 0, "i", 14);
8345
8348
  i0.ɵɵelementContainerEnd();
8346
8349
  } if (rf & 2) {
@@ -8360,9 +8363,9 @@ function DrDropdownComponent_dr_dropdown_item_4_ng_container_3_Template(rf, ctx)
8360
8363
  } }
8361
8364
  const _c2$1 = function () { return { withoutArrow: true }; };
8362
8365
  function DrDropdownComponent_dr_dropdown_item_4_Template(rf, ctx) { if (rf & 1) {
8363
- const _r19 = i0.ɵɵgetCurrentView();
8366
+ const _r20 = i0.ɵɵgetCurrentView();
8364
8367
  i0.ɵɵelementStart(0, "dr-dropdown-item", 4);
8365
- i0.ɵɵlistener("mousedown", function DrDropdownComponent_dr_dropdown_item_4_Template_dr_dropdown_item_mousedown_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r19); const act_r2 = restoredCtx.$implicit; const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.action(act_r2)); });
8368
+ i0.ɵɵlistener("mousedown", function DrDropdownComponent_dr_dropdown_item_4_Template_dr_dropdown_item_mousedown_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r20); const act_r2 = restoredCtx.$implicit; const ctx_r19 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r19.action(act_r2)); });
8366
8369
  i0.ɵɵtemplate(1, DrDropdownComponent_dr_dropdown_item_4_ng_container_1_Template, 4, 2, "ng-container", 5);
8367
8370
  i0.ɵɵtemplate(2, DrDropdownComponent_dr_dropdown_item_4_ng_container_2_Template, 3, 2, "ng-container", 6);
8368
8371
  i0.ɵɵtemplate(3, DrDropdownComponent_dr_dropdown_item_4_ng_container_3_Template, 1, 4, "ng-container", 7);
@@ -8523,7 +8526,7 @@ __decorate([
8523
8526
  ], DrDropdownComponent.prototype, "onMouseleave", null);
8524
8527
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDropdownComponent, [{
8525
8528
  type: Component,
8526
- args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"'left'\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n role=\"option\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
8529
+ args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"'left'\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n role=\"option\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [attr.data-analytics]=\"getDataAnalyticsTag(actionIcon, index)\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
8527
8530
  }], function () { return []; }, { menuContainer: [{
8528
8531
  type: ViewChild,
8529
8532
  args: ['menuContainer', { static: true }]
@@ -8599,6 +8602,8 @@ class DrDropdownDirective {
8599
8602
  this.dropdownInstanceService = inject(DropdownInstanceService);
8600
8603
  this.drDropdownPosition = 'left-top';
8601
8604
  this.drDropdownAction = new EventEmitter();
8605
+ this.dropdownClosed = new EventEmitter();
8606
+ this.dropdownOpened = new EventEmitter();
8602
8607
  this.mouseleaveTimeout = 200;
8603
8608
  }
8604
8609
  elementHover() {
@@ -8643,11 +8648,13 @@ class DrDropdownDirective {
8643
8648
  dataAnalytics: this.dataAnalytics,
8644
8649
  },
8645
8650
  });
8651
+ this.dropdownOpened.emit();
8646
8652
  }
8647
8653
  close() {
8648
8654
  if (this.ref) {
8649
8655
  this.ref.close();
8650
8656
  this.ref = null;
8657
+ this.dropdownClosed.emit();
8651
8658
  }
8652
8659
  }
8653
8660
  ngOnDestroy() {
@@ -8656,7 +8663,7 @@ class DrDropdownDirective {
8656
8663
  /** @nocollapse */ static { this.ɵfac = function DrDropdownDirective_Factory(t) { return new (t || DrDropdownDirective)(); }; }
8657
8664
  /** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrDropdownDirective, selectors: [["", "drDropdown", ""]], hostBindings: function DrDropdownDirective_HostBindings(rf, ctx) { if (rf & 1) {
8658
8665
  i0.ɵɵlistener("mouseenter", function DrDropdownDirective_mouseenter_HostBindingHandler() { return ctx.elementHover(); })("click", function DrDropdownDirective_click_HostBindingHandler() { return ctx.elementClick(); })("mouseleave", function DrDropdownDirective_mouseleave_HostBindingHandler() { return ctx.leaveDropdownTriggerElement(); })("mouseup", function DrDropdownDirective_mouseup_HostBindingHandler() { return ctx.documentClick(); }, false, i0.ɵɵresolveDocument);
8659
- } }, inputs: { drDropdown: "drDropdown", drDropdownPosition: "drDropdownPosition", drDropdownClass: "drDropdownClass", drDropdownInHover: "drDropdownInHover", dataAnalytics: ["data-analytics", "dataAnalytics"] }, outputs: { drDropdownAction: "drDropdownAction" }, features: [i0.ɵɵProvidersFeature([
8666
+ } }, inputs: { drDropdown: "drDropdown", drDropdownPosition: "drDropdownPosition", drDropdownClass: "drDropdownClass", drDropdownInHover: "drDropdownInHover", dataAnalytics: ["data-analytics", "dataAnalytics"] }, outputs: { drDropdownAction: "drDropdownAction", dropdownClosed: "drDropdownClose", dropdownOpened: "drDropdownOpened" }, features: [i0.ɵɵProvidersFeature([
8660
8667
  {
8661
8668
  provide: DropdownInstanceService,
8662
8669
  useFactory: ((injector) => {
@@ -8696,6 +8703,12 @@ class DrDropdownDirective {
8696
8703
  args: [{ alias: 'data-analytics' }]
8697
8704
  }], drDropdownAction: [{
8698
8705
  type: Output
8706
+ }], dropdownClosed: [{
8707
+ type: Output,
8708
+ args: ['drDropdownClose']
8709
+ }], dropdownOpened: [{
8710
+ type: Output,
8711
+ args: ['drDropdownOpened']
8699
8712
  }], elementHover: [{
8700
8713
  type: HostListener,
8701
8714
  args: ['mouseenter']