@datarailsshared/datarailsshared 1.6.410 → 1.6.412

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.
@@ -38,6 +38,7 @@ export class CellActionComponent {
38
38
  this.useParentDataForChildren = params.useParentDataForChildren;
39
39
  this.setPayloadForDropdown(params.menu, params.node.data, params.bindValue, this.useParentDataForChildren);
40
40
  this.buttonOptions = params.buttonOptions;
41
+ this.pinRight = params.pinRight;
41
42
  }
42
43
  refresh() {
43
44
  return false;
@@ -72,15 +73,19 @@ export class CellActionComponent {
72
73
  });
73
74
  }
74
75
  /** @nocollapse */ static { this.ɵfac = function CellActionComponent_Factory(t) { return new (t || CellActionComponent)(); }; }
75
- /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CellActionComponent, selectors: [["dr-cell-action"]], inputs: { menu: "menu", dataAnalytics: "dataAnalytics", bindValue: "bindValue", data: "data", useParentDataForChildren: "useParentDataForChildren" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["data-analytics", "cell-action_button-0", 3, "theme", "icon", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "isLoading", "drDropdown", "drDropdownPosition", "drDropdownAction", 4, "ngIf"], ["data-analytics", "cell-action_button-0", 3, "theme", "icon", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "isLoading", "drDropdown", "drDropdownPosition", "drDropdownAction"]], template: function CellActionComponent_Template(rf, ctx) { if (rf & 1) {
76
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CellActionComponent, selectors: [["dr-cell-action"]], hostVars: 2, hostBindings: function CellActionComponent_HostBindings(rf, ctx) { if (rf & 2) {
77
+ i0.ɵɵclassProp("dr-cell-action-pin-right", ctx.pinRight);
78
+ } }, inputs: { menu: "menu", dataAnalytics: "dataAnalytics", bindValue: "bindValue", data: "data", useParentDataForChildren: "useParentDataForChildren", pinRight: "pinRight" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["data-analytics", "cell-action_button-0", 3, "theme", "icon", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "isLoading", "drDropdown", "drDropdownPosition", "drDropdownAction", 4, "ngIf"], ["data-analytics", "cell-action_button-0", 3, "theme", "icon", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "isLoading", "drDropdown", "drDropdownPosition", "drDropdownAction"]], template: function CellActionComponent_Template(rf, ctx) { if (rf & 1) {
76
79
  i0.ɵɵtemplate(0, CellActionComponent_dr_button_0_Template, 2, 11, "dr-button", 0);
77
80
  } if (rf & 2) {
78
81
  i0.ɵɵproperty("ngIf", !ctx.isDisabled);
79
- } }, dependencies: [CommonModule, i1.NgIf, DrInputsModule, i2.DrButtonComponent, DrDropdownModule, i3.DrDropdownDirective], styles: ["[_nghost-%COMP%]{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%}"], changeDetection: 0 }); }
82
+ } }, dependencies: [CommonModule, i1.NgIf, DrInputsModule, i2.DrButtonComponent, DrDropdownModule, i3.DrDropdownDirective], styles: ["[_nghost-%COMP%]{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%}.dr-cell-action-pin-right[_nghost-%COMP%]{justify-content:flex-end;padding-right:8px}"], changeDetection: 0 }); }
80
83
  }
81
84
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CellActionComponent, [{
82
85
  type: Component,
83
- args: [{ selector: 'dr-cell-action', standalone: true, imports: [CommonModule, DrInputsModule, DrDropdownModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<dr-button\n data-analytics=\"cell-action_button-0\"\n *ngIf=\"!isDisabled\"\n [attr.data-analytics]=\"dataAnalytics\"\n [theme]=\"buttonOptions?.theme || 'icon'\"\n [icon]=\"buttonOptions?.icon || 'dr-icon-more'\"\n [iconSize]=\"buttonOptions?.iconSize\"\n [iconAfter]=\"buttonOptions?.iconAfter\"\n [iconAfterColor]=\"buttonOptions?.iconAfterColor\"\n [iconAfterSize]=\"buttonOptions?.iconAfterSize\"\n [isLoading]=\"buttonOptions?.isLoading\"\n [drDropdown]=\"menu\"\n [drDropdownPosition]=\"buttonOptions?.dropdownPosition || 'left-top'\"\n (drDropdownAction)=\"onMenuAction($event)\">\n {{ buttonOptions?.content }}\n</dr-button>\n", styles: [":host{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%}\n"] }]
86
+ args: [{ selector: 'dr-cell-action', standalone: true, imports: [CommonModule, DrInputsModule, DrDropdownModule], changeDetection: ChangeDetectionStrategy.OnPush, host: {
87
+ '[class.dr-cell-action-pin-right]': 'pinRight',
88
+ }, template: "<dr-button\n data-analytics=\"cell-action_button-0\"\n *ngIf=\"!isDisabled\"\n [attr.data-analytics]=\"dataAnalytics\"\n [theme]=\"buttonOptions?.theme || 'icon'\"\n [icon]=\"buttonOptions?.icon || 'dr-icon-more'\"\n [iconSize]=\"buttonOptions?.iconSize\"\n [iconAfter]=\"buttonOptions?.iconAfter\"\n [iconAfterColor]=\"buttonOptions?.iconAfterColor\"\n [iconAfterSize]=\"buttonOptions?.iconAfterSize\"\n [isLoading]=\"buttonOptions?.isLoading\"\n [drDropdown]=\"menu\"\n [drDropdownPosition]=\"buttonOptions?.dropdownPosition || 'left-top'\"\n (drDropdownAction)=\"onMenuAction($event)\">\n {{ buttonOptions?.content }}\n</dr-button>\n", styles: [":host{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%}:host.dr-cell-action-pin-right{justify-content:flex-end;padding-right:8px}\n"] }]
84
89
  }], null, { menu: [{
85
90
  type: Input
86
91
  }], dataAnalytics: [{
@@ -91,5 +96,7 @@ export class CellActionComponent {
91
96
  type: Input
92
97
  }], useParentDataForChildren: [{
93
98
  type: Input
99
+ }], pinRight: [{
100
+ type: Input
94
101
  }] }); })();
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZ3JpZC9jb21wb25lbnRzL2NlbGxzL2NlbGwtYWN0aW9uL2NlbGwtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLWFjdGlvbi9jZWxsLWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBSTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVqRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFFBQVEsRUFBRSxTQUFTLElBQUksVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7O0lDVHRFLG9DQWE4QztJQUExQyxxTUFBb0IsZUFBQSwyQkFBb0IsQ0FBQSxJQUFDO0lBQ3pDLFlBQ0o7SUFBQSxpQkFBWTs7O0lBWFIsb0dBQXdDLDZGQUFBLGlGQUFBLG1GQUFBLDZGQUFBLDJGQUFBLG1GQUFBLDJCQUFBLG1IQUFBO0lBRHhDLHNEQUFxQztJQVdyQyxlQUNKO0lBREksb0dBQ0o7O0FEa0JBLE1BQU0sT0FBTyxtQkFBbUI7SUFSaEM7UUFVYSxrQkFBYSxHQUFHLCtCQUErQixDQUFDO1FBS3pELGVBQVUsR0FBWSxLQUFL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Q0FBQyxtQkFDeEMsdUJBQXVCLENBQUMsTUFBTTtnQkFHdEMsSUFBSTtrQkFBWixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxJQUFJO2tCQUFaLEtBQUs7WUFDRyx3QkFBd0I7a0JBQWhDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHJJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9kci1pbnB1dHMvZHItaW5wdXRzLm1vZHVsZSc7XG5pbXBvcnQgeyBEckRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZHItZHJvcGRvd24vZHItZHJvcGRvd24ubW9kdWxlJztcbmltcG9ydCB7IElEcm9wZG93bkFjdGlvbiwgSURyb3Bkb3duSXRlbSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9kcm9wZG93bic7XG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9wb3NpdGlvbic7XG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZHItaW5wdXRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWREckV2ZW50VHlwZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kci1ncmlkLWV2ZW50cyc7XG5pbXBvcnQgeyBHcmlkQXBpLCBJR3JpZENlbGxSZW5kZXJlckNvbXBvbmVudCwgSUdyaWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZvckVhY2ggYXMgX2ZvckVhY2gsIGNsb25lRGVlcCBhcyBfY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoJztcblxudHlwZSBDZWxsQWN0aW9uQnV0dG9uT3B0aW9ucyA9IFBhcnRpYWw8e1xuICAgIHRoZW1lOiBCdXR0b25UeXBlO1xuICAgIGljb246IHN0cmluZyB8IHN0cmluZ1tdO1xuICAgIGljb25TaXplOiBzdHJpbmc7XG4gICAgaWNvbkFmdGVyOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICBpY29uQWZ0ZXJDb2xvcjogc3RyaW5nO1xuICAgIGljb25BZnRlclNpemU6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gICAgaXNBY3RpdmU6IGJvb2xlYW47XG4gICAgY29udGVudDogc3RyaW5nO1xuICAgIGRyb3Bkb3duUG9zaXRpb246IFBvc2l0aW9uO1xufT47XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItY2VsbC1hY3Rpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2VsbC1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIERySW5wdXRzTW9kdWxlLCBEckRyb3Bkb3duTW9kdWxlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2VsbEFjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIElHcmlkQ2VsbFJlbmRlcmVyQ29tcG9uZW50LCBPbkluaXQge1xuICAgIEBJbnB1dCgpIG1lbnU6IElEcm9wZG93bkl0ZW08SUdyaWRFdmVudCB8IGFueT5bXTtcbiAgICBASW5wdXQoKSBkYXRhQW5hbHl0aWNzID0gJ3RhYmxlc19jZWxsc19jZWxsLWFjdGlvbi1tZW51JztcbiAgICBASW5wdXQoKSBiaW5kVmFsdWU6IHN0cmluZztcbiAgICBASW5wdXQoKSBkYXRhOiBhbnk7IC8vIHVzZSBkYXRhIHdoZW4geW91IG5lZWQgdXNlIGNvbXBvbmVudCBhcyB0YWdcbiAgICBASW5wdXQoKSB1c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW46IGJvb2xlYW47XG5cbiAgICBpc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgZ3JpZEFwaTogR3JpZEFwaTtcbiAgICBidXR0b25PcHRpb25zPzogQ2VsbEFjdGlvbkJ1dHRvbk9wdGlvbnM7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSAmJiB0aGlzLm1lbnUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0UGF5bG9hZEZvckRyb3Bkb3duKHRoaXMubWVudSwgdGhpcy5kYXRhLCB0aGlzLmJpbmRWYWx1ZSwgdGhpcy51c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWdJbml0KHBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLmdyaWRBcGkgPSBwYXJhbXMuYXBpO1xuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBwYXJhbXMuY29sRGVmLmNlbGxSZW5kZXJlclBhcmFtcz8uaXNEaXNhYmxlZD8uKHBhcmFtcy5kYXRhKTtcbiAgICAgICAgdGhpcy5kYXRhQW5hbHl0aWNzID0gcGFyYW1zLmNvbERlZi5jZWxsUmVuZGVyZXJQYXJhbXM/LmRhdGFBbmFseXRpY3MgfHwgdGhpcy5kYXRhQW5hbHl0aWNzO1xuICAgICAgICB0aGlzLnVzZVBhcmVudERhdGFGb3JDaGlsZHJlbiA9IHBhcmFtcy51c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW47XG4gICAgICAgIHRoaXMuc2V0UGF5bG9hZEZvckRyb3Bkb3duKHBhcmFtcy5tZW51LCBwYXJhbXMubm9kZS5kYXRhLCBwYXJhbXMuYmluZFZhbHVlLCB0aGlzLnVzZVBhcmVudERhdGFGb3JDaGlsZHJlbik7XG4gICAgICAgIHRoaXMuYnV0dG9uT3B0aW9ucyA9IHBhcmFtcy5idXR0b25PcHRpb25zO1xuICAgIH1cblxuICAgIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBvbk1lbnVBY3Rpb24oJGV2ZW50OiBJRHJvcGRvd25BY3Rpb248dW5rbm93bj4pIHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLmRyRXZlbnRzLmVtaXQoe1xuICAgICAgICAgICAgdHlwZTogR3JpZERyRXZlbnRUeXBlLk1FTlVfQUNUSU9OLFxuICAgICAgICAgICAgZGF0YTogJGV2ZW50LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFBheWxvYWRGb3JEcm9wZG93bihcbiAgICAgICAgbWVudTogSURyb3Bkb3duSXRlbTxJR3JpZEV2ZW50PltdLFxuICAgICAgICBkYXRhOiBhbnksXG4gICAgICAgIGJpbmRWYWx1ZT86IHN0cmluZyxcbiAgICAgICAgdXNlUGFyZW50RGF0YUZvckNoaWxkcmVuPzogYm9vbGVhbixcbiAgICApOiB2b2lkIHtcbiAgICAgICAgdGhpcy5iaW5kVmFsdWUgPSBiaW5kVmFsdWU7XG4gICAgICAgIHRoaXMubWVudSA9IG1lbnUubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpdCA9IF9jbG9uZURlZXAoaXRlbSk7XG5cbiAgICAgICAgICAgIGlmIChpdGVtLmN1c3RvbVRpdGxlKSB7XG4gICAgICAgICAgICAgICAgaXQudGl0bGUgPSBpdGVtLmN1c3RvbVRpdGxlKGRhdGEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5iaW5kVmFsdWUgJiYgZGF0YVt0aGlzLmJpbmRWYWx1ZV0pIHtcbiAgICAgICAgICAgICAgICBpdC5kYXRhID0gZGF0YVt0aGlzLmJpbmRWYWx1ZV07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGl0LmRhdGEgPSBkYXRhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaXQ/LmNoaWxkcmVuICYmIHVzZVBhcmVudERhdGFGb3JDaGlsZHJlbikge1xuICAgICAgICAgICAgICAgIF9mb3JFYWNoKGl0LmNoaWxkcmVuLCAoY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGlsZC5kYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5kYXRhID0gaXQuZGF0YTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gaXQ7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxkci1idXR0b25cbiAgICBkYXRhLWFuYWx5dGljcz1cImNlbGwtYWN0aW9uX2J1dHRvbi0wXCJcbiAgICAqbmdJZj1cIiFpc0Rpc2FibGVkXCJcbiAgICBbYXR0ci5kYXRhLWFuYWx5dGljc109XCJkYXRhQW5hbHl0aWNzXCJcbiAgICBbdGhlbWVdPVwiYnV0dG9uT3B0aW9ucz8udGhlbWUgfHwgJ2ljb24nXCJcbiAgICBbaWNvbl09XCJidXR0b25PcHRpb25zPy5pY29uIHx8ICdkci1pY29uLW1vcmUnXCJcbiAgICBbaWNvblNpemVdPVwiYnV0dG9uT3B0aW9ucz8uaWNvblNpemVcIlxuICAgIFtpY29uQWZ0ZXJdPVwiYnV0dG9uT3B0aW9ucz8uaWNvbkFmdGVyXCJcbiAgICBbaWNvbkFmdGVyQ29sb3JdPVwiYnV0dG9uT3B0aW9ucz8uaWNvbkFmdGVyQ29sb3JcIlxuICAgIFtpY29uQWZ0ZXJTaXplXT1cImJ1dHRvbk9wdGlvbnM/Lmljb25BZnRlclNpemVcIlxuICAgIFtpc0xvYWRpbmddPVwiYnV0dG9uT3B0aW9ucz8uaXNMb2FkaW5nXCJcbiAgICBbZHJEcm9wZG93bl09XCJtZW51XCJcbiAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cImJ1dHRvbk9wdGlvbnM/LmRyb3Bkb3duUG9zaXRpb24gfHwgJ2xlZnQtdG9wJ1wiXG4gICAgKGRyRHJvcGRvd25BY3Rpb24pPVwib25NZW51QWN0aW9uKCRldmVudClcIj5cbiAgICB7eyBidXR0b25PcHRpb25zPy5jb250ZW50IH19XG48L2RyLWJ1dHRvbj5cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1hY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZ3JpZC9jb21wb25lbnRzL2NlbGxzL2NlbGwtYWN0aW9uL2NlbGwtYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLWFjdGlvbi9jZWxsLWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBSTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVqRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFFBQVEsRUFBRSxTQUFTLElBQUksVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7O0lDVHRFLG9DQWE4QztJQUExQyxxTUFBb0IsZUFBQSwyQkFBb0IsQ0FBQSxJQUFDO0lBQ3pDLFlBQ0o7SUFBQSxpQkFBWTs7O0lBWFIsb0dBQXdDLDZGQUFBLGlGQUFBLG1GQUFBLDZGQUFBLDJGQUFBLG1GQUFBLDJCQUFBLG1IQUFBO0lBRHhDLHNEQUFxQztJQVdyQyxlQUNKO0lBREksb0dBQ0o7O0FEcUJBLE1BQU0sT0FBTyxtQkFBbUI7SUFYaEM7UUFhYSxrQkFBYSxHQUFHLCtCQUErQixDQUFDO1FBTXpELGVBQVUsR0FBWSxLQUFL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LGNBR2QsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxtQkFDeEMsdUJBQXVCLENBQUMsTUFBTSxRQUN6QztvQkFDRixrQ0FBa0MsRUFBRSxVQUFVO2lCQUNqRDtnQkFHUSxJQUFJO2tCQUFaLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUNHLHdCQUF3QjtrQkFBaEMsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHJJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9kci1pbnB1dHMvZHItaW5wdXRzLm1vZHVsZSc7XG5pbXBvcnQgeyBEckRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZHItZHJvcGRvd24vZHItZHJvcGRvd24ubW9kdWxlJztcbmltcG9ydCB7IElEcm9wZG93bkFjdGlvbiwgSURyb3Bkb3duSXRlbSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9kcm9wZG93bic7XG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9wb3NpdGlvbic7XG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZHItaW5wdXRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWREckV2ZW50VHlwZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kci1ncmlkLWV2ZW50cyc7XG5pbXBvcnQgeyBHcmlkQXBpLCBJR3JpZENlbGxSZW5kZXJlckNvbXBvbmVudCwgSUdyaWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZvckVhY2ggYXMgX2ZvckVhY2gsIGNsb25lRGVlcCBhcyBfY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoJztcblxudHlwZSBDZWxsQWN0aW9uQnV0dG9uT3B0aW9ucyA9IFBhcnRpYWw8e1xuICAgIHRoZW1lOiBCdXR0b25UeXBlO1xuICAgIGljb246IHN0cmluZyB8IHN0cmluZ1tdO1xuICAgIGljb25TaXplOiBzdHJpbmc7XG4gICAgaWNvbkFmdGVyOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICBpY29uQWZ0ZXJDb2xvcjogc3RyaW5nO1xuICAgIGljb25BZnRlclNpemU6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gICAgaXNBY3RpdmU6IGJvb2xlYW47XG4gICAgY29udGVudDogc3RyaW5nO1xuICAgIGRyb3Bkb3duUG9zaXRpb246IFBvc2l0aW9uO1xufT47XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItY2VsbC1hY3Rpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2VsbC1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIERySW5wdXRzTW9kdWxlLCBEckRyb3Bkb3duTW9kdWxlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3MuZHItY2VsbC1hY3Rpb24tcGluLXJpZ2h0XSc6ICdwaW5SaWdodCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2VsbEFjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIElHcmlkQ2VsbFJlbmRlcmVyQ29tcG9uZW50LCBPbkluaXQge1xuICAgIEBJbnB1dCgpIG1lbnU6IElEcm9wZG93bkl0ZW08SUdyaWRFdmVudCB8IGFueT5bXTtcbiAgICBASW5wdXQoKSBkYXRhQW5hbHl0aWNzID0gJ3RhYmxlc19jZWxsc19jZWxsLWFjdGlvbi1tZW51JztcbiAgICBASW5wdXQoKSBiaW5kVmFsdWU6IHN0cmluZztcbiAgICBASW5wdXQoKSBkYXRhOiBhbnk7IC8vIHVzZSBkYXRhIHdoZW4geW91IG5lZWQgdXNlIGNvbXBvbmVudCBhcyB0YWdcbiAgICBASW5wdXQoKSB1c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW46IGJvb2xlYW47XG4gICAgQElucHV0KCkgcGluUmlnaHQ6IGJvb2xlYW47XG5cbiAgICBpc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgZ3JpZEFwaTogR3JpZEFwaTtcbiAgICBidXR0b25PcHRpb25zPzogQ2VsbEFjdGlvbkJ1dHRvbk9wdGlvbnM7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSAmJiB0aGlzLm1lbnUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0UGF5bG9hZEZvckRyb3Bkb3duKHRoaXMubWVudSwgdGhpcy5kYXRhLCB0aGlzLmJpbmRWYWx1ZSwgdGhpcy51c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWdJbml0KHBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLmdyaWRBcGkgPSBwYXJhbXMuYXBpO1xuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBwYXJhbXMuY29sRGVmLmNlbGxSZW5kZXJlclBhcmFtcz8uaXNEaXNhYmxlZD8uKHBhcmFtcy5kYXRhKTtcbiAgICAgICAgdGhpcy5kYXRhQW5hbHl0aWNzID0gcGFyYW1zLmNvbERlZi5jZWxsUmVuZGVyZXJQYXJhbXM/LmRhdGFBbmFseXRpY3MgfHwgdGhpcy5kYXRhQW5hbHl0aWNzO1xuICAgICAgICB0aGlzLnVzZVBhcmVudERhdGFGb3JDaGlsZHJlbiA9IHBhcmFtcy51c2VQYXJlbnREYXRhRm9yQ2hpbGRyZW47XG4gICAgICAgIHRoaXMuc2V0UGF5bG9hZEZvckRyb3Bkb3duKHBhcmFtcy5tZW51LCBwYXJhbXMubm9kZS5kYXRhLCBwYXJhbXMuYmluZFZhbHVlLCB0aGlzLnVzZVBhcmVudERhdGFGb3JDaGlsZHJlbik7XG4gICAgICAgIHRoaXMuYnV0dG9uT3B0aW9ucyA9IHBhcmFtcy5idXR0b25PcHRpb25zO1xuICAgICAgICB0aGlzLnBpblJpZ2h0ID0gcGFyYW1zLnBpblJpZ2h0O1xuICAgIH1cblxuICAgIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBvbk1lbnVBY3Rpb24oJGV2ZW50OiBJRHJvcGRvd25BY3Rpb248dW5rbm93bj4pIHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLmRyRXZlbnRzLmVtaXQoe1xuICAgICAgICAgICAgdHlwZTogR3JpZERyRXZlbnRUeXBlLk1FTlVfQUNUSU9OLFxuICAgICAgICAgICAgZGF0YTogJGV2ZW50LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFBheWxvYWRGb3JEcm9wZG93bihcbiAgICAgICAgbWVudTogSURyb3Bkb3duSXRlbTxJR3JpZEV2ZW50PltdLFxuICAgICAgICBkYXRhOiBhbnksXG4gICAgICAgIGJpbmRWYWx1ZT86IHN0cmluZyxcbiAgICAgICAgdXNlUGFyZW50RGF0YUZvckNoaWxkcmVuPzogYm9vbGVhbixcbiAgICApOiB2b2lkIHtcbiAgICAgICAgdGhpcy5iaW5kVmFsdWUgPSBiaW5kVmFsdWU7XG4gICAgICAgIHRoaXMubWVudSA9IG1lbnUubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpdCA9IF9jbG9uZURlZXAoaXRlbSk7XG5cbiAgICAgICAgICAgIGlmIChpdGVtLmN1c3RvbVRpdGxlKSB7XG4gICAgICAgICAgICAgICAgaXQudGl0bGUgPSBpdGVtLmN1c3RvbVRpdGxlKGRhdGEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5iaW5kVmFsdWUgJiYgZGF0YVt0aGlzLmJpbmRWYWx1ZV0pIHtcbiAgICAgICAgICAgICAgICBpdC5kYXRhID0gZGF0YVt0aGlzLmJpbmRWYWx1ZV07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGl0LmRhdGEgPSBkYXRhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaXQ/LmNoaWxkcmVuICYmIHVzZVBhcmVudERhdGFGb3JDaGlsZHJlbikge1xuICAgICAgICAgICAgICAgIF9mb3JFYWNoKGl0LmNoaWxkcmVuLCAoY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGlsZC5kYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZC5kYXRhID0gaXQuZGF0YTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gaXQ7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxkci1idXR0b25cbiAgICBkYXRhLWFuYWx5dGljcz1cImNlbGwtYWN0aW9uX2J1dHRvbi0wXCJcbiAgICAqbmdJZj1cIiFpc0Rpc2FibGVkXCJcbiAgICBbYXR0ci5kYXRhLWFuYWx5dGljc109XCJkYXRhQW5hbHl0aWNzXCJcbiAgICBbdGhlbWVdPVwiYnV0dG9uT3B0aW9ucz8udGhlbWUgfHwgJ2ljb24nXCJcbiAgICBbaWNvbl09XCJidXR0b25PcHRpb25zPy5pY29uIHx8ICdkci1pY29uLW1vcmUnXCJcbiAgICBbaWNvblNpemVdPVwiYnV0dG9uT3B0aW9ucz8uaWNvblNpemVcIlxuICAgIFtpY29uQWZ0ZXJdPVwiYnV0dG9uT3B0aW9ucz8uaWNvbkFmdGVyXCJcbiAgICBbaWNvbkFmdGVyQ29sb3JdPVwiYnV0dG9uT3B0aW9ucz8uaWNvbkFmdGVyQ29sb3JcIlxuICAgIFtpY29uQWZ0ZXJTaXplXT1cImJ1dHRvbk9wdGlvbnM/Lmljb25BZnRlclNpemVcIlxuICAgIFtpc0xvYWRpbmddPVwiYnV0dG9uT3B0aW9ucz8uaXNMb2FkaW5nXCJcbiAgICBbZHJEcm9wZG93bl09XCJtZW51XCJcbiAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cImJ1dHRvbk9wdGlvbnM/LmRyb3Bkb3duUG9zaXRpb24gfHwgJ2xlZnQtdG9wJ1wiXG4gICAgKGRyRHJvcGRvd25BY3Rpb24pPVwib25NZW51QWN0aW9uKCRldmVudClcIj5cbiAgICB7eyBidXR0b25PcHRpb25zPy5jb250ZW50IH19XG48L2RyLWJ1dHRvbj5cbiJdfQ==
@@ -132,10 +132,10 @@ export class CellChildrenListComponent {
132
132
  i0.ɵɵtemplate(0, CellChildrenListComponent_div_0_Template, 2, 2, "div", 0);
133
133
  } if (rf & 2) {
134
134
  i0.ɵɵproperty("ngIf", ctx.children == null ? null : ctx.children.length);
135
- } }, dependencies: [CommonModule, i1.NgIf, DrInputsModule, i2.DrButtonComponent], styles: ["[_nghost-%COMP%]{height:100%;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] .cell-children-list[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center} .ag-row-level-0 .dr-cell-children-list{padding-left:16px;overflow:visible;z-index:1} .ag-row-level-0 .dr-cell-children-list+.ag-cell{padding-left:16px;border-top:none;border-bottom:none} .ag-row-level-0 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-1 .dr-cell-children-list{padding-left:32px;overflow:visible;z-index:1} .ag-row-level-1 .dr-cell-children-list+.ag-cell{padding-left:32px;border-top:none;border-bottom:none} .ag-row-level-1 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-2 .dr-cell-children-list{padding-left:48px;overflow:visible;z-index:1} .ag-row-level-2 .dr-cell-children-list+.ag-cell{padding-left:48px;border-top:none;border-bottom:none} .ag-row-level-2 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-3 .dr-cell-children-list{padding-left:64px;overflow:visible;z-index:1} .ag-row-level-3 .dr-cell-children-list+.ag-cell{padding-left:64px;border-top:none;border-bottom:none} .ag-row-level-3 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-4 .dr-cell-children-list{padding-left:80px;overflow:visible;z-index:1} .ag-row-level-4 .dr-cell-children-list+.ag-cell{padding-left:80px;border-top:none;border-bottom:none} .ag-row-level-4 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-5 .dr-cell-children-list{padding-left:96px;overflow:visible;z-index:1} .ag-row-level-5 .dr-cell-children-list+.ag-cell{padding-left:96px;border-top:none;border-bottom:none} .ag-row-level-5 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-6 .dr-cell-children-list{padding-left:112px;overflow:visible;z-index:1} .ag-row-level-6 .dr-cell-children-list+.ag-cell{padding-left:112px;border-top:none;border-bottom:none} .ag-row-level-6 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-7 .dr-cell-children-list{padding-left:128px;overflow:visible;z-index:1} .ag-row-level-7 .dr-cell-children-list+.ag-cell{padding-left:128px;border-top:none;border-bottom:none} .ag-row-level-7 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-8 .dr-cell-children-list{padding-left:144px;overflow:visible;z-index:1} .ag-row-level-8 .dr-cell-children-list+.ag-cell{padding-left:144px;border-top:none;border-bottom:none} .ag-row-level-8 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-9 .dr-cell-children-list{padding-left:160px;overflow:visible;z-index:1} .ag-row-level-9 .dr-cell-children-list+.ag-cell{padding-left:160px;border-top:none;border-bottom:none} .ag-row-level-9 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-10 .dr-cell-children-list{padding-left:176px;overflow:visible;z-index:1} .ag-row-level-10 .dr-cell-children-list+.ag-cell{padding-left:176px;border-top:none;border-bottom:none} .ag-row-level-10 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .dr-row-child .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left:1px solid #9ea1aa} .dr-row-child .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{content:\"\";position:absolute;width:9px;top:calc(-50% - 2px);height:calc(100% + 4px);left:-1px;display:block;border-left:1px solid #9ea1aa;border-bottom:1px solid #9ea1aa} .dr-row-child-first .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{top:-1px;height:calc(50% + 2px)} .dr-row-child-last .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left-color:transparent} .dr-row-child-last .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{border-bottom-left-radius:4px} .dr-row-parent-expanded .ag-selection-checkbox{height:100%;position:relative} .dr-row-parent-expanded .ag-selection-checkbox:after{content:\"\";position:absolute;top:calc(50% + 8px);left:calc(50% + 3px);height:calc(50% + 1px);display:block;border-left:1px solid #9ea1aa}"], changeDetection: 0 }); }
135
+ } }, dependencies: [CommonModule, i1.NgIf, DrInputsModule, i2.DrButtonComponent], styles: ["[_nghost-%COMP%]{height:100%;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] .cell-children-list[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center} .ag-row-level-0 .dr-cell-children-list{padding-left:16px;overflow:visible;z-index:1} .ag-row-level-0 .dr-cell-children-list+.ag-cell{padding-left:16px;border-top:none;border-bottom:none} .ag-row-level-0 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-1 .dr-cell-children-list{padding-left:32px;overflow:visible;z-index:1} .ag-row-level-1 .dr-cell-children-list+.ag-cell{padding-left:32px;border-top:none;border-bottom:none} .ag-row-level-1 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-2 .dr-cell-children-list{padding-left:48px;overflow:visible;z-index:1} .ag-row-level-2 .dr-cell-children-list+.ag-cell{padding-left:48px;border-top:none;border-bottom:none} .ag-row-level-2 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-3 .dr-cell-children-list{padding-left:64px;overflow:visible;z-index:1} .ag-row-level-3 .dr-cell-children-list+.ag-cell{padding-left:64px;border-top:none;border-bottom:none} .ag-row-level-3 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-4 .dr-cell-children-list{padding-left:80px;overflow:visible;z-index:1} .ag-row-level-4 .dr-cell-children-list+.ag-cell{padding-left:80px;border-top:none;border-bottom:none} .ag-row-level-4 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-5 .dr-cell-children-list{padding-left:96px;overflow:visible;z-index:1} .ag-row-level-5 .dr-cell-children-list+.ag-cell{padding-left:96px;border-top:none;border-bottom:none} .ag-row-level-5 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-6 .dr-cell-children-list{padding-left:112px;overflow:visible;z-index:1} .ag-row-level-6 .dr-cell-children-list+.ag-cell{padding-left:112px;border-top:none;border-bottom:none} .ag-row-level-6 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-7 .dr-cell-children-list{padding-left:128px;overflow:visible;z-index:1} .ag-row-level-7 .dr-cell-children-list+.ag-cell{padding-left:128px;border-top:none;border-bottom:none} .ag-row-level-7 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-8 .dr-cell-children-list{padding-left:144px;overflow:visible;z-index:1} .ag-row-level-8 .dr-cell-children-list+.ag-cell{padding-left:144px;border-top:none;border-bottom:none} .ag-row-level-8 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-9 .dr-cell-children-list{padding-left:160px;overflow:visible;z-index:1} .ag-row-level-9 .dr-cell-children-list+.ag-cell{padding-left:160px;border-top:none;border-bottom:none} .ag-row-level-9 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .ag-row-level-10 .dr-cell-children-list{padding-left:176px;overflow:visible;z-index:1} .ag-row-level-10 .dr-cell-children-list+.ag-cell{padding-left:176px;border-top:none;border-bottom:none} .ag-row-level-10 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent} .dr-row-child:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left:1px solid #9ea1aa} .dr-row-child:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{content:\"\";position:absolute;width:9px;top:calc(-50% - 2px);height:calc(100% + 4px);left:-1px;display:block;border-left:1px solid #9ea1aa;border-bottom:1px solid #9ea1aa} .dr-row-child-first:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{top:-1px;height:calc(50% + 2px)} .dr-row-child-last:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left-color:transparent} .dr-row-child-last:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{border-bottom-left-radius:4px} .dr-row-parent-expanded:not(.dr-row-suppress-connected-lines) .ag-selection-checkbox{height:100%;position:relative} .dr-row-parent-expanded:not(.dr-row-suppress-connected-lines) .ag-selection-checkbox:after{content:\"\";position:absolute;top:calc(50% + 8px);left:calc(50% + 3px);height:calc(50% + 1px);display:block;border-left:1px solid #9ea1aa}"], changeDetection: 0 }); }
136
136
  }
