@churchillliving/se-ui-toolkit 6.54.494 → 6.54.495

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.
@@ -99,12 +99,12 @@ export class HeaderComponent {
99
99
  }
100
100
  }
101
101
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: HeaderComponent, deps: [{ token: i1.AuthenticationService }, { token: i2.DatePipe }, { token: i3.HyperlinkService }], target: i0.ɵɵFactoryTarget.Component }); }
102
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: HeaderComponent, selector: "se-header", inputs: { headers: "headers" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\">\n <label for=\"\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i4.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "directive", type: i10.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i11.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.CurrencyPipe, name: "currency" }] }); }
102
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: HeaderComponent, selector: "se-header", inputs: { headers: "headers" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\" >\n <label for=\"\" [style.color]=\"headerField.colorFont ? headerField.colorFont : ''\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i4.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "directive", type: i10.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i11.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.CurrencyPipe, name: "currency" }] }); }
103
103
  }
104
104
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: HeaderComponent, decorators: [{
105
105
  type: Component,
106
- args: [{ selector: 'se-header', template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\">\n <label for=\"\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"] }]
106
+ args: [{ selector: 'se-header', template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\" >\n <label for=\"\" [style.color]=\"headerField.colorFont ? headerField.colorFont : ''\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"] }]
107
107
  }], ctorParameters: function () { return [{ type: i1.AuthenticationService }, { type: i2.DatePipe }, { type: i3.HyperlinkService }]; }, propDecorators: { headers: [{
108
108
  type: Input
109
109
  }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlLXVpLXRvb2xraXQvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFELE9BQU8sRUFBRSxlQUFlLEVBQWUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVMvRSxNQUFNLE9BQU8sZUFBZTtJQU8xQixZQUFvQixXQUFrQyxFQUFTLFFBQWtCLEVBQVMsZ0JBQWtDO1FBQXhHLGdCQUFXLEdBQVgsV0FBVyxDQUF1QjtRQUFTLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBUyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBSjVILGdCQUFXLEdBQUcsWUFBWSxDQUFDO1FBQzNCLFVBQUssR0FBYSxFQUFFLENBQUM7UUFDckIsbUJBQWMsR0FBWSxLQUFLLENBQUM7SUFFK0YsQ0FBQztJQUVoSSxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO29CQUMxRSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7aUJBQzFEO2dCQUNELElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtvQkFDbkQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ25DLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUNyRCxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztpQkFDaEI7Z0JBQ0QsSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7b0JBQy9ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTt3QkFDL0QsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFOzRCQUNmLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQy9FLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDO3lCQUNuQztvQkFDSCxDQUFDLENBQUMsQ0FBQTtpQkFDSDtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLG9CQUFvQjtRQUNsQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxXQUFXLEdBQVcsQ0FBQyxDQUFDO1lBQzVCLElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQztZQUU3QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDMUMsSUFBSSxXQUFXLEdBQVEsV0FBVyxDQUFDLFdBQVcsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLFdBQVc7b0JBQUUsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUN6RCxJQUFJLHNCQUFzQixHQUFHLEtBQUssQ0FBQztnQkFFbkMsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3pDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRTt3QkFDdEMsSUFBSSxPQUFPLEdBQVksS0FBSyxDQUFDO3dCQUM3QixJQUFJLFVBQVUsQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOzRCQUNuRCxVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO2dDQUNyQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7b0NBQ3ZELE9BQU8sR0FBRyxJQUFJLENBQUM7aUNBQ2hCOzRCQUNILENBQUMsQ0FBQyxDQUFDOzRCQUNILElBQ0UsVUFBVSxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsSUFBSTtnQ0FDeEMsQ0FBQyxzQkFBc0IsRUFDdkI7Z0NBQ0EsSUFBSSxPQUFPLEVBQUU7b0NBQ1gsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7aUNBQzdCO3FDQUFNO29DQUNMLFdBQVcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2lDQUMzQjs2QkFDRjtpQ0FBTSxJQUFJLFVBQVUsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLElBQUksRUFBRTtnQ0FDbkQsSUFBSSxPQUFPLEVBQUU7b0NBQ1gsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO29DQUM5QixXQUFXLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztvQ0FDN0IsV0FBVyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7aUNBQzVCO3FDQUFNO29DQUNMLFdBQVcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2lDQUM3Qjs2QkFDRjt5QkFDRjtvQkFDSCxDQUFDLENBQUMsQ0FBQztpQkFDSjtnQkFFRCxXQUFXLEVBQUUsQ0FBQztnQkFFZCxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUU7b0JBQ3RCLFlBQVksRUFBRSxDQUFDO2lCQUNoQjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLEdBQUcsQ0FBQyxJQUFJLFdBQVcsS0FBSyxZQUFZLENBQUM7U0FDdkU7SUFDSCxDQUFDO2lJQXpGVSxlQUFlO3FIQUFmLGVBQWUsc0dDYjVCLG93TkE0TEE7OzJGRC9LYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFdBQVc7a0tBS1osT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElIZWFkZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaGVhZGVyLm1vZGVsJztcbmltcG9ydCB7IEVGb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9mb3JtLm1vZGVsJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRVBlcm1pc3Npb25UeXBlLCBJUGVybWlzc2lvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy91c2VyLWluZm8ubW9kZWwnO1xuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHlwZXJsaW5rU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2h5cGVybGluay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2UtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGhlYWRlcnM6IElIZWFkZXI7XG5cbiAgZHluYW1pY0Nhc2UgPSBFRm9ybUNvbnRyb2w7XG4gIHJvbGVzOiBzdHJpbmdbXSA9IFtdO1xuICBpc0hlYWRlckhpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSwgcHVibGljIGRhdGVwaXBlOiBEYXRlUGlwZSwgcHVibGljIGh5cGVybGlua1NlcnZpY2U6IEh5cGVybGlua1NlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VXNlclJvbGVzKCk7XG4gICAgLy8gYXBwbHkgdXNlciByb2xlIHBlcm1pc3Npb25zIG9uIGZvcm1cbiAgICB0aGlzLmFwcGx5VXNlclBlcm1pc3Npb25zKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFkZXJzICYmIHRoaXMuaGVhZGVycy5maWVsZHMpIHtcbiAgICAgIHRoaXMuaGVhZGVycy5maWVsZHMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgICBpZiAoIXguc2hvd1RpbWUgJiYgIXgudGltZU9ubHkgJiYgeC52YWx1ZT8udG9TdHJpbmcoKS5tYXRjaCgvWzAtOV0rLVxccz8vZykpIHtcbiAgICAgICAgICB4LnZhbHVlID0gdGhpcy5kYXRlcGlwZS50cmFuc2Zvcm0oeC52YWx1ZSwgJ3l5eXktTU0tZGQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoeC52YWx1ZT8udG9TdHJpbmcoKS5pbmNsdWRlcygnOicpICYmIHgudGltZU9ubHkpIHtcbiAgICAgICAgICBjb25zdCBpbmRleCA9IHgudmFsdWUuaW5kZXhPZignOicpO1xuICAgICAgICAgIGNvbnN0IHRpbWUgPSB4LnZhbHVlLnN1YnN0cmluZyhpbmRleCAtIDIsIGluZGV4ICsgNik7XG4gICAgICAgICAgeC52YWx1ZSA9IHRpbWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHguY29udHJvbCA9PT0gRUZvcm1Db250cm9sLkhZUEVSTElOSyAmJiB4Lmh5cGVybGluaz8ubGlua0lkKSB7XG4gICAgICAgICAgdGhpcy5oeXBlcmxpbmtTZXJ2aWNlLmJ1aWxkVXJsKHguaHlwZXJsaW5rPy5saW5rSWQpLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc1swXT8udXJsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsVXJsID0gdGhpcy5oeXBlcmxpbmtTZXJ2aWNlLnNldFVybCh4Py5oeXBlcmxpbms/LnBhcmFtcywgcmVzWzBdKTtcbiAgICAgICAgICAgICAgeC5oeXBlcmxpbmtbJ2xpbmsnXSA9IG9yaWdpbmFsVXJsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFwcGx5IHVzZXIgcm9sZSBwZXJtaXNzaW9uc1xuICBhcHBseVVzZXJQZXJtaXNzaW9ucygpIHtcbiAgICBpZiAodGhpcy5oZWFkZXJzKSB7XG4gICAgICBsZXQgdG90YWxGaWVsZHM6IG51bWJlciA9IDA7XG4gICAgICBsZXQgaGlkZGVuRmllbGRzOiBudW1iZXIgPSAwO1xuXG4gICAgICB0aGlzLmhlYWRlcnMuZmllbGRzLmZvckVhY2goKGhlYWRlckZpZWxkKSA9PiB7XG4gICAgICAgIGxldCBwZXJtaXNzaW9uczogYW55ID0gaGVhZGVyRmllbGQucGVybWlzc2lvbnM7XG4gICAgICAgIGlmICghcGVybWlzc2lvbnMpIHBlcm1pc3Npb25zID0gdGhpcy5oZWFkZXJzLnBlcm1pc3Npb25zO1xuICAgICAgICBsZXQgaGFzVmFsaWRFZGl0UGVybWlzc2lvbiA9IGZhbHNlO1xuXG4gICAgICAgIGlmIChwZXJtaXNzaW9ucyAmJiBwZXJtaXNzaW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcGVybWlzc2lvbnMuZm9yRWFjaCgocGVybWlzc2lvbjogYW55KSA9PiB7XG4gICAgICAgICAgICBsZXQgaXNWYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHBlcm1pc3Npb24ucm9sZXMgJiYgcGVybWlzc2lvbi5yb2xlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgIHBlcm1pc3Npb24ucm9sZXMuZm9yRWFjaCgocm9sZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1ZhbGlkICYmIHRoaXMucm9sZXMgJiYgdGhpcy5yb2xlcy5pbmNsdWRlcyhyb2xlKSkge1xuICAgICAgICAgICAgICAgICAgaXNWYWxpZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHBlcm1pc3Npb24udHlwZSA9PT0gRVBlcm1pc3Npb25UeXBlLlZJRVcgJiZcbiAgICAgICAgICAgICAgICAhaGFzVmFsaWRFZGl0UGVybWlzc2lvblxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5oaWRkZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChwZXJtaXNzaW9uLnR5cGUgPT09IEVQZXJtaXNzaW9uVHlwZS5FRElUKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgIGhhc1ZhbGlkRWRpdFBlcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbEZpZWxkcysrO1xuXG4gICAgICAgIGlmIChoZWFkZXJGaWVsZC5oaWRkZW4pIHtcbiAgICAgICAgICBoaWRkZW5GaWVsZHMrKztcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuaXNIZWFkZXJIaWRkZW4gPSB0b3RhbEZpZWxkcyA+IDAgJiYgdG90YWxGaWVsZHMgPT09IGhpZGRlbkZpZWxkcztcbiAgICB9XG4gIH1cbn1cblxuIiwiPGRpdiAqbmdJZj1cIiFpc0hlYWRlckhpZGRlbiAmJiBoZWFkZXJzXCIgY2xhc3M9XCJjYXJkIHN0aWNreSBoZWFkZXItY29tcG9uZW50XCI+XG4gIDxkaXYgY2xhc3M9XCJoZWFkZXItbGlzdCBwLTEgZmxleFwiPlxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCInbWQ6Y29sLScgKyBoZWFkZXJGaWVsZC5jb2x1bW4gKyAnIHNtOmNvbC02IGNvbC0xMiBweS0wJ1wiXG4gICAgICBjbGFzcz1cImhlYWRlci1saXN0LWl0ZW0gc2VjdGlvbi13cmFwcGVyLWluLWhlYWRlclwiXG4gICAgICAqbmdGb3I9XCJsZXQgaGVhZGVyRmllbGQgb2YgaGVhZGVycy5maWVsZHNcIlxuICAgID5cbiAgICAgIDxkaXYgW25nU3dpdGNoXT1cImhlYWRlckZpZWxkLmNvbnRyb2xcIj5cbiAgICAgICAgPCEtLSBGb3IgRHJvcGRvd24gLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgc2VjdGlvbi13cmFwcGVyLWluLWhlYWRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLkRST1BET1dOXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YlxuICAgICAgICAgICAgICA+PGxhYmVsIGZvcj1cIlwiPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD48L2JcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxwLWRyb3Bkb3duXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJoZWFkZXJGaWVsZC5sYWJlbFwiXG4gICAgICAgICAgICAgIFtvcHRpb25zXT1cImhlYWRlckZpZWxkLmRhdGFcIlxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImhlYWRlckZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImhlYWRlckZpZWxkLm9uQ2xpY2sgPyBoZWFkZXJGaWVsZC5vbkNsaWNrKCkgOiAnJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZHJvcGRvd24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgXG4gICAgICAgIDwhLS0gRm9yIGxhYmVsICAtLT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBzZWN0aW9uLXdyYXBwZXItaW4taGVhZGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiZHluYW1pY0Nhc2UuTEFCRUxcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxiICpuZ0lmPVwiaGVhZGVyRmllbGQubGFiZWw/Lmxlbmd0aCA+IDBcIlxuICAgICAgICAgICAgICA+PGxhYmVsIGZvcj1cIlwiPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD48L2JcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwhLS0gZm9yIHZhbHVlIC0tPlxuICAgICAgICAgICAgPFNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuZm9ybWF0XCI+XG4gICAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+e3sgaGVhZGVyRmllbGQudmFsdWUgfX08L2xhYmVsPiBcbiAgICAgICAgICA8L1NwYW4+XG5cbiAgICAgICAgICAgICA8IS0tIGZvciBjdXJyZW5jeSAtLT5cbiAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5mb3JtYXQgJiYgaGVhZGVyRmllbGQuZm9ybWF0LnR5cGUgPT09ICdjdXJyZW5jeSdcbiAgICAgICAgICAgICBcIlxuICAgICAgICAgICA+XG4gICAgICAgICAgICAgPGxhYmVsPnt7XG4gICAgICAgICAgICAgICBoZWFkZXJGaWVsZC52YWx1ZVxuICAgICAgICAgICAgICAgICB8IGN1cnJlbmN5XG4gICAgICAgICAgICAgICAgICAgOiAoaGVhZGVyRmllbGQuZm9ybWF0LmZvcm1hdFBhcmFtcyAmJlxuICAgICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZm9ybWF0LmZvcm1hdFBhcmFtcy5jdXJyZW5jeVxuICAgICAgICAgICAgICAgICAgICAgICA/IGhlYWRlckZpZWxkLmZvcm1hdC5mb3JtYXRQYXJhbXMuY3VycmVuY3lcbiAgICAgICAgICAgICAgICAgICAgICAgOiAnVVNEJylcbiAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAgIDwhLS0gZm9yIHBlcmNlbnQgLS0+XG4gICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoZWFkZXJGaWVsZC5mb3JtYXQgJiYgaGVhZGVyRmllbGQuZm9ybWF0LnR5cGUgPT09ICdwZXJjZW50J1wiPlxuICAgICAgICAgICAgICA8bGFiZWwgPnt7IGhlYWRlckZpZWxkLnZhbHVlIH19JTwvbGFiZWw+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAgICAgPCEtLSBmb3IgZGVjaW1hbCAtLT5cbiAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5mb3JtYXQgJiYgaGVhZGVyRmllbGQuZm9ybWF0LnR5cGUgPT09ICdkZWNpbWFsJ1xuICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICA8bGFiZWw+e3tcbiAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQudmFsdWVcbiAgICAgICAgICAgICAgICAgICB8IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgOiAoaGVhZGVyRmllbGQuZm9ybWF0LmZvcm1hdFBhcmFtcyAmJlxuICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5mb3JtYXQuZm9ybWF0UGFyYW1zLmRpZ2l0c0luZm9cbiAgICAgICAgICAgICAgICAgICAgICAgICA/ICcyLicgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZm9ybWF0LmZvcm1hdFBhcmFtcy5kaWdpdHNJbmZvICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICctOCdcbiAgICAgICAgICAgICAgICAgICAgICAgICA6ICcyLjItOCcpXG4gICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPCEtLSBUZXh0IElucHV0IC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5JTlBVVFwiPlxuICAgICAgICAgICAgPGJcbiAgICAgICAgICAgICAgPjxsYWJlbCBmb3I9XCJcIj57eyBoZWFkZXJGaWVsZC5sYWJlbCB9fTwvbGFiZWw+PC9iXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgY2xhc3M9XCJtci0yIGZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgcElucHV0VGV4dFxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImhlYWRlckZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImhlYWRlckZpZWxkLm9uQ2xpY2sgPyBoZWFkZXJGaWVsZC5vbkNsaWNrKCkgOiAnJ1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPCEtLSBOdW1iZXIgSW5wdXQgLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcC0wXCIgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLk5VTUVSSUNcIj5cbiAgICAgICAgICAgIDxsYWJlbD57eyBoZWFkZXJGaWVsZC5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4LWdyb3ctMSBtci0yIGZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaGVhZGVyRmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiaGVhZGVyRmllbGQub25DbGljayA/IGhlYWRlckZpZWxkLm9uQ2xpY2soKSA6ICcnXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8IS0tIENoZWNrYm94IC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHAtMFwiICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5DSEVDS0JPWFwiPlxuICAgICAgICAgICAgPGxhYmVsPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxwLWNoZWNrYm94XG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImhlYWRlckZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgYmluYXJ5PVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC9wLWNoZWNrYm94PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgIDwhLS0gaHlwZXJMaW5rIC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHAtMFwiICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5IWVBFUkxJTktcIj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoZWFkZXJGaWVsZC5oeXBlcmxpbmtcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3M9XCJoZWFkZXItbGlua1wiIHRhYmluZGV4PVwiLTFcIiBbaHJlZl09XCJoZWFkZXJGaWVsZC5oeXBlcmxpbms/LmxpbmtcIiBbdGFyZ2V0XT1cImhlYWRlckZpZWxkLmh5cGVybGluaz8udGFyZ2V0ID8gaGVhZGVyRmllbGQuaHlwZXJsaW5rPy50YXJnZXQgOiAnX2JsYW5rJ1wiXG4gICAgICAgICAgICAgICAgZGF0YS10aXRsZS1lbGVtZW50PVwic2VsZlwiPlxuICAgICAgICAgICAgICAgIHt7IGhlYWRlckZpZWxkLmxhYmVsIH19XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPCEtLSBDYWxlbmRhciAtLT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBwLTBcIiAqbmdTd2l0Y2hDYXNlPVwiZHluYW1pY0Nhc2UuQ0FMRU5EQVJcIj5cbiAgICAgICAgICAgIDxsYWJlbD57eyBoZWFkZXJGaWVsZC5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8cC1jYWxlbmRhclxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXgtZ3Jvdy0xIG1yLTJcIlxuICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiaGVhZGVyRmllbGQubGFiZWxcIlxuICAgICAgICAgICAgICBbc2hvd0J1dHRvbkJhcl09XCIhaGVhZGVyRmllbGQudGltZU9ubHlcIlxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImhlYWRlckZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgaG91ckZvcm1hdD1cIjEyXCJcbiAgICAgICAgICAgICAgZGF0YVR5cGU9XCJzdHJpbmdcIlxuICAgICAgICAgICAgICBbdGltZU9ubHldPVwiaGVhZGVyRmllbGQudGltZU9ubHlcIlxuICAgICAgICAgICAgICBbc2hvd1RpbWVdPVwiaGVhZGVyRmllbGQuc2hvd1RpbWVcIlxuICAgICAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJoZWFkZXJGaWVsZC5mb3JtYXQgPyBoZWFkZXJGaWVsZC5mb3JtYXQuZGF0ZVR5cGUgOiAnbW0vZGQveXknXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvcC1jYWxlbmRhcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDwhLS0gTXVsdGktc2VsZWN0IC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHAtMFwiICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5NVUxUSVNFTEVDVFwiPlxuICAgICAgICAgICAgPGxhYmVsPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxwLW11bHRpU2VsZWN0XG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaGVhZGVyRmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICBbb3B0aW9uc109XCJoZWFkZXJGaWVsZC5kYXRhXCJcbiAgICAgICAgICAgICAgb3B0aW9uTGFiZWw9XCJsYWJlbFwiXG4gICAgICAgICAgICAgIG9wdGlvblZhbHVlPVwidmFsdWVcIlxuICAgICAgICAgICAgICBbYXBwZW5kVG9dPVwiJ2JvZHknXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImhlYWRlckZpZWxkLm9uQ2xpY2sgPyBoZWFkZXJGaWVsZC5vbkNsaWNrKCkgOiAnJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtbXVsdGlTZWxlY3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8IS0tIEJ1dHRvbiAtLT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBwLTBcIiAqbmdTd2l0Y2hDYXNlPVwiZHluYW1pY0Nhc2UuQlVUVE9OXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIHBCdXR0b25cbiAgICAgICAgICAgICAgcFJpcHBsZVxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJ7eyBoZWFkZXJGaWVsZC5sYWJlbCB9fVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwie3sgaGVhZGVyRmllbGQuY2xhc3MgfX1cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiaGVhZGVyRmllbGQub25DbGljayA/IGhlYWRlckZpZWxkLm9uQ2xpY2soKSA6ICcnXCJcbiAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlLXVpLXRvb2xraXQvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFELE9BQU8sRUFBRSxlQUFlLEVBQWUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVMvRSxNQUFNLE9BQU8sZUFBZTtJQU8xQixZQUFvQixXQUFrQyxFQUFTLFFBQWtCLEVBQVMsZ0JBQWtDO1FBQXhHLGdCQUFXLEdBQVgsV0FBVyxDQUF1QjtRQUFTLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBUyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBSjVILGdCQUFXLEdBQUcsWUFBWSxDQUFDO1FBQzNCLFVBQUssR0FBYSxFQUFFLENBQUM7UUFDckIsbUJBQWMsR0FBWSxLQUFLLENBQUM7SUFFK0YsQ0FBQztJQUVoSSxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdDLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO29CQUMxRSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7aUJBQzFEO2dCQUNELElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtvQkFDbkQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ25DLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUNyRCxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztpQkFDaEI7Z0JBQ0QsSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7b0JBQy9ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTt3QkFDL0QsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFOzRCQUNmLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQy9FLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDO3lCQUNuQztvQkFDSCxDQUFDLENBQUMsQ0FBQTtpQkFDSDtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLG9CQUFvQjtRQUNsQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxXQUFXLEdBQVcsQ0FBQyxDQUFDO1lBQzVCLElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQztZQUU3QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDMUMsSUFBSSxXQUFXLEdBQVEsV0FBVyxDQUFDLFdBQVcsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLFdBQVc7b0JBQUUsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUN6RCxJQUFJLHNCQUFzQixHQUFHLEtBQUssQ0FBQztnQkFFbkMsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3pDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRTt3QkFDdEMsSUFBSSxPQUFPLEdBQVksS0FBSyxDQUFDO3dCQUM3QixJQUFJLFVBQVUsQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOzRCQUNuRCxVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO2dDQUNyQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7b0NBQ3ZELE9BQU8sR0FBRyxJQUFJLENBQUM7aUNBQ2hCOzRCQUNILENBQUMsQ0FBQyxDQUFDOzRCQUNILElBQ0UsVUFBVSxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsSUFBSTtnQ0FDeEMsQ0FBQyxzQkFBc0IsRUFDdkI7Z0NBQ0EsSUFBSSxPQUFPLEVBQUU7b0NBQ1gsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7aUNBQzdCO3FDQUFNO29DQUNMLFdBQVcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2lDQUMzQjs2QkFDRjtpQ0FBTSxJQUFJLFVBQVUsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLElBQUksRUFBRTtnQ0FDbkQsSUFBSSxPQUFPLEVBQUU7b0NBQ1gsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO29DQUM5QixXQUFXLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztvQ0FDN0IsV0FBVyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7aUNBQzVCO3FDQUFNO29DQUNMLFdBQVcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2lDQUM3Qjs2QkFDRjt5QkFDRjtvQkFDSCxDQUFDLENBQUMsQ0FBQztpQkFDSjtnQkFFRCxXQUFXLEVBQUUsQ0FBQztnQkFFZCxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUU7b0JBQ3RCLFlBQVksRUFBRSxDQUFDO2lCQUNoQjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLEdBQUcsQ0FBQyxJQUFJLFdBQVcsS0FBSyxZQUFZLENBQUM7U0FDdkU7SUFDSCxDQUFDO2lJQXpGVSxlQUFlO3FIQUFmLGVBQWUsc0dDYjVCLDIwTkE0TEE7OzJGRC9LYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFdBQVc7a0tBS1osT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElIZWFkZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaGVhZGVyLm1vZGVsJztcbmltcG9ydCB7IEVGb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9mb3JtLm1vZGVsJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRVBlcm1pc3Npb25UeXBlLCBJUGVybWlzc2lvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy91c2VyLWluZm8ubW9kZWwnO1xuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHlwZXJsaW5rU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2h5cGVybGluay5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2UtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGhlYWRlcnM6IElIZWFkZXI7XG5cbiAgZHluYW1pY0Nhc2UgPSBFRm9ybUNvbnRyb2w7XG4gIHJvbGVzOiBzdHJpbmdbXSA9IFtdO1xuICBpc0hlYWRlckhpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSwgcHVibGljIGRhdGVwaXBlOiBEYXRlUGlwZSwgcHVibGljIGh5cGVybGlua1NlcnZpY2U6IEh5cGVybGlua1NlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VXNlclJvbGVzKCk7XG4gICAgLy8gYXBwbHkgdXNlciByb2xlIHBlcm1pc3Npb25zIG9uIGZvcm1cbiAgICB0aGlzLmFwcGx5VXNlclBlcm1pc3Npb25zKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFkZXJzICYmIHRoaXMuaGVhZGVycy5maWVsZHMpIHtcbiAgICAgIHRoaXMuaGVhZGVycy5maWVsZHMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgICBpZiAoIXguc2hvd1RpbWUgJiYgIXgudGltZU9ubHkgJiYgeC52YWx1ZT8udG9TdHJpbmcoKS5tYXRjaCgvWzAtOV0rLVxccz8vZykpIHtcbiAgICAgICAgICB4LnZhbHVlID0gdGhpcy5kYXRlcGlwZS50cmFuc2Zvcm0oeC52YWx1ZSwgJ3l5eXktTU0tZGQnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoeC52YWx1ZT8udG9TdHJpbmcoKS5pbmNsdWRlcygnOicpICYmIHgudGltZU9ubHkpIHtcbiAgICAgICAgICBjb25zdCBpbmRleCA9IHgudmFsdWUuaW5kZXhPZignOicpO1xuICAgICAgICAgIGNvbnN0IHRpbWUgPSB4LnZhbHVlLnN1YnN0cmluZyhpbmRleCAtIDIsIGluZGV4ICsgNik7XG4gICAgICAgICAgeC52YWx1ZSA9IHRpbWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHguY29udHJvbCA9PT0gRUZvcm1Db250cm9sLkhZUEVSTElOSyAmJiB4Lmh5cGVybGluaz8ubGlua0lkKSB7XG4gICAgICAgICAgdGhpcy5oeXBlcmxpbmtTZXJ2aWNlLmJ1aWxkVXJsKHguaHlwZXJsaW5rPy5saW5rSWQpLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc1swXT8udXJsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsVXJsID0gdGhpcy5oeXBlcmxpbmtTZXJ2aWNlLnNldFVybCh4Py5oeXBlcmxpbms/LnBhcmFtcywgcmVzWzBdKTtcbiAgICAgICAgICAgICAgeC5oeXBlcmxpbmtbJ2xpbmsnXSA9IG9yaWdpbmFsVXJsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFwcGx5IHVzZXIgcm9sZSBwZXJtaXNzaW9uc1xuICBhcHBseVVzZXJQZXJtaXNzaW9ucygpIHtcbiAgICBpZiAodGhpcy5oZWFkZXJzKSB7XG4gICAgICBsZXQgdG90YWxGaWVsZHM6IG51bWJlciA9IDA7XG4gICAgICBsZXQgaGlkZGVuRmllbGRzOiBudW1iZXIgPSAwO1xuXG4gICAgICB0aGlzLmhlYWRlcnMuZmllbGRzLmZvckVhY2goKGhlYWRlckZpZWxkKSA9PiB7XG4gICAgICAgIGxldCBwZXJtaXNzaW9uczogYW55ID0gaGVhZGVyRmllbGQucGVybWlzc2lvbnM7XG4gICAgICAgIGlmICghcGVybWlzc2lvbnMpIHBlcm1pc3Npb25zID0gdGhpcy5oZWFkZXJzLnBlcm1pc3Npb25zO1xuICAgICAgICBsZXQgaGFzVmFsaWRFZGl0UGVybWlzc2lvbiA9IGZhbHNlO1xuXG4gICAgICAgIGlmIChwZXJtaXNzaW9ucyAmJiBwZXJtaXNzaW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcGVybWlzc2lvbnMuZm9yRWFjaCgocGVybWlzc2lvbjogYW55KSA9PiB7XG4gICAgICAgICAgICBsZXQgaXNWYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHBlcm1pc3Npb24ucm9sZXMgJiYgcGVybWlzc2lvbi5yb2xlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgIHBlcm1pc3Npb24ucm9sZXMuZm9yRWFjaCgocm9sZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1ZhbGlkICYmIHRoaXMucm9sZXMgJiYgdGhpcy5yb2xlcy5pbmNsdWRlcyhyb2xlKSkge1xuICAgICAgICAgICAgICAgICAgaXNWYWxpZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHBlcm1pc3Npb24udHlwZSA9PT0gRVBlcm1pc3Npb25UeXBlLlZJRVcgJiZcbiAgICAgICAgICAgICAgICAhaGFzVmFsaWRFZGl0UGVybWlzc2lvblxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5oaWRkZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChwZXJtaXNzaW9uLnR5cGUgPT09IEVQZXJtaXNzaW9uVHlwZS5FRElUKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgIGhhc1ZhbGlkRWRpdFBlcm1pc3Npb24gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgaGVhZGVyRmllbGQuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0b3RhbEZpZWxkcysrO1xuXG4gICAgICAgIGlmIChoZWFkZXJGaWVsZC5oaWRkZW4pIHtcbiAgICAgICAgICBoaWRkZW5GaWVsZHMrKztcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuaXNIZWFkZXJIaWRkZW4gPSB0b3RhbEZpZWxkcyA+IDAgJiYgdG90YWxGaWVsZHMgPT09IGhpZGRlbkZpZWxkcztcbiAgICB9XG4gIH1cbn1cblxuIiwiPGRpdiAqbmdJZj1cIiFpc0hlYWRlckhpZGRlbiAmJiBoZWFkZXJzXCIgY2xhc3M9XCJjYXJkIHN0aWNreSBoZWFkZXItY29tcG9uZW50XCI+XG4gIDxkaXYgY2xhc3M9XCJoZWFkZXItbGlzdCBwLTEgZmxleFwiPlxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCInbWQ6Y29sLScgKyBoZWFkZXJGaWVsZC5jb2x1bW4gKyAnIHNtOmNvbC02IGNvbC0xMiBweS0wJ1wiXG4gICAgICBjbGFzcz1cImhlYWRlci1saXN0LWl0ZW0gc2VjdGlvbi13cmFwcGVyLWluLWhlYWRlclwiXG4gICAgICAqbmdGb3I9XCJsZXQgaGVhZGVyRmllbGQgb2YgaGVhZGVycy5maWVsZHNcIlxuICAgID5cbiAgICAgIDxkaXYgW25nU3dpdGNoXT1cImhlYWRlckZpZWxkLmNvbnRyb2xcIj5cbiAgICAgICAgPCEtLSBGb3IgRHJvcGRvd24gLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgc2VjdGlvbi13cmFwcGVyLWluLWhlYWRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLkRST1BET1dOXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YlxuICAgICAgICAgICAgICA+PGxhYmVsIGZvcj1cIlwiPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD48L2JcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxwLWRyb3Bkb3duXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJoZWFkZXJGaWVsZC5sYWJlbFwiXG4gICAgICAgICAgICAgIFtvcHRpb25zXT1cImhlYWRlckZpZWxkLmRhdGFcIlxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImhlYWRlckZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImhlYWRlckZpZWxkLm9uQ2xpY2sgPyBoZWFkZXJGaWVsZC5vbkNsaWNrKCkgOiAnJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3AtZHJvcGRvd24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgXG4gICAgICAgIDwhLS0gRm9yIGxhYmVsICAtLT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBzZWN0aW9uLXdyYXBwZXItaW4taGVhZGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiZHluYW1pY0Nhc2UuTEFCRUxcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxiICpuZ0lmPVwiaGVhZGVyRmllbGQubGFiZWw/Lmxlbmd0aCA+IDBcIlxuICAgICAgICAgICAgICA+PGxhYmVsIGZvcj1cIlwiPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD48L2JcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwhLS0gZm9yIHZhbHVlIC0tPlxuICAgICAgICAgICAgPFNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuZm9ybWF0XCIgID5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIiBbc3R5bGUuY29sb3JdPVwiaGVhZGVyRmllbGQuY29sb3JGb250ID8gaGVhZGVyRmllbGQuY29sb3JGb250IDogJydcIj57eyBoZWFkZXJGaWVsZC52YWx1ZSB9fTwvbGFiZWw+IFxuICAgICAgICAgIDwvU3Bhbj5cblxuICAgICAgICAgICAgIDwhLS0gZm9yIGN1cnJlbmN5IC0tPlxuICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLmZvcm1hdCAmJiBoZWFkZXJGaWVsZC5mb3JtYXQudHlwZSA9PT0gJ2N1cnJlbmN5J1xuICAgICAgICAgICAgIFwiXG4gICAgICAgICAgID5cbiAgICAgICAgICAgICA8bGFiZWw+e3tcbiAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLnZhbHVlXG4gICAgICAgICAgICAgICAgIHwgY3VycmVuY3lcbiAgICAgICAgICAgICAgICAgICA6IChoZWFkZXJGaWVsZC5mb3JtYXQuZm9ybWF0UGFyYW1zICYmXG4gICAgICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5mb3JtYXQuZm9ybWF0UGFyYW1zLmN1cnJlbmN5XG4gICAgICAgICAgICAgICAgICAgICAgID8gaGVhZGVyRmllbGQuZm9ybWF0LmZvcm1hdFBhcmFtcy5jdXJyZW5jeVxuICAgICAgICAgICAgICAgICAgICAgICA6ICdVU0QnKVxuICAgICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgICAgPCEtLSBmb3IgcGVyY2VudCAtLT5cbiAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlckZpZWxkLmZvcm1hdCAmJiBoZWFkZXJGaWVsZC5mb3JtYXQudHlwZSA9PT0gJ3BlcmNlbnQnXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCA+e3sgaGVhZGVyRmllbGQudmFsdWUgfX0lPC9sYWJlbD5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgICAgICA8IS0tIGZvciBkZWNpbWFsIC0tPlxuICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLmZvcm1hdCAmJiBoZWFkZXJGaWVsZC5mb3JtYXQudHlwZSA9PT0gJ2RlY2ltYWwnXG4gICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgIDxsYWJlbD57e1xuICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC52YWx1ZVxuICAgICAgICAgICAgICAgICAgIHwgbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICA6IChoZWFkZXJGaWVsZC5mb3JtYXQuZm9ybWF0UGFyYW1zICYmXG4gICAgICAgICAgICAgICAgICAgICAgIGhlYWRlckZpZWxkLmZvcm1hdC5mb3JtYXRQYXJhbXMuZGlnaXRzSW5mb1xuICAgICAgICAgICAgICAgICAgICAgICAgID8gJzIuJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJGaWVsZC5mb3JtYXQuZm9ybWF0UGFyYW1zLmRpZ2l0c0luZm8gK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgJy04J1xuICAgICAgICAgICAgICAgICAgICAgICAgIDogJzIuMi04JylcbiAgICAgICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8IS0tIFRleHQgSW5wdXQgLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLklOUFVUXCI+XG4gICAgICAgICAgICA8YlxuICAgICAgICAgICAgICA+PGxhYmVsIGZvcj1cIlwiPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD48L2JcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBjbGFzcz1cIm1yLTIgZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaGVhZGVyRmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiaGVhZGVyRmllbGQub25DbGljayA/IGhlYWRlckZpZWxkLm9uQ2xpY2soKSA6ICcnXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8IS0tIE51bWJlciBJbnB1dCAtLT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaGVhZGVyRmllbGQuaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBwLTBcIiAqbmdTd2l0Y2hDYXNlPVwiZHluYW1pY0Nhc2UuTlVNRVJJQ1wiPlxuICAgICAgICAgICAgPGxhYmVsPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXgtZ3Jvdy0xIG1yLTIgZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJoZWFkZXJGaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJoZWFkZXJGaWVsZC5vbkNsaWNrID8gaGVhZGVyRmllbGQub25DbGljaygpIDogJydcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDwhLS0gQ2hlY2tib3ggLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcC0wXCIgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLkNIRUNLQk9YXCI+XG4gICAgICAgICAgICA8bGFiZWw+e3sgaGVhZGVyRmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgPHAtY2hlY2tib3hcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaGVhZGVyRmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICBiaW5hcnk9XCJ0cnVlXCJcbiAgICAgICAgICAgID48L3AtY2hlY2tib3g+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgPCEtLSBoeXBlckxpbmsgLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcC0wXCIgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLkhZUEVSTElOS1wiPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhlYWRlckZpZWxkLmh5cGVybGlua1wiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cImhlYWRlci1saW5rXCIgdGFiaW5kZXg9XCItMVwiIFtocmVmXT1cImhlYWRlckZpZWxkLmh5cGVybGluaz8ubGlua1wiIFt0YXJnZXRdPVwiaGVhZGVyRmllbGQuaHlwZXJsaW5rPy50YXJnZXQgPyBoZWFkZXJGaWVsZC5oeXBlcmxpbms/LnRhcmdldCA6ICdfYmxhbmsnXCJcbiAgICAgICAgICAgICAgICBkYXRhLXRpdGxlLWVsZW1lbnQ9XCJzZWxmXCI+XG4gICAgICAgICAgICAgICAge3sgaGVhZGVyRmllbGQubGFiZWwgfX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8IS0tIENhbGVuZGFyIC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHAtMFwiICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5DQUxFTkRBUlwiPlxuICAgICAgICAgICAgPGxhYmVsPnt7IGhlYWRlckZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxwLWNhbGVuZGFyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleC1ncm93LTEgbXItMlwiXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJoZWFkZXJGaWVsZC5sYWJlbFwiXG4gICAgICAgICAgICAgIFtzaG93QnV0dG9uQmFyXT1cIiFoZWFkZXJGaWVsZC50aW1lT25seVwiXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaGVhZGVyRmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICBob3VyRm9ybWF0PVwiMTJcIlxuICAgICAgICAgICAgICBkYXRhVHlwZT1cInN0cmluZ1wiXG4gICAgICAgICAgICAgIFt0aW1lT25seV09XCJoZWFkZXJGaWVsZC50aW1lT25seVwiXG4gICAgICAgICAgICAgIFtzaG93VGltZV09XCJoZWFkZXJGaWVsZC5zaG93VGltZVwiXG4gICAgICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImhlYWRlckZpZWxkLmZvcm1hdCA/IGhlYWRlckZpZWxkLmZvcm1hdC5kYXRlVHlwZSA6ICdtbS9kZC95eSdcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9wLWNhbGVuZGFyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPCEtLSBNdWx0aS1zZWxlY3QgLS0+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWhlYWRlckZpZWxkLmhpZGRlblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgcC0wXCIgKm5nU3dpdGNoQ2FzZT1cImR5bmFtaWNDYXNlLk1VTFRJU0VMRUNUXCI+XG4gICAgICAgICAgICA8bGFiZWw+e3sgaGVhZGVyRmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgPHAtbXVsdGlTZWxlY3RcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJoZWFkZXJGaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgIFtvcHRpb25zXT1cImhlYWRlckZpZWxkLmRhdGFcIlxuICAgICAgICAgICAgICBvcHRpb25MYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgb3B0aW9uVmFsdWU9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgIFthcHBlbmRUb109XCInYm9keSdcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiaGVhZGVyRmllbGQub25DbGljayA/IGhlYWRlckZpZWxkLm9uQ2xpY2soKSA6ICcnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvcC1tdWx0aVNlbGVjdD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDwhLS0gQnV0dG9uIC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFoZWFkZXJGaWVsZC5oaWRkZW5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHAtMFwiICpuZ1N3aXRjaENhc2U9XCJkeW5hbWljQ2FzZS5CVVRUT05cIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgcEJ1dHRvblxuICAgICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBsYWJlbD1cInt7IGhlYWRlckZpZWxkLmxhYmVsIH19XCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ7eyBoZWFkZXJGaWVsZC5jbGFzcyB9fVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJoZWFkZXJGaWVsZC5vbkNsaWNrID8gaGVhZGVyRmllbGQub25DbGljaygpIDogJydcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -16,4 +16,4 @@ export var EHeaderFormatType;
16
16
  EHeaderFormatType["PERCENT"] = "percent";
17
17
  EHeaderFormatType["DECIMAL"] = "decimal";
18
18
  })(EHeaderFormatType || (EHeaderFormatType = {}));
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL21vZGVscy9oZWFkZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLE1BQU0sQ0FBTixJQUFZLFlBT1g7QUFQRCxXQUFZLFlBQVk7SUFDdEIsc0NBQXNCLENBQUE7SUFDdEIsd0RBQXdDLENBQUE7SUFDeEMsa0RBQWtDLENBQUE7SUFDbEMsd0RBQXdDLENBQUE7SUFDeEMsa0RBQWtDLENBQUE7SUFDbEMsc0RBQXNDLENBQUE7QUFDeEMsQ0FBQyxFQVBXLFlBQVksS0FBWixZQUFZLFFBT3ZCO0FBNENELE1BQU0sQ0FBTixJQUFZLGlCQU9YO0FBUEQsV0FBWSxpQkFBaUI7SUFDM0IsMkNBQXNCLENBQUE7SUFDdEIsMkNBQXNCLENBQUE7SUFDdEIsMENBQXFCLENBQUE7SUFDckIsMENBQXFCLENBQUE7SUFDckIsd0NBQW1CLENBQUE7SUFDbkIsd0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVBXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFPNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFRm9ybUNvbnRyb2wsIElIeXBlcmxpbmsgfSBmcm9tICcuL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgSVBlcm1pc3Npb24gfSBmcm9tICcuL3VzZXItaW5mby5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhlYWRlciB7XG4gIGZpZWxkczogSUhlYWRlckZpZWxkW107XG4gIGNvbHVtbj86IG51bWJlcjtcbiAgcGVybWlzc2lvbnM/OiBJUGVybWlzc2lvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIZWFkZXJGaWVsZCB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB2YWx1ZT86IGFueTtcbiAgY29udHJvbD86IEVGb3JtQ29udHJvbDtcbiAgZGF0YT86IGFueVtdO1xuICBvbkNsaWNrPzogKCkgPT4gdm9pZDtcbiAgY2xhc3M/OiBzdHJpbmc7XG4gIGNvbHVtbj86IG51bWJlcjtcbiAgaHlwZXJsaW5rPzogSUh5cGVybGluaztcbiAgcGVybWlzc2lvbnM/OiBJUGVybWlzc2lvbltdO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIGZvcm1hdD86IElIZWFkZXJGb3JtYXQ7XG4gIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgdGltZU9ubHk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZW51bSBFQnV0dG9uQ2xhc3Mge1xuICBOT1JNQUwgPSAncC1idXR0b24tc20nLFxuICBTVUNDRVNTID0gJ3AtYnV0dG9uLXN1Y2Nlc3MgcC1idXR0b24tc20nLFxuICBJTkZPID0gJ3AtYnV0dG9uLWluZm8gcC1idXR0b24tc20nLFxuICBXQVJOSU5HID0gJ3AtYnV0dG9uLXdhcm5pbmcgcC1idXR0b24tc20nLFxuICBIRUxQID0gJ3AtYnV0dG9uLWhlbHAgcC1idXR0b24tc20nLFxuICBEQU5HRVIgPSAncC1idXR0b24tZGFuZ2VyIHAtYnV0dG9uLXNtJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRIZWFkZXJGaWVsZCB7XG4gIGNvbnRyb2w/OiBFRm9ybUNvbnRyb2w7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB2YWx1ZT86IHN0cmluZztcbiAgY29sdW1uPzogbnVtYmVyO1xuICBkYXRhPzogYW55O1xuICBjbGFzcz86IHN0cmluZztcbiAgb25DbGljaz86ICgoKSA9PiB2b2lkKSB8IGFueTtcbiAgaHlwZXJsaW5rPzogSUh5cGVybGluaztcbiAgcGVybWlzc2lvbnM/OiBJUGVybWlzc2lvbltdO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIGZvcm1hdD86IElIZWFkZXJGb3JtYXQ7XG4gIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgdGltZU9ubHk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIZWFkZXJGb3JtYXQge1xuICB0eXBlOiBFSGVhZGVyRm9ybWF0VHlwZSB8IGFueTtcbiAgZm9ybWF0UGFyYW1zPzpJRm9ybWF0UGFyYW1zXG4gICAgfCBJRGF0ZUZvcm1hdFBhcmFtc1xuICAgIHwgSU51bWJlckZvcm1hdFBhcmFtc1xuICAgIHwgSUN1cnJlbmN5Rm9ybWF0UGFyYW1zO1xuICBmb3JtYXR0ZXI/OiAodmFsdWU6IGFueSkgPT4gYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGb3JtYXRQYXJhbXMge1xuICBsb2NhbGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGVGb3JtYXRQYXJhbXMgZXh0ZW5kcyBJRm9ybWF0UGFyYW1zIHtcbiAgZm9ybWF0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElOdW1iZXJGb3JtYXRQYXJhbXMgZXh0ZW5kcyBJRm9ybWF0UGFyYW1zIHtcbiAgZGlnaXRzSW5mbz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ3VycmVuY3lGb3JtYXRQYXJhbXMgZXh0ZW5kcyBJTnVtYmVyRm9ybWF0UGFyYW1zIHtcbiAgY3VycmVuY3k6IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gRUhlYWRlckZvcm1hdFR5cGUge1xuICBTSE9SVERBVEUgPSAnbW0vZGQveXknLFxuICBNRURJVU1EQVRFID0gJ00gZCwgeXknLFxuICBMT05HREFURSA9ICdNTSBkLCB5eScsXG4gIENVUlJFTkNZID0gJ2N1cnJlbmN5JyxcbiAgUEVSQ0VOVCA9ICdwZXJjZW50JyxcbiAgREVDSU1BTCA9ICdkZWNpbWFsJyxcbn0iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL21vZGVscy9oZWFkZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkJBLE1BQU0sQ0FBTixJQUFZLFlBT1g7QUFQRCxXQUFZLFlBQVk7SUFDdEIsc0NBQXNCLENBQUE7SUFDdEIsd0RBQXdDLENBQUE7SUFDeEMsa0RBQWtDLENBQUE7SUFDbEMsd0RBQXdDLENBQUE7SUFDeEMsa0RBQWtDLENBQUE7SUFDbEMsc0RBQXNDLENBQUE7QUFDeEMsQ0FBQyxFQVBXLFlBQVksS0FBWixZQUFZLFFBT3ZCO0FBNkNELE1BQU0sQ0FBTixJQUFZLGlCQU9YO0FBUEQsV0FBWSxpQkFBaUI7SUFDM0IsMkNBQXNCLENBQUE7SUFDdEIsMkNBQXNCLENBQUE7SUFDdEIsMENBQXFCLENBQUE7SUFDckIsMENBQXFCLENBQUE7SUFDckIsd0NBQW1CLENBQUE7SUFDbkIsd0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVBXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFPNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFRm9ybUNvbnRyb2wsIElIeXBlcmxpbmsgfSBmcm9tICcuL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgSVBlcm1pc3Npb24gfSBmcm9tICcuL3VzZXItaW5mby5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhlYWRlciB7XG4gIGZpZWxkczogSUhlYWRlckZpZWxkW107XG4gIGNvbHVtbj86IG51bWJlcjtcbiAgcGVybWlzc2lvbnM/OiBJUGVybWlzc2lvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIZWFkZXJGaWVsZCB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB2YWx1ZT86IGFueTtcbiAgY29udHJvbD86IEVGb3JtQ29udHJvbDtcbiAgZGF0YT86IGFueVtdO1xuICBvbkNsaWNrPzogKCkgPT4gdm9pZDtcbiAgY2xhc3M/OiBzdHJpbmc7XG4gIGNvbHVtbj86IG51bWJlcjtcbiAgaHlwZXJsaW5rPzogSUh5cGVybGluaztcbiAgcGVybWlzc2lvbnM/OiBJUGVybWlzc2lvbltdO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGhpZGRlbj86IGJvb2xlYW47XG4gIGZvcm1hdD86IElIZWFkZXJGb3JtYXQ7XG4gIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgdGltZU9ubHk/OiBib29sZWFuO1xuICBjb2xvckZvbnQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEVCdXR0b25DbGFzcyB7XG4gIE5PUk1BTCA9ICdwLWJ1dHRvbi1zbScsXG4gIFNVQ0NFU1MgPSAncC1idXR0b24tc3VjY2VzcyBwLWJ1dHRvbi1zbScsXG4gIElORk8gPSAncC1idXR0b24taW5mbyBwLWJ1dHRvbi1zbScsXG4gIFdBUk5JTkcgPSAncC1idXR0b24td2FybmluZyBwLWJ1dHRvbi1zbScsXG4gIEhFTFAgPSAncC1idXR0b24taGVscCBwLWJ1dHRvbi1zbScsXG4gIERBTkdFUiA9ICdwLWJ1dHRvbi1kYW5nZXIgcC1idXR0b24tc20nLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZEhlYWRlckZpZWxkIHtcbiAgY29udHJvbD86IEVGb3JtQ29udHJvbDtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICBjb2x1bW4/OiBudW1iZXI7XG4gIGRhdGE/OiBhbnk7XG4gIGNsYXNzPzogc3RyaW5nO1xuICBvbkNsaWNrPzogKCgpID0+IHZvaWQpIHwgYW55O1xuICBoeXBlcmxpbms/OiBJSHlwZXJsaW5rO1xuICBwZXJtaXNzaW9ucz86IElQZXJtaXNzaW9uW107XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbiAgZm9ybWF0PzogSUhlYWRlckZvcm1hdDtcbiAgc2hvd1RpbWU/OiBib29sZWFuO1xuICB0aW1lT25seT86IGJvb2xlYW47XG4gIGNvbG9yRm9udD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSGVhZGVyRm9ybWF0IHtcbiAgdHlwZTogRUhlYWRlckZvcm1hdFR5cGUgfCBhbnk7XG4gIGZvcm1hdFBhcmFtcz86SUZvcm1hdFBhcmFtc1xuICAgIHwgSURhdGVGb3JtYXRQYXJhbXNcbiAgICB8IElOdW1iZXJGb3JtYXRQYXJhbXNcbiAgICB8IElDdXJyZW5jeUZvcm1hdFBhcmFtcztcbiAgZm9ybWF0dGVyPzogKHZhbHVlOiBhbnkpID0+IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRm9ybWF0UGFyYW1zIHtcbiAgbG9jYWxlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRlRm9ybWF0UGFyYW1zIGV4dGVuZHMgSUZvcm1hdFBhcmFtcyB7XG4gIGZvcm1hdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTnVtYmVyRm9ybWF0UGFyYW1zIGV4dGVuZHMgSUZvcm1hdFBhcmFtcyB7XG4gIGRpZ2l0c0luZm8/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUN1cnJlbmN5Rm9ybWF0UGFyYW1zIGV4dGVuZHMgSU51bWJlckZvcm1hdFBhcmFtcyB7XG4gIGN1cnJlbmN5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEVIZWFkZXJGb3JtYXRUeXBlIHtcbiAgU0hPUlREQVRFID0gJ21tL2RkL3l5JyxcbiAgTUVESVVNREFURSA9ICdNIGQsIHl5JyxcbiAgTE9OR0RBVEUgPSAnTU0gZCwgeXknLFxuICBDVVJSRU5DWSA9ICdjdXJyZW5jeScsXG4gIFBFUkNFTlQgPSAncGVyY2VudCcsXG4gIERFQ0lNQUwgPSAnZGVjaW1hbCcsXG59Il19
@@ -22,6 +22,7 @@ export class HeaderService {
22
22
  format: headerInfo.format,
23
23
  showTime: headerInfo.showTime,
24
24
  timeOnly: headerInfo.timeOnly,
25
+ colorFont: headerInfo.colorFont,
25
26
  };
