ngx-wapp-components 1.32.12 → 1.32.13

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.
@@ -23,6 +23,7 @@ export class WEditCalendarComponent {
23
23
  this.removePaddingTop = false;
24
24
  this.firstDayOfWeek = 1;
25
25
  this.dataType = 'date';
26
+ this.viewType = 'date';
26
27
  this.monthMode = false;
27
28
  this.onChangeEvent = new EventEmitter();
28
29
  this.dateFormat = '';
@@ -62,8 +63,13 @@ export class WEditCalendarComponent {
62
63
  this.timeOnly = false;
63
64
  this.dateFormat = 'dd/MM';
64
65
  }
65
- if (this.viewType == 'month') {
66
- this.dateFormat = 'mm/yy';
66
+ }
67
+ ngOnChanges(changes) {
68
+ if (changes['viewType']?.previousValue !== undefined) {
69
+ this.viewType = changes['viewType'].currentValue;
70
+ }
71
+ if (changes['dateFormat']?.previousValue !== undefined) {
72
+ this.dateFormat = changes['dateFormat'].currentValue;
67
73
  }
68
74
  }
69
75
  writeValue(value) {
@@ -94,13 +100,13 @@ export class WEditCalendarComponent {
94
100
  }
95
101
  }
96
102
  WEditCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: WEditCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
97
- WEditCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: WEditCalendarComponent, selector: "w-edit-calendar", inputs: { minDate: "minDate", maxDate: "maxDate", label: "label", showLabel: "showLabel", showTime: "showTime", showSeconds: "showSeconds", timeOnly: "timeOnly", showIcon: "showIcon", placeholder: "placeholder", disabled: "disabled", size: "size", formControl: "formControl", displayInlineBlock: "displayInlineBlock", required: "required", requiredErrorDescription: "requiredErrorDescription", someErrorDescription: "someErrorDescription", removePaddingTop: "removePaddingTop", firstDayOfWeek: "firstDayOfWeek", tooltip: "tooltip", tooltipPosition: "tooltipPosition", dataType: "dataType", viewType: "viewType", monthMode: "monthMode", readonlyInput: "readonlyInput" }, outputs: { onChangeEvent: "onChange" }, providers: [
103
+ WEditCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: WEditCalendarComponent, selector: "w-edit-calendar", inputs: { minDate: "minDate", maxDate: "maxDate", label: "label", showLabel: "showLabel", showTime: "showTime", showSeconds: "showSeconds", timeOnly: "timeOnly", showIcon: "showIcon", placeholder: "placeholder", disabled: "disabled", size: "size", formControl: "formControl", displayInlineBlock: "displayInlineBlock", required: "required", requiredErrorDescription: "requiredErrorDescription", someErrorDescription: "someErrorDescription", removePaddingTop: "removePaddingTop", firstDayOfWeek: "firstDayOfWeek", tooltip: "tooltip", tooltipPosition: "tooltipPosition", dataType: "dataType", viewType: "viewType", monthMode: "monthMode", readonlyInput: "readonlyInput", dateFormat: "dateFormat" }, outputs: { onChangeEvent: "onChange" }, providers: [
98
104
  {
99
105
  provide: NG_VALUE_ACCESSOR,
100
106
  useExisting: forwardRef(() => WEditCalendarComponent),
101
107
  multi: true
102
108
  }
103
- ], ngImport: i0, template: "<div *ngIf=\"formControl; else noNgControl\" [ngClass]=\"{'w-edit-calendar-styles p-fluid field' : true,'disabled': disabled }\" >\r\n <w-input-label [label]=\"label\" [required]=\"required\" [disabled]=\"disabled\" [size]=\"size\" [tooltip]=\"tooltip\" *ngIf=\"showLabel\"></w-input-label>\r\n <p-calendar [ngClass]=\"{'ng-invalid ng-dirty': formControl.hasError('required') && formControl.touched,\r\n 'w-edit-calendar-small' : size == getSizeName(sizeType.small),\r\n 'w-edit-calendar-medium' : size == getSizeName(sizeType.medium),\r\n 'w-edit-calendar-no-icon' : !showIcon,\r\n 'disabled': disabled }\"\r\n appendTo=\"body\"\r\n inputId=\"time\" placeholder=\"{{placeholder}}\"\r\n [showTime]=\"showTime\"\r\n [timeOnly]=\"timeOnly\" \r\n [showSeconds]=\"showSeconds\"\r\n [showIcon]=\"showIcon\"\r\n [icon]=\"timeOnly ? 'pi pi-clock' : 'pi pi-calendar'\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [required]=\"required\"\r\n [formControl]=\"formControl\"\r\n [dataType]=\"dataType\" \r\n [view]=\"viewType\"\r\n [dateFormat]=\"dateFormat\" \r\n [readonlyInput]=\"readonlyInput\" \r\n (onSelect)=\"onValue($event)\"\r\n [inputStyleClass]=\"getSizeName(sizeType.small) ? 'w-edit-calendar-medium' : 'w-edit-calendar-small' \">\r\n </p-calendar>\r\n <small *ngIf=\"formControl.hasError('required') && formControl.touched\" class=\"p-error block\">{{requiredErrorDescription}}</small>\r\n <small *ngIf=\"formControl.errors && !formControl.hasError('required') && formControl.touched\" class=\"p-error block\">{{someErrorDescription}}</small>\r\n</div>\r\n<ng-template #noNgControl>\r\n <div class=\"w-edit-calendar-styles\" [ngClass]=\"{'displayInlineBlock' : displayInlineBlock, 'disabled' : disabled}\">\r\n <w-input-label [label]=\"label\" [required]=\"required\" [disabled]=\"disabled\" [size]=\"size\" [tooltip]=\"tooltip\" [tooltipPosition]=\"tooltipPosition\" *ngIf=\"showLabel\"></w-input-label>\r\n <p-calendar [ngClass]=\"{'w-edit-calendar-small' : size == getSizeName(sizeType.small),\r\n 'w-edit-calendar-medium' : size == getSizeName(sizeType.medium),\r\n 'w-edit-calendar-no-icon' : !showIcon,\r\n 'disabled': disabled }\"\r\n appendTo=\"body\"\r\n [(ngModel)]=\"ngModelValue\" inputId=\"time\" placeholder=\"{{placeholder}}\"\r\n [showTime]=\"showTime\"\r\n [timeOnly]=\"timeOnly\"\r\n [showSeconds]=\"showSeconds\"\r\n [showIcon]=\"showIcon\"\r\n [icon]=\"timeOnly ? 'pi pi-clock' : 'pi pi-calendar'\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [dataType]=\"dataType\" \r\n [view]=\"viewType\"\r\n [dateFormat]=\"dateFormat\" \r\n [readonlyInput]=\"readonlyInput\" \r\n (ngModelChange)=\"onDateChanged()\">\r\n </p-calendar>\r\n </div>\r\n</ng-template>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext,:host ::ng-deep .w-edit-calendar-small .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-error-alert-text,.w-input-warning-alert-text,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled,:host ::ng-deep .w-edit-calendar-small.disabled .p-calendar .p-inputtext{background-color:#f1f3f4!important;border-color:#e8ebee!important;opacity:1!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:-moz-fit-content;height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext,:host ::ng-deep .w-edit-calendar-small .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text,:host ::ng-deep .w-edit-calendar-medium .p-inputtext{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,:host ::ng-deep .w-edit-calendar-medium .p-inputtext{color:#1f2224}.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text{color:#eeae00;padding:8px 8px 0;margin-top:0}.w-input-error-alert-text{color:#e50000;padding:8px 8px 0;margin-top:0}.w-input-alert-message-height{height:32px}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text{color:#1f2224}.w-table-td-text{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#ffffff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.w-edit-calendar-styles{margin:0;display:grid;gap:6px!important}::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:hover{border-color:#00b3eb}::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:focus{padding:0 8px!important}::ng-deep .w-edit-calendar-small .p-calendar{height:28px;width:100%}:host ::ng-deep .w-edit-calendar-small .p-inputtext{border-radius:8px 0 0 8px;border-width:1px;padding:0 8px!important;border:1px solid #e8ebee}:host ::ng-deep .w-edit-calendar-small .p-inputtext:focus{padding:0 8px!important}:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext{border-radius:8px!important}:host ::ng-deep .w-edit-calendar-small.p-component::-webkit-input-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component::-moz-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component:-ms-input-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component:-moz-placeholder{color:#5f6468!important}::ng-deep .w-edit-calendar-medium .p-calendar{height:40px;width:100%}:host ::ng-deep .w-edit-calendar-medium .p-inputtext{border-radius:8px;border-width:1px;padding:0 8px!important;border:1px solid #e8ebee}.w-edit-calendar-medium-display-block{display:inline-block}:host ::ng-deep .w-edit-calendar-small.disabled .p-calendar .p-inputtext{color:#5f6468!important;background-color:#f1f3f4;opacity:1;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.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", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i4.WInputLabelComponent, selector: "w-input-label", inputs: ["label", "disabled", "required", "tooltip", "tooltipPosition", "size"] }] });
109
+ ], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"formControl; else noNgControl\" [ngClass]=\"{'w-edit-calendar-styles p-fluid field' : true,'disabled': disabled }\" >\r\n <w-input-label [label]=\"label\" [required]=\"required\" [disabled]=\"disabled\" [size]=\"size\" [tooltip]=\"tooltip\" *ngIf=\"showLabel\"></w-input-label>\r\n <p-calendar [ngClass]=\"{'ng-invalid ng-dirty': formControl.hasError('required') && formControl.touched,\r\n 'w-edit-calendar-small' : size == getSizeName(sizeType.small),\r\n 'w-edit-calendar-medium' : size == getSizeName(sizeType.medium),\r\n 'w-edit-calendar-no-icon' : !showIcon,\r\n 'disabled': disabled }\"\r\n appendTo=\"body\"\r\n inputId=\"time\" placeholder=\"{{placeholder}}\"\r\n [showTime]=\"showTime\"\r\n [timeOnly]=\"timeOnly\" \r\n [showSeconds]=\"showSeconds\"\r\n [showIcon]=\"showIcon\"\r\n [icon]=\"timeOnly ? 'pi pi-clock' : 'pi pi-calendar'\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [required]=\"required\"\r\n [formControl]=\"formControl\"\r\n [dataType]=\"dataType\" \r\n [view]=\"viewType\"\r\n [dateFormat]=\"dateFormat\" \r\n [readonlyInput]=\"readonlyInput\" \r\n (onSelect)=\"onValue($event)\"\r\n [inputStyleClass]=\"getSizeName(sizeType.small) ? 'w-edit-calendar-medium' : 'w-edit-calendar-small' \">\r\n </p-calendar>\r\n <small *ngIf=\"formControl.hasError('required') && formControl.touched\" class=\"p-error block\">{{requiredErrorDescription}}</small>\r\n <small *ngIf=\"formControl.errors && !formControl.hasError('required') && formControl.touched\" class=\"p-error block\">{{someErrorDescription}}</small>\r\n</div>\r\n<ng-template #noNgControl>\r\n <div class=\"w-edit-calendar-styles\" [ngClass]=\"{'displayInlineBlock' : displayInlineBlock, 'disabled' : disabled}\">\r\n <w-input-label [label]=\"label\" [required]=\"required\" [disabled]=\"disabled\" [size]=\"size\" [tooltip]=\"tooltip\" [tooltipPosition]=\"tooltipPosition\" *ngIf=\"showLabel\"></w-input-label>\r\n <p-calendar [ngClass]=\"{'w-edit-calendar-small' : size == getSizeName(sizeType.small),\r\n 'w-edit-calendar-medium' : size == getSizeName(sizeType.medium),\r\n 'w-edit-calendar-no-icon' : !showIcon,\r\n 'disabled': disabled }\"\r\n appendTo=\"body\"\r\n [(ngModel)]=\"ngModelValue\" inputId=\"time\" placeholder=\"{{placeholder}}\"\r\n [showTime]=\"showTime\"\r\n [timeOnly]=\"timeOnly\"\r\n [showSeconds]=\"showSeconds\"\r\n [showIcon]=\"showIcon\"\r\n [icon]=\"timeOnly ? 'pi pi-clock' : 'pi pi-calendar'\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [dataType]=\"dataType\" \r\n [view]=\"viewType\"\r\n [dateFormat]=\"dateFormat\" \r\n [readonlyInput]=\"readonlyInput\" \r\n (ngModelChange)=\"onDateChanged()\">\r\n </p-calendar>\r\n </div>\r\n</ng-template>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext,:host ::ng-deep .w-edit-calendar-small .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-error-alert-text,.w-input-warning-alert-text,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled,:host ::ng-deep .w-edit-calendar-small.disabled .p-calendar .p-inputtext{background-color:#f1f3f4!important;border-color:#e8ebee!important;opacity:1!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:-moz-fit-content;height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext,:host ::ng-deep .w-edit-calendar-small .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text,:host ::ng-deep .w-edit-calendar-medium .p-inputtext{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,:host ::ng-deep .w-edit-calendar-medium .p-inputtext{color:#1f2224}.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text{color:#eeae00;padding:8px 8px 0;margin-top:0}.w-input-error-alert-text{color:#e50000;padding:8px 8px 0;margin-top:0}.w-input-alert-message-height{height:32px}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text{color:#1f2224}.w-table-td-text{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#ffffff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.w-edit-calendar-styles{margin:0;display:grid;gap:6px!important}::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:hover{border-color:#00b3eb}::ng-deep .w-edit-calendar-styles .p-inputtext:enabled:focus{padding:0 8px!important}::ng-deep .w-edit-calendar-small .p-calendar{height:28px;width:100%}:host ::ng-deep .w-edit-calendar-small .p-inputtext{border-radius:8px 0 0 8px;border-width:1px;padding:0 8px!important;border:1px solid #e8ebee}:host ::ng-deep .w-edit-calendar-small .p-inputtext:focus{padding:0 8px!important}:host ::ng-deep .w-edit-calendar-small.w-edit-calendar-no-icon .p-inputtext{border-radius:8px!important}:host ::ng-deep .w-edit-calendar-small.p-component::-webkit-input-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component::-moz-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component:-ms-input-placeholder{color:#5f6468!important}:host ::ng-deep .w-edit-calendar-small.p-component:-moz-placeholder{color:#5f6468!important}::ng-deep .w-edit-calendar-medium .p-calendar{height:40px;width:100%}:host ::ng-deep .w-edit-calendar-medium .p-inputtext{border-radius:8px;border-width:1px;padding:0 8px!important;border:1px solid #e8ebee}.w-edit-calendar-medium-display-block{display:inline-block}:host ::ng-deep .w-edit-calendar-small.disabled .p-calendar .p-inputtext{color:#5f6468!important;background-color:#f1f3f4;opacity:1;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.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", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i4.WInputLabelComponent, selector: "w-input-label", inputs: ["label", "disabled", "required", "tooltip", "tooltipPosition", "size"] }] });
104
110
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: WEditCalendarComponent, decorators: [{
105
111
  type: Component,
106
112
  args: [{ selector: 'w-edit-calendar', providers: [
@@ -182,5 +188,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
182
188
  }], onChangeEvent: [{
183
189
  type: Output,
184
190
  args: ['onChange']
191
+ }], dateFormat: [{
192
+ type: Input,
193
+ args: ['dateFormat']
185
194
  }] } });
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidy1lZGl0LWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dhcHAtY29tcG9uZW50cy9zcmMvbGliL2VkaXQvdy1lZGl0LWNhbGVuZGFyL3ctZWRpdC1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93YXBwLWNvbXBvbmVudHMvc3JjL2xpYi9lZGl0L3ctZWRpdC1jYWxlbmRhci93LWVkaXQtY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUErQixNQUFNLEVBQXVCLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySSxPQUFPLEVBQUUsaUJBQWlCLEVBQXFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFlbkQsTUFBTSxPQUFPLHNCQUFzQjtJQVpuQztRQXVDc0IsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMzQixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3RCLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBQy9CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN0QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUM1QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzlCLFNBQUksR0FBVyxPQUFPLENBQUM7UUFFVCx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDOUMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUNWLDZCQUF3QixHQUFZLDBCQUEwQixDQUFDO1FBQ25FLHlCQUFvQixHQUFZLDRCQUE0QixDQUFDO1FBQ2pFLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNwQyxtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUdqQyxh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b0JBQW9CO3NCQUFsRCxLQUFLO3VCQUFDLHNCQUFzQjtnQkFDRixnQkFBZ0I7c0JBQTFDLEtBQUs7dUJBQUMsa0JBQWtCO2dCQUNBLGNBQWM7c0JBQXRDLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUNMLE9BQU87c0JBQXhCLEtBQUs7dUJBQUMsU0FBUztnQkFDUCxlQUFlO3NCQUF2QixLQUFLO2dCQUNhLFFBQVE7c0JBQTFCLEtBQUs7dUJBQUMsVUFBVTtnQkFDRSxRQUFRO3NCQUExQixLQUFLO3VCQUFDLFVBQVU7Z0JBQ0csU0FBUztzQkFBNUIsS0FBSzt1QkFBQyxXQUFXO2dCQUNNLGFBQWE7c0JBQXBDLEtBQUs7dUJBQUMsZUFBZTtnQkFFRixhQUFhO3NCQUFoQyxNQUFNO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBTZWxmLCBTaW1wbGVDaGFuZ2VzLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNpemVUeXBlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2VudW1zL2VudW0nO1xyXG5pbXBvcnQgeyBDYWxlbmRhclR5cGVWaWV3IH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ctZWRpdC1jYWxlbmRhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ctZWRpdC1jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdy1lZGl0LWNhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBXRWRpdENhbGVuZGFyQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXRWRpdENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIHByaXZhdGUgX21pbkRhdGUhOiBEYXRlO1xyXG4gIFxyXG4gIEBJbnB1dCgpIHNldCBtaW5EYXRlKHZhbHVlOiBEYXRlKSB7XHJcbiAgICBpZih0aGlzLm5nTW9kZWxWYWx1ZSA8IHZhbHVlKSB7IHRoaXMubmdNb2RlbFZhbHVlID0gdmFsdWUgfVxyXG4gICAgaWYodGhpcy5mb3JtQ29udHJvbD8udmFsdWUgJiYgdGhpcy5mb3JtQ29udHJvbD8udmFsdWUgPCB2YWx1ZSkgeyB0aGlzLm9uVmFsdWUodmFsdWUpIH1cclxuICAgIHRoaXMuX21pbkRhdGUgPSB2YWx1ZTtcclxuICB9XHJcbiAgXHJcbiAgZ2V0IG1pbkRhdGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX21heERhdGUhOiBEYXRlO1xyXG5cclxuICBASW5wdXQoKSBzZXQgbWF4RGF0ZSh2YWx1ZTogRGF0ZSkge1xyXG4gICAgaWYodGhpcy5uZ01vZGVsVmFsdWUgPiB2YWx1ZSkgeyB0aGlzLm5nTW9kZWxWYWx1ZSA9IHZhbHVlIH1cclxuICAgIGlmKHRoaXMuZm9ybUNvbnRyb2w/LnZhbHVlICYmIHRoaXMuZm9ybUNvbnRyb2w/LnZhbHVlID4gdmFsdWUpIHsgdGhpcy5vblZhbHVlKHZhbHVlKSB9XHJcbiAgICB0aGlzLl9tYXhEYXRlID0gdmFsdWU7XHJcbiAgfVxyXG4gIFxyXG4gIGdldCBtYXhEYXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX21heERhdGU7XHJcbiAgfVxyXG4gIFxyXG4gIEBJbnB1dCgnbGFiZWwnKSBsYWJlbCE6IHN0cmluZztcclxuICBASW5wdXQoJ3Nob3dMYWJlbCcpIHNob3dMYWJlbDogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCdzaG93VGltZScpIHNob3dUaW1lOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoJ3Nob3dTZWNvbmRzJykgc2hvd1NlY29uZHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgndGltZU9ubHknKSB0aW1lT25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgnc2hvd0ljb24nKSBzaG93SWNvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCdwbGFjZWhvbGRlcicpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSBcIlwiO1xyXG4gIEBJbnB1dCgnZGlzYWJsZWQnKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgnc2l6ZScpIHNpemU6IHN0cmluZyA9IFwic21hbGxcIjtcclxuICBASW5wdXQoJ2Zvcm1Db250cm9sJykgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbCB8IG51bGw7XHJcbiAgQElucHV0KCdkaXNwbGF5SW5saW5lQmxvY2snKSBkaXNwbGF5SW5saW5lQmxvY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ3JlcXVpcmVkJykgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ3JlcXVpcmVkRXJyb3JEZXNjcmlwdGlvbicpIHJlcXVpcmVkRXJyb3JEZXNjcmlwdGlvbiA6IHN0cmluZyA9IFwiTWVuc2FqZSBkZWZhdWx0IHJlcXVpcmVkXCI7XHJcbiAgQElucHV0KCdzb21lRXJyb3JEZXNjcmlwdGlvbicpIHNvbWVFcnJvckRlc2NyaXB0aW9uIDogc3RyaW5nID0gXCJNZW5zYWplIGRlZmF1bHQgc29tZSBlcnJvclwiO1xyXG4gIEBJbnB1dCgncmVtb3ZlUGFkZGluZ1RvcCcpIHJlbW92ZVBhZGRpbmdUb3A6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ2ZpcnN0RGF5T2ZXZWVrJykgZmlyc3REYXlPZldlZWs6IG51bWJlciA9IDE7XHJcbiAgQElucHV0KCd0b29sdGlwJykgdG9vbHRpcCE6IHN0cmluZztcclxuICBASW5wdXQoKSB0b29sdGlwUG9zaXRpb24/OiBzdHJpbmc7XHJcbiAgQElucHV0KCdkYXRhVHlwZScpIGRhdGFUeXBlOiBzdHJpbmcgPSAnZGF0ZSc7XHJcbiAgQElucHV0KCd2aWV3VHlwZScpIHZpZXdUeXBlITogQ2FsZW5kYXJUeXBlVmlldztcclxuICBASW5wdXQoJ21vbnRoTW9kZScpIG1vbnRoTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgncmVhZG9ubHlJbnB1dCcpIHJlYWRvbmx5SW5wdXQhOiBib29sZWFuOyBcclxuXHJcbiAgQE91dHB1dCgnb25DaGFuZ2UnKSBvbkNoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgZGF0ZUZvcm1hdDogc3RyaW5nID0gJyc7XHJcbiAgc2l6ZVR5cGU6IHR5cGVvZiBTaXplVHlwZSA9IFNpemVUeXBlO1xyXG5cclxuICBuZ01vZGVsVmFsdWU6IGFueTtcclxuXHJcbiAgaXNEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzVG91Y2hlZCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYodGhpcy5tb250aE1vZGUpIHtcclxuICAgICAgdGhpcy5zaG93VGltZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnRpbWVPbmx5ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZGF0ZUZvcm1hdCA9ICdkZC9NTSdcclxuICAgIH1cclxuXHJcbiAgICBpZih0aGlzLnZpZXdUeXBlID09ICdtb250aCcpe1xyXG4gICAgICB0aGlzLmRhdGVGb3JtYXQgPSAnbW0veXknXHJcbiAgICB9XHJcbiAgIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZih0eXBlb2YodmFsdWUpID09PSAnc3RyaW5nJykge1xyXG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgIH1cclxuICAgIHRoaXMubmdNb2RlbFZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgb25WYWx1ZSh2YWx1ZTogYW55KXtcclxuICAgIHRoaXMub25DaGFuZ2VFdmVudC5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldFNpemVOYW1lKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFNpemVUeXBlW3ZhbHVlXTtcclxuICB9XHJcblxyXG4gIG9uRGF0ZUNoYW5nZWQoKXtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5uZ01vZGVsVmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoKCk7XHJcblxyXG4gICAgdGhpcy5vbkNoYW5nZUV2ZW50LmVtaXQodGhpcy5uZ01vZGVsVmFsdWUpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZm9ybUNvbnRyb2w7IGVsc2Ugbm9OZ0NvbnRyb2xcIiBbbmdDbGFzc109XCJ7J3ctZWRpdC1jYWxlbmRhci1zdHlsZXMgcC1mbHVpZCBmaWVsZCcgOiB0cnVlLCdkaXNhYmxlZCc6IGRpc2FibGVkIH1cIiA+XHJcbiAgICA8dy1pbnB1dC1sYWJlbCBbbGFiZWxdPVwibGFiZWxcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbc2l6ZV09XCJzaXplXCIgW3Rvb2x0aXBdPVwidG9vbHRpcFwiICpuZ0lmPVwic2hvd0xhYmVsXCI+PC93LWlucHV0LWxhYmVsPlxyXG4gICAgPHAtY2FsZW5kYXIgW25nQ2xhc3NdPVwieyduZy1pbnZhbGlkIG5nLWRpcnR5JzogZm9ybUNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgZm9ybUNvbnRyb2wudG91Y2hlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3LWVkaXQtY2FsZW5kYXItc21hbGwnIDogc2l6ZSA9PSBnZXRTaXplTmFtZShzaXplVHlwZS5zbWFsbCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW1lZGl1bScgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLm1lZGl1bSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW5vLWljb24nIDogIXNob3dJY29uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc2FibGVkJzogZGlzYWJsZWQgfVwiXHJcbiAgICAgICAgICAgICAgICBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgaW5wdXRJZD1cInRpbWVcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd1RpbWVdPVwic2hvd1RpbWVcIlxyXG4gICAgICAgICAgICAgICAgW3RpbWVPbmx5XT1cInRpbWVPbmx5XCIgXHJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwic2hvd1NlY29uZHNcIlxyXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcclxuICAgICAgICAgICAgICAgIFtpY29uXT1cInRpbWVPbmx5ID8gJ3BpIHBpLWNsb2NrJyA6ICdwaSBwaS1jYWxlbmRhcidcIlxyXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICAgICAgICAgIFtmaXJzdERheU9mV2Vla109XCJmaXJzdERheU9mV2Vla1wiXHJcbiAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICAgICAgICAgICAgICAgIFtkYXRhVHlwZV09XCJkYXRhVHlwZVwiIFxyXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwidmlld1R5cGVcIlxyXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiIFxyXG4gICAgICAgICAgICAgICAgW3JlYWRvbmx5SW5wdXRdPVwicmVhZG9ubHlJbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIm9uVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbaW5wdXRTdHlsZUNsYXNzXT1cImdldFNpemVOYW1lKHNpemVUeXBlLnNtYWxsKSA/ICd3LWVkaXQtY2FsZW5kYXItbWVkaXVtJyA6ICd3LWVkaXQtY2FsZW5kYXItc21hbGwnIFwiPlxyXG4gICAgPC9wLWNhbGVuZGFyPlxyXG4gICAgPHNtYWxsICpuZ0lmPVwiZm9ybUNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgZm9ybUNvbnRyb2wudG91Y2hlZFwiIGNsYXNzPVwicC1lcnJvciBibG9ja1wiPnt7cmVxdWlyZWRFcnJvckRlc2NyaXB0aW9ufX08L3NtYWxsPlxyXG4gICAgPHNtYWxsICpuZ0lmPVwiZm9ybUNvbnRyb2wuZXJyb3JzICYmICFmb3JtQ29udHJvbC5oYXNFcnJvcigncmVxdWlyZWQnKSAmJiBmb3JtQ29udHJvbC50b3VjaGVkXCIgY2xhc3M9XCJwLWVycm9yIGJsb2NrXCI+e3tzb21lRXJyb3JEZXNjcmlwdGlvbn19PC9zbWFsbD5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjbm9OZ0NvbnRyb2w+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy1lZGl0LWNhbGVuZGFyLXN0eWxlc1wiIFtuZ0NsYXNzXT1cInsnZGlzcGxheUlubGluZUJsb2NrJyA6IGRpc3BsYXlJbmxpbmVCbG9jaywgJ2Rpc2FibGVkJyA6IGRpc2FibGVkfVwiPlxyXG4gICAgICAgIDx3LWlucHV0LWxhYmVsIFtsYWJlbF09XCJsYWJlbFwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtzaXplXT1cInNpemVcIiBbdG9vbHRpcF09XCJ0b29sdGlwXCIgW3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb25cIiAqbmdJZj1cInNob3dMYWJlbFwiPjwvdy1pbnB1dC1sYWJlbD5cclxuICAgICAgICA8cC1jYWxlbmRhciBbbmdDbGFzc109XCJ7J3ctZWRpdC1jYWxlbmRhci1zbWFsbCcgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLnNtYWxsKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW1lZGl1bScgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLm1lZGl1bSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ctZWRpdC1jYWxlbmRhci1uby1pY29uJyA6ICFzaG93SWNvbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcclxuICAgICAgICAgICAgICAgICAgICBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmdNb2RlbFZhbHVlXCIgaW5wdXRJZD1cInRpbWVcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcclxuICAgICAgICAgICAgICAgICAgICBbdGltZU9ubHldPVwidGltZU9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzaG93U2Vjb25kc109XCJzaG93U2Vjb25kc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcclxuICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJ0aW1lT25seSA/ICdwaSBwaS1jbG9jaycgOiAncGkgcGktY2FsZW5kYXInXCJcclxuICAgICAgICAgICAgICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZmlyc3REYXlPZldlZWtdPVwiZmlyc3REYXlPZldlZWtcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhVHlwZV09XCJkYXRhVHlwZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgIFt2aWV3XT1cInZpZXdUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0XCIgXHJcbiAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5SW5wdXRdPVwicmVhZG9ubHlJbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uRGF0ZUNoYW5nZWQoKVwiPlxyXG4gICAgICAgIDwvcC1jYWxlbmRhcj5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidy1lZGl0LWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dhcHAtY29tcG9uZW50cy9zcmMvbGliL2VkaXQvdy1lZGl0LWNhbGVuZGFyL3ctZWRpdC1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93YXBwLWNvbXBvbmVudHMvc3JjL2xpYi9lZGl0L3ctZWRpdC1jYWxlbmRhci93LWVkaXQtY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUErQixNQUFNLEVBQXVCLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySSxPQUFPLEVBQUUsaUJBQWlCLEVBQXFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFlbkQsTUFBTSxPQUFPLHNCQUFzQjtJQVpuQztRQXVDc0IsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMzQixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3RCLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBQy9CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN0QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUM1QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzlCLFNBQUksR0FBVyxPQUFPLENBQUM7UUFFVCx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDOUMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUNWLDZCQUF3QixHQUFZLDBCQUEwQixDQUFDO1FBQ25FLHlCQUFvQixHQUFZLDRCQUE0QixDQUFDO1FBQ2pFLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNwQyxtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUdqQyxh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YTtnQkFDRCxRQUFRO3NCQUExQixLQUFLO3VCQUFDLFVBQVU7Z0JBQ0YsSUFBSTtzQkFBbEIsS0FBSzt1QkFBQyxNQUFNO2dCQUNTLFdBQVc7c0JBQWhDLEtBQUs7dUJBQUMsYUFBYTtnQkFDUyxrQkFBa0I7c0JBQTlDLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUNSLFFBQVE7c0JBQTFCLEtBQUs7dUJBQUMsVUFBVTtnQkFDa0Isd0JBQXdCO3NCQUExRCxLQUFLO3VCQUFDLDBCQUEwQjtnQkFDRixvQkFBb0I7c0JBQWxELEtBQUs7dUJBQUMsc0JBQXNCO2dCQUNGLGdCQUFnQjtzQkFBMUMsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBQ0EsY0FBYztzQkFBdEMsS0FBSzt1QkFBQyxnQkFBZ0I7Z0JBQ0wsT0FBTztzQkFBeEIsS0FBSzt1QkFBQyxTQUFTO2dCQUNQLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ2EsUUFBUTtzQkFBMUIsS0FBSzt1QkFBQyxVQUFVO2dCQUNFLFFBQVE7c0JBQTFCLEtBQUs7dUJBQUMsVUFBVTtnQkFDRyxTQUFTO3NCQUE1QixLQUFLO3VCQUFDLFdBQVc7Z0JBQ00sYUFBYTtzQkFBcEMsS0FBSzt1QkFBQyxlQUFlO2dCQUVGLGFBQWE7c0JBQWhDLE1BQU07dUJBQUMsVUFBVTtnQkFFRyxVQUFVO3NCQUE5QixLQUFLO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPcHRpb25hbCwgT3V0cHV0LCBTZWxmLCBTaW1wbGVDaGFuZ2VzLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNpemVUeXBlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2VudW1zL2VudW0nO1xyXG5pbXBvcnQgeyBDYWxlbmRhclR5cGVWaWV3IH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ctZWRpdC1jYWxlbmRhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ctZWRpdC1jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdy1lZGl0LWNhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBXRWRpdENhbGVuZGFyQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXRWRpdENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHJcbiAgcHJpdmF0ZSBfbWluRGF0ZSE6IERhdGU7XHJcbiAgXHJcbiAgQElucHV0KCkgc2V0IG1pbkRhdGUodmFsdWU6IERhdGUpIHtcclxuICAgIGlmKHRoaXMubmdNb2RlbFZhbHVlIDwgdmFsdWUpIHsgdGhpcy5uZ01vZGVsVmFsdWUgPSB2YWx1ZSB9XHJcbiAgICBpZih0aGlzLmZvcm1Db250cm9sPy52YWx1ZSAmJiB0aGlzLmZvcm1Db250cm9sPy52YWx1ZSA8IHZhbHVlKSB7IHRoaXMub25WYWx1ZSh2YWx1ZSkgfVxyXG4gICAgdGhpcy5fbWluRGF0ZSA9IHZhbHVlO1xyXG4gIH1cclxuICBcclxuICBnZXQgbWluRGF0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl9taW5EYXRlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbWF4RGF0ZSE6IERhdGU7XHJcblxyXG4gIEBJbnB1dCgpIHNldCBtYXhEYXRlKHZhbHVlOiBEYXRlKSB7XHJcbiAgICBpZih0aGlzLm5nTW9kZWxWYWx1ZSA+IHZhbHVlKSB7IHRoaXMubmdNb2RlbFZhbHVlID0gdmFsdWUgfVxyXG4gICAgaWYodGhpcy5mb3JtQ29udHJvbD8udmFsdWUgJiYgdGhpcy5mb3JtQ29udHJvbD8udmFsdWUgPiB2YWx1ZSkgeyB0aGlzLm9uVmFsdWUodmFsdWUpIH1cclxuICAgIHRoaXMuX21heERhdGUgPSB2YWx1ZTtcclxuICB9XHJcbiAgXHJcbiAgZ2V0IG1heERhdGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcclxuICB9XHJcbiAgXHJcbiAgQElucHV0KCdsYWJlbCcpIGxhYmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgnc2hvd0xhYmVsJykgc2hvd0xhYmVsOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoJ3Nob3dUaW1lJykgc2hvd1RpbWU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgnc2hvd1NlY29uZHMnKSBzaG93U2Vjb25kczogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCd0aW1lT25seScpIHRpbWVPbmx5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCdzaG93SWNvbicpIHNob3dJY29uOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoJ3BsYWNlaG9sZGVyJykgcGxhY2Vob2xkZXI6IHN0cmluZyA9IFwiXCI7XHJcbiAgQElucHV0KCdkaXNhYmxlZCcpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCdzaXplJykgc2l6ZTogc3RyaW5nID0gXCJzbWFsbFwiO1xyXG4gIEBJbnB1dCgnZm9ybUNvbnRyb2wnKSBmb3JtQ29udHJvbCE6IEZvcm1Db250cm9sIHwgbnVsbDtcclxuICBASW5wdXQoJ2Rpc3BsYXlJbmxpbmVCbG9jaycpIGRpc3BsYXlJbmxpbmVCbG9jazogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgncmVxdWlyZWQnKSByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgncmVxdWlyZWRFcnJvckRlc2NyaXB0aW9uJykgcmVxdWlyZWRFcnJvckRlc2NyaXB0aW9uIDogc3RyaW5nID0gXCJNZW5zYWplIGRlZmF1bHQgcmVxdWlyZWRcIjtcclxuICBASW5wdXQoJ3NvbWVFcnJvckRlc2NyaXB0aW9uJykgc29tZUVycm9yRGVzY3JpcHRpb24gOiBzdHJpbmcgPSBcIk1lbnNhamUgZGVmYXVsdCBzb21lIGVycm9yXCI7XHJcbiAgQElucHV0KCdyZW1vdmVQYWRkaW5nVG9wJykgcmVtb3ZlUGFkZGluZ1RvcDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgnZmlyc3REYXlPZldlZWsnKSBmaXJzdERheU9mV2VlazogbnVtYmVyID0gMTtcclxuICBASW5wdXQoJ3Rvb2x0aXAnKSB0b29sdGlwITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHRvb2x0aXBQb3NpdGlvbj86IHN0cmluZztcclxuICBASW5wdXQoJ2RhdGFUeXBlJykgZGF0YVR5cGU6IHN0cmluZyA9ICdkYXRlJztcclxuICBASW5wdXQoJ3ZpZXdUeXBlJykgdmlld1R5cGU6IENhbGVuZGFyVHlwZVZpZXcgPSAnZGF0ZSc7XHJcbiAgQElucHV0KCdtb250aE1vZGUnKSBtb250aE1vZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ3JlYWRvbmx5SW5wdXQnKSByZWFkb25seUlucHV0ITogYm9vbGVhbjsgXHJcblxyXG4gIEBPdXRwdXQoJ29uQ2hhbmdlJykgb25DaGFuZ2VFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgnZGF0ZUZvcm1hdCcpIGRhdGVGb3JtYXQ6IHN0cmluZyA9ICcnO1xyXG4gIHNpemVUeXBlOiB0eXBlb2YgU2l6ZVR5cGUgPSBTaXplVHlwZTtcclxuXHJcbiAgbmdNb2RlbFZhbHVlOiBhbnk7XHJcblxyXG4gIGlzRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBpc1RvdWNoZWQgOiBib29sZWFuID0gZmFsc2U7XHJcbiAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xyXG4gIG9uVG91Y2g6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMubW9udGhNb2RlKSB7XHJcbiAgICAgIHRoaXMuc2hvd1RpbWUgPSBmYWxzZTtcclxuICAgICAgdGhpcy50aW1lT25seSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRhdGVGb3JtYXQgPSAnZGQvTU0nXHJcbiAgICB9XHJcbiAgIH1cclxuICBcclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZihjaGFuZ2VzWyd2aWV3VHlwZSddPy5wcmV2aW91c1ZhbHVlICE9PSB1bmRlZmluZWQpe1xyXG4gICAgICB0aGlzLnZpZXdUeXBlID0gY2hhbmdlc1sndmlld1R5cGUnXS5jdXJyZW50VmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoY2hhbmdlc1snZGF0ZUZvcm1hdCddPy5wcmV2aW91c1ZhbHVlICE9PSB1bmRlZmluZWQpe1xyXG4gICAgICB0aGlzLmRhdGVGb3JtYXQgPSBjaGFuZ2VzWydkYXRlRm9ybWF0J10uY3VycmVudFZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZih0eXBlb2YodmFsdWUpID09PSAnc3RyaW5nJykge1xyXG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlKTtcclxuICAgIH1cclxuICAgIHRoaXMubmdNb2RlbFZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgb25WYWx1ZSh2YWx1ZTogYW55KXtcclxuICAgIHRoaXMub25DaGFuZ2VFdmVudC5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldFNpemVOYW1lKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFNpemVUeXBlW3ZhbHVlXTtcclxuICB9XHJcblxyXG4gIG9uRGF0ZUNoYW5nZWQoKXtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5uZ01vZGVsVmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoKCk7XHJcblxyXG4gICAgdGhpcy5vbkNoYW5nZUV2ZW50LmVtaXQodGhpcy5uZ01vZGVsVmFsdWUpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiZm9ybUNvbnRyb2w7IGVsc2Ugbm9OZ0NvbnRyb2xcIiBbbmdDbGFzc109XCJ7J3ctZWRpdC1jYWxlbmRhci1zdHlsZXMgcC1mbHVpZCBmaWVsZCcgOiB0cnVlLCdkaXNhYmxlZCc6IGRpc2FibGVkIH1cIiA+XHJcbiAgICA8dy1pbnB1dC1sYWJlbCBbbGFiZWxdPVwibGFiZWxcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbc2l6ZV09XCJzaXplXCIgW3Rvb2x0aXBdPVwidG9vbHRpcFwiICpuZ0lmPVwic2hvd0xhYmVsXCI+PC93LWlucHV0LWxhYmVsPlxyXG4gICAgPHAtY2FsZW5kYXIgW25nQ2xhc3NdPVwieyduZy1pbnZhbGlkIG5nLWRpcnR5JzogZm9ybUNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgZm9ybUNvbnRyb2wudG91Y2hlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3LWVkaXQtY2FsZW5kYXItc21hbGwnIDogc2l6ZSA9PSBnZXRTaXplTmFtZShzaXplVHlwZS5zbWFsbCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW1lZGl1bScgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLm1lZGl1bSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW5vLWljb24nIDogIXNob3dJY29uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc2FibGVkJzogZGlzYWJsZWQgfVwiXHJcbiAgICAgICAgICAgICAgICBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgaW5wdXRJZD1cInRpbWVcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd1RpbWVdPVwic2hvd1RpbWVcIlxyXG4gICAgICAgICAgICAgICAgW3RpbWVPbmx5XT1cInRpbWVPbmx5XCIgXHJcbiAgICAgICAgICAgICAgICBbc2hvd1NlY29uZHNdPVwic2hvd1NlY29uZHNcIlxyXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcclxuICAgICAgICAgICAgICAgIFtpY29uXT1cInRpbWVPbmx5ID8gJ3BpIHBpLWNsb2NrJyA6ICdwaSBwaS1jYWxlbmRhcidcIlxyXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICAgICAgICAgIFtmaXJzdERheU9mV2Vla109XCJmaXJzdERheU9mV2Vla1wiXHJcbiAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICAgICAgICAgICAgICAgIFtkYXRhVHlwZV09XCJkYXRhVHlwZVwiIFxyXG4gICAgICAgICAgICAgICAgW3ZpZXddPVwidmlld1R5cGVcIlxyXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiIFxyXG4gICAgICAgICAgICAgICAgW3JlYWRvbmx5SW5wdXRdPVwicmVhZG9ubHlJbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cIm9uVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbaW5wdXRTdHlsZUNsYXNzXT1cImdldFNpemVOYW1lKHNpemVUeXBlLnNtYWxsKSA/ICd3LWVkaXQtY2FsZW5kYXItbWVkaXVtJyA6ICd3LWVkaXQtY2FsZW5kYXItc21hbGwnIFwiPlxyXG4gICAgPC9wLWNhbGVuZGFyPlxyXG4gICAgPHNtYWxsICpuZ0lmPVwiZm9ybUNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykgJiYgZm9ybUNvbnRyb2wudG91Y2hlZFwiIGNsYXNzPVwicC1lcnJvciBibG9ja1wiPnt7cmVxdWlyZWRFcnJvckRlc2NyaXB0aW9ufX08L3NtYWxsPlxyXG4gICAgPHNtYWxsICpuZ0lmPVwiZm9ybUNvbnRyb2wuZXJyb3JzICYmICFmb3JtQ29udHJvbC5oYXNFcnJvcigncmVxdWlyZWQnKSAmJiBmb3JtQ29udHJvbC50b3VjaGVkXCIgY2xhc3M9XCJwLWVycm9yIGJsb2NrXCI+e3tzb21lRXJyb3JEZXNjcmlwdGlvbn19PC9zbWFsbD5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjbm9OZ0NvbnRyb2w+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy1lZGl0LWNhbGVuZGFyLXN0eWxlc1wiIFtuZ0NsYXNzXT1cInsnZGlzcGxheUlubGluZUJsb2NrJyA6IGRpc3BsYXlJbmxpbmVCbG9jaywgJ2Rpc2FibGVkJyA6IGRpc2FibGVkfVwiPlxyXG4gICAgICAgIDx3LWlucHV0LWxhYmVsIFtsYWJlbF09XCJsYWJlbFwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtzaXplXT1cInNpemVcIiBbdG9vbHRpcF09XCJ0b29sdGlwXCIgW3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb25cIiAqbmdJZj1cInNob3dMYWJlbFwiPjwvdy1pbnB1dC1sYWJlbD5cclxuICAgICAgICA8cC1jYWxlbmRhciBbbmdDbGFzc109XCJ7J3ctZWRpdC1jYWxlbmRhci1zbWFsbCcgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLnNtYWxsKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndy1lZGl0LWNhbGVuZGFyLW1lZGl1bScgOiBzaXplID09IGdldFNpemVOYW1lKHNpemVUeXBlLm1lZGl1bSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ctZWRpdC1jYWxlbmRhci1uby1pY29uJyA6ICFzaG93SWNvbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcclxuICAgICAgICAgICAgICAgICAgICBhcHBlbmRUbz1cImJvZHlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmdNb2RlbFZhbHVlXCIgaW5wdXRJZD1cInRpbWVcIiBwbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dUaW1lXT1cInNob3dUaW1lXCJcclxuICAgICAgICAgICAgICAgICAgICBbdGltZU9ubHldPVwidGltZU9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzaG93U2Vjb25kc109XCJzaG93U2Vjb25kc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcclxuICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJ0aW1lT25seSA/ICdwaSBwaS1jbG9jaycgOiAncGkgcGktY2FsZW5kYXInXCJcclxuICAgICAgICAgICAgICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZmlyc3REYXlPZldlZWtdPVwiZmlyc3REYXlPZldlZWtcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkYXRhVHlwZV09XCJkYXRhVHlwZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgIFt2aWV3XT1cInZpZXdUeXBlXCJcclxuICAgICAgICAgICAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0XCIgXHJcbiAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5SW5wdXRdPVwicmVhZG9ubHlJbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uRGF0ZUNoYW5nZWQoKVwiPlxyXG4gICAgICAgIDwvcC1jYWxlbmRhcj5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=