137
137
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CellChildrenListComponent, [{
138
138
  type: Component,
139
- args: [{ selector: 'dr-cell-children-list', standalone: true, imports: [CommonModule, DrInputsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cell-children-list\" *ngIf=\"children?.length\">\n <dr-button\n data-analytics=\"tables_cells_cell-children-list_button-0\"\n theme=\"icon\"\n [iconSize]=\"collapseIconSize\"\n [icon]=\"rowNode.drCollapsed ? 'dr-icon-arrow-right' : 'dr-icon-arrow-down'\"\n (click)=\"$event?.stopPropagation(); rowNode.drCollapsed ? this.expand() : this.collapse()\"></dr-button>\n</div>\n", styles: [":host{height:100%;display:flex;align-items:center;justify-content:center}:host .cell-children-list{display:flex;align-items:center;justify-content:center}::ng-deep .ag-row-level-0 .dr-cell-children-list{padding-left:16px;overflow:visible;z-index:1}::ng-deep .ag-row-level-0 .dr-cell-children-list+.ag-cell{padding-left:16px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-0 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-1 .dr-cell-children-list{padding-left:32px;overflow:visible;z-index:1}::ng-deep .ag-row-level-1 .dr-cell-children-list+.ag-cell{padding-left:32px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-1 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-2 .dr-cell-children-list{padding-left:48px;overflow:visible;z-index:1}::ng-deep .ag-row-level-2 .dr-cell-children-list+.ag-cell{padding-left:48px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-2 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-3 .dr-cell-children-list{padding-left:64px;overflow:visible;z-index:1}::ng-deep .ag-row-level-3 .dr-cell-children-list+.ag-cell{padding-left:64px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-3 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-4 .dr-cell-children-list{padding-left:80px;overflow:visible;z-index:1}::ng-deep .ag-row-level-4 .dr-cell-children-list+.ag-cell{padding-left:80px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-4 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-5 .dr-cell-children-list{padding-left:96px;overflow:visible;z-index:1}::ng-deep .ag-row-level-5 .dr-cell-children-list+.ag-cell{padding-left:96px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-5 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-6 .dr-cell-children-list{padding-left:112px;overflow:visible;z-index:1}::ng-deep .ag-row-level-6 .dr-cell-children-list+.ag-cell{padding-left:112px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-6 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-7 .dr-cell-children-list{padding-left:128px;overflow:visible;z-index:1}::ng-deep .ag-row-level-7 .dr-cell-children-list+.ag-cell{padding-left:128px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-7 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-8 .dr-cell-children-list{padding-left:144px;overflow:visible;z-index:1}::ng-deep .ag-row-level-8 .dr-cell-children-list+.ag-cell{padding-left:144px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-8 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-9 .dr-cell-children-list{padding-left:160px;overflow:visible;z-index:1}::ng-deep .ag-row-level-9 .dr-cell-children-list+.ag-cell{padding-left:160px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-9 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-10 .dr-cell-children-list{padding-left:176px;overflow:visible;z-index:1}::ng-deep .ag-row-level-10 .dr-cell-children-list+.ag-cell{padding-left:176px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-10 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .dr-row-child .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left:1px solid #9ea1aa}::ng-deep .dr-row-child .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{content:\"\";position:absolute;width:9px;top:calc(-50% - 2px);height:calc(100% + 4px);left:-1px;display:block;border-left:1px solid #9ea1aa;border-bottom:1px solid #9ea1aa}::ng-deep .dr-row-child-first .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{top:-1px;height:calc(50% + 2px)}::ng-deep .dr-row-child-last .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left-color:transparent}::ng-deep .dr-row-child-last .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{border-bottom-left-radius:4px}::ng-deep .dr-row-parent-expanded .ag-selection-checkbox{height:100%;position:relative}::ng-deep .dr-row-parent-expanded .ag-selection-checkbox:after{content:\"\";position:absolute;top:calc(50% + 8px);left:calc(50% + 3px);height:calc(50% + 1px);display:block;border-left:1px solid #9ea1aa}\n"] }]
139
+ args: [{ selector: 'dr-cell-children-list', standalone: true, imports: [CommonModule, DrInputsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cell-children-list\" *ngIf=\"children?.length\">\n <dr-button\n data-analytics=\"tables_cells_cell-children-list_button-0\"\n theme=\"icon\"\n [iconSize]=\"collapseIconSize\"\n [icon]=\"rowNode.drCollapsed ? 'dr-icon-arrow-right' : 'dr-icon-arrow-down'\"\n (click)=\"$event?.stopPropagation(); rowNode.drCollapsed ? this.expand() : this.collapse()\"></dr-button>\n</div>\n", styles: [":host{height:100%;display:flex;align-items:center;justify-content:center}:host .cell-children-list{display:flex;align-items:center;justify-content:center}::ng-deep .ag-row-level-0 .dr-cell-children-list{padding-left:16px;overflow:visible;z-index:1}::ng-deep .ag-row-level-0 .dr-cell-children-list+.ag-cell{padding-left:16px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-0 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-1 .dr-cell-children-list{padding-left:32px;overflow:visible;z-index:1}::ng-deep .ag-row-level-1 .dr-cell-children-list+.ag-cell{padding-left:32px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-1 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-2 .dr-cell-children-list{padding-left:48px;overflow:visible;z-index:1}::ng-deep .ag-row-level-2 .dr-cell-children-list+.ag-cell{padding-left:48px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-2 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-3 .dr-cell-children-list{padding-left:64px;overflow:visible;z-index:1}::ng-deep .ag-row-level-3 .dr-cell-children-list+.ag-cell{padding-left:64px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-3 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-4 .dr-cell-children-list{padding-left:80px;overflow:visible;z-index:1}::ng-deep .ag-row-level-4 .dr-cell-children-list+.ag-cell{padding-left:80px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-4 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-5 .dr-cell-children-list{padding-left:96px;overflow:visible;z-index:1}::ng-deep .ag-row-level-5 .dr-cell-children-list+.ag-cell{padding-left:96px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-5 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-6 .dr-cell-children-list{padding-left:112px;overflow:visible;z-index:1}::ng-deep .ag-row-level-6 .dr-cell-children-list+.ag-cell{padding-left:112px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-6 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-7 .dr-cell-children-list{padding-left:128px;overflow:visible;z-index:1}::ng-deep .ag-row-level-7 .dr-cell-children-list+.ag-cell{padding-left:128px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-7 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-8 .dr-cell-children-list{padding-left:144px;overflow:visible;z-index:1}::ng-deep .ag-row-level-8 .dr-cell-children-list+.ag-cell{padding-left:144px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-8 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-9 .dr-cell-children-list{padding-left:160px;overflow:visible;z-index:1}::ng-deep .ag-row-level-9 .dr-cell-children-list+.ag-cell{padding-left:160px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-9 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .ag-row-level-10 .dr-cell-children-list{padding-left:176px;overflow:visible;z-index:1}::ng-deep .ag-row-level-10 .dr-cell-children-list+.ag-cell{padding-left:176px;border-top:none;border-bottom:none}::ng-deep .ag-row-level-10 .dr-cell-children-list+.ag-cell .ag-selection-checkbox{height:100%!important;position:relative;margin-left:-10px;padding-left:8px;border-left:1px solid transparent}::ng-deep .dr-row-child:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left:1px solid #9ea1aa}::ng-deep .dr-row-child:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{content:\"\";position:absolute;width:9px;top:calc(-50% - 2px);height:calc(100% + 4px);left:-1px;display:block;border-left:1px solid #9ea1aa;border-bottom:1px solid #9ea1aa}::ng-deep .dr-row-child-first:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{top:-1px;height:calc(50% + 2px)}::ng-deep .dr-row-child-last:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox{border-left-color:transparent}::ng-deep .dr-row-child-last:not(.dr-row-suppress-connected-lines) .dr-cell-children-list+.ag-cell .ag-selection-checkbox:before{border-bottom-left-radius:4px}::ng-deep .dr-row-parent-expanded:not(.dr-row-suppress-connected-lines) .ag-selection-checkbox{height:100%;position:relative}::ng-deep .dr-row-parent-expanded:not(.dr-row-suppress-connected-lines) .ag-selection-checkbox:after{content:\"\";position:absolute;top:calc(50% + 8px);left:calc(50% + 3px);height:calc(50% + 1px);display:block;border-left:1px solid #9ea1aa}\n"] }]
140
140
  }], null, null); })();