26
27
  return headerField;
27
28
  }
@@ -58,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
58
59
  providedIn: 'root',
59
60
  }]
60
61
  }], ctorParameters: function () { return []; } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvc2VydmljZXMvaGVhZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBTXBELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLGdCQUFlLENBQUM7SUFFaEIsY0FBYyxDQUFDLFVBQTBCO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3RCLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO1FBRUQsTUFBTSxXQUFXLEdBQWlCO1lBQ2hDLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSztZQUN2QixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87WUFDM0IsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO1lBQ3ZCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN6QixJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUk7WUFDckIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO1lBQ3ZCLE9BQU8sRUFBRSxVQUFVLENBQUMsT0FBTztZQUMzQixTQUFTLEVBQUUsVUFBVSxDQUFDLFNBQVM7WUFDL0IsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO1lBQzdCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN6QixXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVc7WUFDbkMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNO1lBQ3pCLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUTtZQUM3QixRQUFRLEVBQUUsVUFBVSxDQUFDLFFBQVE7U0FDOUIsQ0FBQztRQUNGLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRLENBQUMsVUFBMEI7UUFDakMsVUFBVSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQTBCO1FBQ3BDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFNBQVMsQ0FBQyxVQUEwQjtRQUNsQyxVQUFVLENBQUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxXQUFXLENBQUMsVUFBMEI7UUFDcEMsVUFBVSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsWUFBWSxDQUFDLFVBQTBCO1FBQ3JDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFdBQVcsQ0FBQyxVQUEwQjtRQUNwQyxVQUFVLENBQUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDM0MsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7aUlBdkRVLGFBQWE7cUlBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRUZvcm1Db250cm9sIH0gZnJvbSAnLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgQWRkSGVhZGVyRmllbGQsIElIZWFkZXJGaWVsZCB9IGZyb20gJy4uL21vZGVscy9oZWFkZXIubW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBhZGRIZWFkZXJGaWVsZChoZWFkZXJJbmZvOiBBZGRIZWFkZXJGaWVsZCk6IElIZWFkZXJGaWVsZCB7XG4gICAgaWYgKCFoZWFkZXJJbmZvLmNvbHVtbikge1xuICAgICAgaGVhZGVySW5mby5jb2x1bW4gPSAzO1xuICAgIH1cblxuICAgIGNvbnN0IGhlYWRlckZpZWxkOiBJSGVhZGVyRmllbGQgPSB7XG4gICAgICBsYWJlbDogaGVhZGVySW5mby5sYWJlbCxcbiAgICAgIGNvbnRyb2w6IGhlYWRlckluZm8uY29udHJvbCxcbiAgICAgIHZhbHVlOiBoZWFkZXJJbmZvLnZhbHVlLFxuICAgICAgY29sdW1uOiBoZWFkZXJJbmZvLmNvbHVtbixcbiAgICAgIGRhdGE6IGhlYWRlckluZm8uZGF0YSxcbiAgICAgIGNsYXNzOiBoZWFkZXJJbmZvLmNsYXNzLFxuICAgICAgb25DbGljazogaGVhZGVySW5mby5vbkNsaWNrLFxuICAgICAgaHlwZXJsaW5rOiBoZWFkZXJJbmZvLmh5cGVybGluayxcbiAgICAgIGRpc2FibGVkOiBoZWFkZXJJbmZvLmRpc2FibGVkLFxuICAgICAgaGlkZGVuOiBoZWFkZXJJbmZvLmhpZGRlbixcbiAgICAgIHBlcm1pc3Npb25zOiBoZWFkZXJJbmZvLnBlcm1pc3Npb25zLFxuICAgICAgZm9ybWF0OiBoZWFkZXJJbmZvLmZvcm1hdCxcbiAgICAgIHNob3dUaW1lOiBoZWFkZXJJbmZvLnNob3dUaW1lLFxuICAgICAgdGltZU9ubHk6IGhlYWRlckluZm8udGltZU9ubHksXG4gICAgfTtcbiAgICByZXR1cm4gaGVhZGVyRmllbGQ7XG4gIH1cblxuICBhZGRMYWJlbChoZWFkZXJJbmZvOiBBZGRIZWFkZXJGaWVsZCk6IElIZWFkZXJGaWVsZCB7XG4gICAgaGVhZGVySW5mby5jb250cm9sID0gRUZvcm1Db250cm9sLkxBQkVMO1xuICAgIHJldHVybiB0aGlzLmFkZEhlYWRlckZpZWxkKGhlYWRlckluZm8pO1xuICB9XG4gIFxuICBhZGREcm9wZG93bihoZWFkZXJJbmZvOiBBZGRIZWFkZXJGaWVsZCk6IElIZWFkZXJGaWVsZCB7XG4gICAgaGVhZGVySW5mby5jb250cm9sID0gRUZvcm1Db250cm9sLkRST1BET1dOO1xuICAgIHJldHVybiB0aGlzLmFkZEhlYWRlckZpZWxkKGhlYWRlckluZm8pO1xuICB9XG5cbiAgYWRkQnV0dG9uKGhlYWRlckluZm86IEFkZEhlYWRlckZpZWxkKTogSUhlYWRlckZpZWxkIHtcbiAgICBoZWFkZXJJbmZvLmNvbnRyb2wgPSBFRm9ybUNvbnRyb2wuQlVUVE9OO1xuICAgIHJldHVybiB0aGlzLmFkZEhlYWRlckZpZWxkKGhlYWRlckluZm8pO1xuICB9XG5cbiAgYWRkQ2hlY2tib3goaGVhZGVySW5mbzogQWRkSGVhZGVyRmllbGQpOiBJSGVhZGVyRmllbGQge1xuICAgIGhlYWRlckluZm8uY29udHJvbCA9IEVGb3JtQ29udHJvbC5DSEVDS0JPWDtcbiAgICByZXR1cm4gdGhpcy5hZGRIZWFkZXJGaWVsZChoZWFkZXJJbmZvKTtcbiAgfVxuXG4gIGFkZEh5cGVybGluayhoZWFkZXJJbmZvOiBBZGRIZWFkZXJGaWVsZCk6IElIZWFkZXJGaWVsZCB7XG4gICAgaGVhZGVySW5mby5jb250cm9sID0gRUZvcm1Db250cm9sLkhZUEVSTElOSztcbiAgICByZXR1cm4gdGhpcy5hZGRIZWFkZXJGaWVsZChoZWFkZXJJbmZvKTtcbiAgfVxuXG4gIGFkZENhbGVuZGFyKGhlYWRlckluZm86IEFkZEhlYWRlckZpZWxkKTogSUhlYWRlckZpZWxkIHtcbiAgICBoZWFkZXJJbmZvLmNvbnRyb2wgPSBFRm9ybUNvbnRyb2wuQ0FMRU5EQVI7XG4gICAgcmV0dXJuIHRoaXMuYWRkSGVhZGVyRmllbGQoaGVhZGVySW5mbyk7XG4gIH1cbn1cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvc2VydmljZXMvaGVhZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBTXBELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLGdCQUFlLENBQUM7SUFFaEIsY0FBYyxDQUFDLFVBQTBCO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3RCLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO1FBRUQsTUFBTSxXQUFXLEdBQWlCO1lBQ2hDLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSztZQUN2QixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87WUFDM0IsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO1lBQ3ZCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN6QixJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUk7WUFDckIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO1lBQ3ZCLE9BQU8sRUFBRSxVQUFVLENBQUMsT0FBTztZQUMzQixTQUFTLEVBQUUsVUFBVSxDQUFDLFNBQVM7WUFDL0IsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO1lBQzdCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN6QixXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVc7WUFDbkMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNO1lBQ3pCLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUTtZQUM3QixRQUFRLEVBQUUsVUFBVSxDQUFDLFFBQVE7WUFDN0IsU0FBUyxFQUFFLFVBQVUsQ0FBQyxTQUFTO1NBQ2hDLENBQUM7UUFDRixPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUSxDQUFDLFVBQTBCO1FBQ2pDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFdBQVcsQ0FBQyxVQUEwQjtRQUNwQyxVQUFVLENBQUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDM0MsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxTQUFTLENBQUMsVUFBMEI7UUFDbEMsVUFBVSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQTBCO1FBQ3BDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFlBQVksQ0FBQyxVQUEwQjtRQUNyQyxVQUFVLENBQUMsT0FBTyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxXQUFXLENBQUMsVUFBMEI7UUFDcEMsVUFBVSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxDQUFDO2lJQXhEVSxhQUFhO3FJQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVGb3JtQ29udHJvbCB9IGZyb20gJy4uL21vZGVscy9mb3JtLm1vZGVsJztcbmltcG9ydCB7IEFkZEhlYWRlckZpZWxkLCBJSGVhZGVyRmllbGQgfSBmcm9tICcuLi9tb2RlbHMvaGVhZGVyLm1vZGVsJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlclNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgYWRkSGVhZGVyRmllbGQoaGVhZGVySW5mbzogQWRkSGVhZGVyRmllbGQpOiBJSGVhZGVyRmllbGQge1xuICAgIGlmICghaGVhZGVySW5mby5jb2x1bW4pIHtcbiAgICAgIGhlYWRlckluZm8uY29sdW1uID0gMztcbiAgICB9XG5cbiAgICBjb25zdCBoZWFkZXJGaWVsZDogSUhlYWRlckZpZWxkID0ge1xuICAgICAgbGFiZWw6IGhlYWRlckluZm8ubGFiZWwsXG4gICAgICBjb250cm9sOiBoZWFkZXJJbmZvLmNvbnRyb2wsXG4gICAgICB2YWx1ZTogaGVhZGVySW5mby52YWx1ZSxcbiAgICAgIGNvbHVtbjogaGVhZGVySW5mby5jb2x1bW4sXG4gICAgICBkYXRhOiBoZWFkZXJJbmZvLmRhdGEsXG4gICAgICBjbGFzczogaGVhZGVySW5mby5jbGFzcyxcbiAgICAgIG9uQ2xpY2s6IGhlYWRlckluZm8ub25DbGljayxcbiAgICAgIGh5cGVybGluazogaGVhZGVySW5mby5oeXBlcmxpbmssXG4gICAgICBkaXNhYmxlZDogaGVhZGVySW5mby5kaXNhYmxlZCxcbiAgICAgIGhpZGRlbjogaGVhZGVySW5mby5oaWRkZW4sXG4gICAgICBwZXJtaXNzaW9uczogaGVhZGVySW5mby5wZXJtaXNzaW9ucyxcbiAgICAgIGZvcm1hdDogaGVhZGVySW5mby5mb3JtYXQsXG4gICAgICBzaG93VGltZTogaGVhZGVySW5mby5zaG93VGltZSxcbiAgICAgIHRpbWVPbmx5OiBoZWFkZXJJbmZvLnRpbWVPbmx5LFxuICAgICAgY29sb3JGb250OiBoZWFkZXJJbmZvLmNvbG9yRm9udCxcbiAgICB9O1xuICAgIHJldHVybiBoZWFkZXJGaWVsZDtcbiAgfVxuXG4gIGFkZExhYmVsKGhlYWRlckluZm86IEFkZEhlYWRlckZpZWxkKTogSUhlYWRlckZpZWxkIHtcbiAgICBoZWFkZXJJbmZvLmNvbnRyb2wgPSBFRm9ybUNvbnRyb2wuTEFCRUw7XG4gICAgcmV0dXJuIHRoaXMuYWRkSGVhZGVyRmllbGQoaGVhZGVySW5mbyk7XG4gIH1cbiAgXG4gIGFkZERyb3Bkb3duKGhlYWRlckluZm86IEFkZEhlYWRlckZpZWxkKTogSUhlYWRlckZpZWxkIHtcbiAgICBoZWFkZXJJbmZvLmNvbnRyb2wgPSBFRm9ybUNvbnRyb2wuRFJPUERPV047XG4gICAgcmV0dXJuIHRoaXMuYWRkSGVhZGVyRmllbGQoaGVhZGVySW5mbyk7XG4gIH1cblxuICBhZGRCdXR0b24oaGVhZGVySW5mbzogQWRkSGVhZGVyRmllbGQpOiBJSGVhZGVyRmllbGQge1xuICAgIGhlYWRlckluZm8uY29udHJvbCA9IEVGb3JtQ29udHJvbC5CVVRUT047XG4gICAgcmV0dXJuIHRoaXMuYWRkSGVhZGVyRmllbGQoaGVhZGVySW5mbyk7XG4gIH1cblxuICBhZGRDaGVja2JveChoZWFkZXJJbmZvOiBBZGRIZWFkZXJGaWVsZCk6IElIZWFkZXJGaWVsZCB7XG4gICAgaGVhZGVySW5mby5jb250cm9sID0gRUZvcm1Db250cm9sLkNIRUNLQk9YO1xuICAgIHJldHVybiB0aGlzLmFkZEhlYWRlckZpZWxkKGhlYWRlckluZm8pO1xuICB9XG5cbiAgYWRkSHlwZXJsaW5rKGhlYWRlckluZm86IEFkZEhlYWRlckZpZWxkKTogSUhlYWRlckZpZWxkIHtcbiAgICBoZWFkZXJJbmZvLmNvbnRyb2wgPSBFRm9ybUNvbnRyb2wuSFlQRVJMSU5LO1xuICAgIHJldHVybiB0aGlzLmFkZEhlYWRlckZpZWxkKGhlYWRlckluZm8pO1xuICB9XG5cbiAgYWRkQ2FsZW5kYXIoaGVhZGVySW5mbzogQWRkSGVhZGVyRmllbGQpOiBJSGVhZGVyRmllbGQge1xuICAgIGhlYWRlckluZm8uY29udHJvbCA9IEVGb3JtQ29udHJvbC5DQUxFTkRBUjtcbiAgICByZXR1cm4gdGhpcy5hZGRIZWFkZXJGaWVsZChoZWFkZXJJbmZvKTtcbiAgfVxufVxuIl19
