@myrtex-org/form 1.1.1 → 1.1.3
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.
- package/esm2022/lib/modules/object-form/components/elements/input/date/input-date.component.mjs +5 -3
- package/esm2022/lib/modules/object-form/components/elements/input/textarea/input-textarea.component.mjs +1 -1
- package/fesm2022/myrtex-org-form.mjs +5 -3
- package/fesm2022/myrtex-org-form.mjs.map +1 -1
- package/package.json +1 -1
package/esm2022/lib/modules/object-form/components/elements/input/date/input-date.component.mjs
CHANGED
|
@@ -36,6 +36,7 @@ export class InputDateComponent extends BaseFieldComponent {
|
|
|
36
36
|
return this.settings.options.viewType === DateTypeEnum.DateTime;
|
|
37
37
|
}
|
|
38
38
|
updateValue(event) {
|
|
39
|
+
console.log(this.dateModel, 'this.dateModel before');
|
|
39
40
|
if (this._isInit) {
|
|
40
41
|
if (this.settings.options.range) {
|
|
41
42
|
if (event.value?.length === 0) {
|
|
@@ -57,6 +58,7 @@ export class InputDateComponent extends BaseFieldComponent {
|
|
|
57
58
|
this.dateModel = event.value;
|
|
58
59
|
this.model.value = event.value;
|
|
59
60
|
}
|
|
61
|
+
console.log(this.dateModel, 'this.dateModel after');
|
|
60
62
|
this.dispatchModify(event);
|
|
61
63
|
}
|
|
62
64
|
}
|
|
@@ -158,10 +160,10 @@ export class InputDateComponent extends BaseFieldComponent {
|
|
|
158
160
|
}
|
|
159
161
|
}
|
|
160
162
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
161
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputDateComponent, selector: "app-input-date", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { 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: i1.InputNumberComponent, selector: "mrx-input-number", inputs: ["fields", "placeholder", "innerClass", "customClasses", "required", "allowNegative", "size", "separator", "decimalSeparator", "decimals", "isNullableValue", "isAutoCorrectingValue", "invalid", "checkInvalid", "numberType", "invalidMessage", "disabled", "readonly", "minValue", "maxValue"], outputs: ["modelChange", "modelChangeBlur"] }, { kind: "component", type: i1.InputDateTimeComponent, selector: "mrx-input-date-time", inputs: ["fields", "size", "customClasses", "dateLabel", "timeLabel", "datePlaceholder", "timePlaceholder", "disabled", "readonly", "required", "timepicker", "range", "timezone", "inline", "isManualInput", "addMinTime", "addMaxTime", "addMinTimeObj", "addMaxTimeObj", "disableValidate", "disableIncludes", "container", "invalid", "invalidMessage", "checkInvalid", "minDate", "maxDate", "calendarPosition"], outputs: ["changed", "modelChange", "blurred"] }, { kind: "component", type: i1.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }, { kind: "pipe", type: i1.DateTimeFormatPipe, name: "dateTimeFormat" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
163
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputDateComponent, selector: "app-input-date", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [dateFormat]=\"settings.options.format\"\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { 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: i1.InputNumberComponent, selector: "mrx-input-number", inputs: ["fields", "placeholder", "innerClass", "customClasses", "required", "allowNegative", "size", "separator", "decimalSeparator", "decimals", "isNullableValue", "isAutoCorrectingValue", "invalid", "checkInvalid", "numberType", "invalidMessage", "disabled", "readonly", "minValue", "maxValue"], outputs: ["modelChange", "modelChangeBlur"] }, { kind: "component", type: i1.InputDateTimeComponent, selector: "mrx-input-date-time", inputs: ["inputMask", "dateFormat", "fields", "size", "customClasses", "dateLabel", "timeLabel", "datePlaceholder", "timePlaceholder", "disabled", "readonly", "required", "timepicker", "range", "timezone", "inline", "isManualInput", "addMinTime", "addMaxTime", "addMinTimeObj", "addMaxTimeObj", "disableValidate", "disableIncludes", "container", "invalid", "invalidMessage", "checkInvalid", "minDate", "maxDate", "calendarPosition"], outputs: ["changed", "modelChange", "blurred"] }, { kind: "component", type: i1.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }, { kind: "pipe", type: i1.DateTimeFormatPipe, name: "dateTimeFormat" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
162
164
|
}
|
|
163
165
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputDateComponent, decorators: [{
|
|
164
166
|
type: Component,
|
|
165
|
-
args: [{ selector: 'app-input-date', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n" }]
|
|
167
|
+
args: [{ selector: 'app-input-date', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [dateFormat]=\"settings.options.format\"\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n" }]
|
|
166
168
|
}] });
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtZm9ybS9zcmMvbGliL21vZHVsZXMvb2JqZWN0LWZvcm0vY29tcG9uZW50cy9lbGVtZW50cy9pbnB1dC9kYXRlL2lucHV0LWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGV4LWZvcm0vc3JjL2xpYi9tb2R1bGVzL29iamVjdC1mb3JtL2NvbXBvbmVudHMvZWxlbWVudHMvaW5wdXQvZGF0ZS9pbnB1dC1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHaEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFTeEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUE0RDtJQU5wRzs7UUFPRSxTQUFJLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQztRQUVkLHVCQUFrQixHQUFXLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUUxRCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWpCLGNBQVMsR0FBNkIsRUFBRSxDQUFDO1FBSXpDLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO0tBb0tqQztJQWxLQyxJQUFhLFVBQVU7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUs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QUMsa0JBQWtCLENBQUMsQ0FBQztZQUV6RSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ3pGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDNUgsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUNoRixDQUFDO1lBRUQsT0FBTyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0IsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDOytHQTlLVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2RUNmL0IsMjZFQXlEQTs7NEZEMUNhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRUeXBlLCBEYXRlVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zaGFyZWQtZm9ybS9lbnVtcyc7XHJcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UnO1xyXG5pbXBvcnQgeyBJbnB1dERhdGVNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9lbGVtZXRzL2lucHV0cyc7XHJcbmltcG9ydCB7IENvbXBvbmVudFZhbHVlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBvYmplY3RGb3JtU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUnO1xyXG5pbXBvcnQgeyBkZWZhdWx0VmFsdWVNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWQgfSBmcm9tICdAbXlydGV4LW9yZy91aSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1pbnB1dC1kYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtZGF0ZS5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dERhdGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlRmllbGRDb21wb25lbnQ8SW5wdXREYXRlTW9kZWwsIElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHR5cGUgPSBDb21wb25lbnRUeXBlLklucHV0RGF0ZTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbWlsbGlzZWNvbmRzSW5EYXk6IG51bWJlciA9IDEwMDAgKiA2MCAqIDYwICogMjQ7XHJcblxyXG4gIHByaXZhdGUgX2lzSW5pdCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgZGF0ZU1vZGVsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgPSAnJztcclxuXHJcbiAgcHVibGljIG1vZGVsU3RhcnQhOiBDb21wb25lbnRWYWx1ZU1vZGVsO1xyXG4gIHB1YmxpYyBtb2RlbEVuZCE6IENvbXBvbmVudFZhbHVlTW9kZWw7XHJcbiAgcHVibGljIG1vZGVsQ291bnRlcjogbnVtYmVyID0gMDtcclxuXHJcbiAgb3ZlcnJpZGUgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgIGlmICh0aGlzLl9pc0NoZWNrUmVxdWlyZWQgJiYgdGhpcy5zZXR0aW5ncy5vcHRpb25zLnJlcXVpcmVkKSB7XHJcbiAgICAgICAgcmV0dXJuICEoISF0aGlzLm1vZGVsU3RhcnQ/LnZhbHVlICYmICEhdGhpcy5tb2RlbEVuZD8udmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdXBlci5nZXRJbnZhbGlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBzdHJpbmdbXSB7XHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgIHJldHVybiBbdGhpcy5tb2RlbFN0YXJ0LnZhbHVlLCB0aGlzLm1vZGVsRW5kLnZhbHVlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm1vZGVsLnZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRWaWV3VHlwZVRpbWVwaWNrZXIoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5vcHRpb25zLnZpZXdUeXBlID09PSBEYXRlVHlwZUVudW0uRGF0ZVRpbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoZXZlbnQ6IElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZCkge1xyXG4gICAgaWYgKHRoaXMuX2lzSW5pdCkge1xyXG4gICAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnZhbHVlPy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW107XHJcbiAgICAgICAgICB0aGlzLm1vZGVsU3RhcnQudmFsdWUgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy5tb2RlbEVuZC52YWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICB0aGlzLm1vZGVsLnZhbHVlID0gW251bGwsIG51bGxdO1xyXG5cclxuICAgICAgICAgIHRoaXMubW9kZWxDb3VudGVyID0gMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LnZhbHVlPy5sZW5ndGggPT09IDIpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW2V2ZW50LnZhbHVlWzBdLCBldmVudC52YWx1ZVsxXV07XHJcbiAgICAgICAgICB0aGlzLm1vZGVsU3RhcnQudmFsdWUgPSBldmVudC52YWx1ZVswXTtcclxuICAgICAgICAgIHRoaXMubW9kZWxFbmQudmFsdWUgPSBldmVudC52YWx1ZVsxXTtcclxuICAgICAgICAgIHRoaXMubW9kZWwudmFsdWUgPSBbdGhpcy5tb2RlbFN0YXJ0LnZhbHVlLCB0aGlzLm1vZGVsRW5kLnZhbHVlXTtcclxuXHJcbiAgICAgICAgICB0aGlzLm1vZGVsQ291bnRlciA9IHRoaXMuX2dldERheXNEaWZmZXJlbmNlKHRoaXMubW9kZWxTdGFydC52YWx1ZSwgdGhpcy5tb2RlbEVuZC52YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gZXZlbnQudmFsdWU7XHJcbiAgICAgICAgdGhpcy5tb2RlbC52YWx1ZSA9IGV2ZW50LnZhbHVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmRpc3BhdGNoTW9kaWZ5KGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVDb3VudGVyKHZhbHVlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5tb2RlbENvdW50ZXIgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubW9kZWxDb3VudGVyID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgIGlmKHRoaXMubW9kZWwudmFsdWUgJiYgdGhpcy5tb2RlbC52YWx1ZVswXSkge1xyXG4gICAgICAgIHRoaXMubW9kZWwudmFsdWUgPSBbdGhpcy5tb2RlbC52YWx1ZVswXSwgbmV3IERhdGUoKV1cclxuICAgICAgICB0aGlzLm1vZGVsLnZhbHVlWzFdID0gdGhpcy5fY2hhbmdlRGF5cyh0aGlzLm1vZGVsLnZhbHVlWzBdLCB0aGlzLm1vZGVsQ291bnRlcik7XHJcblxyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdGhpcy5tb2RlbC52YWx1ZTsgXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbC52YWx1ZSA9IFtuZXcgRGF0ZSgpLCBuZXcgRGF0ZSgpXVxyXG5cclxuICAgICAgICB0aGlzLm1vZGVsLnZhbHVlWzFdID0gdGhpcy5fY2hhbmdlRGF5cyh0aGlzLm1vZGVsLnZhbHVlWzBdLCB0aGlzLm1vZGVsQ291bnRlcik7XHJcblxyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdGhpcy5tb2RlbC52YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGlzcGF0Y2hNb2RpZnkoc3RydWN0dXJlZENsb25lKHRoaXMubW9kZWwudmFsdWUpKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIF90cmFuc2Zvcm1PdXRwdXRWYWx1ZSgpIHtcclxuICAgIGlmICh0aGlzLnNldHRpbmdzLm9wdGlvbnMucmFuZ2UpIHtcclxuICAgICAgcmV0dXJuIFtzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5tb2RlbFN0YXJ0KSwgc3RydWN0dXJlZENsb25lKHRoaXMubW9kZWxFbmQpXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5tb2RlbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBfaW5pdFN1YnNjcmlwdGlvbkZvclZhbHVlKCkge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucyQucHVzaCh0aGlzLl9zdG9yZS5zZWxlY3Qob2JqZWN0Rm9ybVNlbGVjdG9ycy5zZWxlY3RWYWx1ZU1vZGVsKHRoaXMuc2V0dGluZ3MpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IENvbXBvbmVudFZhbHVlTW9kZWwgfCBudWxsIHwgKENvbXBvbmVudFZhbHVlTW9kZWwgfCBudWxsKVtdKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzdWx0KSkge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGVsU3RhcnQgPSBzdHJ1Y3R1cmVkQ2xvbmUocmVzdWx0WzBdKSB8fCBkZWZhdWx0VmFsdWVNb2RlbCh0aGlzLnNldHRpbmdzKTtcclxuICAgICAgICAgICAgdGhpcy5tb2RlbEVuZCA9IHN0cnVjdHVyZWRDbG9uZShyZXN1bHRbMV0pIHx8IGRlZmF1bHRWYWx1ZU1vZGVsKHRoaXMuc2V0dGluZ3MpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5tb2RlbCA9IHN0cnVjdHVyZWRDbG9uZShyZXN1bHQgfHwgZGVmYXVsdFZhbHVlTW9kZWwodGhpcy5zZXR0aW5ncykpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRoaXMuX2N1c3RvbUluaXQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIF9jdXN0b21Jbml0KCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICghdGhpcy5tb2RlbCkge1xyXG4gICAgICAgIHRoaXMubW9kZWwgPSBkZWZhdWx0VmFsdWVNb2RlbCh0aGlzLnNldHRpbmdzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHRoaXMuc2V0dGluZ3Mub3B0aW9ucy5yYW5nZSkge1xyXG4gICAgICAgIGlmICghdGhpcy5tb2RlbFN0YXJ0Py52YWx1ZSB8fCAhdGhpcy5tb2RlbEVuZD8udmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW107XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW3RoaXMubW9kZWxTdGFydC52YWx1ZSwgdGhpcy5tb2RlbEVuZC52YWx1ZV07XHJcblxyXG4gICAgICAgICAgdGhpcy5tb2RlbENvdW50ZXIgPSB0aGlzLl9nZXREYXlzRGlmZmVyZW5jZSh0aGlzLm1vZGVsU3RhcnQudmFsdWUsIHRoaXMubW9kZWxFbmQudmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmRhdGVNb2RlbCA9IHRoaXMubW9kZWwudmFsdWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuX2lzSW5pdCA9IHRydWU7XHJcblxyXG4gICAgICB0aGlzLl9kZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LCA1MDApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0RGF5c0RpZmZlcmVuY2Uoc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKHN0YXJ0RGF0ZSk7XHJcbiAgICBjb25zdCBlbmQgPSBuZXcgRGF0ZShlbmREYXRlKTtcclxuXHJcbiAgICBpZiAoaXNOYU4oc3RhcnQuZ2V0VGltZSgpKSB8fCBpc05hTihlbmQuZ2V0VGltZSgpKSkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdJbnZhbGlkIGRhdGUgZm9ybWF0Jyk7XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRpZmZlcmVuY2VJbk1zID0gTWF0aC5hYnMoZW5kLmdldFRpbWUoKSAtIHN0YXJ0LmdldFRpbWUoKSk7XHJcbiAgICByZXR1cm4gTWF0aC5mbG9vcihkaWZmZXJlbmNlSW5NcyAvIHRoaXMuX21pbGxpc2Vjb25kc0luRGF5KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NoYW5nZURheXMoc3RhcnREYXRlOiBzdHJpbmcsIGRheXM6IG51bWJlcik6IHN0cmluZyB8IG51bGwge1xyXG4gICAgaWYgKHN0YXJ0RGF0ZSkge1xyXG4gICAgICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKHN0YXJ0RGF0ZSk7XHJcblxyXG4gICAgICBpZiAoaXNOYU4oc3RhcnQuZ2V0VGltZSgpKSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgc3RhcnQgZGF0ZSBmb3JtYXQnKTtcclxuICAgICAgICByZXR1cm4gc3RhcnREYXRlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIU51bWJlci5pc0ludGVnZXIoZGF5cykgfHwgZGF5cyA8IDApIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdEYXlzIG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlcicpO1xyXG4gICAgICAgIHJldHVybiBzdGFydERhdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxldCBuZXdEYXRlID0gbmV3IERhdGUoc3RhcnQuZ2V0VGltZSgpICsgZGF5cyAqIHRoaXMuX21pbGxpc2Vjb25kc0luRGF5KTtcclxuXHJcbiAgICAgIGlmICghIXRoaXMuc2V0dGluZ3Mub3B0aW9ucy5tYXhEYXRlICYmIG5ld0RhdGUgPiBuZXcgRGF0ZSh0aGlzLnNldHRpbmdzLm9wdGlvbnMubWF4RGF0ZSkpIHtcclxuICAgICAgICBjb25zdCBtYXhEYXlzID0gTWF0aC5mbG9vcigobmV3IERhdGUodGhpcy5zZXR0aW5ncy5vcHRpb25zLm1heERhdGUpLmdldFRpbWUoKSAtIHN0YXJ0LmdldFRpbWUoKSkgLyB0aGlzLl9taWxsaXNlY29uZHNJbkRheSk7XHJcbiAgICAgICAgbmV3RGF0ZSA9IG5ldyBEYXRlKHN0YXJ0LmdldFRpbWUoKSArIChtYXhEYXlzICsgMSkgKiB0aGlzLl9taWxsaXNlY29uZHNJbkRheSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBuZXdEYXRlLnRvSVNPU3RyaW5nKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGlmIChzZXR0aW5ncykge1xyXG4gIDxkaXYgY2xhc3M9XCJpbnB1dC1kYXRlLWNvbnRlbnRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbFwiIFtjbGFzcy5jb2wtOF09XCJzZXR0aW5ncy5vcHRpb25zLmNvdW50ZXJcIj5cclxuICAgICAgICBAaWYgKHNldHRpbmdzLm9wdGlvbnMubGFiZWwpIHtcclxuICAgICAgICAgIDxtcngtbGFiZWxcclxuICAgICAgICAgICAgW3JlcXVpcmVkXT1cInNldHRpbmdzLm9wdGlvbnMucmVxdWlyZWRcIlxyXG4gICAgICAgICAgICBbdG9vbHRpcF09XCJzZXR0aW5ncy5vcHRpb25zLnRvb2x0aXAgfHwgJydcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7eyBzZXR0aW5ncy5vcHRpb25zLmxhYmVsIH19XHJcbiAgICAgICAgICA8L21yeC1sYWJlbD5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxtcngtaW5wdXQtZGF0ZS10aW1lXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJkYXRlTW9kZWxcIlxyXG4gICAgICAgICAgW2ZpZWxkc109XCJhdXRvc2F2ZUZpZWxkc1wiXHJcbiAgICAgICAgICBbcmFuZ2VdPVwic2V0dGluZ3Mub3B0aW9ucy5yYW5nZVwiXHJcbiAgICAgICAgICBbZGF0ZVBsYWNlaG9sZGVyXT1cIihzZXR0aW5ncy5vcHRpb25zLnJhbmdlID8gc2V0dGluZ3Mub3B0aW9ucy5wbGFjZWhvbGRlciArICcgLSAnICsgc2V0dGluZ3Mub3B0aW9ucy5wbGFjZWhvbGRlciA6IHNldHRpbmdzLm9wdGlvbnMucGxhY2Vob2xkZXIpIHx8ICcnXCJcclxuICAgICAgICAgIFtpc01hbnVhbElucHV0XT1cIiFzZXR0aW5ncy5vcHRpb25zLnJhbmdlXCJcclxuICAgICAgICAgIFt0aW1lcGlja2VyXT1cImdldFZpZXdUeXBlVGltZXBpY2tlclwiXHJcbiAgICAgICAgICBbaW52YWxpZF09XCJnZXRJbnZhbGlkXCJcclxuICAgICAgICAgIFtpbnZhbGlkTWVzc2FnZV09XCJnZXRJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICAgICAgICBbbWluRGF0ZV09XCJzZXR0aW5ncy5vcHRpb25zLm1pbkRhdGVcIlxyXG4gICAgICAgICAgW21heERhdGVdPVwic2V0dGluZ3Mub3B0aW9ucy5tYXhEYXRlXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvbXJ4LWlucHV0LWRhdGUtdGltZT5cclxuXHJcbiAgICAgICAgQGlmKCEhc2V0dGluZ3Mub3B0aW9ucy5taW5EYXRlKSB7XHJcbiAgICAgICAgICA8bXJ4LWhpbnQtZXJyb3ItbWVzc2FnZSAgXHJcbiAgICAgICAgICAgIG1lc3NhZ2U9XCLQnNC40L3QuNC80LDQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg4oCUIHt7IHNldHRpbmdzLm9wdGlvbnMubWluRGF0ZSB8IGRhdGVUaW1lRm9ybWF0OiAnbW9zJyA6ICdkZC5NTS55eXl5J319XCJcclxuICAgICAgICAgID48L21yeC1oaW50LWVycm9yLW1lc3NhZ2U+XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaWYoISFzZXR0aW5ncy5vcHRpb25zLm1heERhdGUpIHtcclxuICAgICAgICAgIDxtcngtaGludC1lcnJvci1tZXNzYWdlICBcclxuICAgICAgICAgICAgbWVzc2FnZT1cItCc0LDQutGB0LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1IOKAlCB7eyBzZXR0aW5ncy5vcHRpb25zLm1heERhdGUgfCBkYXRlVGltZUZvcm1hdDogJ21vcycgOiAnZGQuTU0ueXl5eScgfX1cIlxyXG4gICAgICAgICAgPjwvbXJ4LWhpbnQtZXJyb3ItbWVzc2FnZT5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgQGlmIChzZXR0aW5ncy5vcHRpb25zLmNvdW50ZXIgJiYgc2V0dGluZ3Mub3B0aW9ucy5yYW5nZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLTRcIj5cclxuICAgICAgICAgIDxtcngtbGFiZWw+XHJcbiAgICAgICAgICAgIHt7IHNldHRpbmdzLm9wdGlvbnMuY291bnRlckxhYmVsIH19XHJcbiAgICAgICAgICA8L21yeC1sYWJlbD5cclxuICAgICAgICAgIDxtcngtaW5wdXQtbnVtYmVyXHJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cIm1vZGVsQ291bnRlclwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInMCdcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNldHRpbmdzLm9wdGlvbnMuY291bnRlckVkaXRhYmxlXCJcclxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidXBkYXRlQ291bnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgID48L21yeC1pbnB1dC1udW1iZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG59XHJcbiJdfQ==
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtZm9ybS9zcmMvbGliL21vZHVsZXMvb2JqZWN0LWZvcm0vY29tcG9uZW50cy9lbGVtZW50cy9pbnB1dC9kYXRlL2lucHV0LWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGV4LWZvcm0vc3JjL2xpYi9tb2R1bGVzL29iamVjdC1mb3JtL2NvbXBvbmVudHMvZWxlbWVudHMvaW5wdXQvZGF0ZS9pbnB1dC1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHaEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7QUFTeEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGtCQUE0RDtJQU5wRzs7UUFPRSxTQUFJLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQztRQUVkLHVCQUFrQixHQUFXLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUUxRCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWpCLGNBQVMsR0FBNkIsRUFBRSxDQUFDO1FBSXpDLGlCQUFZLEdBQVcsQ0FBQyxDQUFDO0tBdUtqQztJQXJLQyxJQUFhLFVBQVU7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDNUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9ELENBQUM7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBVyxxQkFBcUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUNsRSxDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQStCO1FBQ2hELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxDQUFBO1FBQ3BELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO29CQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztvQkFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBRWhDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO2dCQUN4QixDQUFDO2dCQUNELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUVoRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxRixDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztnQkFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNqQyxDQUFDO1lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLHNCQUFzQixDQUFDLENBQUE7WUFFbkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFvQjtRQUN2QyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztRQUN4QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQyxJQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNwRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFFL0UsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNwQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQTtnQkFFM0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBRS9FLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVRLHFCQUFxQjtRQUM1QixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM1RSxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVRLHlCQUF5QjtRQUNoQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUYsU0FBUyxDQUFDLENBQUMsTUFBbUUsRUFBRSxFQUFFO1lBQ2pGLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDakYsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRixDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsTUFBTSxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUMzRSxDQUFDO2dCQUVELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFUSxXQUFXO1FBQ2xCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoRCxDQUFDO1lBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztvQkFDckQsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFOUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDMUYsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3BDLENBQUM7WUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUVwQixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2pDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxTQUFpQixFQUFFLE9BQWU7UUFDM0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUIsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbkQsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ3JDLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUVELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVPLFdBQVcsQ0FBQyxTQUFpQixFQUFFLElBQVk7UUFDakQsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLE1BQU0sS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRWxDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxTQUFTLENBQUM7WUFDbkIsQ0FBQztZQUVELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO2dCQUNyRCxPQUFPLFNBQVMsQ0FBQztZQUNuQixDQUFDO1lBRUQsSUFBSSxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUV6RSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ3pGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDNUgsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUNoRixDQUFDO1lBRUQsT0FBTyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0IsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDOytHQWpMVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2RUNmL0IsaStFQTBEQTs7NEZEM0NhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRUeXBlLCBEYXRlVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zaGFyZWQtZm9ybS9lbnVtcyc7XHJcbmltcG9ydCB7IEJhc2VGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UnO1xyXG5pbXBvcnQgeyBJbnB1dERhdGVNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9lbGVtZXRzL2lucHV0cyc7XHJcbmltcG9ydCB7IENvbXBvbmVudFZhbHVlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBvYmplY3RGb3JtU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUnO1xyXG5pbXBvcnQgeyBkZWZhdWx0VmFsdWVNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBJbnB1dERhdGVUaW1lVmFsdWVXaXRoSWQgfSBmcm9tICdAbXlydGV4LW9yZy91aSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1pbnB1dC1kYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtZGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtZGF0ZS5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dERhdGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlRmllbGRDb21wb25lbnQ8SW5wdXREYXRlTW9kZWwsIElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHR5cGUgPSBDb21wb25lbnRUeXBlLklucHV0RGF0ZTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbWlsbGlzZWNvbmRzSW5EYXk6IG51bWJlciA9IDEwMDAgKiA2MCAqIDYwICogMjQ7XHJcblxyXG4gIHByaXZhdGUgX2lzSW5pdCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgZGF0ZU1vZGVsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgPSAnJztcclxuXHJcbiAgcHVibGljIG1vZGVsU3RhcnQhOiBDb21wb25lbnRWYWx1ZU1vZGVsO1xyXG4gIHB1YmxpYyBtb2RlbEVuZCE6IENvbXBvbmVudFZhbHVlTW9kZWw7XHJcbiAgcHVibGljIG1vZGVsQ291bnRlcjogbnVtYmVyID0gMDtcclxuXHJcbiAgb3ZlcnJpZGUgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgIGlmICh0aGlzLl9pc0NoZWNrUmVxdWlyZWQgJiYgdGhpcy5zZXR0aW5ncy5vcHRpb25zLnJlcXVpcmVkKSB7XHJcbiAgICAgICAgcmV0dXJuICEoISF0aGlzLm1vZGVsU3RhcnQ/LnZhbHVlICYmICEhdGhpcy5tb2RlbEVuZD8udmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdXBlci5nZXRJbnZhbGlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBzdHJpbmdbXSB7XHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgIHJldHVybiBbdGhpcy5tb2RlbFN0YXJ0LnZhbHVlLCB0aGlzLm1vZGVsRW5kLnZhbHVlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm1vZGVsLnZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRWaWV3VHlwZVRpbWVwaWNrZXIoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5vcHRpb25zLnZpZXdUeXBlID09PSBEYXRlVHlwZUVudW0uRGF0ZVRpbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoZXZlbnQ6IElucHV0RGF0ZVRpbWVWYWx1ZVdpdGhJZCkge1xyXG4gICAgY29uc29sZS5sb2codGhpcy5kYXRlTW9kZWwsICd0aGlzLmRhdGVNb2RlbCBiZWZvcmUnKVxyXG4gICAgaWYgKHRoaXMuX2lzSW5pdCkge1xyXG4gICAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnZhbHVlPy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW107XHJcbiAgICAgICAgICB0aGlzLm1vZGVsU3RhcnQudmFsdWUgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy5tb2RlbEVuZC52YWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICB0aGlzLm1vZGVsLnZhbHVlID0gW251bGwsIG51bGxdO1xyXG5cclxuICAgICAgICAgIHRoaXMubW9kZWxDb3VudGVyID0gMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LnZhbHVlPy5sZW5ndGggPT09IDIpIHtcclxuICAgICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gW2V2ZW50LnZhbHVlWzBdLCBldmVudC52YWx1ZVsxXV07XHJcbiAgICAgICAgICB0aGlzLm1vZGVsU3RhcnQudmFsdWUgPSBldmVudC52YWx1ZVswXTtcclxuICAgICAgICAgIHRoaXMubW9kZWxFbmQudmFsdWUgPSBldmVudC52YWx1ZVsxXTtcclxuICAgICAgICAgIHRoaXMubW9kZWwudmFsdWUgPSBbdGhpcy5tb2RlbFN0YXJ0LnZhbHVlLCB0aGlzLm1vZGVsRW5kLnZhbHVlXTtcclxuXHJcbiAgICAgICAgICB0aGlzLm1vZGVsQ291bnRlciA9IHRoaXMuX2dldERheXNEaWZmZXJlbmNlKHRoaXMubW9kZWxTdGFydC52YWx1ZSwgdGhpcy5tb2RlbEVuZC52YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gZXZlbnQudmFsdWU7XHJcbiAgICAgICAgdGhpcy5tb2RlbC52YWx1ZSA9IGV2ZW50LnZhbHVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zb2xlLmxvZyh0aGlzLmRhdGVNb2RlbCwgJ3RoaXMuZGF0ZU1vZGVsIGFmdGVyJylcclxuXHJcbiAgICAgIHRoaXMuZGlzcGF0Y2hNb2RpZnkoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZUNvdW50ZXIodmFsdWU6IG51bWJlciB8IG51bGwpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLm1vZGVsQ291bnRlciA9IHZhbHVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tb2RlbENvdW50ZXIgPSAwO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNldHRpbmdzLm9wdGlvbnMucmFuZ2UpIHtcclxuICAgICAgaWYodGhpcy5tb2RlbC52YWx1ZSAmJiB0aGlzLm1vZGVsLnZhbHVlWzBdKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbC52YWx1ZSA9IFt0aGlzLm1vZGVsLnZhbHVlWzBdLCBuZXcgRGF0ZSgpXVxyXG4gICAgICAgIHRoaXMubW9kZWwudmFsdWVbMV0gPSB0aGlzLl9jaGFuZ2VEYXlzKHRoaXMubW9kZWwudmFsdWVbMF0sIHRoaXMubW9kZWxDb3VudGVyKTtcclxuXHJcbiAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSB0aGlzLm1vZGVsLnZhbHVlOyBcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1vZGVsLnZhbHVlID0gW25ldyBEYXRlKCksIG5ldyBEYXRlKCldXHJcblxyXG4gICAgICAgIHRoaXMubW9kZWwudmFsdWVbMV0gPSB0aGlzLl9jaGFuZ2VEYXlzKHRoaXMubW9kZWwudmFsdWVbMF0sIHRoaXMubW9kZWxDb3VudGVyKTtcclxuXHJcbiAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSB0aGlzLm1vZGVsLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaXNwYXRjaE1vZGlmeShzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5tb2RlbC52YWx1ZSkpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgX3RyYW5zZm9ybU91dHB1dFZhbHVlKCkge1xyXG4gICAgaWYgKHRoaXMuc2V0dGluZ3Mub3B0aW9ucy5yYW5nZSkge1xyXG4gICAgICByZXR1cm4gW3N0cnVjdHVyZWRDbG9uZSh0aGlzLm1vZGVsU3RhcnQpLCBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5tb2RlbEVuZCldO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHN0cnVjdHVyZWRDbG9uZSh0aGlzLm1vZGVsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIF9pbml0U3Vic2NyaXB0aW9uRm9yVmFsdWUoKSB7XHJcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zJC5wdXNoKHRoaXMuX3N0b3JlLnNlbGVjdChvYmplY3RGb3JtU2VsZWN0b3JzLnNlbGVjdFZhbHVlTW9kZWwodGhpcy5zZXR0aW5ncykpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogQ29tcG9uZW50VmFsdWVNb2RlbCB8IG51bGwgfCAoQ29tcG9uZW50VmFsdWVNb2RlbCB8IG51bGwpW10pID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHQpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubW9kZWxTdGFydCA9IHN0cnVjdHVyZWRDbG9uZShyZXN1bHRbMF0pIHx8IGRlZmF1bHRWYWx1ZU1vZGVsKHRoaXMuc2V0dGluZ3MpO1xyXG4gICAgICAgICAgICB0aGlzLm1vZGVsRW5kID0gc3RydWN0dXJlZENsb25lKHJlc3VsdFsxXSkgfHwgZGVmYXVsdFZhbHVlTW9kZWwodGhpcy5zZXR0aW5ncyk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gc3RydWN0dXJlZENsb25lKHJlc3VsdCB8fCBkZWZhdWx0VmFsdWVNb2RlbCh0aGlzLnNldHRpbmdzKSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy5fY3VzdG9tSW5pdCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgX2N1c3RvbUluaXQoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKCF0aGlzLm1vZGVsKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IGRlZmF1bHRWYWx1ZU1vZGVsKHRoaXMuc2V0dGluZ3MpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAodGhpcy5zZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsU3RhcnQ/LnZhbHVlIHx8ICF0aGlzLm1vZGVsRW5kPy52YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSBbXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5kYXRlTW9kZWwgPSBbdGhpcy5tb2RlbFN0YXJ0LnZhbHVlLCB0aGlzLm1vZGVsRW5kLnZhbHVlXTtcclxuXHJcbiAgICAgICAgICB0aGlzLm1vZGVsQ291bnRlciA9IHRoaXMuX2dldERheXNEaWZmZXJlbmNlKHRoaXMubW9kZWxTdGFydC52YWx1ZSwgdGhpcy5tb2RlbEVuZC52YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGF0ZU1vZGVsID0gdGhpcy5tb2RlbC52YWx1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5faXNJbml0ID0gdHJ1ZTtcclxuXHJcbiAgICAgIHRoaXMuX2RldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXREYXlzRGlmZmVyZW5jZShzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoc3RhcnREYXRlKTtcclxuICAgIGNvbnN0IGVuZCA9IG5ldyBEYXRlKGVuZERhdGUpO1xyXG5cclxuICAgIGlmIChpc05hTihzdGFydC5nZXRUaW1lKCkpIHx8IGlzTmFOKGVuZC5nZXRUaW1lKCkpKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgZGF0ZSBmb3JtYXQnKTtcclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZGlmZmVyZW5jZUluTXMgPSBNYXRoLmFicyhlbmQuZ2V0VGltZSgpIC0gc3RhcnQuZ2V0VGltZSgpKTtcclxuICAgIHJldHVybiBNYXRoLmZsb29yKGRpZmZlcmVuY2VJbk1zIC8gdGhpcy5fbWlsbGlzZWNvbmRzSW5EYXkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY2hhbmdlRGF5cyhzdGFydERhdGU6IHN0cmluZywgZGF5czogbnVtYmVyKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAoc3RhcnREYXRlKSB7XHJcbiAgICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoc3RhcnREYXRlKTtcclxuXHJcbiAgICAgIGlmIChpc05hTihzdGFydC5nZXRUaW1lKCkpKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBzdGFydCBkYXRlIGZvcm1hdCcpO1xyXG4gICAgICAgIHJldHVybiBzdGFydERhdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcihkYXlzKSB8fCBkYXlzIDwgMCkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0RheXMgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyJyk7XHJcbiAgICAgICAgcmV0dXJuIHN0YXJ0RGF0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IG5ld0RhdGUgPSBuZXcgRGF0ZShzdGFydC5nZXRUaW1lKCkgKyBkYXlzICogdGhpcy5fbWlsbGlzZWNvbmRzSW5EYXkpO1xyXG5cclxuICAgICAgaWYgKCEhdGhpcy5zZXR0aW5ncy5vcHRpb25zLm1heERhdGUgJiYgbmV3RGF0ZSA+IG5ldyBEYXRlKHRoaXMuc2V0dGluZ3Mub3B0aW9ucy5tYXhEYXRlKSkge1xyXG4gICAgICAgIGNvbnN0IG1heERheXMgPSBNYXRoLmZsb29yKChuZXcgRGF0ZSh0aGlzLnNldHRpbmdzLm9wdGlvbnMubWF4RGF0ZSkuZ2V0VGltZSgpIC0gc3RhcnQuZ2V0VGltZSgpKSAvIHRoaXMuX21pbGxpc2Vjb25kc0luRGF5KTtcclxuICAgICAgICBuZXdEYXRlID0gbmV3IERhdGUoc3RhcnQuZ2V0VGltZSgpICsgKG1heERheXMgKyAxKSAqIHRoaXMuX21pbGxpc2Vjb25kc0luRGF5KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIG5ld0RhdGUudG9JU09TdHJpbmcoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgKHNldHRpbmdzKSB7XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LWRhdGUtY29udGVudFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sXCIgW2NsYXNzLmNvbC04XT1cInNldHRpbmdzLm9wdGlvbnMuY291bnRlclwiPlxyXG4gICAgICAgIEBpZiAoc2V0dGluZ3Mub3B0aW9ucy5sYWJlbCkge1xyXG4gICAgICAgICAgPG1yeC1sYWJlbFxyXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwic2V0dGluZ3Mub3B0aW9ucy5yZXF1aXJlZFwiXHJcbiAgICAgICAgICAgIFt0b29sdGlwXT1cInNldHRpbmdzLm9wdGlvbnMudG9vbHRpcCB8fCAnJ1wiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IHNldHRpbmdzLm9wdGlvbnMubGFiZWwgfX1cclxuICAgICAgICAgIDwvbXJ4LWxhYmVsPlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPG1yeC1pbnB1dC1kYXRlLXRpbWVcclxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cInNldHRpbmdzLm9wdGlvbnMuZm9ybWF0XCJcclxuICAgICAgICAgIFtuZ01vZGVsXT1cImRhdGVNb2RlbFwiXHJcbiAgICAgICAgICBbZmllbGRzXT1cImF1dG9zYXZlRmllbGRzXCJcclxuICAgICAgICAgIFtyYW5nZV09XCJzZXR0aW5ncy5vcHRpb25zLnJhbmdlXCJcclxuICAgICAgICAgIFtkYXRlUGxhY2Vob2xkZXJdPVwiKHNldHRpbmdzLm9wdGlvbnMucmFuZ2UgPyBzZXR0aW5ncy5vcHRpb25zLnBsYWNlaG9sZGVyICsgJyAtICcgKyBzZXR0aW5ncy5vcHRpb25zLnBsYWNlaG9sZGVyIDogc2V0dGluZ3Mub3B0aW9ucy5wbGFjZWhvbGRlcikgfHwgJydcIlxyXG4gICAgICAgICAgW2lzTWFudWFsSW5wdXRdPVwiIXNldHRpbmdzLm9wdGlvbnMucmFuZ2VcIlxyXG4gICAgICAgICAgW3RpbWVwaWNrZXJdPVwiZ2V0Vmlld1R5cGVUaW1lcGlja2VyXCJcclxuICAgICAgICAgIFtpbnZhbGlkXT1cImdldEludmFsaWRcIlxyXG4gICAgICAgICAgW2ludmFsaWRNZXNzYWdlXT1cImdldEludmFsaWRNZXNzYWdlXCJcclxuICAgICAgICAgIFttaW5EYXRlXT1cInNldHRpbmdzLm9wdGlvbnMubWluRGF0ZVwiXHJcbiAgICAgICAgICBbbWF4RGF0ZV09XCJzZXR0aW5ncy5vcHRpb25zLm1heERhdGVcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcclxuICAgICAgICA+PC9tcngtaW5wdXQtZGF0ZS10aW1lPlxyXG5cclxuICAgICAgICBAaWYoISFzZXR0aW5ncy5vcHRpb25zLm1pbkRhdGUpIHtcclxuICAgICAgICAgIDxtcngtaGludC1lcnJvci1tZXNzYWdlICBcclxuICAgICAgICAgICAgbWVzc2FnZT1cItCc0LjQvdC40LzQsNC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDigJQge3sgc2V0dGluZ3Mub3B0aW9ucy5taW5EYXRlIHwgZGF0ZVRpbWVGb3JtYXQ6ICdtb3MnIDogJ2RkLk1NLnl5eXknfX1cIlxyXG4gICAgICAgICAgPjwvbXJ4LWhpbnQtZXJyb3ItbWVzc2FnZT5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZighIXNldHRpbmdzLm9wdGlvbnMubWF4RGF0ZSkge1xyXG4gICAgICAgICAgPG1yeC1oaW50LWVycm9yLW1lc3NhZ2UgIFxyXG4gICAgICAgICAgICBtZXNzYWdlPVwi0JzQsNC60YHQuNC80LDQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg4oCUIHt7IHNldHRpbmdzLm9wdGlvbnMubWF4RGF0ZSB8IGRhdGVUaW1lRm9ybWF0OiAnbW9zJyA6ICdkZC5NTS55eXl5JyB9fVwiXHJcbiAgICAgICAgICA+PC9tcngtaGludC1lcnJvci1tZXNzYWdlPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICBAaWYgKHNldHRpbmdzLm9wdGlvbnMuY291bnRlciAmJiBzZXR0aW5ncy5vcHRpb25zLnJhbmdlKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbCBjb2wtNFwiPlxyXG4gICAgICAgICAgPG1yeC1sYWJlbD5cclxuICAgICAgICAgICAge3sgc2V0dGluZ3Mub3B0aW9ucy5jb3VudGVyTGFiZWwgfX1cclxuICAgICAgICAgIDwvbXJ4LWxhYmVsPlxyXG4gICAgICAgICAgPG1yeC1pbnB1dC1udW1iZXJcclxuICAgICAgICAgICAgW25nTW9kZWxdPVwibW9kZWxDb3VudGVyXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIicwJ1wiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2V0dGluZ3Mub3B0aW9ucy5jb3VudGVyRWRpdGFibGVcIlxyXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb3VudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgPjwvbXJ4LWlucHV0LW51bWJlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbn1cclxuIl19
|
|
@@ -45,7 +45,7 @@ export class InputTextareaComponent extends BaseFieldComponent {
|
|
|
45
45
|
return !(this.settings.options.minLength && model.value && this.settings.options.minLength > model.value.length);
|
|
46
46
|
}
|
|
47
47
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTextareaComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputTextareaComponent, selector: "app-input-textarea", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-textarea-content\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n @if (!settings.options.editor) {\r\n <mrx-input-textarea\r\n [(ngModel)]=\"model.value\"\r\n [fields]=\"autosaveFields\"\r\n [rows]=\"2\"\r\n [autosize]=\"true\"\r\n [readonly]=\"false\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n [disabled]=\"disabled\"\r\n [minlength]=\"settings.options.minLength || 0\"\r\n [maxlength]=\"settings.options.maxLength || 0\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n\r\n ></mrx-input-textarea>\r\n } @else {\r\n <mrx-editor\r\n [(ngModel)]=\"model.value\"\r\n [readonly]=\"false\"\r\n [fields]=\"autosaveFields\"\r\n [toolbar]=\"config\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n (change)=\"onChangeInput()\"\r\n ></mrx-editor>\r\n }\r\n\r\n @if (settings.options.minLength) {\r\n <mrx-hint-error-message\r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u2014 {{ settings.options.minLength }}\"\r\n [value]=\"validateValue\"\r\n [minLength]=\"settings.options.minLength\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "component", type: i1.EditorComponent, selector: "mrx-editor", inputs: ["fields", "toolbar", "maxLength", "minHeight", "customClasses", "placeholder", "disabled", "readonly", "iframe", "defaultInlineStyle", "config", "editHTMLDocumentMode", "defaultMode", "invalid", "invalidMessage", "checkInvalid"], outputs: ["changed", "modelChange"] }, { kind: "component", type: i1.InputTextareaComponent, selector: "mrx-input-textarea", inputs: ["sanitizeEnabled", "allowedPattern", "fields", "disabled", "readonly", "autosize", "maxlength", "minlength", "rows", "placeholder", "invalid", "invalidMessage", "checkInvalid", "customClasses", "mask", "size"], outputs: ["changed", "blurred", "modelChange"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputTextareaComponent, selector: "app-input-textarea", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-textarea-content\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n @if (!settings.options.editor) {\r\n <mrx-input-textarea\r\n [(ngModel)]=\"model.value\"\r\n [fields]=\"autosaveFields\"\r\n [rows]=\"2\"\r\n [autosize]=\"true\"\r\n [readonly]=\"false\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n [disabled]=\"disabled\"\r\n [minlength]=\"settings.options.minLength || 0\"\r\n [maxlength]=\"settings.options.maxLength || 0\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n\r\n ></mrx-input-textarea>\r\n } @else {\r\n <mrx-editor\r\n [(ngModel)]=\"model.value\"\r\n [readonly]=\"false\"\r\n [fields]=\"autosaveFields\"\r\n [toolbar]=\"config\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n (change)=\"onChangeInput()\"\r\n ></mrx-editor>\r\n }\r\n\r\n @if (settings.options.minLength) {\r\n <mrx-hint-error-message\r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u2014 {{ settings.options.minLength }}\"\r\n [value]=\"validateValue\"\r\n [minLength]=\"settings.options.minLength\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "component", type: i1.EditorComponent, selector: "mrx-editor", inputs: ["fields", "toolbar", "maxLength", "minHeight", "customClasses", "placeholder", "disabled", "readonly", "iframe", "defaultInlineStyle", "config", "editHTMLDocumentMode", "defaultMode", "invalid", "invalidMessage", "checkInvalid"], outputs: ["changed", "modelChange"] }, { kind: "component", type: i1.InputTextareaComponent, selector: "mrx-input-textarea", inputs: ["sanitizeEnabled", "allowedPattern", "maxHeight", "fields", "disabled", "readonly", "autosize", "maxlength", "minlength", "rows", "placeholder", "invalid", "invalidMessage", "checkInvalid", "customClasses", "mask", "size"], outputs: ["changed", "blurred", "modelChange"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
49
49
|
}
|
|
50
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTextareaComponent, decorators: [{
|
|
51
51
|
type: Component,
|
|
@@ -1354,7 +1354,7 @@ class InputTextareaComponent extends BaseFieldComponent {
|
|
|
1354
1354
|
return !(this.settings.options.minLength && model.value && this.settings.options.minLength > model.value.length);
|
|
1355
1355
|
}
|
|
1356
1356
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTextareaComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1357
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputTextareaComponent, selector: "app-input-textarea", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-textarea-content\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n @if (!settings.options.editor) {\r\n <mrx-input-textarea\r\n [(ngModel)]=\"model.value\"\r\n [fields]=\"autosaveFields\"\r\n [rows]=\"2\"\r\n [autosize]=\"true\"\r\n [readonly]=\"false\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n [disabled]=\"disabled\"\r\n [minlength]=\"settings.options.minLength || 0\"\r\n [maxlength]=\"settings.options.maxLength || 0\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n\r\n ></mrx-input-textarea>\r\n } @else {\r\n <mrx-editor\r\n [(ngModel)]=\"model.value\"\r\n [readonly]=\"false\"\r\n [fields]=\"autosaveFields\"\r\n [toolbar]=\"config\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n (change)=\"onChangeInput()\"\r\n ></mrx-editor>\r\n }\r\n\r\n @if (settings.options.minLength) {\r\n <mrx-hint-error-message\r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u2014 {{ settings.options.minLength }}\"\r\n [value]=\"validateValue\"\r\n [minLength]=\"settings.options.minLength\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "component", type: i1$2.EditorComponent, selector: "mrx-editor", inputs: ["fields", "toolbar", "maxLength", "minHeight", "customClasses", "placeholder", "disabled", "readonly", "iframe", "defaultInlineStyle", "config", "editHTMLDocumentMode", "defaultMode", "invalid", "invalidMessage", "checkInvalid"], outputs: ["changed", "modelChange"] }, { kind: "component", type: i1$2.InputTextareaComponent, selector: "mrx-input-textarea", inputs: ["sanitizeEnabled", "allowedPattern", "fields", "disabled", "readonly", "autosize", "maxlength", "minlength", "rows", "placeholder", "invalid", "invalidMessage", "checkInvalid", "customClasses", "mask", "size"], outputs: ["changed", "blurred", "modelChange"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1357
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputTextareaComponent, selector: "app-input-textarea", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-textarea-content\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n @if (!settings.options.editor) {\r\n <mrx-input-textarea\r\n [(ngModel)]=\"model.value\"\r\n [fields]=\"autosaveFields\"\r\n [rows]=\"2\"\r\n [autosize]=\"true\"\r\n [readonly]=\"false\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n [disabled]=\"disabled\"\r\n [minlength]=\"settings.options.minLength || 0\"\r\n [maxlength]=\"settings.options.maxLength || 0\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n\r\n ></mrx-input-textarea>\r\n } @else {\r\n <mrx-editor\r\n [(ngModel)]=\"model.value\"\r\n [readonly]=\"false\"\r\n [fields]=\"autosaveFields\"\r\n [toolbar]=\"config\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [placeholder]=\"settings.options.placeholder || '\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043A\u0441\u0442'\"\r\n (modelChange)=\"dispatchModify($event)\"\r\n (change)=\"onChangeInput()\"\r\n ></mrx-editor>\r\n }\r\n\r\n @if (settings.options.minLength) {\r\n <mrx-hint-error-message\r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u2014 {{ settings.options.minLength }}\"\r\n [value]=\"validateValue\"\r\n [minLength]=\"settings.options.minLength\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "component", type: i1$2.EditorComponent, selector: "mrx-editor", inputs: ["fields", "toolbar", "maxLength", "minHeight", "customClasses", "placeholder", "disabled", "readonly", "iframe", "defaultInlineStyle", "config", "editHTMLDocumentMode", "defaultMode", "invalid", "invalidMessage", "checkInvalid"], outputs: ["changed", "modelChange"] }, { kind: "component", type: i1$2.InputTextareaComponent, selector: "mrx-input-textarea", inputs: ["sanitizeEnabled", "allowedPattern", "maxHeight", "fields", "disabled", "readonly", "autosize", "maxlength", "minlength", "rows", "placeholder", "invalid", "invalidMessage", "checkInvalid", "customClasses", "mask", "size"], outputs: ["changed", "blurred", "modelChange"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1358
1358
|
}
|
|
1359
1359
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTextareaComponent, decorators: [{
|
|
1360
1360
|
type: Component,
|
|
@@ -1518,6 +1518,7 @@ class InputDateComponent extends BaseFieldComponent {
|
|
|
1518
1518
|
return this.settings.options.viewType === DateTypeEnum.DateTime;
|
|
1519
1519
|
}
|
|
1520
1520
|
updateValue(event) {
|
|
1521
|
+
console.log(this.dateModel, 'this.dateModel before');
|
|
1521
1522
|
if (this._isInit) {
|
|
1522
1523
|
if (this.settings.options.range) {
|
|
1523
1524
|
if (event.value?.length === 0) {
|
|
@@ -1539,6 +1540,7 @@ class InputDateComponent extends BaseFieldComponent {
|
|
|
1539
1540
|
this.dateModel = event.value;
|
|
1540
1541
|
this.model.value = event.value;
|
|
1541
1542
|
}
|
|
1543
|
+
console.log(this.dateModel, 'this.dateModel after');
|
|
1542
1544
|
this.dispatchModify(event);
|
|
1543
1545
|
}
|
|
1544
1546
|
}
|
|
@@ -1640,11 +1642,11 @@ class InputDateComponent extends BaseFieldComponent {
|
|
|
1640
1642
|
}
|
|
1641
1643
|
}
|
|
1642
1644
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1643
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputDateComponent, selector: "app-input-date", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.InputNumberComponent, selector: "mrx-input-number", inputs: ["fields", "placeholder", "innerClass", "customClasses", "required", "allowNegative", "size", "separator", "decimalSeparator", "decimals", "isNullableValue", "isAutoCorrectingValue", "invalid", "checkInvalid", "numberType", "invalidMessage", "disabled", "readonly", "minValue", "maxValue"], outputs: ["modelChange", "modelChangeBlur"] }, { kind: "component", type: i1$2.InputDateTimeComponent, selector: "mrx-input-date-time", inputs: ["fields", "size", "customClasses", "dateLabel", "timeLabel", "datePlaceholder", "timePlaceholder", "disabled", "readonly", "required", "timepicker", "range", "timezone", "inline", "isManualInput", "addMinTime", "addMaxTime", "addMinTimeObj", "addMaxTimeObj", "disableValidate", "disableIncludes", "container", "invalid", "invalidMessage", "checkInvalid", "minDate", "maxDate", "calendarPosition"], outputs: ["changed", "modelChange", "blurred"] }, { kind: "component", type: i1$2.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }, { kind: "pipe", type: i1$2.DateTimeFormatPipe, name: "dateTimeFormat" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1645
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputDateComponent, selector: "app-input-date", usesInheritance: true, ngImport: i0, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [dateFormat]=\"settings.options.format\"\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "switchSize", "isCheckbox", "checkboxLabel", "checkboxValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeSwitchValue", "changeCheckboxValue", "clickedLink"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.InputNumberComponent, selector: "mrx-input-number", inputs: ["fields", "placeholder", "innerClass", "customClasses", "required", "allowNegative", "size", "separator", "decimalSeparator", "decimals", "isNullableValue", "isAutoCorrectingValue", "invalid", "checkInvalid", "numberType", "invalidMessage", "disabled", "readonly", "minValue", "maxValue"], outputs: ["modelChange", "modelChangeBlur"] }, { kind: "component", type: i1$2.InputDateTimeComponent, selector: "mrx-input-date-time", inputs: ["inputMask", "dateFormat", "fields", "size", "customClasses", "dateLabel", "timeLabel", "datePlaceholder", "timePlaceholder", "disabled", "readonly", "required", "timepicker", "range", "timezone", "inline", "isManualInput", "addMinTime", "addMaxTime", "addMinTimeObj", "addMaxTimeObj", "disableValidate", "disableIncludes", "container", "invalid", "invalidMessage", "checkInvalid", "minDate", "maxDate", "calendarPosition"], outputs: ["changed", "modelChange", "blurred"] }, { kind: "component", type: i1$2.HintErrorMessageComponent, selector: "mrx-hint-error-message", inputs: ["message", "value", "maxValue", "minValue", "minLength", "maxLength", "checkInvalid"] }, { kind: "pipe", type: i1$2.DateTimeFormatPipe, name: "dateTimeFormat" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1644
1646
|
}
|
|
1645
1647
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputDateComponent, decorators: [{
|
|
1646
1648
|
type: Component,
|
|
1647
|
-
args: [{ selector: 'app-input-date', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n" }]
|
|
1649
|
+
args: [{ selector: 'app-input-date', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (settings) {\r\n <div class=\"input-date-content\">\r\n <div class=\"row\">\r\n <div class=\"col\" [class.col-8]=\"settings.options.counter\">\r\n @if (settings.options.label) {\r\n <mrx-label\r\n [required]=\"settings.options.required\"\r\n [tooltip]=\"settings.options.tooltip || ''\"\r\n >\r\n {{ settings.options.label }}\r\n </mrx-label>\r\n }\r\n\r\n <mrx-input-date-time\r\n [dateFormat]=\"settings.options.format\"\r\n [ngModel]=\"dateModel\"\r\n [fields]=\"autosaveFields\"\r\n [range]=\"settings.options.range\"\r\n [datePlaceholder]=\"(settings.options.range ? settings.options.placeholder + ' - ' + settings.options.placeholder : settings.options.placeholder) || ''\"\r\n [isManualInput]=\"!settings.options.range\"\r\n [timepicker]=\"getViewTypeTimepicker\"\r\n [invalid]=\"getInvalid\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n [minDate]=\"settings.options.minDate\"\r\n [maxDate]=\"settings.options.maxDate\"\r\n [disabled]=\"disabled\"\r\n (modelChange)=\"updateValue($event)\"\r\n ></mrx-input-date-time>\r\n\r\n @if(!!settings.options.minDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.minDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy'}}\"\r\n ></mrx-hint-error-message>\r\n }\r\n\r\n @if(!!settings.options.maxDate) {\r\n <mrx-hint-error-message \r\n message=\"\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u2014 {{ settings.options.maxDate | dateTimeFormat: 'mos' : 'dd.MM.yyyy' }}\"\r\n ></mrx-hint-error-message>\r\n }\r\n </div>\r\n\r\n @if (settings.options.counter && settings.options.range) {\r\n <div class=\"col col-4\">\r\n <mrx-label>\r\n {{ settings.options.counterLabel }}\r\n </mrx-label>\r\n <mrx-input-number\r\n [ngModel]=\"modelCounter\"\r\n [placeholder]=\"'0'\"\r\n [disabled]=\"!settings.options.counterEditable\"\r\n (ngModelChange)=\"updateCounter($event)\"\r\n ></mrx-input-number>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n}\r\n" }]
|
|
1648
1650
|
}] });
|
|
1649
1651
|
|
|
1650
1652
|
class InputInnComponent extends BaseFieldComponent {
|