141
141
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1jaGlsZHJlbi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLWNoaWxkcmVuLWxpc3QvY2VsbC1jaGlsZHJlbi1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLWNoaWxkcmVuLWxpc3QvY2VsbC1jaGlsZHJlbi1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQUUsT0FBTyxJQUFJLFFBQVEsRUFBRSxHQUFHLElBQUksSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7OztJQ0ovQyw4QkFBeUQsbUJBQUE7SUFNakQsZ01BQVMsd0JBQXlCLFNBQUUsNENBQXNCLGVBQWEsR0FBRyxpQkFBZSxDQUFBLElBQUM7SUFBQyxpQkFBWSxFQUFBOzs7SUFGdkcsZUFBNkI7SUFBN0Isa0RBQTZCLG1GQUFBOztBRFVyQyxNQUFNLE9BQU8seUJBQXlCO0lBUnRDO1FBU1cscUJBQWdCLEdBQUcsTUFBTSxDQUFDO0tBK0hwQztJQXRIVSxPQUFPO1FBQ1YsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FB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QVJyQyxTQUFTOzJCQUNJLHVCQUF1QixjQUdyQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLG1CQUN0Qix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3JpZEFwaSwgSUdyaWRDZWxsUmVuZGVyZXJDb21wb25lbnQsIEdyaWRSb3dOb2RlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZ2V0IGFzIF9nZXQsIGZvckVhY2ggYXMgX2ZvckVhY2gsIGhhcyBhcyBfaGFzIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IERySW5wdXRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZHItaW5wdXRzL2RyLWlucHV0cy5tb2R1bGUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jZWxsLWNoaWxkcmVuLWxpc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jZWxsLWNoaWxkcmVuLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NlbGwtY2hpbGRyZW4tbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHJJbnB1dHNNb2R1bGVdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDZWxsQ2hpbGRyZW5MaXN0Q29tcG9uZW50IGltcGxlbWVudHMgSUdyaWRDZWxsUmVuZGVyZXJDb21wb25lbnQge1xuICAgIHB1YmxpYyBjb2xsYXBzZUljb25TaXplID0gJzI0cHgnO1xuICAgIHByaXZhdGUgZ3JpZEFwaTogR3JpZEFwaTtcbiAgICBwcml2YXRlIHJvd0VsOiBIVE1MRWxlbWVudDtcbiAgICBwcml2YXRlIGJpbmRDb2xsYXBzZTogc3RyaW5nO1xuICAgIHByaXZhdGUgYmluZENoaWxkcmVuOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICBwcml2YXRlIGJpbmRIaWRkZW46IHN0cmluZztcbiAgICBwcml2YXRlIGJpbmRTZWxlY3RlZDogc3RyaW5nO1xuICAgIHB1YmxpYyByb3dOb2RlOiBHcmlkUm93Tm9kZTtcblxuICAgIHB1YmxpYyByZWZyZXNoKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG5leHRSb3coKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93Tm9kZS5yb3dJbmRleCArIDE7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjaGlsZHJlbigpOiBhbnlbXSB7XG4gICAgICAgIGxldCBjaGlsZHJlbiA9IFtdO1xuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYmluZENoaWxkcmVuID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgY2hpbGRyZW4gPSBfZ2V0KHRoaXMucm93Tm9kZS5kYXRhLCB0aGlzLmJpbmRDaGlsZHJlbiwgW10pO1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5iaW5kQ2hpbGRyZW4pKSB7XG4gICAgICAgICAgICBfZm9yRWFjaCh0aGlzLmJpbmRDaGlsZHJlbiwgKHByb3ApID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZERhdGEgPSBfZ2V0KHRoaXMucm93Tm9kZS5kYXRhLCBwcm9wLCBbXSk7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGREYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbi5wdXNoKC4uLmNoaWxkRGF0YSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChjaGlsZERhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjaGlsZERhdGEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICghIXRoaXMuYmluZEhpZGRlbikge1xuICAgICAgICAgICAgY2hpbGRyZW4gPSBjaGlsZHJlbi5maWx0ZXIoKGNoaWxkKSA9PiAhY2hpbGRbdGhpcy5iaW5kSGlkZGVuXSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZ0luaXQocGFyYW1zKTogdm9pZCB7XG4gICAgICAgIGlmICghcGFyYW1zLmJpbmRDaGlsZHJlbiB8fCAhcGFyYW1zLmJpbmRDb2xsYXBzZSkgcmV0dXJuO1xuXG4gICAgICAgIHBhcmFtcy5lR3JpZENlbGwuY2xhc3NMaXN0LmFkZCgnZHItY2VsbC1jaGlsZHJlbi1saXN0Jyk7XG4gICAgICAgIHRoaXMucm93RWwgPSBwYXJhbXMuZUdyaWRDZWxsLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgIHRoaXMuZ3JpZEFwaSA9IHBhcmFtcy5hcGk7XG4gICAgICAgIHRoaXMuY29sbGFwc2VJY29uU2l6ZSA9IHBhcmFtcy5jb2xsYXBzZUljb25TaXplIHx8IHRoaXMuY29sbGFwc2VJY29uU2l6ZTtcbiAgICAgICAgdGhpcy5iaW5kQ29sbGFwc2UgPSBwYXJhbXMuYmluZENvbGxhcHNlO1xuICAgICAgICB0aGlzLmJpbmRDaGlsZHJlbiA9IHBhcmFtcy5iaW5kQ2hpbGRyZW47XG4gICAgICAgIHRoaXMuYmluZEhpZGRlbiA9IHBhcmFtcy5iaW5kSGlkZGVuO1xuICAgICAgICB0aGlzLmJpbmRTZWxlY3RlZCA9IHBhcmFtcy5iaW5kU2VsZWN0ZWQ7XG4gICAgICAgIHRoaXMucm93Tm9kZSA9IHBhcmFtcy5ub2RlO1xuXG4gICAgICAgIGlmICghX2hhcyh0aGlzLnJvd05vZGUsICdkckNvbGxhcHNlZCcpICYmIHRoaXMuY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKF9oYXModGhpcy5yb3dOb2RlLmRhdGEsIHRoaXMuYmluZENvbGxhcHNlKSkge1xuICAgICAgICAgICAgICAgIHRoaXMucm93Tm9kZS5kckNvbGxhcHNlZCA9IHRoaXMucm93Tm9kZS5kYXRhW3RoaXMuYmluZENvbGxhcHNlXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgKHRoaXMucm93Tm9kZS5kYXRhIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW3RoaXMuYmluZENvbGxhcHNlXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3dOb2RlLmRyQ29sbGFwc2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMucm93Tm9kZS5kclJvd1BhcmVudCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnJvd05vZGUuZHJDb2xsYXBzZSA9IHRoaXMuY29sbGFwc2UuYmluZCh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMucm93Tm9kZS5kckV4cGFuZCA9IHRoaXMuZXhwYW5kLmJpbmQodGhpcyk7XG5cbiAgICAgICAgICAgIGlmICghdGhpcy5yb3dOb2RlLmRyQ29sbGFwc2VkKSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXhwYW5kKHRydWUpO1xuICAgICAgICAgICAgICAgIH0sIDEwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjb2xsYXBzZSgpIHtcbiAgICAgICAgaWYgKHRoaXMucm93Tm9kZS5kckNvbGxhcHNlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucm93Tm9kZS5kckNvbGxhcHNlZCA9IHRydWU7XG4gICAgICAgIHRoaXMucm93Tm9kZS5kYXRhW3RoaXMuYmluZENvbGxhcHNlXSA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMucm93Tm9kZS5kckNoaWxkTm9kZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5yb3dOb2RlLmRyUm93Q2hpbGRMYXN0SW5UcmVlID0gdGhpcy5pc0FueUNoaWxkTHN0SW5UcmVlKHRoaXMucm93Tm9kZSk7XG4gICAgICAgICAgICBfZm9yRWFjaCh0aGlzLnJvd05vZGUuZHJDaGlsZE5vZGVzLCAoY2hpbGROb2RlOiBHcmlkUm93Tm9kZSkgPT4gY2hpbGROb2RlLmRyQ29sbGFwc2U/LigpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdyaWRBcGkuYXBwbHlUcmFuc2FjdGlvbih7IHJlbW92ZTogdGhpcy5jaGlsZHJlbiB9KTtcbiAgICAgICAgdGhpcy5ncmlkQXBpLnJlZHJhd1Jvd3MoeyByb3dOb2RlczogW3RoaXMucm93Tm9kZV0gfSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5ncmlkQXBpLnVwZGF0ZUdyaWREb21MYXlvdXQoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGV4cGFuZChmcm9tSW5pdCA9IGZhbHNlKSB7XG4gICAgICAgIGlmICgoIWZyb21Jbml0ICYmICF0aGlzLnJvd05vZGUuZHJDb2xsYXBzZWQpIHx8ICF0aGlzLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJvd05vZGUuZHJDb2xsYXBzZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5yb3dOb2RlLmRhdGFbdGhpcy5iaW5kQ29sbGFwc2VdID0gZmFsc2U7XG5cbiAgICAgICAgLy8gQWRkIHJvd3NcbiAgICAgICAgdGhpcy5yb3dOb2RlLmRyQ2hpbGROb2RlcyA9IHRoaXMuZ3JpZEFwaS5hcHBseVRyYW5zYWN0aW9uKHsgYWRkSW5kZXg6IHRoaXMubmV4dFJvdywgYWRkOiB0aGlzLmNoaWxkcmVuIH0pXG4gICAgICAgICAgICA/LmFkZCBhcyBHcmlkUm93Tm9kZVtdO1xuICAgICAgICBfZm9yRWFjaCh0aGlzLnJvd05vZGUuZHJDaGlsZE5vZGVzLCAoY2hpbGROb2RlLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgX2NoaWxkTm9kZSA9IGNoaWxkTm9kZSBhcyBHcmlkUm93Tm9kZTtcbiAgICAgICAgICAgIC8vIE1hcmsgcm93cyBhcyBzZWxlY3RlZCBpZiBzZWxlY3Rpb24gbmVlZGVkXG4gICAgICAgICAgICBpZiAodGhpcy5iaW5kU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBfY2hpbGROb2RlLnNldFNlbGVjdGVkKCEhX2NoaWxkTm9kZS5kYXRhW3RoaXMuYmluZFNlbGVjdGVkXSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIF9jaGlsZE5vZGUuZHJSb3dDaGlsZCA9IHRydWU7XG4gICAgICAgICAgICBfY2hpbGROb2RlLmRyUm93Q2hpbGRGaXJzdCA9ICFpbmRleDtcbiAgICAgICAgICAgIF9jaGlsZE5vZGUuZHJSb3dDaGlsZExhc3QgPSB0aGlzLmNoaWxkcmVuPy5sZW5ndGggPT09IGluZGV4ICsgMTtcbiAgICAgICAgICAgIF9jaGlsZE5vZGUuZ3JvdXAgPSB0cnVlO1xuICAgICAgICAgICAgX2NoaWxkTm9kZS5sZXZlbCA9IHRoaXMucm93Tm9kZS5sZXZlbCArIDE7XG5cbiAgICAgICAgICAgIGlmICghdGhpcy5yb3dOb2RlLmxldmVsIHx8IHRoaXMucm93Tm9kZS5kclJvd0NoaWxkTGFzdEluVHJlZSkge1xuICAgICAgICAgICAgICAgIF9jaGlsZE5vZGUuZHJSb3dDaGlsZExhc3RJblRyZWUgPSBfY2hpbGROb2RlLmRyUm93Q2hpbGRMYXN0O1xuICAgICAgICAgICAgICAgIHRoaXMucm93Tm9kZS5kclJvd0NoaWxkTGFzdEluVHJlZSA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gX2NoaWxkTm9kZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5ncmlkQXBpLnJlZHJhd1Jvd3MoeyByb3dOb2RlczogW3RoaXMucm93Tm9kZSwgLi4uKHRoaXMucm93Tm9kZS5kckNoaWxkTm9kZXMgfHwgW10pXSB9KTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmdyaWRBcGkudXBkYXRlR3JpZERvbUxheW91dCgpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzQW55Q2hpbGRMc3RJblRyZWUobm9kZTogR3JpZFJvd05vZGUpIHtcbiAgICAgICAgaWYgKG5vZGUuZHJDaGlsZE5vZGVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmlzQW55Q2hpbGRMc3RJblRyZWUobm9kZS5kckNoaWxkTm9kZXNbbm9kZS5kckNoaWxkTm9kZXMubGVuZ3RoIC0gMV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5vZGUuZHJSb3dDaGlsZExhc3RJblRyZWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY2VsbC1jaGlsZHJlbi1saXN0XCIgKm5nSWY9XCJjaGlsZHJlbj8ubGVuZ3RoXCI+XG4gICAgPGRyLWJ1dHRvblxuICAgICAgICBkYXRhLWFuYWx5dGljcz1cInRhYmxlc19jZWxsc19jZWxsLWNoaWxkcmVuLWxpc3RfYnV0dG9uLTBcIlxuICAgICAgICB0aGVtZT1cImljb25cIlxuICAgICAgICBbaWNvblNpemVdPVwiY29sbGFwc2VJY29uU2l6ZVwiXG4gICAgICAgIFtpY29uXT1cInJvd05vZGUuZHJDb2xsYXBzZWQgPyAnZHItaWNvbi1hcnJvdy1yaWdodCcgOiAnZHItaWNvbi1hcnJvdy1kb3duJ1wiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpOyByb3dOb2RlLmRyQ29sbGFwc2VkID8gdGhpcy5leHBhbmQoKSA6IHRoaXMuY29sbGFwc2UoKVwiPjwvZHItYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -13,7 +13,7 @@ function CellSelectComponent_div_0_Template(rf, ctx) { if (rf & 1) {
13
13
  } if (rf & 2) {
14
14
  const ctx_r0 = i0.ɵɵnextContext();
15
15
  i0.ɵɵadvance(1);
16
- i0.ɵɵproperty("ngModel", ctx_r0.field[ctx_r0.bindFieldValue])("bindLabel", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.bindLabel)("bindValue", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.bindValue)("multiple", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.multiple)("addTag", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.addTag)("clearable", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.clearable)("searchable", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.searchable)("items", ctx_r0.selectItems);
16
+ i0.ɵɵproperty("ngModel", ctx_r0.field[ctx_r0.bindFieldValue])("bindLabel", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.bindLabel)("bindValue", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.bindValue)("multiple", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.multiple)("addTag", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.addTag)("clearable", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.clearable)("searchable", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.searchable)("items", ctx_r0.selectItems)("borderless", ctx_r0.selectConfig == null ? null : ctx_r0.selectConfig.borderless);
17
17
  } }
18
18
  export class CellSelectComponent {
19
19
  agInit(params) {
@@ -32,14 +32,14 @@ export class CellSelectComponent {
32
32
  }
33
33
  }
34
34
  /** @nocollapse */ static { this.ɵfac = function CellSelectComponent_Factory(t) { return new (t || CellSelectComponent)(); }; }
35
- /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CellSelectComponent, selectors: [["dr-cell-select"]], standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["class", "cell-select", 4, "ngIf"], [1, "cell-select"], ["data-analytics", "cell-select_select-0", "appendTo", "body", 3, "ngModel", "bindLabel", "bindValue", "multiple", "addTag", "clearable", "searchable", "items", "ngModelChange"]], template: function CellSelectComponent_Template(rf, ctx) { if (rf & 1) {
36
- i0.ɵɵtemplate(0, CellSelectComponent_div_0_Template, 2, 8, "div", 0);
35
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CellSelectComponent, selectors: [["dr-cell-select"]], standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["class", "cell-select", 4, "ngIf"], [1, "cell-select"], ["data-analytics", "cell-select_select-0", "appendTo", "body", 3, "ngModel", "bindLabel", "bindValue", "multiple", "addTag", "clearable", "searchable", "items", "borderless", "ngModelChange"]], template: function CellSelectComponent_Template(rf, ctx) { if (rf & 1) {
36
+ i0.ɵɵtemplate(0, CellSelectComponent_div_0_Template, 2, 9, "div", 0);
37
37
  } if (rf & 2) {
38
38
  i0.ɵɵproperty("ngIf", ctx.field && ctx.selectItems);
39
39
  } }, dependencies: [NgIf, FormsModule, i1.NgControlStatus, i1.NgModel, DrInputsModule, i2.DrSelectComponent], styles: ["[_nghost-%COMP%]{flex-grow:1}"], changeDetection: 0 }); }
40
40
  }