@@ -13185,11 +13185,11 @@ class HeaderComponent {
13185
13185
  }
13186
13186
  }
13187
13187
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: HeaderComponent, deps: [{ token: AuthenticationService }, { token: i1$3.DatePipe }, { token: HyperlinkService }], target: i0.ɵɵFactoryTarget.Component }); }
13188
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: HeaderComponent, selector: "se-header", inputs: { headers: "headers" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\">\n <label for=\"\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i4$1.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i3$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "directive", type: i4.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i3$2.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i1$3.DecimalPipe, name: "number" }, { kind: "pipe", type: i1$3.CurrencyPipe, name: "currency" }] }); }
13188
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: HeaderComponent, selector: "se-header", inputs: { headers: "headers" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\" >\n <label for=\"\" [style.color]=\"headerField.colorFont ? headerField.colorFont : ''\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i4$1.MultiSelect, selector: "p-multiSelect", inputs: ["style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "appendTo", "dataKey", "name", "label", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2$1.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "overlayDirection", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i7.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i3$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i9.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { kind: "directive", type: i4.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i3$2.InputText, selector: "[pInputText]" }, { kind: "pipe", type: i1$3.DecimalPipe, name: "number" }, { kind: "pipe", type: i1$3.CurrencyPipe, name: "currency" }] }); }
13189
13189
  }