41
41
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CellSelectComponent, [{
42
42
  type: Component,
43
- args: [{ selector: 'dr-cell-select', standalone: true, imports: [NgIf, FormsModule, DrInputsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"field && selectItems\" class=\"cell-select\">\n <dr-select\n data-analytics=\"cell-select_select-0\"\n [(ngModel)]=\"field[bindFieldValue]\"\n appendTo=\"body\"\n [bindLabel]=\"selectConfig?.bindLabel\"\n [bindValue]=\"selectConfig?.bindValue\"\n [multiple]=\"selectConfig?.multiple\"\n [addTag]=\"selectConfig?.addTag\"\n [clearable]=\"selectConfig?.clearable\"\n [searchable]=\"selectConfig?.searchable\"\n [items]=\"selectItems\"\n (ngModelChange)=\"onChange()\"></dr-select>\n</div>\n", styles: [":host{flex-grow:1}\n"] }]
43
+ args: [{ selector: 'dr-cell-select', standalone: true, imports: [NgIf, FormsModule, DrInputsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"field && selectItems\" class=\"cell-select\">\n <dr-select\n data-analytics=\"cell-select_select-0\"\n [(ngModel)]=\"field[bindFieldValue]\"\n appendTo=\"body\"\n [bindLabel]=\"selectConfig?.bindLabel\"\n [bindValue]=\"selectConfig?.bindValue\"\n [multiple]=\"selectConfig?.multiple\"\n [addTag]=\"selectConfig?.addTag\"\n [clearable]=\"selectConfig?.clearable\"\n [searchable]=\"selectConfig?.searchable\"\n [items]=\"selectItems\"\n [borderless]=\"selectConfig?.borderless\"\n (ngModelChange)=\"onChange()\"></dr-select>\n</div>\n", styles: [":host{flex-grow:1}\n"] }]
44
44
  }], null, null); })();
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZ3JpZC9jb21wb25lbnRzL2NlbGxzL2NlbGwtc2VsZWN0L2NlbGwtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLXNlbGVjdC9jZWxsLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7SUNKdkMsOEJBQXNELG1CQUFBO0lBRzlDLDJQQUFtQyxzS0FTbEIsZUFBQSxpQkFBVSxDQUFBLElBVFE7SUFTTixpQkFBWSxFQUFBOzs7SUFUekMsZUFBbUM7SUFBbkMsNkRBQW1DLGlGQUFBLGlGQUFBLCtFQUFBLDJFQUFBLGlGQUFBLG1GQUFBLDZCQUFBOztBRG9CM0MsTUFBTSxPQUFPLG1CQUFtQjtJQU9yQixNQUFNLENBQUMsTUFBTTtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUFFTSxPQUFPO1FBQ1YsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLFFBQVE7UUFDWCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0I7SUFDTCxDQUFDO3VHQXZCUSxtQkFBbUI7bUdBQW5CLG1CQUFtQjtZQ3ZCaEMsb0VBYU07O1lBYkEsbURBQTBCOzRCRG9CbEIsSUFBSSxFQUFFLFdBQVcsa0NBQUUsY0FBYzs7dUZBR2xDLG1CQUFtQjtjQVIvQixTQUFTOzJCQUNJLGdCQUFnQixjQUdkLElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsY0FBYyxDQUFDLG1CQUMzQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUdyaWRDZWxsUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBEcklucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RyLWlucHV0cy9kci1pbnB1dHMubW9kdWxlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNlbGxTZWxlY3RDb25maWcge1xuICAgIGJpbmRMYWJlbD86IHN0cmluZztcbiAgICBiaW5kVmFsdWU/OiBzdHJpbmc7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIGFkZFRhZz86IGJvb2xlYW47XG4gICAgY2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgICBzZWFyY2hhYmxlPzogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jZWxsLXNlbGVjdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NlbGwtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jZWxsLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nSWYsIEZvcm1zTW9kdWxlLCBEcklucHV0c01vZHVsZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENlbGxTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBJR3JpZENlbGxSZW5kZXJlckNvbXBvbmVudCB7XG4gICAgcHVibGljIGZpZWxkOiBhbnk7XG4gICAgcHVibGljIGJpbmRGaWVsZFZhbHVlOiBzdHJpbmc7XG4gICAgcHVibGljIHNlbGVjdEl0ZW1zOiBhbnlbXTtcbiAgICBwdWJsaWMgc2VsZWN0Q29uZmlnOiBJQ2VsbFNlbGVjdENvbmZpZztcbiAgICBwdWJsaWMgb25DaGFuZ2VGbjogKGZpZWxkRGF0YTogYW55KSA9PiB2b2lkO1xuXG4gICAgcHVibGljIGFnSW5pdChwYXJhbXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWVsZCA9IHBhcmFtcy5kYXRhO1xuICAgICAgICB0aGlzLmJpbmRGaWVsZFZhbHVlID0gcGFyYW1zLmNvbERlZi5maWVsZCB8fCBwYXJhbXMuYmluZEZpZWxkVmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2VGbiA9IHBhcmFtcy5vbkNoYW5nZUZuO1xuICAgICAgICB0aGlzLnNlbGVjdEl0ZW1zID0gcGFyYW1zLnNlbGVjdEl0ZW1zO1xuICAgICAgICB0aGlzLnNlbGVjdENvbmZpZyA9IHBhcmFtcy5zZWxlY3RDb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm9uQ2hhbmdlRm4pIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VGbih0aGlzLmZpZWxkKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJmaWVsZCAmJiBzZWxlY3RJdGVtc1wiIGNsYXNzPVwiY2VsbC1zZWxlY3RcIj5cbiAgICA8ZHItc2VsZWN0XG4gICAgICAgIGRhdGEtYW5hbHl0aWNzPVwiY2VsbC1zZWxlY3Rfc2VsZWN0LTBcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cImZpZWxkW2JpbmRGaWVsZFZhbHVlXVwiXG4gICAgICAgIGFwcGVuZFRvPVwiYm9keVwiXG4gICAgICAgIFtiaW5kTGFiZWxdPVwic2VsZWN0Q29uZmlnPy5iaW5kTGFiZWxcIlxuICAgICAgICBbYmluZFZhbHVlXT1cInNlbGVjdENvbmZpZz8uYmluZFZhbHVlXCJcbiAgICAgICAgW211bHRpcGxlXT1cInNlbGVjdENvbmZpZz8ubXVsdGlwbGVcIlxuICAgICAgICBbYWRkVGFnXT1cInNlbGVjdENvbmZpZz8uYWRkVGFnXCJcbiAgICAgICAgW2NsZWFyYWJsZV09XCJzZWxlY3RDb25maWc/LmNsZWFyYWJsZVwiXG4gICAgICAgIFtzZWFyY2hhYmxlXT1cInNlbGVjdENvbmZpZz8uc2VhcmNoYWJsZVwiXG4gICAgICAgIFtpdGVtc109XCJzZWxlY3RJdGVtc1wiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlKClcIj48L2RyLXNlbGVjdD5cbjwvZGl2PlxuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZ3JpZC9jb21wb25lbnRzL2NlbGxzL2NlbGwtc2VsZWN0L2NlbGwtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy9jZWxscy9jZWxsLXNlbGVjdC9jZWxsLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7SUNKdkMsOEJBQXNELG1CQUFBO0lBRzlDLDJQQUFtQyxzS0FVbEIsZUFBQSxpQkFBVSxDQUFBLElBVlE7SUFVTixpQkFBWSxFQUFBOzs7SUFWekMsZUFBbUM7SUFBbkMsNkRBQW1DLGlGQUFBLGlGQUFBLCtFQUFBLDJFQUFBLGlGQUFBLG1GQUFBLDZCQUFBLG1GQUFBOztBRHFCM0MsTUFBTSxPQUFPLG1CQUFtQjtJQU9yQixNQUFNLENBQUMsTUFBTTtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUFFTSxPQUFPO1FBQ1YsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLFFBQVE7UUFDWCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0I7SUFDTCxDQUFDO3VHQXZCUSxtQkFBbUI7bUdBQW5CLG1CQUFtQjtZQ3hCaEMsb0VBY007O1lBZEEsbURBQTBCOzRCRHFCbEIsSUFBSSxFQUFFLFdBQVcsa0NBQUUsY0FBYzs7dUZBR2xDLG1CQUFtQjtjQVIvQixTQUFTOzJCQUNJLGdCQUFnQixjQUdkLElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsY0FBYyxDQUFDLG1CQUMzQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUdyaWRDZWxsUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBEcklucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RyLWlucHV0cy9kci1pbnB1dHMubW9kdWxlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNlbGxTZWxlY3RDb25maWcge1xuICAgIGJpbmRMYWJlbD86IHN0cmluZztcbiAgICBiaW5kVmFsdWU/OiBzdHJpbmc7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIGFkZFRhZz86IGJvb2xlYW47XG4gICAgY2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgICBzZWFyY2hhYmxlPzogYm9vbGVhbjtcbiAgICBib3JkZXJsZXNzPzogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jZWxsLXNlbGVjdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NlbGwtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jZWxsLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nSWYsIEZvcm1zTW9kdWxlLCBEcklucHV0c01vZHVsZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENlbGxTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBJR3JpZENlbGxSZW5kZXJlckNvbXBvbmVudCB7XG4gICAgcHVibGljIGZpZWxkOiBhbnk7XG4gICAgcHVibGljIGJpbmRGaWVsZFZhbHVlOiBzdHJpbmc7XG4gICAgcHVibGljIHNlbGVjdEl0ZW1zOiBhbnlbXTtcbiAgICBwdWJsaWMgc2VsZWN0Q29uZmlnOiBJQ2VsbFNlbGVjdENvbmZpZztcbiAgICBwdWJsaWMgb25DaGFuZ2VGbjogKGZpZWxkRGF0YTogYW55KSA9PiB2b2lkO1xuXG4gICAgcHVibGljIGFnSW5pdChwYXJhbXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWVsZCA9IHBhcmFtcy5kYXRhO1xuICAgICAgICB0aGlzLmJpbmRGaWVsZFZhbHVlID0gcGFyYW1zLmNvbERlZi5maWVsZCB8fCBwYXJhbXMuYmluZEZpZWxkVmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2VGbiA9IHBhcmFtcy5vbkNoYW5nZUZuO1xuICAgICAgICB0aGlzLnNlbGVjdEl0ZW1zID0gcGFyYW1zLnNlbGVjdEl0ZW1zO1xuICAgICAgICB0aGlzLnNlbGVjdENvbmZpZyA9IHBhcmFtcy5zZWxlY3RDb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm9uQ2hhbmdlRm4pIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VGbih0aGlzLmZpZWxkKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJmaWVsZCAmJiBzZWxlY3RJdGVtc1wiIGNsYXNzPVwiY2VsbC1zZWxlY3RcIj5cbiAgICA8ZHItc2VsZWN0XG4gICAgICAgIGRhdGEtYW5hbHl0aWNzPVwiY2VsbC1zZWxlY3Rfc2VsZWN0LTBcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cImZpZWxkW2JpbmRGaWVsZFZhbHVlXVwiXG4gICAgICAgIGFwcGVuZFRvPVwiYm9keVwiXG4gICAgICAgIFtiaW5kTGFiZWxdPVwic2VsZWN0Q29uZmlnPy5iaW5kTGFiZWxcIlxuICAgICAgICBbYmluZFZhbHVlXT1cInNlbGVjdENvbmZpZz8uYmluZFZhbHVlXCJcbiAgICAgICAgW211bHRpcGxlXT1cInNlbGVjdENvbmZpZz8ubXVsdGlwbGVcIlxuICAgICAgICBbYWRkVGFnXT1cInNlbGVjdENvbmZpZz8uYWRkVGFnXCJcbiAgICAgICAgW2NsZWFyYWJsZV09XCJzZWxlY3RDb25maWc/LmNsZWFyYWJsZVwiXG4gICAgICAgIFtzZWFyY2hhYmxlXT1cInNlbGVjdENvbmZpZz8uc2VhcmNoYWJsZVwiXG4gICAgICAgIFtpdGVtc109XCJzZWxlY3RJdGVtc1wiXG4gICAgICAgIFtib3JkZXJsZXNzXT1cInNlbGVjdENvbmZpZz8uYm9yZGVybGVzc1wiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlKClcIj48L2RyLXNlbGVjdD5cbjwvZGl2PlxuIl19
@@ -19,9 +19,11 @@ export class TblToggleButtonHeaderComponent {
19
19
  this.bindLabel = tableWidth < params.minTableWidth ? null : (params.bindLabel ?? null);
20
20
  this.bindValue = params.bindValue || null;
21
21
  this.bindHidden = params.bindHidden || null;
22
+ this.pinRight = params.pinRight || false;
22
23
  this.mode = tableWidth < params.minTableWidth ? ToggleButtonMode.ICON_ONLY : params.mode || ToggleButtonMode.DEFAULT;
23
24
  this.selectedValue = params.selectedValue || null;
24
25
  this.selectedValue$ = params.selectedValue$ || null;
26
+ params.api.addEventListener('gridSizeChanged', this.onGridSizeChanged.bind(this));
25
27
  }
26
28
  refresh() {
27
29
  return false;
@@ -29,18 +31,34 @@ export class TblToggleButtonHeaderComponent {
29
31
  onSelectionChanged(selectedValue) {
30
32
  this.params.onSelectionChanged(selectedValue);
31
33
  }
34
+ onGridSizeChanged() {
35
+ const tableWidth = this.params?.api?.gridBodyCtrl?.eGridBody?.clientWidth;
36
+ const isCompact = tableWidth < this.params.minTableWidth;
37
+ const newBindLabel = isCompact ? null : (this.params.bindLabel ?? null);
38
+ const newMode = isCompact ? ToggleButtonMode.ICON_ONLY : this.params.mode || ToggleButtonMode.DEFAULT;
39
+ if (newBindLabel === this.bindLabel && newMode === this.mode) {
40
+ return;
41
+ }
42
+ this.bindLabel = newBindLabel;
43
+ this.mode = newMode;
44
+ this.params.api.refreshCells();
45
+ }
32
46
  /** @nocollapse */ static { this.ɵfac = function TblToggleButtonHeaderComponent_Factory(t) { return new (t || TblToggleButtonHeaderComponent)(); }; }
33
- /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: TblToggleButtonHeaderComponent, selectors: [["dr-tbl-toggle-button-header"]], standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 7, consts: [["data-analytics", "tables_dr-grid_tbl-toggle-button-header_toggle-button-0", 3, "ngModel", "items", "bindValue", "bindLabel", "mode", "ngModelChange"]], template: function TblToggleButtonHeaderComponent_Template(rf, ctx) { if (rf & 1) {
47
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: TblToggleButtonHeaderComponent, selectors: [["dr-tbl-toggle-button-header"]], hostVars: 2, hostBindings: function TblToggleButtonHeaderComponent_HostBindings(rf, ctx) { if (rf & 2) {
48
+ i0.ɵɵclassProp("dr-tbl-toggle-button-header-pin-right", ctx.pinRight);
49
+ } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 7, consts: [["data-analytics", "tables_dr-grid_tbl-toggle-button-header_toggle-button-0", 3, "ngModel", "items", "bindValue", "bindLabel", "mode", "ngModelChange"]], template: function TblToggleButtonHeaderComponent_Template(rf, ctx) { if (rf & 1) {
34
50
  i0.ɵɵelementStart(0, "dr-toggle-button", 0);
35
51
  i0.ɵɵlistener("ngModelChange", function TblToggleButtonHeaderComponent_Template_dr_toggle_button_ngModelChange_0_listener($event) { return ctx.onSelectionChanged($event); });
36
52
  i0.ɵɵpipe(1, "async");
37
53
  i0.ɵɵelementEnd();
38
54
  } if (rf & 2) {
39
55
  i0.ɵɵproperty("ngModel", i0.ɵɵpipeBind1(1, 5, ctx.selectedValue$) || ctx.selectedValue)("items", ctx.items)("bindValue", ctx.bindValue)("bindLabel", ctx.bindLabel)("mode", ctx.mode);
40
- } }, dependencies: [DrInputsModule, i1.DrToggleButtonComponent, FormsModule, i2.NgControlStatus, i2.NgModel, AsyncPipe], styles: ["[_nghost-%COMP%]{position:absolute;top:0;right:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center} .ag-header-cell:has(dr-tbl-toggle-button-header){overflow:visible}"] }); }
56
+ } }, dependencies: [DrInputsModule, i1.DrToggleButtonComponent, FormsModule, i2.NgControlStatus, i2.NgModel, AsyncPipe], styles: ["[_nghost-%COMP%]{position:absolute;top:0;right:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.dr-tbl-toggle-button-header-pin-right[_nghost-%COMP%]{justify-content:flex-end;padding-right:16px}[_nghost-%COMP%] .toggle-container__item__content{gap:4px;padding:4px 8px!important}[_nghost-%COMP%] .toggle-container__item__content__icon{margin-right:0!important} .ag-header-cell:has(dr-tbl-toggle-button-header){overflow:visible}"] }); }
41
57
  }
42
58
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TblToggleButtonHeaderComponent, [{
43
59
  type: Component,
44
- args: [{ selector: 'dr-tbl-toggle-button-header', standalone: true, imports: [DrInputsModule, FormsModule, AsyncPipe], template: "<dr-toggle-button\n data-analytics=\"tables_dr-grid_tbl-toggle-button-header_toggle-button-0\"\n [ngModel]=\"(selectedValue$ | async) || selectedValue\"\n (ngModelChange)=\"onSelectionChanged($event)\"\n [items]=\"items\"\n [bindValue]=\"bindValue\"\n [bindLabel]=\"bindLabel\"\n [mode]=\"mode\">\n</dr-toggle-button>\n", styles: [":host{position:absolute;top:0;right:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}::ng-deep .ag-header-cell:has(dr-tbl-toggle-button-header){overflow:visible}\n"] }]
60
+ args: [{ selector: 'dr-tbl-toggle-button-header', standalone: true, imports: [DrInputsModule, FormsModule, AsyncPipe], host: {
61
+ '[class.dr-tbl-toggle-button-header-pin-right]': 'pinRight',
62
+ }, template: "<dr-toggle-button\n data-analytics=\"tables_dr-grid_tbl-toggle-button-header_toggle-button-0\"\n [ngModel]=\"(selectedValue$ | async) || selectedValue\"\n (ngModelChange)=\"onSelectionChanged($event)\"\n [items]=\"items\"\n [bindValue]=\"bindValue\"\n [bindLabel]=\"bindLabel\"\n [mode]=\"mode\">\n</dr-toggle-button>\n", styles: [":host{position:absolute;top:0;right:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}:host.dr-tbl-toggle-button-header-pin-right{justify-content:flex-end;padding-right:16px}:host ::ng-deep .toggle-container__item__content{gap:4px;padding:4px 8px!important}:host ::ng-deep .toggle-container__item__content__icon{margin-right:0!important}::ng-deep .ag-header-cell:has(dr-tbl-toggle-button-header){overflow:visible}\n"] }]
45
63
  }], null, null); })();
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIvdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIvdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUc1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFzQnJFLE1BQU0sT0FBTyw4QkFBOEI7SUFQM0M7UUFXSSxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxlQUFVLEdBQWtCLElBQUksQ0FBQztLQXdCcEM7SUFuQkcsTUFBTSxDQUFDLE1BQW1DO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDaEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUM7UUFDMUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxVQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7UUFDckgsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQztRQUNsRCxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELGtCQUFrQixDQUFDLGFBQWE7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsRCxDQUFDO2tIQTdCUSw4QkFBOEI7bUdBQTlCLDhCQUE4QjtZQzVCM0MsMkNBT2tCO1lBSmQsMklBQWlCLDhCQUEwQixJQUFDOztZQUtoRCxpQkFBbUI7O1lBTmYsdUZBQXFELG9CQUFBLDRCQUFBLDRCQUFBLGtCQUFBOzRCRHdCM0MsY0FBYyw4QkFBRSxXQUFXLGtDQUFFLFNBQVM7O3VGQUV2Qyw4QkFBOEI7Y0FQMUMsU0FBUzsyQkFDSSw2QkFBNkIsY0FHM0IsSUFBSSxXQUNQLENBQUMsY0FBYyxFQUFFLFdBQVcsRUFBRSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgSUdyaWRIZWFkZXJBbmd1bGFyQ29tcG9uZW50LCBJR3JpZEhlYWRlclBhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRvZ2dsZUJ1dHRvbk1vZGUgfSBmcm9tICcuLi8uLi8uLi9kci1pbnB1dHMvZHItdG9nZ2xlLWJ1dHRvbi90b2dnbGUtYnV0dG9uLW1vZGUnO1xuaW1wb3J0IHsgRHJJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9kci1pbnB1dHMvZHItaW5wdXRzLm1vZHVsZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmludGVyZmFjZSBUYmxUb2dnbGVCdXR0b25IZWFkZXJQYXJhbXMgZXh0ZW5kcyBJR3JpZEhlYWRlclBhcmFtcyB7XG4gICAgaXRlbXM6IHN0cmluZ1tdIHwgYW55W107XG4gICAgYmluZExhYmVsPzogc3RyaW5nIHwgbnVsbDtcbiAgICBiaW5kVmFsdWU/OiBzdHJpbmcgfCBudWxsO1xuICAgIGJpbmRIaWRkZW4/OiBzdHJpbmcgfCBudWxsO1xuICAgIG1vZGU/OiBUb2dnbGVCdXR0b25Nb2RlO1xuICAgIG1pblRhYmxlV2lkdGg6IG51bWJlciB8IG51bGw7XG4gICAgc2VsZWN0ZWRWYWx1ZT86IGFueSB8IHN0cmluZztcbiAgICBzZWxlY3RlZFZhbHVlJD86IE9ic2VydmFibGU8YW55IHwgc3RyaW5nPjtcbiAgICBvblNlbGVjdGlvbkNoYW5nZWQ6IChzZWxlY3RlZFZhbHVlOiBzdHJpbmcgfCBhbnkpID0+IHZvaWQ7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtEcklucHV0c01vZHVsZSwgRm9ybXNNb2R1bGUsIEFzeW5jUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIFRibFRvZ2dsZUJ1dHRvbkhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIElHcmlkSGVhZGVyQW5ndWxhckNvbXBvbmVudCB7XG4gICAgcGFyYW1zOiBhbnk7XG5cbiAgICBpdGVtczogc3RyaW5nW10gfCBhbnlbXTtcbiAgICBiaW5kTGFiZWw6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIGJpbmRWYWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgYmluZEhpZGRlbjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgbW9kZTogVG9nZ2xlQnV0dG9uTW9kZTtcbiAgICBzZWxlY3RlZFZhbHVlOiBhbnkgfCBzdHJpbmc7XG4gICAgc2VsZWN0ZWRWYWx1ZSQ6IE9ic2VydmFibGU8YW55IHwgc3RyaW5nPjtcblxuICAgIGFnSW5pdChwYXJhbXM6IFRibFRvZ2dsZUJ1dHRvbkhlYWRlclBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgICAgICAgdGhpcy5pdGVtcyA9IHBhcmFtcy5pdGVtcyB8fCBbXTtcbiAgICAgICAgY29uc3QgdGFibGVXaWR0aCA9IHRoaXMucGFyYW1zPy5hcGk/LmdyaWRCb2R5Q3RybD8uZUdyaWRCb2R5Py5jbGllbnRXaWR0aDtcbiAgICAgICAgdGhpcy5iaW5kTGFiZWwgPSB0YWJsZVdpZHRoIDwgcGFyYW1zLm1pblRhYmxlV2lkdGggPyBudWxsIDogKHBhcmFtcy5iaW5kTGFiZWwgPz8gbnVsbCk7XG4gICAgICAgIHRoaXMuYmluZFZhbHVlID0gcGFyYW1zLmJpbmRWYWx1ZSB8fCBudWxsO1xuICAgICAgICB0aGlzLmJpbmRIaWRkZW4gPSBwYXJhbXMuYmluZEhpZGRlbiB8fCBudWxsO1xuICAgICAgICB0aGlzLm1vZGUgPSB0YWJsZVdpZHRoIDwgcGFyYW1zLm1pblRhYmxlV2lkdGggPyBUb2dnbGVCdXR0b25Nb2RlLklDT05fT05MWSA6IHBhcmFtcy5tb2RlIHx8IFRvZ2dsZUJ1dHRvbk1vZGUuREVGQVVMVDtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gcGFyYW1zLnNlbGVjdGVkVmFsdWUgfHwgbnVsbDtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlJCA9IHBhcmFtcy5zZWxlY3RlZFZhbHVlJCB8fCBudWxsO1xuICAgIH1cblxuICAgIHJlZnJlc2goKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBvblNlbGVjdGlvbkNoYW5nZWQoc2VsZWN0ZWRWYWx1ZSkge1xuICAgICAgICB0aGlzLnBhcmFtcy5vblNlbGVjdGlvbkNoYW5nZWQoc2VsZWN0ZWRWYWx1ZSk7XG4gICAgfVxufVxuIiwiPGRyLXRvZ2dsZS1idXR0b25cbiAgICBkYXRhLWFuYWx5dGljcz1cInRhYmxlc19kci1ncmlkX3RibC10b2dnbGUtYnV0dG9uLWhlYWRlcl90b2dnbGUtYnV0dG9uLTBcIlxuICAgIFtuZ01vZGVsXT1cIihzZWxlY3RlZFZhbHVlJCB8IGFzeW5jKSB8fCBzZWxlY3RlZFZhbHVlXCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZWQoJGV2ZW50KVwiXG4gICAgW2l0ZW1zXT1cIml0ZW1zXCJcbiAgICBbYmluZFZhbHVlXT1cImJpbmRWYWx1ZVwiXG4gICAgW2JpbmRMYWJlbF09XCJiaW5kTGFiZWxcIlxuICAgIFttb2RlXT1cIm1vZGVcIj5cbjwvZHItdG9nZ2xlLWJ1dHRvbj5cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIvdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWdyaWQvY29tcG9uZW50cy90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIvdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUc1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUEwQnJFLE1BQU0sT0FBTyw4QkFBOEI7SUFWM0M7UUFjSSxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxlQUFVLEdBQWtCLElBQUksQ0FBQztLQTRDcEM7SUF0Q0csTUFBTSxDQUFDLE1BQW1DO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDaEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUM7UUFDMUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxVQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztRQUNySCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDO1FBQ2xELElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFFcEQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELE9BQU87UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsa0JBQWtCLENBQUMsYUFBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxpQkFBaUI7UUFDckIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUM7UUFDMUUsTUFBTSxTQUFTLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBRXpELE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7UUFFdEcsSUFBSSxZQUFZLEtBQUssSUFBSSxDQUFDLFNBQVMsSUFBSSxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksRUFBRTtZQUMxRCxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuQyxDQUFDO2tIQWpEUSw4QkFBOEI7bUdBQTlCLDhCQUE4Qjs7O1lDaEMzQywyQ0FPa0I7WUFKZCwySUFBaUIsOEJBQTBCLElBQUM7O1lBS2hELGlCQUFtQjs7WUFOZix1RkFBcUQsb0JBQUEsNEJBQUEsNEJBQUEsa0JBQUE7NEJEeUIzQyxjQUFjLDhCQUFFLFdBQVcsa0NBQUUsU0FBUzs7dUZBS3ZDLDhCQUE4QjtjQVYxQyxTQUFTOzJCQUNJLDZCQUE2QixjQUczQixJQUFJLFdBQ1AsQ0FBQyxjQUFjLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUMzQztvQkFDRiwrQ0FBK0MsRUFBRSxVQUFVO2lCQUM5RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBJR3JpZEhlYWRlckFuZ3VsYXJDb21wb25lbnQsIElHcmlkSGVhZGVyUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgVG9nZ2xlQnV0dG9uTW9kZSB9IGZyb20gJy4uLy4uLy4uL2RyLWlucHV0cy9kci10b2dnbGUtYnV0dG9uL3RvZ2dsZS1idXR0b24tbW9kZSc7XG5pbXBvcnQgeyBEcklucHV0c01vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2RyLWlucHV0cy9kci1pbnB1dHMubW9kdWxlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW50ZXJmYWNlIFRibFRvZ2dsZUJ1dHRvbkhlYWRlclBhcmFtcyBleHRlbmRzIElHcmlkSGVhZGVyUGFyYW1zIHtcbiAgICBpdGVtczogc3RyaW5nW10gfCBhbnlbXTtcbiAgICBiaW5kTGFiZWw/OiBzdHJpbmcgfCBudWxsO1xuICAgIGJpbmRWYWx1ZT86IHN0cmluZyB8IG51bGw7XG4gICAgYmluZEhpZGRlbj86IHN0cmluZyB8IG51bGw7XG4gICAgbW9kZT86IFRvZ2dsZUJ1dHRvbk1vZGU7XG4gICAgcGluUmlnaHQ/OiBib29sZWFuO1xuICAgIG1pblRhYmxlV2lkdGg6IG51bWJlciB8IG51bGw7XG4gICAgc2VsZWN0ZWRWYWx1ZT86IGFueSB8IHN0cmluZztcbiAgICBzZWxlY3RlZFZhbHVlJD86IE9ic2VydmFibGU8YW55IHwgc3RyaW5nPjtcbiAgICBvblNlbGVjdGlvbkNoYW5nZWQ6IChzZWxlY3RlZFZhbHVlOiBzdHJpbmcgfCBhbnkpID0+IHZvaWQ7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGJsLXRvZ2dsZS1idXR0b24taGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtEcklucHV0c01vZHVsZSwgRm9ybXNNb2R1bGUsIEFzeW5jUGlwZV0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmRyLXRibC10b2dnbGUtYnV0dG9uLWhlYWRlci1waW4tcmlnaHRdJzogJ3BpblJpZ2h0JyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUYmxUb2dnbGVCdXR0b25IZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBJR3JpZEhlYWRlckFuZ3VsYXJDb21wb25lbnQge1xuICAgIHBhcmFtczogYW55O1xuXG4gICAgaXRlbXM6IHN0cmluZ1tdIHwgYW55W107XG4gICAgYmluZExhYmVsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBiaW5kVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIGJpbmRIaWRkZW46IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIG1vZGU6IFRvZ2dsZUJ1dHRvbk1vZGU7XG4gICAgc2VsZWN0ZWRWYWx1ZTogYW55IHwgc3RyaW5nO1xuICAgIHNlbGVjdGVkVmFsdWUkOiBPYnNlcnZhYmxlPGFueSB8IHN0cmluZz47XG4gICAgcGluUmlnaHQ6IGJvb2xlYW47XG5cbiAgICBhZ0luaXQocGFyYW1zOiBUYmxUb2dnbGVCdXR0b25IZWFkZXJQYXJhbXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBwYXJhbXMuaXRlbXMgfHwgW107XG4gICAgICAgIGNvbnN0IHRhYmxlV2lkdGggPSB0aGlzLnBhcmFtcz8uYXBpPy5ncmlkQm9keUN0cmw/LmVHcmlkQm9keT8uY2xpZW50V2lkdGg7XG4gICAgICAgIHRoaXMuYmluZExhYmVsID0gdGFibGVXaWR0aCA8IHBhcmFtcy5taW5UYWJsZVdpZHRoID8gbnVsbCA6IChwYXJhbXMuYmluZExhYmVsID8/IG51bGwpO1xuICAgICAgICB0aGlzLmJpbmRWYWx1ZSA9IHBhcmFtcy5iaW5kVmFsdWUgfHwgbnVsbDtcbiAgICAgICAgdGhpcy5iaW5kSGlkZGVuID0gcGFyYW1zLmJpbmRIaWRkZW4gfHwgbnVsbDtcbiAgICAgICAgdGhpcy5waW5SaWdodCA9IHBhcmFtcy5waW5SaWdodCB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy5tb2RlID0gdGFibGVXaWR0aCA8IHBhcmFtcy5taW5UYWJsZVdpZHRoID8gVG9nZ2xlQnV0dG9uTW9kZS5JQ09OX09OTFkgOiBwYXJhbXMubW9kZSB8fCBUb2dnbGVCdXR0b25Nb2RlLkRFRkFVTFQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHBhcmFtcy5zZWxlY3RlZFZhbHVlIHx8IG51bGw7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSQgPSBwYXJhbXMuc2VsZWN0ZWRWYWx1ZSQgfHwgbnVsbDtcblxuICAgICAgICBwYXJhbXMuYXBpLmFkZEV2ZW50TGlzdGVuZXIoJ2dyaWRTaXplQ2hhbmdlZCcsIHRoaXMub25HcmlkU2l6ZUNoYW5nZWQuYmluZCh0aGlzKSk7XG4gICAgfVxuXG4gICAgcmVmcmVzaCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIG9uU2VsZWN0aW9uQ2hhbmdlZChzZWxlY3RlZFZhbHVlKSB7XG4gICAgICAgIHRoaXMucGFyYW1zLm9uU2VsZWN0aW9uQ2hhbmdlZChzZWxlY3RlZFZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uR3JpZFNpemVDaGFuZ2VkKCkge1xuICAgICAgICBjb25zdCB0YWJsZVdpZHRoID0gdGhpcy5wYXJhbXM/LmFwaT8uZ3JpZEJvZHlDdHJsPy5lR3JpZEJvZHk/LmNsaWVudFdpZHRoO1xuICAgICAgICBjb25zdCBpc0NvbXBhY3QgPSB0YWJsZVdpZHRoIDwgdGhpcy5wYXJhbXMubWluVGFibGVXaWR0aDtcblxuICAgICAgICBjb25zdCBuZXdCaW5kTGFiZWwgPSBpc0NvbXBhY3QgPyBudWxsIDogKHRoaXMucGFyYW1zLmJpbmRMYWJlbCA/PyBudWxsKTtcbiAgICAgICAgY29uc3QgbmV3TW9kZSA9IGlzQ29tcGFjdCA/IFRvZ2dsZUJ1dHRvbk1vZGUuSUNPTl9PTkxZIDogdGhpcy5wYXJhbXMubW9kZSB8fCBUb2dnbGVCdXR0b25Nb2RlLkRFRkFVTFQ7XG5cbiAgICAgICAgaWYgKG5ld0JpbmRMYWJlbCA9PT0gdGhpcy5iaW5kTGFiZWwgJiYgbmV3TW9kZSA9PT0gdGhpcy5tb2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJpbmRMYWJlbCA9IG5ld0JpbmRMYWJlbDtcbiAgICAgICAgdGhpcy5tb2RlID0gbmV3TW9kZTtcbiAgICAgICAgdGhpcy5wYXJhbXMuYXBpLnJlZnJlc2hDZWxscygpO1xuICAgIH1cbn1cbiIsIjxkci10b2dnbGUtYnV0dG9uXG4gICAgZGF0YS1hbmFseXRpY3M9XCJ0YWJsZXNfZHItZ3JpZF90YmwtdG9nZ2xlLWJ1dHRvbi1oZWFkZXJfdG9nZ2xlLWJ1dHRvbi0wXCJcbiAgICBbbmdNb2RlbF09XCIoc2VsZWN0ZWRWYWx1ZSQgfCBhc3luYykgfHwgc2VsZWN0ZWRWYWx1ZVwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2VkKCRldmVudClcIlxuICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgW2JpbmRWYWx1ZV09XCJiaW5kVmFsdWVcIlxuICAgIFtiaW5kTGFiZWxdPVwiYmluZExhYmVsXCJcbiAgICBbbW9kZV09XCJtb2RlXCI+XG48L2RyLXRvZ2dsZS1idXR0b24+XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, inject, Input, Optional, SkipSelf, ViewChild, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, inject, Injectable, Input, Optional, SkipSelf, ViewChild, } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { FormBuilder, FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
4
4
  import { CalendarView, DatePickerPeriodPosition, TimeframeOption } from '../../../models/datePicker';
@@ -101,7 +101,12 @@ export class CustomDateAdapter extends MomentDateAdapter {
101
101
  getFirstDayOfWeek() {
102
102
  return 1;
103
103
  }
104
+ /** @nocollapse */ static { this.ɵfac = /** @pureOrBreakMyCode */ function () { let ɵCustomDateAdapter_BaseFactory; return function CustomDateAdapter_Factory(t) { return (ɵCustomDateAdapter_BaseFactory || (ɵCustomDateAdapter_BaseFactory = i0.ɵɵgetInheritedFactory(CustomDateAdapter)))(t || CustomDateAdapter); }; }(); }
105
+ /** @nocollapse */ static { this.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: CustomDateAdapter, factory: CustomDateAdapter.ɵfac }); }
104
106
  }
107
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CustomDateAdapter, [{
108
+ type: Injectable
109
+ }], null, null); })();
105
110
  // Reuse parent DateAdapter if provided, otherwise create a local CustomDateAdapter
106
111
  const DATE_ADAPTER_PROVIDER = {
107
112
  provide: DateAdapter,
@@ -487,4 +492,4 @@ export class DrDatePickerComponent {
487
492
  type: HostBinding,
488
493
  args: ['class.active']
489
494
  }] }); })();