13190
13190
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: HeaderComponent, decorators: [{
13191
13191
  type: Component,
13192
- args: [{ selector: 'se-header', template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\">\n <label for=\"\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"] }]
13192
+ args: [{ selector: 'se-header', template: "<div *ngIf=\"!isHeaderHidden && headers\" class=\"card sticky header-component\">\n <div class=\"header-list p-1 flex\">\n <div\n [class]=\"'md:col-' + headerField.column + ' sm:col-6 col-12 py-0'\"\n class=\"header-list-item section-wrapper-in-header\"\n *ngFor=\"let headerField of headers.fields\"\n >\n <div [ngSwitch]=\"headerField.control\">\n <!-- For Dropdown -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.DROPDOWN\"\n >\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <p-dropdown\n [placeholder]=\"headerField.label\"\n [options]=\"headerField.data\"\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-dropdown>\n </div>\n </span>\n \n <!-- For label -->\n <span *ngIf=\"!headerField.hidden\">\n <div\n class=\"flex flex-wrap section-wrapper-in-header align-items-center\"\n *ngSwitchCase=\"dynamicCase.LABEL\"\n >\n <b *ngIf=\"headerField.label?.length > 0\"\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <!-- for value -->\n <Span *ngIf=\"!headerField.format\" >\n <label for=\"\" [style.color]=\"headerField.colorFont ? headerField.colorFont : ''\">{{ headerField.value }}</label> \n </Span>\n\n <!-- for currency -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'currency'\n \"\n >\n <label>{{\n headerField.value\n | currency\n : (headerField.format.formatParams &&\n headerField.format.formatParams.currency\n ? headerField.format.formatParams.currency\n : 'USD')\n }}</label>\n </span>\n\n <!-- for percent -->\n <span *ngIf=\"headerField.format && headerField.format.type === 'percent'\">\n <label >{{ headerField.value }}%</label>\n </span>\n\n <!-- for decimal -->\n <span\n *ngIf=\"\n headerField.format && headerField.format.type === 'decimal'\n \"\n >\n <label>{{\n headerField.value\n | number\n : (headerField.format.formatParams &&\n headerField.format.formatParams.digitsInfo\n ? '2.' +\n headerField.format.formatParams.digitsInfo +\n '-8'\n : '2.2-8')\n }}</label>\n </span>\n </div>\n </span>\n\n <!-- Text Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div *ngSwitchCase=\"dynamicCase.INPUT\">\n <b\n ><label for=\"\">{{ headerField.label }}</label></b\n >\n <input\n class=\"mr-2 form-control\"\n type=\"text\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Number Input -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.NUMERIC\">\n <label>{{ headerField.label }}</label>\n <input\n class=\"flex-grow-1 mr-2 form-control\"\n type=\"number\"\n pInputText\n [(ngModel)]=\"headerField.value\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n />\n </div>\n </span>\n\n <!-- Checkbox -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CHECKBOX\">\n <label>{{ headerField.label }}</label>\n <p-checkbox\n class=\"flex align-items-center\"\n [(ngModel)]=\"headerField.value\"\n binary=\"true\"\n ></p-checkbox>\n </div>\n </span>\n\n <!-- hyperLink -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.HYPERLINK\">\n <div *ngIf=\"headerField.hyperlink\">\n <a class=\"header-link\" tabindex=\"-1\" [href]=\"headerField.hyperlink?.link\" [target]=\"headerField.hyperlink?.target ? headerField.hyperlink?.target : '_blank'\"\n data-title-element=\"self\">\n {{ headerField.label }}\n </a>\n </div>\n </div>\n </span>\n\n <!-- Calendar -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.CALENDAR\">\n <label>{{ headerField.label }}</label>\n <p-calendar\n class=\"flex-grow-1 mr-2\"\n [placeholder]=\"headerField.label\"\n [showButtonBar]=\"!headerField.timeOnly\"\n [(ngModel)]=\"headerField.value\"\n hourFormat=\"12\"\n dataType=\"string\"\n [timeOnly]=\"headerField.timeOnly\"\n [showTime]=\"headerField.showTime\"\n [dateFormat]=\"headerField.format ? headerField.format.dateType : 'mm/dd/yy'\"\n >\n </p-calendar>\n </div>\n </span>\n\n <!-- Multi-select -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.MULTISELECT\">\n <label>{{ headerField.label }}</label>\n <p-multiSelect\n [(ngModel)]=\"headerField.value\"\n [options]=\"headerField.data\"\n optionLabel=\"label\"\n optionValue=\"value\"\n [appendTo]=\"'body'\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n >\n </p-multiSelect>\n </div>\n </span>\n\n <!-- Button -->\n <span *ngIf=\"!headerField.hidden\">\n <div class=\"col-12 p-0\" *ngSwitchCase=\"dynamicCase.BUTTON\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"{{ headerField.label }}\"\n class=\"{{ headerField.class }}\"\n (click)=\"headerField.onClick ? headerField.onClick() : ''\"\n ></button>\n </div>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".header-list-item:after{content:\"\"}.header-list-item:last-child:after{display:none}.card.sticky{position:sticky;z-index:1;top:0}:host ::ng-deep .header-link{font-size:12px!important;font-weight:500!important;font-style:normal!important;font-stretch:normal!important;letter-spacing:.5px!important}\n"] }]
13193
13193
  }], ctorParameters: function () { return [{ type: AuthenticationService }, { type: i1$3.DatePipe }, { type: HyperlinkService }]; }, propDecorators: { headers: [{
13194
13194
  type: Input
13195
13195
  }] } });
@@ -14439,6 +14439,7 @@ class HeaderService {
14439
14439
  format: headerInfo.format,
14440
14440
  showTime: headerInfo.showTime,
14441
14441
  timeOnly: headerInfo.timeOnly,
14442
+ colorFont: headerInfo.colorFont,
14442
14443
  };
14443
14444
  return headerField;
14444
14445
  }