490
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RhdGUtcGlja2Vycy9kci1kYXRlLXBpY2tlci9kci1kYXRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBRVIsUUFBUSxFQUNSLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF3QixXQUFXLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEgsT0FBTyxFQUFFLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVyRyxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFH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R04sTUFBTTtrQkFETCxXQUFXO21CQUFDLFNBQVM7WUFHMkIsU0FBUztrQkFBekQsS0FBSzs7a0JBQUksV0FBVzttQkFBQyx5QkFBeUI7WUFDdEMsV0FBVztrQkFBbkIsS0FBSztZQUNHLGVBQWU7a0JBQXZCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBR0YsWUFBWTtrQkFEZixLQUFLO1lBU04sTUFBTTtrQkFETCxLQUFLO1lBSUYsR0FBRztrQkFETixLQUFLO1lBTUYsR0FBRztrQkFETixLQUFLO1lBVUYsT0FBTztrQkFEVixLQUFLO1lBUUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFa0MsUUFBUTtrQkFBL0MsS0FBSzs7a0JBQUksV0FBVzttQkFBQyxnQkFBZ0I7WUFFN0Isd0JBQXdCO2tCQUFoQyxLQUFLO1lBRUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLGdCQUFnQjtrQkFBeEIsS0FBSztZQUlLLFVBQVU7a0JBRHBCLFNBQVM7bUJBQUMsWUFBWTtZQVduQixNQUFNO2tCQURULFdBQVc7bUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBTa2lwU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQnVpbGRlciwgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXJWaWV3LCBEYXRlUGlja2VyUGVyaW9kUG9zaXRpb24sIFRpbWVmcmFtZU9wdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kYXRlUGlja2VyJztcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBEckRhdGVQaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZHItZGF0ZS1waWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEckRhdGVQaWNrZXJDdXN0b21IZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9kci1kYXRlLXBpY2tlcl9jdXN0b20taGVhZGVyL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgTWF0Q2FsZW5kYXJWaWV3LFxuICAgIE1hdERhdGVwaWNrZXIsXG4gICAgTWF0RGF0ZVJhbmdlUGlja2VyLFxuICAgIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7XG4gICAgTUFUX01PTUVOVF9EQVRFX0FEQVBURVJfT1BUSU9OUyxcbiAgICBNYXRNb21lbnREYXRlQWRhcHRlck9wdGlvbnMsXG4gICAgTW9tZW50RGF0ZUFkYXB0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLW1vbWVudC1hZGFwdGVyJztcbmltcG9ydCB7IFdlZWtTZWxlY3Rpb25TdHJhdGVneSB9IGZyb20gJy4uL3NlcnZpY2VzL3dlZWstc2VsZWN0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IERyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJEYXRlUGlja2VyRm9ybWF0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kci1kYXRlLXBpY2tlci1mb3JtYXQuZGlyZWN0aXZlJztcblxuY29uc3Qgbm9vcCA9ICgpID0+IHt9O1xuXG5leHBvcnQgY2xhc3MgQ3VzdG9tRGF0ZUFkYXB0ZXIgZXh0ZW5kcyBNb21lbnREYXRlQWRhcHRlciB7XG4gICAgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxufVxuXG4vLyBSZXVzZSBwYXJlbnQgRGF0ZUFkYXB0ZXIgaWYgcHJvdmlkZWQsIG90aGVyd2lzZSBjcmVhdGUgYSBsb2NhbCBDdXN0b21EYXRlQWRhcHRlclxuY29uc3QgREFURV9BREFQVEVSX1BST1ZJREVSID0ge1xuICAgIHByb3ZpZGU6IERhdGVBZGFwdGVyLFxuICAgIHVzZUZhY3Rvcnk6IChwYXJlbnQ6IERhdGVBZGFwdGVyPGFueT4gfCBudWxsLCBsb2NhbGU6IHN0cmluZywgb3B0aW9uczogTWF0TW9tZW50RGF0ZUFkYXB0ZXJPcHRpb25zIHwgbnVsbCkgPT5cbiAgICAgICAgcGFyZW50ID8/IG5ldyBDdXN0b21EYXRlQWRhcHRlcihsb2NhbGUsIG9wdGlvbnMpLFxuICAgIGRlcHM6IFtbbmV3IE9wdGlvbmFsKCksIG5ldyBTa2lwU2VsZigpLCBEYXRlQWRhcHRlcl0sIE1BVF9EQVRFX0xPQ0FMRSwgW25ldyBPcHRpb25hbCgpLCBNQVRfTU9NRU5UX0RBVEVfQURBUFRFUl9PUFRJT05TXV0sXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWRhdGUtcGlja2VyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICAgICAgRHJCdXR0b25Db21wb25lbnQsXG4gICAgICAgIERyRGF0ZVBpY2tlckZvcm1hdERpcmVjdGl2ZSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kYXRlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZGF0ZS1waWNrZXIuY29tcG9uZW50LnNjc3MnLCAnLi9kci1kYXRlLXBpY2tlci1kYXJrLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBEckRhdGVQaWNrZXJDb21wb25lbnQsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZLCB1c2VDbGFzczogV2Vla1NlbGVjdGlvblN0cmF0ZWd5IH0sXG4gICAgICAgIERBVEVfQURBUFRFUl9QUk9WSURFUixcbiAgICAgICAgRHJEYXRlUGlja2VyU2VydmljZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEckRhdGVQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcbiAgICBob3N0SWQgPSBudWxsO1xuXG4gICAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy51c2UtYnV0dG9uLXBpY2tlcicpIHVzZUJ1dHRvbjogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBidXR0b25MYWJlbDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGljb25BZnRlckJ1dHRvbjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHBhbmVsQ2xhc3M6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgdXNlRGFya1RoZW1lKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMucGFuZWxDbGFzcyA9IHZhbHVlID8gdGhpcy5wYW5lbENsYXNzICsgJyBkci1kYXRlcGlja2VyLWRhcmstdGhlbWUnIDogdGhpcy5wYW5lbENsYXNzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDb250cm9scyBkYXRlIHBpY2tlciBmb3JtYXQgaW5wdXQgbGFiZWwsIGNhbGVuZGFyIHN0YXJ0IHZpZXcgYW5kIHRpbWVmcmFtZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9ybWF0OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBtaW4obWluRGF0ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX21pbiA9IG1pbkRhdGUgPyBtb21lbnQudW5peChtaW5EYXRlKS51dGMoKSA6IG51bGw7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbWF4KG1heERhdGU6IG51bWJlcikge1xuICAgICAgICBjb25zdCBtYXhEYXRlTW9tZW50ID0gbWF4RGF0ZSA/IG1vbWVudC51bml4KG1heERhdGUpLnV0YygpIDogbnVsbDtcbiAgICAgICAgdGhpcy5fbWF4ID0gbWF4RGF0ZU1vbWVudDtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5tYXhEYXRlID0gbWF4RGF0ZU1vbWVudDtcbiAgICB9XG5cbiAgICBfc3RhcnRBdDogTW9tZW50IHwgbnVsbCA9IG51bGw7XG4gICAgLyoqIFRoZSBkYXRlIHRvIG9wZW4gdGhlIGNhbGVuZGFyIHRvIGluaXRpYWxseS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzdGFydEF0KHZhbHVlOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX3N0YXJ0QXQgPSB2YWx1ZSA/IG1vbWVudC51bml4KHZhbHVlKS51dGMoKSA6IG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFdoZXRoZXIgdG8gdHJhbnNmb3JtIGRhdGUsIHRha2luZyBlbmQsIHN0YXJ0LCBtaWRkbGUgb2YgcGVyaW9kIChpLmUuIHNldCBtaWRkbGUgb2YgbW9udGggaWYgdGltZWZyYW1lPSdtb250aCcpXG4gICAgICovXG4gICAgQElucHV0KCkgcGVyaW9kUG9zaXRpb246IERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbiA9IERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5ERUZBVUxUO1xuXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnU2VsZWN0Li4uJztcblxuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIGZpc2NhbFllYXJNb250aHNNb2RpZmllciA9IDA7XG5cbiAgICBASW5wdXQoKSBmaXNjYWxZZWFyQmFjayA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgZGF0ZXBpY2tlckZpbHRlcjogKG1vbWVudDogTW9tZW50KSA9PiBib29sZWFuO1xuXG4gICAgcHJpdmF0ZSBfZGF0ZVBpY2tlcjogTWF0RGF0ZXBpY2tlcjxhbnk+IHwgTWF0RGF0ZVJhbmdlUGlja2VyPGFueT47XG4gICAgQFZpZXdDaGlsZCgnZGF0ZVBpY2tlcicpXG4gICAgcHVibGljIHNldCBkYXRlUGlja2VyKHZhbHVlOiBNYXREYXRlcGlja2VyPGFueT4gfCBNYXREYXRlUmFuZ2VQaWNrZXI8YW55Pikge1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyID0gdmFsdWU7XG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZGF0ZVBpY2tlckluc3RhbmNlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXIuc3RhcnRWaWV3ID0gdGhpcy5jYWxlbmRhclZpZXdzVGltZWZyYW1lTWFwcGluZ1t0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZV07XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlcigpOiBNYXREYXRlcGlja2VyPGFueT4gfCBNYXREYXRlUmFuZ2VQaWNrZXI8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWN0aXZlJylcbiAgICBnZXQgYWN0aXZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuZWQkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhbGVuZGFyVmlld3NUaW1lZnJhbWVNYXBwaW5nOiBhbnkgPSB7XG4gICAgICAgIHllYXI6ICdtdWx0aS15ZWFyJyxcbiAgICAgICAgbW9udGg6ICd5ZWFyJyxcbiAgICAgICAgcXVhcnRlcjogJ25vbmUnLFxuICAgICAgICBkYXk6ICdtb250aCcsXG4gICAgICAgIHdlZWs6ICdtb250aCcsXG4gICAgfSBhcyBjb25zdDtcblxuICAgIHB1YmxpYyByZWFkb25seSBjdXN0b21IZWFkZXIgPSBEckRhdGVQaWNrZXJDdXN0b21IZWFkZXJDb21wb25lbnQ7XG4gICAgcHVibGljIHJlYWRvbmx5ID0gdHJ1ZTtcbiAgICBwdWJsaWMgX21pbjogTW9tZW50O1xuICAgIHByb3RlY3RlZCBfbWF4OiBNb21lbnQ7XG4gICAgcHVibGljIHJlYWRvbmx5IHRpbWVmcmFtZU9wdGlvbiA9IFRpbWVmcmFtZU9wdGlvbjtcblxuICAgIHByb3RlY3RlZCBnZXQgaW5uZXJWYWx1ZSgpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlja2VyU2VydmljZS5pbm5lclZhbHVlO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgc2V0IGlubmVyVmFsdWUodmFsdWU6IE1vbWVudCkge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGlzcGxheVZhbHVlJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lJC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLFxuICAgIF0pLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChbbnVsbCwgbnVsbF0pLFxuICAgICAgICBtYXAoKFt2YWx1ZSwgdGltZWZyYW1lXTogW01vbWVudCwgVGltZWZyYW1lT3B0aW9uXSkgPT4gdGhpcy50cmFuc2Zvcm1EaXNwbGF5ZWRWYWx1ZSh2YWx1ZSwgdGltZWZyYW1lKSksXG4gICAgICAgIHRhcCgodmFsdWU6IE1vbWVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZS5hY3RpdmVEYXRlID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5jYWxlbmRhckluc3RhbmNlLnNlbGVjdGVkID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGFuZ2UkID0gbmV3IFN1YmplY3Q8bnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3BlbmVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XG5cbiAgICByZWFkb25seSByYW5nZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgc3RhcnQ6IHRoaXMuZmIuY29udHJvbDxNb21lbnQgfCBudWxsPihudWxsKSxcbiAgICAgICAgZW5kOiB0aGlzLmZiLmNvbnRyb2w8TW9tZW50IHwgbnVsbD4obnVsbCksXG4gICAgfSk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8YW55PixcbiAgICAgICAgcHVibGljIGRhdGVQaWNrZXJTZXJ2aWNlOiBEckRhdGVQaWNrZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBkYXRlUGlja2VyU2VydmljZS51cGRhdGVkUXVhcnRlciQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLndlZWtTZWxlY3Rpb25DaGFuZ2UkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoeyBzdGFydCwgZW5kIH0pID0+IHtcbiAgICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoeyBzdGFydCwgZW5kIH0pO1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHN0YXJ0KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5pbm5lclZhbHVlJC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoeyBzdGFydDogdmFsdWUuY2xvbmUoKS5zdGFydE9mKCdpc29XZWVrJyksIGVuZDogdmFsdWUuY2xvbmUoKS5lbmRPZignaXNvV2VlaycpIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBkYXRlRm9ybWF0Rm4gPSB0aGlzLmRhdGVBZGFwdGVyLmZvcm1hdDtcbiAgICAgICAgdGhpcy5kYXRlQWRhcHRlci5mb3JtYXQgPSAoZGF0ZTogTW9tZW50LCBkaXNwbGF5Rm9ybWF0OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGxldCBkYXRlVG9Gb3JtYXQgPSBkYXRlLmNsb25lKCk7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS5pc1RpbWVmcmFtZURlcGVuZGluZ09uRlkodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUpKSB7XG4gICAgICAgICAgICAgICAgZGF0ZVRvRm9ybWF0ID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5zdWJ0cmFjdEZpc2NhbFllYXJNb250aHNGcm9tRGF0ZShkYXRlVG9Gb3JtYXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGRhdGVGb3JtYXRGbi5jYWxsKHRoaXMuZGF0ZUFkYXB0ZXIsIGRhdGVUb0Zvcm1hdCwgZGlzcGxheUZvcm1hdCk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJNb250aHNNb2RpZmllciA9IHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyO1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJCYWNrID0gdGhpcy5maXNjYWxZZWFyQmFjaztcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5kYXRlcGlja2VyRmlsdGVyID0gdGhpcy5kYXRlRmlsdGVyO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmZvcm1hdD8uY3VycmVudFZhbHVlICYmIGNoYW5nZXMuZm9ybWF0LmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlcy5mb3JtYXQucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGb3JtYXQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGFuZ2VzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcikge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5maXNjYWxZZWFyTW9udGhzTW9kaWZpZXIgPSB0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGFuZ2VzLmZpc2NhbFllYXJCYWNrKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJCYWNrID0gdGhpcy5maXNjYWxZZWFyQmFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0aW5nIGNvbXBvbmVudCBpbm5lciB2YWx1ZSBhY2NvcmRpbmcgdG8gZGF0ZXBpY2tlciB0aW1lZnJhbWUgKGRheSwgbW9udGggZXRjLilcbiAgICAgKiBhbmQgZGF0ZSBwb3NpdGlvbiBpbiBwZXJpb2QgKHN0YXJ0LCBlbmQsIG1pZGRsZSlcbiAgICAgKi9cbiAgICB0cnlUb05vcm1hbGl6ZVRpbWVmcmFtZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGltZWZyYW1lID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWU7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRWYWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZS5jbG9uZSgpO1xuICAgICAgICBjb25zdCB1bml0ID0gdGltZWZyYW1lID09PSBUaW1lZnJhbWVPcHRpb24uV0VFSyA/ICdpc29XZWVrJyA6IHRpbWVmcmFtZTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnBlcmlvZFBvc2l0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5TVEFSVF9PRl9QRVJJT0Q6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lID09PSBUaW1lZnJhbWVPcHRpb24uUVVBUlRFUikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnNldFN0YXJ0T2ZDdXJyZW50UXVhcnRlcihub3JtYWxpemVkVmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5ZRUFSKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0U3RhcnRPZlF1YXJ0ZXIobm9ybWFsaXplZFZhbHVlLCAxKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuc3RhcnRPZih1bml0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5FTkRfT0ZfUEVSSU9EOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLlFVQVJURVIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRFbmRPZkN1cnJlbnRRdWFydGVyKG5vcm1hbGl6ZWRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRFbmRPZlF1YXJ0ZXIobm9ybWFsaXplZFZhbHVlLCA0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuZW5kT2YodW5pdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBEYXRlUGlja2VyUGVyaW9kUG9zaXRpb24uTUlERExFX09GX1BFUklPRDpcbiAgICAgICAgICAgICAgICBsZXQgZW5kT2ZQZXJpb2Q6IE1vbWVudDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5RVUFSVEVSKSB7XG4gICAgICAgICAgICAgICAgICAgIGVuZE9mUGVyaW9kID0gbm9ybWFsaXplZFZhbHVlLmNsb25lKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0U3RhcnRPZkN1cnJlbnRRdWFydGVyKG5vcm1hbGl6ZWRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0RW5kT2ZDdXJyZW50UXVhcnRlcihlbmRPZlBlcmlvZCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgICAgICAgICAgZW5kT2ZQZXJpb2QgPSBub3JtYWxpemVkVmFsdWUuY2xvbmUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRTdGFydE9mUXVhcnRlcihub3JtYWxpemVkVmFsdWUsIDEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnNldEVuZE9mUXVhcnRlcihlbmRPZlBlcmlvZCwgNCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplZFZhbHVlLnN0YXJ0T2YodW5pdCk7XG4gICAgICAgICAgICAgICAgICAgIGVuZE9mUGVyaW9kID0gbm9ybWFsaXplZFZhbHVlLmNsb25lKCkuZW5kT2YodW5pdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGRpZmYgPSBlbmRPZlBlcmlvZC5kaWZmKG5vcm1hbGl6ZWRWYWx1ZSwgJ3NlY29uZHMnKTtcbiAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuYWRkKGRpZmYgLyAyICsgMSwgJ3NlY29uZHMnKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgbm9ybWFsaXplZFZhbHVlLnN0YXJ0T2YodW5pdCkuc2V0KCdob3VycycsIDEyKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUgPSBub3JtYWxpemVkVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGNob3NlblBlcmlvZEhhbmRsZXIoY2hvc2VuRGF0ZTogTW9tZW50LCB0aW1lZnJhbWU6IFRpbWVmcmFtZU9wdGlvbiwgcGlja2VyOiBNYXREYXRlcGlja2VyPGFueT4pIHtcbiAgICAgICAgaWYgKHRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgIGNob3NlbkRhdGUgPSB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmFkZEZpc2NhbFllYXJNb250aHNUb0RhdGUoY2hvc2VuRGF0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5RVUFSVEVSICYmIHRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZS5jdXJyZW50VmlldyA9IENhbGVuZGFyVmlldy5GT1JfUVVBUlRFUlMgYXMgTWF0Q2FsZW5kYXJWaWV3O1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5jYWxlbmRhckluc3RhbmNlLmFjdGl2ZURhdGUgPSBjaG9zZW5EYXRlO1xuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lID09PSB0aW1lZnJhbWUpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2VkSW5DYWxlbmRhcihjaG9zZW5EYXRlKTtcbiAgICAgICAgICAgIHBpY2tlci5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0dGluZyB2YWx1ZSBmcm9tIG91dHNpZGUgb2YgY29tcG9uZW50IHZpYSBuZ01vZGVsIG9yIGZvcm1Db250cm9sIHVwZGF0ZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIFdlIG5lZWQga2VlcCBsb2NhbCB0aW1lc3RhbXAgZm9yIEVsZWN0cm9uIEFwcGxpY2F0aW9uXG4gICAgICAgICAqIElzc3VlIGluIGVsZWN0cm9uOiB3aGVuIHdlIHNlbGVjdCBkYXRlLCBkYXRlIHNlbGVjdCB3aXRoIC0xIChpZiB3ZSdyZSBjaG9vc2luZyAyMDIzLCBvdXRwdXQgd2lsbCBiZSAyMDIyKVxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSAoZG9jdW1lbnQgYXMgYW55KS5pc19lbGVjdHJvbiA/IG1vbWVudC51bml4KHZhbHVlKSA6IG1vbWVudC51bml4KHZhbHVlKS51dGMoKTtcbiAgICAgICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWUgPyBjb252ZXJ0ZWRWYWx1ZSA6IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMudHJ5VG9Ob3JtYWxpemVUaW1lZnJhbWUoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xuICAgIHB1YmxpYyBvbkNoYW5nZUNhbGxiYWNrOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBudW1iZXIpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gKHZhbHVlOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGZuKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlJC5uZXh0KHZhbHVlKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLy8gU2hvdWxkIGJlIGFzIGFycm93IGZ1bmN0aW9uIHRvIGF2b2lkIGxvc2Ugc2NvcGVcbiAgICBwdWJsaWMgZGF0ZUZpbHRlciA9IChtb21lbnQ6IE1vbWVudCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5kYXRlcGlja2VyRmlsdGVyICYmIG1vbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZXBpY2tlckZpbHRlcihtb21lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcblxuICAgIHB1YmxpYyB2YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHZhbDogTW9tZW50KSB7XG4gICAgICAgIGlmICh2YWwgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWVUb1NldCA9IHZhbD8uY2xvbmUoKTtcbiAgICAgICAgICAgIGlmICh2YWx1ZVRvU2V0ICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNUaW1lZnJhbWVEZXBlbmRpbmdPbkZZKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc3VidHJhY3RGaXNjYWxZZWFyU2hpZnRGb3JZZWFyKHZhbHVlVG9TZXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUZyb21Nb21lbnQodmFsdWVUb1NldCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgaW5uZXIgdmFsdWUgZnJvbSBNb21lbnQgYW5kIHByb3BhZ2F0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIG1vbWVudERhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWVGcm9tTW9tZW50KG1vbWVudERhdGU6IE1vbWVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKG1vbWVudERhdGUudW5peCgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgaW5uZXIgdmFsdWUgZnJvbSB0aW1lc3RhbXAgYW5kIHByb3BhZ2F0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIHRpbWVzdGFtcFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBzZXRWYWx1ZSh0aW1lc3RhbXA6IG51bWJlcik6IHZvaWQge1xuICAgICAgICAvLyBpc1ZhbHVlVXBkYXRpbmcgaXMgcmVxdWlyZWQgZm9yIG1hbmFnZSBjbGlja3Mgb24gc2FtZSBkYXRlczogaWYgaXNWYWx1ZVVwZGF0aW5nIC0gdHJ1ZSB0aGVuXG4gICAgICAgIC8vIGRheXMgYXJlIGRpZmZlcmVudCBhbmQgc3Vic2NyaXB0aW9uIG9uIGNhbGVuZGFyIGRheSBjbGljayBhY3Rpb24gd29uJ3QgdHJpZ2dlciBBY2Nlc3NvciBuZ01vZGVsIHVwZGF0ZVxuICAgICAgICAvLyBvbmUgbW9yZSB0aW1lXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNWYWx1ZVVwZGF0aW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRpbWVzdGFtcCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayh0aGlzLmlubmVyVmFsdWUudW5peCgpKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlzVmFsdWVVcGRhdGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdHJhbnNmb3JtRGlzcGxheWVkVmFsdWUodmFsdWU6IE1vbWVudCwgdGltZWZyYW1lOiBUaW1lZnJhbWVPcHRpb24pOiBNb21lbnQge1xuICAgICAgICBjb25zdCB2YWx1ZVRvUmV0dXJuID0gdmFsdWU/LmNsb25lKCk7XG4gICAgICAgIGlmICh2YWx1ZVRvUmV0dXJuICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNUaW1lZnJhbWVEZXBlbmRpbmdPbkZZKHRpbWVmcmFtZSkpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuYWRkRmlzY2FsWWVhclNoaWZ0Rm9yWWVhcih2YWx1ZVRvUmV0dXJuKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWVUb1JldHVybjtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybWF0KCk6IHZvaWQge1xuICAgICAgICBsZXQgdGltZWZyYW1lO1xuICAgICAgICBsZXQgZm9ybWF0ID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRDb25maWd1cmVkRm9ybWF0KHRoaXMuZm9ybWF0IGFzIFRpbWVmcmFtZU9wdGlvbik7XG4gICAgICAgIGlmIChmb3JtYXQpIHtcbiAgICAgICAgICAgIHRpbWVmcmFtZSA9IHRoaXMuZm9ybWF0IGFzIFRpbWVmcmFtZU9wdGlvbjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZvcm1hdCA9IHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uubm9ybWFsaXplVmFsdWUodGhpcy5mb3JtYXQpO1xuICAgICAgICAgICAgdGltZWZyYW1lID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRUaW1lZnJhbWUoZm9ybWF0KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9IHRpbWVmcmFtZTtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5mb3JtYXQkLm5leHQoZm9ybWF0KTtcbiAgICB9XG5cbiAgICBvbk9wZW4oKSB7XG4gICAgICAgIHRoaXMub3BlbmVkJC5uZXh0KHRydWUpO1xuICAgIH1cblxuICAgIG9uQ0xvc2UoKSB7XG4gICAgICAgIGlmICh0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXAgPSB0aGlzLmlubmVyVmFsdWUudW5peCgpO1xuICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXApO1xuICAgICAgICAgICAgY29uc3Qgbm9ybWFsaXplZFZhbHVlID0gdGhpcy5pbm5lclZhbHVlLnVuaXgoKTtcbiAgICAgICAgICAgIGlmIChub3JtYWxpemVkVmFsdWUgIT09IG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXApIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sobm9ybWFsaXplZFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5lZCQubmV4dChmYWxzZSk7XG4gICAgfVxufVxuIiwiPGkgKm5nSWY9XCIhdXNlQnV0dG9uXCIgY2xhc3M9XCJkci1pY29uLWRhdGVcIiAoY2xpY2spPVwiZGF0ZVBpY2tlci5vcGVuKClcIj48L2k+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIoZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lJCB8IGFzeW5jKSA9PT0gdGltZWZyYW1lT3B0aW9uLldFRUtcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgICBbbmdNb2RlbF09XCJpbnB1dC52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFttaW5dPVwiX21pblwiXG4gICAgICAgIFttYXhdPVwiX21heFwiIC8+XG5cbiAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXQgW2Zvcm1Hcm91cF09XCJyYW5nZUZvcm1cIiBbcmFuZ2VQaWNrZXJdPVwiZGF0ZVBpY2tlclwiIFtkYXRlRmlsdGVyXT1cImRhdGVGaWx0ZXJcIiBjbGFzcz1cInJhbmdlLWlucHV0XCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0U3RhcnREYXRlXG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0YXJ0XCJcbiAgICAgICAgICAgIChkYXRlQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZEluQ2FsZW5kYXIocmFuZ2VGb3JtLnZhbHVlLnN0YXJ0KVwiIC8+XG4gICAgICAgIDxpbnB1dCBtYXRFbmREYXRlIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5kXCIgLz5cbiAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuXG4gICAgPG1hdC1kYXRlLXJhbmdlLXBpY2tlclxuICAgICAgICAjZGF0ZVBpY2tlclxuICAgICAgICBbc3RhcnRBdF09XCJfc3RhcnRBdFwiXG4gICAgICAgIFtwYW5lbENsYXNzXT1cIidkci13ZWVrLWRhdGVwaWNrZXInICsgKHBhbmVsQ2xhc3MgPyAnICcgKyBwYW5lbENsYXNzIDogJycpXCJcbiAgICAgICAgW2NhbGVuZGFySGVhZGVyQ29tcG9uZW50XT1cImN1c3RvbUhlYWRlclwiXG4gICAgICAgICh5ZWFyU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5ZRUFSLCBkYXRlUGlja2VyKVwiXG4gICAgICAgIChtb250aFNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uTU9OVEgsIGRhdGVQaWNrZXIpXCJcbiAgICAgICAgKG9wZW5lZCk9XCJvbk9wZW4oKVwiXG4gICAgICAgIChjbG9zZWQpPVwib25DTG9zZSgpXCI+XG4gICAgPC9tYXQtZGF0ZS1yYW5nZS1waWNrZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIihkYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUkIHwgYXN5bmMpICE9PSB0aW1lZnJhbWVPcHRpb24uV0VFS1wiPlxuICAgIDxpbnB1dFxuICAgICAgICBbYXR0ci5pZF09XCJpZFwiXG4gICAgICAgIFtuZ01vZGVsXT1cImRpc3BsYXlWYWx1ZSQgfCBhc3luY1wiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZEluQ2FsZW5kYXIoJGV2ZW50KVwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIFttYXREYXRlcGlja2VyXT1cImRhdGVQaWNrZXJcIlxuICAgICAgICBbbWF0RGF0ZXBpY2tlckZpbHRlcl09XCJkYXRlRmlsdGVyXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2RyRGF0ZVBpY2tlckZvcm1hdF09XCJkYXRlUGlja2VyU2VydmljZS5mb3JtYXQkIHwgYXN5bmNcIlxuICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbbWluXT1cIl9taW5cIlxuICAgICAgICBbbWF4XT1cIl9tYXhcIlxuICAgICAgICBbY2xhc3MuaGlkZGVuLWNhbGVuZGFyLWlucHV0XT1cInVzZUJ1dHRvblwiIC8+XG5cbiAgICA8ZHItYnV0dG9uXG4gICAgICAgICpuZ0lmPVwidXNlQnV0dG9uXCJcbiAgICAgICAgW2ljb25dPVwiJ2RyLWljb24tZGF0ZSdcIlxuICAgICAgICBbaWNvbkFmdGVyXT1cImljb25BZnRlckJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIGNsYXNzPVwiZGF0ZXBpY2tlci1idXR0b25cIj5cbiAgICAgICAge3sgYnV0dG9uTGFiZWwgfHwgJ1NlbGVjdCBEYXRlJyB9fVxuICAgIDwvZHItYnV0dG9uPlxuXG4gICAgPG1hdC1kYXRlcGlja2VyXG4gICAgICAgICNkYXRlUGlja2VyXG4gICAgICAgIFtwYW5lbENsYXNzXT1cInBhbmVsQ2xhc3NcIlxuICAgICAgICBbc3RhcnRBdF09XCJfc3RhcnRBdFwiXG4gICAgICAgIFtjYWxlbmRhckhlYWRlckNvbXBvbmVudF09XCJjdXN0b21IZWFkZXJcIlxuICAgICAgICAoeWVhclNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uWUVBUiwgZGF0ZVBpY2tlcilcIlxuICAgICAgICAobW9udGhTZWxlY3RlZCk9XCJjaG9zZW5QZXJpb2RIYW5kbGVyKCRldmVudCwgdGltZWZyYW1lT3B0aW9uLk1PTlRILCBkYXRlUGlja2VyKVwiXG4gICAgICAgIChvcGVuZWQpPVwib25PcGVuKClcIlxuICAgICAgICAoY2xvc2VkKT1cIm9uQ0xvc2UoKVwiPlxuICAgIDwvbWF0LWRhdGVwaWNrZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
495
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RhdGUtcGlja2Vycy9kci1kYXRlLXBpY2tlci9kci1kYXRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBR0wsUUFBUSxFQUVSLFFBQVEsRUFDUixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBd0IsV0FBVyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hILE9BQU8sRUFBRSxZQUFZLEVBQUUsd0JBQXdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFckcsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFT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QUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRTtvQkFDL0UscUJBQXFCO29CQUNyQixtQkFBbUI7aUJBQ3RCO2dJQUlELEVBQUU7a0JBREQsS0FBSztZQUdOLE1BQU07a0JBREwsV0FBVzttQkFBQyxTQUFTO1lBRzJCLFNBQVM7a0JBQXpELEtBQUs7O2tCQUFJLFdBQVc7bUJBQUMseUJBQXlCO1lBQ3RDLFdBQVc7a0JBQW5CLEtBQUs7WUFDRyxlQUFlO2tCQUF2QixLQUFLO1lBQ0csVUFBVTtrQkFBbEIsS0FBSztZQUdGLFlBQVk7a0JBRGYsS0FBSztZQVNOLE1BQU07a0JBREwsS0FBSztZQUlGLEdBQUc7a0JBRE4sS0FBSztZQU1GLEdBQUc7a0JBRE4sS0FBSztZQVVGLE9BQU87a0JBRFYsS0FBSztZQVFHLGNBQWM7a0JBQXRCLEtBQUs7WUFFRyxXQUFXO2tCQUFuQixLQUFLO1lBRWtDLFFBQVE7a0JBQS9DLEtBQUs7O2tCQUFJLFdBQVc7bUJBQUMsZ0JBQWdCO1lBRTdCLHdCQUF3QjtrQkFBaEMsS0FBSztZQUVHLGNBQWM7a0JBQXRCLEtBQUs7WUFFRyxnQkFBZ0I7a0JBQXhCLEtBQUs7WUFJSyxVQUFVO2tCQURwQixTQUFTO21CQUFDLFlBQVk7WUFXbkIsTUFBTTtrQkFEVCxXQUFXO21CQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIGluamVjdCxcbiAgICBJbmplY3RhYmxlLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBTa2lwU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQnVpbGRlciwgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXJWaWV3LCBEYXRlUGlja2VyUGVyaW9kUG9zaXRpb24sIFRpbWVmcmFtZU9wdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kYXRlUGlja2VyJztcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBEckRhdGVQaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZHItZGF0ZS1waWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBEckRhdGVQaWNrZXJDdXN0b21IZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9kci1kYXRlLXBpY2tlcl9jdXN0b20taGVhZGVyL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgTWF0Q2FsZW5kYXJWaWV3LFxuICAgIE1hdERhdGVwaWNrZXIsXG4gICAgTWF0RGF0ZVJhbmdlUGlja2VyLFxuICAgIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7XG4gICAgTUFUX01PTUVOVF9EQVRFX0FEQVBURVJfT1BUSU9OUyxcbiAgICBNYXRNb21lbnREYXRlQWRhcHRlck9wdGlvbnMsXG4gICAgTW9tZW50RGF0ZUFkYXB0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLW1vbWVudC1hZGFwdGVyJztcbmltcG9ydCB7IFdlZWtTZWxlY3Rpb25TdHJhdGVneSB9IGZyb20gJy4uL3NlcnZpY2VzL3dlZWstc2VsZWN0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IERyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJEYXRlUGlja2VyRm9ybWF0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kci1kYXRlLXBpY2tlci1mb3JtYXQuZGlyZWN0aXZlJztcblxuY29uc3Qgbm9vcCA9ICgpID0+IHt9O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ3VzdG9tRGF0ZUFkYXB0ZXIgZXh0ZW5kcyBNb21lbnREYXRlQWRhcHRlciB7XG4gICAgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxufVxuXG4vLyBSZXVzZSBwYXJlbnQgRGF0ZUFkYXB0ZXIgaWYgcHJvdmlkZWQsIG90aGVyd2lzZSBjcmVhdGUgYSBsb2NhbCBDdXN0b21EYXRlQWRhcHRlclxuY29uc3QgREFURV9BREFQVEVSX1BST1ZJREVSID0ge1xuICAgIHByb3ZpZGU6IERhdGVBZGFwdGVyLFxuICAgIHVzZUZhY3Rvcnk6IChwYXJlbnQ6IERhdGVBZGFwdGVyPGFueT4gfCBudWxsLCBsb2NhbGU6IHN0cmluZywgb3B0aW9uczogTWF0TW9tZW50RGF0ZUFkYXB0ZXJPcHRpb25zIHwgbnVsbCkgPT5cbiAgICAgICAgcGFyZW50ID8/IG5ldyBDdXN0b21EYXRlQWRhcHRlcihsb2NhbGUsIG9wdGlvbnMpLFxuICAgIGRlcHM6IFtbbmV3IE9wdGlvbmFsKCksIG5ldyBTa2lwU2VsZigpLCBEYXRlQWRhcHRlcl0sIE1BVF9EQVRFX0xPQ0FMRSwgW25ldyBPcHRpb25hbCgpLCBNQVRfTU9NRU5UX0RBVEVfQURBUFRFUl9PUFRJT05TXV0sXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWRhdGUtcGlja2VyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICAgICAgRHJCdXR0b25Db21wb25lbnQsXG4gICAgICAgIERyRGF0ZVBpY2tlckZvcm1hdERpcmVjdGl2ZSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kYXRlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZGF0ZS1waWNrZXIuY29tcG9uZW50LnNjc3MnLCAnLi9kci1kYXRlLXBpY2tlci1kYXJrLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBEckRhdGVQaWNrZXJDb21wb25lbnQsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZLCB1c2VDbGFzczogV2Vla1NlbGVjdGlvblN0cmF0ZWd5IH0sXG4gICAgICAgIERBVEVfQURBUFRFUl9QUk9WSURFUixcbiAgICAgICAgRHJEYXRlUGlja2VyU2VydmljZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEckRhdGVQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcbiAgICBob3N0SWQgPSBudWxsO1xuXG4gICAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy51c2UtYnV0dG9uLXBpY2tlcicpIHVzZUJ1dHRvbjogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBidXR0b25MYWJlbDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGljb25BZnRlckJ1dHRvbjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHBhbmVsQ2xhc3M6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgdXNlRGFya1RoZW1lKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMucGFuZWxDbGFzcyA9IHZhbHVlID8gdGhpcy5wYW5lbENsYXNzICsgJyBkci1kYXRlcGlja2VyLWRhcmstdGhlbWUnIDogdGhpcy5wYW5lbENsYXNzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBDb250cm9scyBkYXRlIHBpY2tlciBmb3JtYXQgaW5wdXQgbGFiZWwsIGNhbGVuZGFyIHN0YXJ0IHZpZXcgYW5kIHRpbWVmcmFtZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9ybWF0OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBtaW4obWluRGF0ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX21pbiA9IG1pbkRhdGUgPyBtb21lbnQudW5peChtaW5EYXRlKS51dGMoKSA6IG51bGw7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgbWF4KG1heERhdGU6IG51bWJlcikge1xuICAgICAgICBjb25zdCBtYXhEYXRlTW9tZW50ID0gbWF4RGF0ZSA/IG1vbWVudC51bml4KG1heERhdGUpLnV0YygpIDogbnVsbDtcbiAgICAgICAgdGhpcy5fbWF4ID0gbWF4RGF0ZU1vbWVudDtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5tYXhEYXRlID0gbWF4RGF0ZU1vbWVudDtcbiAgICB9XG5cbiAgICBfc3RhcnRBdDogTW9tZW50IHwgbnVsbCA9IG51bGw7XG4gICAgLyoqIFRoZSBkYXRlIHRvIG9wZW4gdGhlIGNhbGVuZGFyIHRvIGluaXRpYWxseS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzdGFydEF0KHZhbHVlOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX3N0YXJ0QXQgPSB2YWx1ZSA/IG1vbWVudC51bml4KHZhbHVlKS51dGMoKSA6IG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFdoZXRoZXIgdG8gdHJhbnNmb3JtIGRhdGUsIHRha2luZyBlbmQsIHN0YXJ0LCBtaWRkbGUgb2YgcGVyaW9kIChpLmUuIHNldCBtaWRkbGUgb2YgbW9udGggaWYgdGltZWZyYW1lPSdtb250aCcpXG4gICAgICovXG4gICAgQElucHV0KCkgcGVyaW9kUG9zaXRpb246IERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbiA9IERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5ERUZBVUxUO1xuXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnU2VsZWN0Li4uJztcblxuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIGZpc2NhbFllYXJNb250aHNNb2RpZmllciA9IDA7XG5cbiAgICBASW5wdXQoKSBmaXNjYWxZZWFyQmFjayA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgZGF0ZXBpY2tlckZpbHRlcjogKG1vbWVudDogTW9tZW50KSA9PiBib29sZWFuO1xuXG4gICAgcHJpdmF0ZSBfZGF0ZVBpY2tlcjogTWF0RGF0ZXBpY2tlcjxhbnk+IHwgTWF0RGF0ZVJhbmdlUGlja2VyPGFueT47XG4gICAgQFZpZXdDaGlsZCgnZGF0ZVBpY2tlcicpXG4gICAgcHVibGljIHNldCBkYXRlUGlja2VyKHZhbHVlOiBNYXREYXRlcGlja2VyPGFueT4gfCBNYXREYXRlUmFuZ2VQaWNrZXI8YW55Pikge1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyID0gdmFsdWU7XG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZGF0ZVBpY2tlckluc3RhbmNlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXIuc3RhcnRWaWV3ID0gdGhpcy5jYWxlbmRhclZpZXdzVGltZWZyYW1lTWFwcGluZ1t0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZV07XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlcigpOiBNYXREYXRlcGlja2VyPGFueT4gfCBNYXREYXRlUmFuZ2VQaWNrZXI8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWN0aXZlJylcbiAgICBnZXQgYWN0aXZlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuZWQkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhbGVuZGFyVmlld3NUaW1lZnJhbWVNYXBwaW5nOiBhbnkgPSB7XG4gICAgICAgIHllYXI6ICdtdWx0aS15ZWFyJyxcbiAgICAgICAgbW9udGg6ICd5ZWFyJyxcbiAgICAgICAgcXVhcnRlcjogJ25vbmUnLFxuICAgICAgICBkYXk6ICdtb250aCcsXG4gICAgICAgIHdlZWs6ICdtb250aCcsXG4gICAgfSBhcyBjb25zdDtcblxuICAgIHB1YmxpYyByZWFkb25seSBjdXN0b21IZWFkZXIgPSBEckRhdGVQaWNrZXJDdXN0b21IZWFkZXJDb21wb25lbnQ7XG4gICAgcHVibGljIHJlYWRvbmx5ID0gdHJ1ZTtcbiAgICBwdWJsaWMgX21pbjogTW9tZW50O1xuICAgIHByb3RlY3RlZCBfbWF4OiBNb21lbnQ7XG4gICAgcHVibGljIHJlYWRvbmx5IHRpbWVmcmFtZU9wdGlvbiA9IFRpbWVmcmFtZU9wdGlvbjtcblxuICAgIHByb3RlY3RlZCBnZXQgaW5uZXJWYWx1ZSgpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlja2VyU2VydmljZS5pbm5lclZhbHVlO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgc2V0IGlubmVyVmFsdWUodmFsdWU6IE1vbWVudCkge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGlzcGxheVZhbHVlJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lJC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLFxuICAgIF0pLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChbbnVsbCwgbnVsbF0pLFxuICAgICAgICBtYXAoKFt2YWx1ZSwgdGltZWZyYW1lXTogW01vbWVudCwgVGltZWZyYW1lT3B0aW9uXSkgPT4gdGhpcy50cmFuc2Zvcm1EaXNwbGF5ZWRWYWx1ZSh2YWx1ZSwgdGltZWZyYW1lKSksXG4gICAgICAgIHRhcCgodmFsdWU6IE1vbWVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZS5hY3RpdmVEYXRlID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5jYWxlbmRhckluc3RhbmNlLnNlbGVjdGVkID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGFuZ2UkID0gbmV3IFN1YmplY3Q8bnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3BlbmVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XG5cbiAgICByZWFkb25seSByYW5nZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgc3RhcnQ6IHRoaXMuZmIuY29udHJvbDxNb21lbnQgfCBudWxsPihudWxsKSxcbiAgICAgICAgZW5kOiB0aGlzLmZiLmNvbnRyb2w8TW9tZW50IHwgbnVsbD4obnVsbCksXG4gICAgfSk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8YW55PixcbiAgICAgICAgcHVibGljIGRhdGVQaWNrZXJTZXJ2aWNlOiBEckRhdGVQaWNrZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBkYXRlUGlja2VyU2VydmljZS51cGRhdGVkUXVhcnRlciQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLndlZWtTZWxlY3Rpb25DaGFuZ2UkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoeyBzdGFydCwgZW5kIH0pID0+IHtcbiAgICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoeyBzdGFydCwgZW5kIH0pO1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHN0YXJ0KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5pbm5lclZhbHVlJC5waXBlKGZpbHRlcihCb29sZWFuKSwgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmFuZ2VGb3JtLnBhdGNoVmFsdWUoeyBzdGFydDogdmFsdWUuY2xvbmUoKS5zdGFydE9mKCdpc29XZWVrJyksIGVuZDogdmFsdWUuY2xvbmUoKS5lbmRPZignaXNvV2VlaycpIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBkYXRlRm9ybWF0Rm4gPSB0aGlzLmRhdGVBZGFwdGVyLmZvcm1hdDtcbiAgICAgICAgdGhpcy5kYXRlQWRhcHRlci5mb3JtYXQgPSAoZGF0ZTogTW9tZW50LCBkaXNwbGF5Rm9ybWF0OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGxldCBkYXRlVG9Gb3JtYXQgPSBkYXRlLmNsb25lKCk7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS5pc1RpbWVmcmFtZURlcGVuZGluZ09uRlkodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUpKSB7XG4gICAgICAgICAgICAgICAgZGF0ZVRvRm9ybWF0ID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5zdWJ0cmFjdEZpc2NhbFllYXJNb250aHNGcm9tRGF0ZShkYXRlVG9Gb3JtYXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGRhdGVGb3JtYXRGbi5jYWxsKHRoaXMuZGF0ZUFkYXB0ZXIsIGRhdGVUb0Zvcm1hdCwgZGlzcGxheUZvcm1hdCk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJNb250aHNNb2RpZmllciA9IHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyO1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJCYWNrID0gdGhpcy5maXNjYWxZZWFyQmFjaztcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5kYXRlcGlja2VyRmlsdGVyID0gdGhpcy5kYXRlRmlsdGVyO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmZvcm1hdD8uY3VycmVudFZhbHVlICYmIGNoYW5nZXMuZm9ybWF0LmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlcy5mb3JtYXQucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGb3JtYXQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGFuZ2VzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcikge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5maXNjYWxZZWFyTW9udGhzTW9kaWZpZXIgPSB0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGFuZ2VzLmZpc2NhbFllYXJCYWNrKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZpc2NhbFllYXJCYWNrID0gdGhpcy5maXNjYWxZZWFyQmFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0aW5nIGNvbXBvbmVudCBpbm5lciB2YWx1ZSBhY2NvcmRpbmcgdG8gZGF0ZXBpY2tlciB0aW1lZnJhbWUgKGRheSwgbW9udGggZXRjLilcbiAgICAgKiBhbmQgZGF0ZSBwb3NpdGlvbiBpbiBwZXJpb2QgKHN0YXJ0LCBlbmQsIG1pZGRsZSlcbiAgICAgKi9cbiAgICB0cnlUb05vcm1hbGl6ZVRpbWVmcmFtZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGltZWZyYW1lID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWU7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRWYWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZS5jbG9uZSgpO1xuICAgICAgICBjb25zdCB1bml0ID0gdGltZWZyYW1lID09PSBUaW1lZnJhbWVPcHRpb24uV0VFSyA/ICdpc29XZWVrJyA6IHRpbWVmcmFtZTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnBlcmlvZFBvc2l0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5TVEFSVF9PRl9QRVJJT0Q6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lID09PSBUaW1lZnJhbWVPcHRpb24uUVVBUlRFUikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnNldFN0YXJ0T2ZDdXJyZW50UXVhcnRlcihub3JtYWxpemVkVmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5ZRUFSKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0U3RhcnRPZlF1YXJ0ZXIobm9ybWFsaXplZFZhbHVlLCAxKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuc3RhcnRPZih1bml0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbi5FTkRfT0ZfUEVSSU9EOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLlFVQVJURVIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRFbmRPZkN1cnJlbnRRdWFydGVyKG5vcm1hbGl6ZWRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRFbmRPZlF1YXJ0ZXIobm9ybWFsaXplZFZhbHVlLCA0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuZW5kT2YodW5pdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBEYXRlUGlja2VyUGVyaW9kUG9zaXRpb24uTUlERExFX09GX1BFUklPRDpcbiAgICAgICAgICAgICAgICBsZXQgZW5kT2ZQZXJpb2Q6IE1vbWVudDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5RVUFSVEVSKSB7XG4gICAgICAgICAgICAgICAgICAgIGVuZE9mUGVyaW9kID0gbm9ybWFsaXplZFZhbHVlLmNsb25lKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0U3RhcnRPZkN1cnJlbnRRdWFydGVyKG5vcm1hbGl6ZWRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc2V0RW5kT2ZDdXJyZW50UXVhcnRlcihlbmRPZlBlcmlvZCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgICAgICAgICAgZW5kT2ZQZXJpb2QgPSBub3JtYWxpemVkVmFsdWUuY2xvbmUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5zZXRTdGFydE9mUXVhcnRlcihub3JtYWxpemVkVmFsdWUsIDEpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnNldEVuZE9mUXVhcnRlcihlbmRPZlBlcmlvZCwgNCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplZFZhbHVlLnN0YXJ0T2YodW5pdCk7XG4gICAgICAgICAgICAgICAgICAgIGVuZE9mUGVyaW9kID0gbm9ybWFsaXplZFZhbHVlLmNsb25lKCkuZW5kT2YodW5pdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGRpZmYgPSBlbmRPZlBlcmlvZC5kaWZmKG5vcm1hbGl6ZWRWYWx1ZSwgJ3NlY29uZHMnKTtcbiAgICAgICAgICAgICAgICBub3JtYWxpemVkVmFsdWUuYWRkKGRpZmYgLyAyICsgMSwgJ3NlY29uZHMnKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgbm9ybWFsaXplZFZhbHVlLnN0YXJ0T2YodW5pdCkuc2V0KCdob3VycycsIDEyKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlubmVyVmFsdWUgPSBub3JtYWxpemVkVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGNob3NlblBlcmlvZEhhbmRsZXIoY2hvc2VuRGF0ZTogTW9tZW50LCB0aW1lZnJhbWU6IFRpbWVmcmFtZU9wdGlvbiwgcGlja2VyOiBNYXREYXRlcGlja2VyPGFueT4pIHtcbiAgICAgICAgaWYgKHRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgIGNob3NlbkRhdGUgPSB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmFkZEZpc2NhbFllYXJNb250aHNUb0RhdGUoY2hvc2VuRGF0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5RVUFSVEVSICYmIHRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLllFQVIpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuY2FsZW5kYXJJbnN0YW5jZS5jdXJyZW50VmlldyA9IENhbGVuZGFyVmlldy5GT1JfUVVBUlRFUlMgYXMgTWF0Q2FsZW5kYXJWaWV3O1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5jYWxlbmRhckluc3RhbmNlLmFjdGl2ZURhdGUgPSBjaG9zZW5EYXRlO1xuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lID09PSB0aW1lZnJhbWUpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2VkSW5DYWxlbmRhcihjaG9zZW5EYXRlKTtcbiAgICAgICAgICAgIHBpY2tlci5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0dGluZyB2YWx1ZSBmcm9tIG91dHNpZGUgb2YgY29tcG9uZW50IHZpYSBuZ01vZGVsIG9yIGZvcm1Db250cm9sIHVwZGF0ZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIFdlIG5lZWQga2VlcCBsb2NhbCB0aW1lc3RhbXAgZm9yIEVsZWN0cm9uIEFwcGxpY2F0aW9uXG4gICAgICAgICAqIElzc3VlIGluIGVsZWN0cm9uOiB3aGVuIHdlIHNlbGVjdCBkYXRlLCBkYXRlIHNlbGVjdCB3aXRoIC0xIChpZiB3ZSdyZSBjaG9vc2luZyAyMDIzLCBvdXRwdXQgd2lsbCBiZSAyMDIyKVxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgY29udmVydGVkVmFsdWUgPSAoZG9jdW1lbnQgYXMgYW55KS5pc19lbGVjdHJvbiA/IG1vbWVudC51bml4KHZhbHVlKSA6IG1vbWVudC51bml4KHZhbHVlKS51dGMoKTtcbiAgICAgICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWUgPyBjb252ZXJ0ZWRWYWx1ZSA6IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMudHJ5VG9Ob3JtYWxpemVUaW1lZnJhbWUoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xuICAgIHB1YmxpYyBvbkNoYW5nZUNhbGxiYWNrOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBudW1iZXIpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gKHZhbHVlOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGZuKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlJC5uZXh0KHZhbHVlKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLy8gU2hvdWxkIGJlIGFzIGFycm93IGZ1bmN0aW9uIHRvIGF2b2lkIGxvc2Ugc2NvcGVcbiAgICBwdWJsaWMgZGF0ZUZpbHRlciA9IChtb21lbnQ6IE1vbWVudCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5kYXRlcGlja2VyRmlsdGVyICYmIG1vbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZXBpY2tlckZpbHRlcihtb21lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcblxuICAgIHB1YmxpYyB2YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKHZhbDogTW9tZW50KSB7XG4gICAgICAgIGlmICh2YWwgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWVUb1NldCA9IHZhbD8uY2xvbmUoKTtcbiAgICAgICAgICAgIGlmICh2YWx1ZVRvU2V0ICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNUaW1lZnJhbWVEZXBlbmRpbmdPbkZZKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc3VidHJhY3RGaXNjYWxZZWFyU2hpZnRGb3JZZWFyKHZhbHVlVG9TZXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUZyb21Nb21lbnQodmFsdWVUb1NldCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgaW5uZXIgdmFsdWUgZnJvbSBNb21lbnQgYW5kIHByb3BhZ2F0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIG1vbWVudERhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWVGcm9tTW9tZW50KG1vbWVudERhdGU6IE1vbWVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKG1vbWVudERhdGUudW5peCgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgaW5uZXIgdmFsdWUgZnJvbSB0aW1lc3RhbXAgYW5kIHByb3BhZ2F0ZVxuICAgICAqXG4gICAgICogQHBhcmFtIHRpbWVzdGFtcFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBzZXRWYWx1ZSh0aW1lc3RhbXA6IG51bWJlcik6IHZvaWQge1xuICAgICAgICAvLyBpc1ZhbHVlVXBkYXRpbmcgaXMgcmVxdWlyZWQgZm9yIG1hbmFnZSBjbGlja3Mgb24gc2FtZSBkYXRlczogaWYgaXNWYWx1ZVVwZGF0aW5nIC0gdHJ1ZSB0aGVuXG4gICAgICAgIC8vIGRheXMgYXJlIGRpZmZlcmVudCBhbmQgc3Vic2NyaXB0aW9uIG9uIGNhbGVuZGFyIGRheSBjbGljayBhY3Rpb24gd29uJ3QgdHJpZ2dlciBBY2Nlc3NvciBuZ01vZGVsIHVwZGF0ZVxuICAgICAgICAvLyBvbmUgbW9yZSB0aW1lXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNWYWx1ZVVwZGF0aW5nID0gdHJ1ZTtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRpbWVzdGFtcCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayh0aGlzLmlubmVyVmFsdWUudW5peCgpKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlzVmFsdWVVcGRhdGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdHJhbnNmb3JtRGlzcGxheWVkVmFsdWUodmFsdWU6IE1vbWVudCwgdGltZWZyYW1lOiBUaW1lZnJhbWVPcHRpb24pOiBNb21lbnQge1xuICAgICAgICBjb25zdCB2YWx1ZVRvUmV0dXJuID0gdmFsdWU/LmNsb25lKCk7XG4gICAgICAgIGlmICh2YWx1ZVRvUmV0dXJuICYmIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuaXNUaW1lZnJhbWVEZXBlbmRpbmdPbkZZKHRpbWVmcmFtZSkpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuYWRkRmlzY2FsWWVhclNoaWZ0Rm9yWWVhcih2YWx1ZVRvUmV0dXJuKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWVUb1JldHVybjtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybWF0KCk6IHZvaWQge1xuICAgICAgICBsZXQgdGltZWZyYW1lO1xuICAgICAgICBsZXQgZm9ybWF0ID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRDb25maWd1cmVkRm9ybWF0KHRoaXMuZm9ybWF0IGFzIFRpbWVmcmFtZU9wdGlvbik7XG4gICAgICAgIGlmIChmb3JtYXQpIHtcbiAgICAgICAgICAgIHRpbWVmcmFtZSA9IHRoaXMuZm9ybWF0IGFzIFRpbWVmcmFtZU9wdGlvbjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZvcm1hdCA9IHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uubm9ybWFsaXplVmFsdWUodGhpcy5mb3JtYXQpO1xuICAgICAgICAgICAgdGltZWZyYW1lID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRUaW1lZnJhbWUoZm9ybWF0KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZSA9IHRpbWVmcmFtZTtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5mb3JtYXQkLm5leHQoZm9ybWF0KTtcbiAgICB9XG5cbiAgICBvbk9wZW4oKSB7XG4gICAgICAgIHRoaXMub3BlbmVkJC5uZXh0KHRydWUpO1xuICAgIH1cblxuICAgIG9uQ0xvc2UoKSB7XG4gICAgICAgIGlmICh0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXAgPSB0aGlzLmlubmVyVmFsdWUudW5peCgpO1xuICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXApO1xuICAgICAgICAgICAgY29uc3Qgbm9ybWFsaXplZFZhbHVlID0gdGhpcy5pbm5lclZhbHVlLnVuaXgoKTtcbiAgICAgICAgICAgIGlmIChub3JtYWxpemVkVmFsdWUgIT09IG5vbk5vcm1hbGl6ZWRUaW1lc3RhbXApIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sobm9ybWFsaXplZFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5lZCQubmV4dChmYWxzZSk7XG4gICAgfVxufVxuIiwiPGkgKm5nSWY9XCIhdXNlQnV0dG9uXCIgY2xhc3M9XCJkci1pY29uLWRhdGVcIiAoY2xpY2spPVwiZGF0ZVBpY2tlci5vcGVuKClcIj48L2k+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIoZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lJCB8IGFzeW5jKSA9PT0gdGltZWZyYW1lT3B0aW9uLldFRUtcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgICBbbmdNb2RlbF09XCJpbnB1dC52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFttaW5dPVwiX21pblwiXG4gICAgICAgIFttYXhdPVwiX21heFwiIC8+XG5cbiAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXQgW2Zvcm1Hcm91cF09XCJyYW5nZUZvcm1cIiBbcmFuZ2VQaWNrZXJdPVwiZGF0ZVBpY2tlclwiIFtkYXRlRmlsdGVyXT1cImRhdGVGaWx0ZXJcIiBjbGFzcz1cInJhbmdlLWlucHV0XCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0U3RhcnREYXRlXG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0YXJ0XCJcbiAgICAgICAgICAgIChkYXRlQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZEluQ2FsZW5kYXIocmFuZ2VGb3JtLnZhbHVlLnN0YXJ0KVwiIC8+XG4gICAgICAgIDxpbnB1dCBtYXRFbmREYXRlIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5kXCIgLz5cbiAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuXG4gICAgPG1hdC1kYXRlLXJhbmdlLXBpY2tlclxuICAgICAgICAjZGF0ZVBpY2tlclxuICAgICAgICBbc3RhcnRBdF09XCJfc3RhcnRBdFwiXG4gICAgICAgIFtwYW5lbENsYXNzXT1cIidkci13ZWVrLWRhdGVwaWNrZXInICsgKHBhbmVsQ2xhc3MgPyAnICcgKyBwYW5lbENsYXNzIDogJycpXCJcbiAgICAgICAgW2NhbGVuZGFySGVhZGVyQ29tcG9uZW50XT1cImN1c3RvbUhlYWRlclwiXG4gICAgICAgICh5ZWFyU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5ZRUFSLCBkYXRlUGlja2VyKVwiXG4gICAgICAgIChtb250aFNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uTU9OVEgsIGRhdGVQaWNrZXIpXCJcbiAgICAgICAgKG9wZW5lZCk9XCJvbk9wZW4oKVwiXG4gICAgICAgIChjbG9zZWQpPVwib25DTG9zZSgpXCI+XG4gICAgPC9tYXQtZGF0ZS1yYW5nZS1waWNrZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIihkYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUkIHwgYXN5bmMpICE9PSB0aW1lZnJhbWVPcHRpb24uV0VFS1wiPlxuICAgIDxpbnB1dFxuICAgICAgICBbYXR0ci5pZF09XCJpZFwiXG4gICAgICAgIFtuZ01vZGVsXT1cImRpc3BsYXlWYWx1ZSQgfCBhc3luY1wiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZEluQ2FsZW5kYXIoJGV2ZW50KVwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIFttYXREYXRlcGlja2VyXT1cImRhdGVQaWNrZXJcIlxuICAgICAgICBbbWF0RGF0ZXBpY2tlckZpbHRlcl09XCJkYXRlRmlsdGVyXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2RyRGF0ZVBpY2tlckZvcm1hdF09XCJkYXRlUGlja2VyU2VydmljZS5mb3JtYXQkIHwgYXN5bmNcIlxuICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbbWluXT1cIl9taW5cIlxuICAgICAgICBbbWF4XT1cIl9tYXhcIlxuICAgICAgICBbY2xhc3MuaGlkZGVuLWNhbGVuZGFyLWlucHV0XT1cInVzZUJ1dHRvblwiIC8+XG5cbiAgICA8ZHItYnV0dG9uXG4gICAgICAgICpuZ0lmPVwidXNlQnV0dG9uXCJcbiAgICAgICAgW2ljb25dPVwiJ2RyLWljb24tZGF0ZSdcIlxuICAgICAgICBbaWNvbkFmdGVyXT1cImljb25BZnRlckJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIGNsYXNzPVwiZGF0ZXBpY2tlci1idXR0b25cIj5cbiAgICAgICAge3sgYnV0dG9uTGFiZWwgfHwgJ1NlbGVjdCBEYXRlJyB9fVxuICAgIDwvZHItYnV0dG9uPlxuXG4gICAgPG1hdC1kYXRlcGlja2VyXG4gICAgICAgICNkYXRlUGlja2VyXG4gICAgICAgIFtwYW5lbENsYXNzXT1cInBhbmVsQ2xhc3NcIlxuICAgICAgICBbc3RhcnRBdF09XCJfc3RhcnRBdFwiXG4gICAgICAgIFtjYWxlbmRhckhlYWRlckNvbXBvbmVudF09XCJjdXN0b21IZWFkZXJcIlxuICAgICAgICAoeWVhclNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uWUVBUiwgZGF0ZVBpY2tlcilcIlxuICAgICAgICAobW9udGhTZWxlY3RlZCk9XCJjaG9zZW5QZXJpb2RIYW5kbGVyKCRldmVudCwgdGltZWZyYW1lT3B0aW9uLk1PTlRILCBkYXRlUGlja2VyKVwiXG4gICAgICAgIChvcGVuZWQpPVwib25PcGVuKClcIlxuICAgICAgICAoY2xvc2VkKT1cIm9uQ0xvc2UoKVwiPlxuICAgIDwvbWF0LWRhdGVwaWNrZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==