@testgorilla/tgo-ui 2.8.1 → 2.8.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/components/autocomplete/autocomplete.component.d.ts +15 -1
- package/components/checkbox/checkbox.component.d.ts +16 -2
- package/components/datepicker/datepicker.component.d.ts +33 -6
- package/components/datepicker/datepicker.component.module.d.ts +3 -1
- package/components/deprecated-table/deprecated-table.component.d.ts +1 -1
- package/components/deprecated-table/deprecated-table.component.module.d.ts +1 -1
- package/components/dropdown/dropdown.component.d.ts +15 -1
- package/components/field/field.component.d.ts +15 -1
- package/components/phone-input/phone-input.component.d.ts +15 -1
- package/components/segmented-bar/segmented-bar.component.module.d.ts +1 -1
- package/components/table/table.component.module.d.ts +1 -1
- package/components/validation-error/validation-error.component.d.ts +1 -1
- package/esm2022/components/autocomplete/autocomplete.component.mjs +21 -3
- package/esm2022/components/checkbox/checkbox.component.mjs +22 -4
- package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +3 -3
- package/esm2022/components/datepicker/datepicker.component.mjs +64 -26
- package/esm2022/components/datepicker/datepicker.component.module.mjs +10 -3
- package/esm2022/components/deprecated-table/deprecated-table.component.mjs +2 -2
- package/esm2022/components/deprecated-table/deprecated-table.component.module.mjs +4 -3
- package/esm2022/components/dropdown/dropdown.component.mjs +21 -3
- package/esm2022/components/field/field.component.mjs +21 -3
- package/esm2022/components/password-criteria/password.component.mjs +1 -1
- package/esm2022/components/phone-input/phone-input.component.mjs +22 -4
- package/esm2022/components/segmented-bar/segmented-bar.component.mjs +2 -2
- package/esm2022/components/segmented-bar/segmented-bar.component.module.mjs +3 -2
- package/esm2022/components/table/table.component.mjs +1 -1
- package/esm2022/components/table/table.component.module.mjs +2 -2
- package/esm2022/components/validation-error/validation-error.component.mjs +1 -1
- package/esm2022/models/colors.model.mjs +2 -1
- package/esm2022/pipes/data-property-getter.mjs +33 -0
- package/esm2022/public-api.mjs +2 -2
- package/fesm2022/testgorilla-tgo-ui.mjs +181 -47
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/models/colors.model.d.ts +1 -0
- package/package.json +1 -1
- package/projects/tgo-canopy-ui/theme/_input.scss +1 -0
- package/projects/tgo-canopy-ui/theme/_variables.scss +1 -0
- package/public-api.d.ts +1 -1
- package/esm2022/components/deprecated-table/pipes/data-property-getter.mjs +0 -33
- /package/{components/deprecated-table/pipes → pipes}/data-property-getter.d.ts +0 -0
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
/* eslint-disable no-underscore-dangle */
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter,
|
|
3
|
-
import { FormControl, FormGroup
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, Input, Optional, Output, Self, ViewEncapsulation, } from '@angular/core';
|
|
3
|
+
import { FormControl, FormGroup } from '@angular/forms';
|
|
4
4
|
import { LanguageService } from '../../utils/localization/language.service';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/platform-browser";
|
|
7
|
-
import * as i2 from "@angular/
|
|
8
|
-
import * as i3 from "@angular/
|
|
9
|
-
import * as i4 from "@angular/material/
|
|
10
|
-
import * as i5 from "
|
|
11
|
-
import * as i6 from "
|
|
7
|
+
import * as i2 from "@angular/forms";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "@angular/material/form-field";
|
|
10
|
+
import * as i5 from "@angular/material/input";
|
|
11
|
+
import * as i6 from "../icon/icon.component";
|
|
12
12
|
import * as i7 from "@angular/material/datepicker";
|
|
13
13
|
import * as i8 from "./no-date-format.directive";
|
|
14
|
-
import * as i9 from "
|
|
14
|
+
import * as i9 from "../validation-error/validation-error.component";
|
|
15
|
+
import * as i10 from "../../pipes/ui-translate.pipe";
|
|
16
|
+
import * as i11 from "../../pipes/has-validation-error.pipe";
|
|
17
|
+
// eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
|
|
15
18
|
export class DatepickerComponent {
|
|
16
19
|
/**
|
|
17
20
|
* Input field errors
|
|
@@ -23,10 +26,11 @@ export class DatepickerComponent {
|
|
|
23
26
|
this._errors = errors?.filter(Boolean).map(error => this.sanitizer.bypassSecurityTrustHtml(error));
|
|
24
27
|
this.errorsLength = this.setErrorsLength();
|
|
25
28
|
}
|
|
26
|
-
constructor(defaultAppTheme, cdr, sanitizer) {
|
|
29
|
+
constructor(defaultAppTheme, cdr, sanitizer, ngControl) {
|
|
27
30
|
this.defaultAppTheme = defaultAppTheme;
|
|
28
31
|
this.cdr = cdr;
|
|
29
32
|
this.sanitizer = sanitizer;
|
|
33
|
+
this.ngControl = ngControl;
|
|
30
34
|
this.class = 'ui-datepicker';
|
|
31
35
|
/**
|
|
32
36
|
* Form field label
|
|
@@ -92,6 +96,27 @@ export class DatepickerComponent {
|
|
|
92
96
|
* @memberof DatepickerComponent
|
|
93
97
|
*/
|
|
94
98
|
this.applicationTheme = 'light';
|
|
99
|
+
/**
|
|
100
|
+
* Hide in-build errors for Reactive Forms
|
|
101
|
+
*
|
|
102
|
+
* @type {number}
|
|
103
|
+
* @memberof DatepickerComponent
|
|
104
|
+
*/
|
|
105
|
+
this.hideBuiltInErrors = false;
|
|
106
|
+
/**
|
|
107
|
+
* Hide label in errors
|
|
108
|
+
*
|
|
109
|
+
* @type {number}
|
|
110
|
+
* @memberof DatepickerComponent
|
|
111
|
+
*/
|
|
112
|
+
this.hideLabelInErrors = false;
|
|
113
|
+
/**
|
|
114
|
+
* Prevent user input
|
|
115
|
+
*
|
|
116
|
+
* @type {boolean}
|
|
117
|
+
* @memberof DatepickerComponent
|
|
118
|
+
*/
|
|
119
|
+
this.preventUserInput = false;
|
|
95
120
|
/**
|
|
96
121
|
* @ignore
|
|
97
122
|
*/
|
|
@@ -115,6 +140,9 @@ export class DatepickerComponent {
|
|
|
115
140
|
if (defaultAppTheme) {
|
|
116
141
|
this.applicationTheme = defaultAppTheme;
|
|
117
142
|
}
|
|
143
|
+
if (this.ngControl != null) {
|
|
144
|
+
this.ngControl.valueAccessor = this;
|
|
145
|
+
}
|
|
118
146
|
}
|
|
119
147
|
get hint() {
|
|
120
148
|
if (this.hintMessage === undefined) {
|
|
@@ -122,9 +150,21 @@ export class DatepickerComponent {
|
|
|
122
150
|
}
|
|
123
151
|
return this.hintMessage;
|
|
124
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Used to mark component view as dirty when touched programmatically with markAsTouched/markAllAsTouched or errors
|
|
155
|
+
* to display validation errors that might happen (e.g. required)
|
|
156
|
+
*/
|
|
157
|
+
// eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
|
|
158
|
+
ngDoCheck() {
|
|
159
|
+
if (this.ngControl?.touched || this.ngControl?.errors) {
|
|
160
|
+
this.cdr.markForCheck();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
// eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
|
|
125
164
|
ngOnInit() {
|
|
126
165
|
document.body.setAttribute('theme', this.applicationTheme);
|
|
127
166
|
}
|
|
167
|
+
// eslint-disable-next-line @angular-eslint/no-conflicting-lifecycle
|
|
128
168
|
ngOnChanges() {
|
|
129
169
|
if (this.isRange) {
|
|
130
170
|
this.setRange();
|
|
@@ -197,30 +237,22 @@ export class DatepickerComponent {
|
|
|
197
237
|
const fullDate = new Date(fullDateString);
|
|
198
238
|
this.onValueChange(fullDate);
|
|
199
239
|
}
|
|
200
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
201
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DatepickerComponent, selector: "ui-datepicker", inputs: { label: "label", fieldName: "fieldName", placeholder: "placeholder", id: "id", value: "value", errors: "errors", isRange: "isRange", disabled: "disabled", required: "required", hintMessage: "hintMessage", updateOnBlur: "updateOnBlur", language: "language", showBottomContent: "showBottomContent", fullWidth: "fullWidth", minDate: "minDate", maxDate: "maxDate", monthPicker: "monthPicker", applicationTheme: "applicationTheme" }, outputs: { changed: "changed" }, host: { properties: { "class": "this.class" } }, providers: [
|
|
202
|
-
{
|
|
203
|
-
provide: NG_VALUE_ACCESSOR,
|
|
204
|
-
useExisting: forwardRef(() => DatepickerComponent),
|
|
205
|
-
multi: true,
|
|
206
|
-
},
|
|
207
|
-
], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <mat-form-field *ngIf=\"!monthPicker; else dateYearPicker\" #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" [placeholder]=\"(translationContext + 'START_DATE') | uiTranslate : language\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" [placeholder]=\"(translationContext + 'END_DATE') | uiTranslate : language\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n </mat-form-field>\n\n <ng-template #dateYearPicker>\n <mat-form-field appNoDateFormat #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n\n <ng-container >\n <input matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n >\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon *ngIf=\"applicationTheme !== 'classic'\" matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker panelClass=\"month-picker\" #dp startView=\"multi-year\" (monthSelected)=\"setMonthAndYear($event, dp)\"></mat-datepicker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n\n </mat-form-field>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:4px;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff2fc}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#fff2fc}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:#d410aa}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white }[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: $brand-10}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i7.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: i7.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i7.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i7.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i7.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i8.NoDateFormatDirective, selector: "[appNoDateFormat]" }, { kind: "pipe", type: i9.UiTranslatePipe, name: "uiTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
240
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
241
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DatepickerComponent, selector: "ui-datepicker", inputs: { label: "label", fieldName: "fieldName", placeholder: "placeholder", id: "id", value: "value", errors: "errors", isRange: "isRange", disabled: "disabled", required: "required", hintMessage: "hintMessage", updateOnBlur: "updateOnBlur", language: "language", showBottomContent: "showBottomContent", fullWidth: "fullWidth", minDate: "minDate", maxDate: "maxDate", monthPicker: "monthPicker", applicationTheme: "applicationTheme", hideBuiltInErrors: "hideBuiltInErrors", hideLabelInErrors: "hideLabelInErrors", preventUserInput: "preventUserInput" }, outputs: { changed: "changed" }, host: { properties: { "class": "this.class" } }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <mat-form-field\n *ngIf=\"!monthPicker; else dateYearPicker\"\n #uiDatepicker\n appearance=\"outline\"\n [color]=\"(errorsLength || (ngControl?.errors && ngControl?.touched )) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" [placeholder]=\"(translationContext + 'START_DATE') | uiTranslate : language\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" [placeholder]=\"(translationContext + 'END_DATE') | uiTranslate : language\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))\">\n <ng-container *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n </ng-container>\n <ui-validation-error *ngIf=\"ngControl && !hideBuiltInErrors\" [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\" [language]=\"language\"></ui-validation-error>\n </mat-hint>\n </mat-form-field>\n\n <ng-template #dateYearPicker>\n <mat-form-field\n appNoDateFormat\n #uiDatepicker\n appearance=\"outline\"\n [color]=\"(errorsLength || (ngControl?.errors && ngControl?.touched )) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n\n <ng-container >\n <input matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n >\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon *ngIf=\"applicationTheme !== 'classic'\" matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker panelClass=\"month-picker\" #dp startView=\"multi-year\" (monthSelected)=\"setMonthAndYear($event, dp)\"></mat-datepicker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors && !(ngControl.touched && (ngControl?.errors | hasValidationError))\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength || (ngControl.touched && (ngControl?.errors | hasValidationError))\">\n <ng-container *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n </ng-container>\n <ui-validation-error *ngIf=\"ngControl && !hideBuiltInErrors\" [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\" [language]=\"language\"></ui-validation-error>\n </mat-hint>\n\n </mat-form-field>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff2fc}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#fff2fc}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:#d410aa}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white }[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: $brand-10}.info{margin-top:4px!important;padding-bottom:10px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i6.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i7.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: i7.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i7.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i7.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i7.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i8.NoDateFormatDirective, selector: "[appNoDateFormat]" }, { kind: "component", type: i9.ValidationErrorComponent, selector: "ui-validation-error", inputs: ["ngControl", "label", "applicationTheme", "language"] }, { kind: "pipe", type: i10.UiTranslatePipe, name: "uiTranslate" }, { kind: "pipe", type: i11.HasValidationErrorPipe, name: "hasValidationError" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
208
242
|
}
|
|
209
243
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponent, decorators: [{
|
|
210
244
|
type: Component,
|
|
211
|
-
args: [{ selector: 'ui-datepicker', encapsulation: ViewEncapsulation.None, providers: [
|
|
212
|
-
{
|
|
213
|
-
provide: NG_VALUE_ACCESSOR,
|
|
214
|
-
useExisting: forwardRef(() => DatepickerComponent),
|
|
215
|
-
multi: true,
|
|
216
|
-
},
|
|
217
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <mat-form-field *ngIf=\"!monthPicker; else dateYearPicker\" #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" [placeholder]=\"(translationContext + 'START_DATE') | uiTranslate : language\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" [placeholder]=\"(translationContext + 'END_DATE') | uiTranslate : language\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n </mat-form-field>\n\n <ng-template #dateYearPicker>\n <mat-form-field appNoDateFormat #uiDatepicker appearance=\"outline\" [color]=\"errorsLength ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\">\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n\n <ng-container >\n <input matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n >\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon *ngIf=\"applicationTheme !== 'classic'\" matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker panelClass=\"month-picker\" #dp startView=\"multi-year\" (monthSelected)=\"setMonthAndYear($event, dp)\"></mat-datepicker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\"><ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>{{ error }}</div>\n </mat-hint>\n\n </mat-form-field>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:4px;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:9px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff2fc}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#fff2fc}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:#d410aa}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white }[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: $brand-10}\n"] }]
|
|
245
|
+
args: [{ selector: 'ui-datepicker', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <mat-form-field\n *ngIf=\"!monthPicker; else dateYearPicker\"\n #uiDatepicker\n appearance=\"outline\"\n [color]=\"(errorsLength || (ngControl?.errors && ngControl?.touched )) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n <ng-container *ngIf=\"!isRange\">\n <input *ngIf=\"!isRange\" matInput\n [matDatepicker]=\"picker\"\n (blur)=\"onTouch()\"\n (dateChange)=\"onValueChange($event.value)\"\n [id]=\"id!\"\n [placeholder]=\"placeholder!\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [readonly]=\"preventUserInput\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matIconSuffix [for]=\"picker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </ng-container>\n\n <ng-container *ngIf=\"isRange\">\n <mat-date-range-input *ngIf=\"isRange\" [formGroup]=\"range\" [rangePicker]=\"rangePicker\" [min]=\"minDate\" [max]=\"maxDate\" >\n <input matStartDate #dateRangeStart formControlName=\"start\" [placeholder]=\"(translationContext + 'START_DATE') | uiTranslate : language\" >\n <input matEndDate #dateRangeEnd formControlName=\"end\" [placeholder]=\"(translationContext + 'END_DATE') | uiTranslate : language\" (dateChange)=\"dateRangeChange(dateRangeStart.value, dateRangeEnd.value)\">\n </mat-date-range-input>\n <mat-datepicker-toggle matIconSuffix [for]=\"rangePicker\">\n <ui-icon matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #rangePicker></mat-date-range-picker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors && !(ngControl?.touched && (ngControl?.errors | hasValidationError))\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength || (ngControl?.touched && (ngControl?.errors | hasValidationError))\">\n <ng-container *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n </ng-container>\n <ui-validation-error *ngIf=\"ngControl && !hideBuiltInErrors\" [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\" [language]=\"language\"></ui-validation-error>\n </mat-hint>\n </mat-form-field>\n\n <ng-template #dateYearPicker>\n <mat-form-field\n appNoDateFormat\n #uiDatepicker\n appearance=\"outline\"\n [color]=\"(errorsLength || (ngControl?.errors && ngControl?.touched )) ? 'warn' : 'accent'\"\n [ngClass]=\"{ 'hide-bottom-content': !showBottomContent, 'full-width': fullWidth }\"\n >\n <mat-label *ngIf=\"label\">{{ label }}<span *ngIf=\"required\"> *</span></mat-label>\n\n <ng-container >\n <input matInput\n [id]=\"id!\"\n (blur)=\"onTouch()\"\n [placeholder]=\"placeholder!\"\n [matDatepicker]=\"dp\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [name]=\"fieldName!\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [readonly]=\"preventUserInput\"\n (change)=\"onInput($event)\"\n (dateChange)=\"onValueChange($event.value)\"\n >\n <mat-datepicker-toggle matIconSuffix [for]=\"dp\">\n <ui-icon *ngIf=\"applicationTheme !== 'classic'\" matDatepickerToggleIcon [applicationTheme]=\"applicationTheme\" name=\"Calendar\" size=\"24\" color=\"inherit\"></ui-icon>\n </mat-datepicker-toggle>\n <mat-datepicker panelClass=\"month-picker\" #dp startView=\"multi-year\" (monthSelected)=\"setMonthAndYear($event, dp)\"></mat-datepicker>\n </ng-container>\n\n <mat-hint class=\"info\" *ngIf=\"hint && !_errors && !(ngControl.touched && (ngControl?.errors | hasValidationError))\">{{ hint }}</mat-hint>\n <mat-hint class=\"error\" *ngIf=\"errorsLength || (ngControl.touched && (ngControl?.errors | hasValidationError))\">\n <ng-container *ngIf=\"errorsLength\">\n <div class=\"errors\" *ngFor=\"let error of _errors\">\n <ui-icon [applicationTheme]=\"applicationTheme\" name=\"Error\"></ui-icon>\n <span [innerHTML]=\"error\"></span>\n </div>\n </ng-container>\n <ui-validation-error *ngIf=\"ngControl && !hideBuiltInErrors\" [ngControl]=\"ngControl\" [label]=\"hideLabelInErrors ? null : label\" [language]=\"language\"></ui-validation-error>\n </mat-hint>\n\n </mat-form-field>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.month-picker .mat-calendar-period-button{pointer-events:none}.month-picker .mat-calendar-arrow{display:none}.ui-datepicker{width:100%}.ui-datepicker .mat-mdc-form-field{margin-top:0;min-width:296px}.ui-datepicker .mat-mdc-form-field.full-width{width:100%}.ui-datepicker .mat-mdc-form-field.hide-bottom-content .mat-mdc-form-field-subscript-wrapper{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{height:48px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:22px}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline{color:#888}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mdc-notched-outline .mdc-floating-label--float-above{transform:translateY(-30px) scale(.75)}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-infix{min-height:48px;max-height:48px;padding:4px 0;line-height:22px;display:inline-flex;align-items:center}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper{padding:0 0 12px;margin-top:0;font-size:12px;line-height:16px;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-subscript-wrapper .mat-form-field-hint-spacer{display:none}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.info{color:#888;width:100%}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-bottom-align:before{height:0}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint-wrapper{padding:0;position:relative}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error,.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error svg{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error{display:flex}.ui-datepicker .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-form-field-hint.error ui-icon{margin-right:4px}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__leading,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__trailing,.ui-datepicker .mat-mdc-form-field.mat-warn.mat-form-field-appearance-outline .mdc-notched-outline .mdc-notched-outline__notch{border-color:#cb7b7a}.ui-datepicker .mat-mdc-form-field.mat-warn.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#cb7b7a}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error{display:flex;flex-flow:column;row-gap:4px}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint.error .errors{display:flex;padding-bottom:10px}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-mdc-form-field-flex:hover .mdc-notched-outline{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-accent.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-form-field-label mat-label{color:#276678}.ui-datepicker .mat-mdc-form-field.mat-form-field-disabled.mat-form-field-appearance-outline .mdc-notched-outline{color:#e0e0e0}.ui-datepicker .mat-mdc-form-field .mat-mdc-form-field-hint .hint-message{color:#888!important;margin-top:4px}.mat-datepicker-content .mat-mdc-button.mat-unthemed .mdc-button__label>span{font-weight:600}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#e9f0f1}.mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#e9f0f1}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff2fc}[theme=dark] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before,[theme=light] .mat-datepicker-content.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background-color:#fff2fc}[theme=dark] .mat-datepicker-content .mat-calendar-body-selected,[theme=light] .mat-datepicker-content .mat-calendar-body-selected{background-color:#d410aa}[theme=dark] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected),[theme=light] .mat-datepicker-content .mat-calendar-body-today:not(.mat-calendar-body-selected){background:transparent;--mat-datepicker-calendar-date-focus-state-background-color: $tgo-white }[theme=dark] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),[theme=light] .mat-datepicker-content .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){--mat-datepicker-calendar-date-focus-state-background-color: $brand-10}.info{margin-top:4px!important;padding-bottom:10px}\n"] }]
|
|
218
246
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
219
247
|
type: Optional
|
|
220
248
|
}, {
|
|
221
249
|
type: Inject,
|
|
222
250
|
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
223
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }
|
|
251
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }, { type: i2.NgControl, decorators: [{
|
|
252
|
+
type: Optional
|
|
253
|
+
}, {
|
|
254
|
+
type: Self
|
|
255
|
+
}] }]; }, propDecorators: { class: [{
|
|
224
256
|
type: HostBinding
|
|
225
257
|
}], label: [{
|
|
226
258
|
type: Input
|
|
@@ -258,7 +290,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
258
290
|
type: Input
|
|
259
291
|
}], applicationTheme: [{
|
|
260
292
|
type: Input
|
|
293
|
+
}], hideBuiltInErrors: [{
|
|
294
|
+
type: Input
|
|
295
|
+
}], hideLabelInErrors: [{
|
|
296
|
+
type: Input
|
|
297
|
+
}], preventUserInput: [{
|
|
298
|
+
type: Input
|
|
261
299
|
}], changed: [{
|
|
262
300
|
type: Output
|
|
263
301
|
}] } });
|
|
264
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUNBQXlDO0FBQ3pDLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUFFLE1BQU0sRUFDbkIsS0FBSyxFQUNNLFFBQVEsRUFDbkIsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7Ozs7Ozs7Ozs7O0FBbUI1RSxNQUFNLE9BQU8sbUJBQW1CO0lBNEM5Qjs7Ozs7T0FLRztJQUNILElBQWEsTUFBTSxDQUFDLE1BQWdCO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQTZIRCxZQUM2RSxlQUFpQyxFQUNwRyxHQUFzQixFQUN0QixTQUF1QjtRQUY0QyxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFDcEcsUUFBRyxHQUFILEdB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dW5kZXJzY29yZS1kYW5nbGUgKi9cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLCBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL2xvY2FsaXphdGlvbi9sYW5ndWFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVGhlbWUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWwnO1xuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1kYXRlcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZXBpY2tlckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZXBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASG9zdEJpbmRpbmcoKSBjbGFzcyA9ICd1aS1kYXRlcGlja2VyJztcblxuICAvKipcbiAgICogRm9ybSBmaWVsZCBsYWJlbFxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw/ID0gJyc7XG5cbiAgLyoqXG4gICAqIElucHV0IG5hbWUgYXR0cmlidXRlXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBmaWVsZE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElucHV0IHBsYWNlaG9sZGVyXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcj8gPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgaWRcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGlkPyA9ICcnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YWx1ZVxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdmFsdWU/OiBzdHJpbmcgfCBEYXRlO1xuXG4gIF9lcnJvcnM6IFNhZmVIdG1sW107XG4gIC8qKlxuICAgKiBJbnB1dCBmaWVsZCBlcnJvcnNcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNldCBlcnJvcnMoZXJyb3JzOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuX2Vycm9ycyA9IGVycm9ycz8uZmlsdGVyKEJvb2xlYW4pLm1hcChlcnJvciA9PiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChlcnJvcikpO1xuICAgIHRoaXMuZXJyb3JzTGVuZ3RoID0gdGhpcy5zZXRFcnJvcnNMZW5ndGgoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGlucHV0IGlzIGRhdGUgcmFuZ2VcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpc1JhbmdlOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGlucHV0IGlzIGRpc2FibGVkXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElucHV0IGlzIHJlcXVpcmVkIG9yIG5vdFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBIaW50IHRleHRcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGhpbnRNZXNzYWdlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElucHV0IGlzIHVwZGF0ZSBvbmx5IG9uIGJsdXJcbiAgICpcbiAgICogQHR5cGUge0Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB1cGRhdGVPbkJsdXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGxhbmd1YWdlIHRvIGJlIHVzZWRcbiAgICpcbiAgICogQHR5cGUge0xhbmd1YWdlfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFuZ3VhZ2UgPSBMYW5ndWFnZVNlcnZpY2UuZGVmYXVsdExhbmd1YWdlO1xuXG4gIC8qKlxuICAgKiBTaG93IHJlc2VydmVkIGNvbnRlbnQgYmVsb3cgZm9ybSBmaWVsZFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNob3dCb3R0b21Db250ZW50ID0gdHJ1ZTtcblxuICAvKipcbiAgICogU2V0IGZ1bGwgd2lkdGggRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGZ1bGxXaWR0aCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTZXQgbWluIGRhdGUgZm9yIERhdGVwaWNrZXJcbiAgICpcbiAgICogQHR5cGUge0RhdGV9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtaW5EYXRlOiBEYXRlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTZXQgbWF4IGRhdGUgZm9yIERhdGVwaWNrZXJcbiAgICpcbiAgICogQHR5cGUge0RhdGV9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtYXhEYXRlOiBEYXRlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTaG93IGFuZCBwaWNrIGRhdGUgd2l0aG91dCBkYXlcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtb250aFBpY2tlciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHt9O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvblRvdWNoID0gKCkgPT4ge307XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgaXMgY2hhbmdlIC0gd2hlbiB1c2VkIG91dHNpZGUgb2YgZm9ybVxuICAgKlxuICAgKiBAdHlwZSB7RGF0ZX1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBPdXRwdXQoKSBjaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlIHwgc3RyaW5nPigpO1xuXG4gIHJhbmdlID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgc3RhcnQ6IG5ldyBGb3JtQ29udHJvbDxEYXRlIHwgbnVsbD4obnVsbCksXG4gICAgZW5kOiBuZXcgRm9ybUNvbnRyb2w8RGF0ZSB8IG51bGw+KG51bGwpLFxuICB9KTtcblxuICBlcnJvcnNMZW5ndGg6IGJvb2xlYW47XG4gIHByb3RlY3RlZCB0cmFuc2xhdGlvbkNvbnRleHQgPSAnREFURVBJQ0tFUi4nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIGdldCBoaW50KCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuaGludE1lc3NhZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNSYW5nZSA/ICdNTS9ERC9ZWVlZIC0gTU0vREQvWVlZWScgOiB0aGlzLm1vbnRoUGlja2VyID8gJ01NL1lZWVknIDogJ01NL0REL1lZWVknO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmhpbnRNZXNzYWdlO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoJ3RoZW1lJywgdGhpcy5hcHBsaWNhdGlvblRoZW1lKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgIHRoaXMuc2V0UmFuZ2UoKTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgZXJyb3JzIGxlbmd0aCBmb3IgdmFsaWRhdGlvblxuICAvLyBDb25zaWRlciBvbmx5IHRob3NlIGVycm9ycyB3aGljaCB3aGljaCBhcmUgbm90IGVtcHR5XG4gIHNldEVycm9yc0xlbmd0aCgpOiBib29sZWFuIHtcbiAgICBpZiAoISF0aGlzLl9lcnJvcnMpIHtcbiAgICAgIHJldHVybiB0aGlzLl9lcnJvcnMuZmlsdGVyKGVyciA9PiAhIWVycikubGVuZ3RoID4gMCA/IHRydWUgOiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogRGF0ZSB8IHN0cmluZykge1xuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5lcnJvcnNMZW5ndGggPSB0aGlzLnNldEVycm9yc0xlbmd0aCgpO1xuICAgIGlmICghdGhpcy51cGRhdGVPbkJsdXIpIHtcbiAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgIH1cbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICB0aGlzLmNoYW5nZWQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogRGF0ZSB8IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5pc1JhbmdlKSB7XG4gICAgICB0aGlzLnNldFJhbmdlKCk7XG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBkYXRlUmFuZ2VDaGFuZ2Uoc3RhcnQ6IHN0cmluZywgZW5kOiBzdHJpbmcpIHtcbiAgICBpZiAoc3RhcnQgJiYgZW5kKSB7XG4gICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UodGhpcy5nZXRSYW5nZShzdGFydCwgZW5kKSk7XG4gICAgfVxuICB9XG5cbiAgc2V0TW9udGhBbmRZZWFyKG5vcm1hbGl6ZWRNb250aEFuZFllYXI6IGFueSwgZGF0ZXBpY2tlcjogTWF0RGF0ZXBpY2tlcjxEYXRlPikge1xuICAgIGNvbnN0IGN0cmxWYWx1ZSA9IHR5cGVvZiB0aGlzLnZhbHVlID09PSAnc3RyaW5nJyA/IG5ldyBEYXRlKHRoaXMudmFsdWUpIDogdGhpcy52YWx1ZSB8fCBuZXcgRGF0ZSgpO1xuXG4gICAgY3RybFZhbHVlLnNldE1vbnRoKG5vcm1hbGl6ZWRNb250aEFuZFllYXIuZ2V0TW9udGgoKSk7XG4gICAgY3RybFZhbHVlLnNldEZ1bGxZZWFyKG5vcm1hbGl6ZWRNb250aEFuZFllYXIuZ2V0RnVsbFllYXIoKSk7XG5cbiAgICBkYXRlcGlja2VyLmNsb3NlKCk7XG5cbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2UobmV3IERhdGUoY3RybFZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFJhbmdlKCkge1xuICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IHRoaXMudmFsdWU/LnNwbGl0KCctJyk7XG4gICAgICBpZiAoc3RhcnQpIHtcbiAgICAgICAgdGhpcy5yYW5nZS5jb250cm9scy5zdGFydC5zZXRWYWx1ZShuZXcgRGF0ZShzdGFydCkpO1xuICAgICAgfVxuICAgICAgaWYgKGVuZCkge1xuICAgICAgICB0aGlzLnJhbmdlLmNvbnRyb2xzLmVuZC5zZXRWYWx1ZShuZXcgRGF0ZShlbmQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFJhbmdlKHN0YXJ0OiBzdHJpbmcsIGVuZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c3RhcnR9LSR7ZW5kfWA7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBFdmVudFRhcmdldCAmIHsgdmFsdWU6IHN0cmluZyB9O1xuICAgIGNvbnN0IFttb250aCwgeWVhcl0gPSB0YXJnZXQudmFsdWUuc3BsaXQoJy8nKTtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKS5nZXREYXRlKCk7XG4gICAgY29uc3QgZnVsbERhdGVTdHJpbmcgPSBgJHttb250aH0vJHtkYXRlfS8ke3llYXJ9YDtcbiAgICBjb25zdCBmdWxsRGF0ZSA9IG5ldyBEYXRlKGZ1bGxEYXRlU3RyaW5nKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2UoZnVsbERhdGUpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCIhbW9udGhQaWNrZXI7IGVsc2UgZGF0ZVllYXJQaWNrZXJcIiAjdWlEYXRlcGlja2VyIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgW2NvbG9yXT1cImVycm9yc0xlbmd0aCA/ICd3YXJuJyA6ICdhY2NlbnQnXCJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGUtYm90dG9tLWNvbnRlbnQnOiAhc2hvd0JvdHRvbUNvbnRlbnQsICdmdWxsLXdpZHRoJzogZnVsbFdpZHRoIH1cIj5cbiAgICA8bWF0LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4gKjwvc3Bhbj48L21hdC1sYWJlbD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzUmFuZ2VcIj5cbiAgICAgIDxpbnB1dCAqbmdJZj1cIiFpc1JhbmdlXCIgbWF0SW5wdXRcbiAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIlxuICAgICAgICAgICAgIChibHVyKT1cIm9uVG91Y2goKVwiXG4gICAgICAgICAgICAgKGRhdGVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQudmFsdWUpXCJcbiAgICAgICAgICAgICBbaWRdPVwiaWQhXCJcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIhXCJcbiAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgW25hbWVdPVwiZmllbGROYW1lIVwiXG4gICAgICAgICAgICAgW21pbl09XCJtaW5EYXRlXCJcbiAgICAgICAgICAgICBbbWF4XT1cIm1heERhdGVcIlxuICAgICAgLz5cbiAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0SWNvblN1ZmZpeCBbZm9yXT1cInBpY2tlclwiPlxuICAgICAgICA8dWktaWNvbiBtYXREYXRlcGlja2VyVG9nZ2xlSWNvbiBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCIgbmFtZT1cIkNhbGVuZGFyXCIgc2l6ZT1cIjI0XCIgY29sb3I9XCJpbmhlcml0XCI+PC91aS1pY29uPlxuICAgICAgPC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICA8bWF0LWRhdGVwaWNrZXIgI3BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzUmFuZ2VcIj5cbiAgICAgIDxtYXQtZGF0ZS1yYW5nZS1pbnB1dCAqbmdJZj1cImlzUmFuZ2VcIiBbZm9ybUdyb3VwXT1cInJhbmdlXCIgW3JhbmdlUGlja2VyXT1cInJhbmdlUGlja2VyXCIgW21pbl09XCJtaW5EYXRlXCIgW21heF09XCJtYXhEYXRlXCIgPlxuICAgICAgICA8aW5wdXQgbWF0U3RhcnREYXRlICNkYXRlUmFuZ2VTdGFydCBmb3JtQ29udHJvbE5hbWU9XCJzdGFydFwiIFtwbGFjZWhvbGRlcl09XCIodHJhbnNsYXRpb25Db250ZXh0ICsgJ1NUQVJUX0RBVEUnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2VcIiA+XG4gICAgICAgIDxpbnB1dCBtYXRFbmREYXRlICAjZGF0ZVJhbmdlRW5kIGZvcm1Db250cm9sTmFtZT1cImVuZFwiIFtwbGFjZWhvbGRlcl09XCIodHJhbnNsYXRpb25Db250ZXh0ICsgJ0VORF9EQVRFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlXCIgKGRhdGVDaGFuZ2UpPVwiZGF0ZVJhbmdlQ2hhbmdlKGRhdGVSYW5nZVN0YXJ0LnZhbHVlLCBkYXRlUmFuZ2VFbmQudmFsdWUpXCI+XG4gICAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRJY29uU3VmZml4IFtmb3JdPVwicmFuZ2VQaWNrZXJcIj5cbiAgICAgICAgPHVpLWljb24gbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24gW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIG5hbWU9XCJDYWxlbmRhclwiIHNpemU9XCIyNFwiIGNvbG9yPVwiaW5oZXJpdFwiPjwvdWktaWNvbj5cbiAgICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgICAgPG1hdC1kYXRlLXJhbmdlLXBpY2tlciAjcmFuZ2VQaWNrZXI+PC9tYXQtZGF0ZS1yYW5nZS1waWNrZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bWF0LWhpbnQgY2xhc3M9XCJpbmZvXCIgKm5nSWY9XCJoaW50ICYmICFfZXJyb3JzXCI+e3sgaGludCB9fTwvbWF0LWhpbnQ+XG4gICAgPG1hdC1oaW50IGNsYXNzPVwiZXJyb3JcIiAqbmdJZj1cImVycm9yc0xlbmd0aFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImVycm9yc1wiICpuZ0Zvcj1cImxldCBlcnJvciBvZiBfZXJyb3JzXCI+PHVpLWljb24gW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIG5hbWU9XCJFcnJvclwiPjwvdWktaWNvbj57eyBlcnJvciB9fTwvZGl2PlxuICAgIDwvbWF0LWhpbnQ+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRlWWVhclBpY2tlcj5cbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwTm9EYXRlRm9ybWF0ICN1aURhdGVwaWNrZXIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBbY29sb3JdPVwiZXJyb3JzTGVuZ3RoID8gJ3dhcm4nIDogJ2FjY2VudCdcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdoaWRlLWJvdHRvbS1jb250ZW50JzogIXNob3dCb3R0b21Db250ZW50LCAnZnVsbC13aWR0aCc6IGZ1bGxXaWR0aCB9XCI+XG4gICAgICA8bWF0LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4gKjwvc3Bhbj48L21hdC1sYWJlbD5cblxuICAgICAgPG5nLWNvbnRhaW5lciA+XG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dFxuICAgICAgICAgICAgICAgW2lkXT1cImlkIVwiXG4gICAgICAgICAgICAgICAoYmx1cik9XCJvblRvdWNoKClcIlxuICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyIVwiXG4gICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJkcFwiXG4gICAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIFtuYW1lXT1cImZpZWxkTmFtZSFcIlxuICAgICAgICAgICAgICAgW21pbl09XCJtaW5EYXRlXCJcbiAgICAgICAgICAgICAgIFttYXhdPVwibWF4RGF0ZVwiXG4gICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAoZGF0ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudC52YWx1ZSlcIlxuICAgICAgICA+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0SWNvblN1ZmZpeCBbZm9yXT1cImRwXCI+XG4gICAgICAgICAgPHVpLWljb24gKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lICE9PSAnY2xhc3NpYydcIiBtYXREYXRlcGlja2VyVG9nZ2xlSWNvbiBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCIgbmFtZT1cIkNhbGVuZGFyXCIgc2l6ZT1cIjI0XCIgY29sb3I9XCJpbmhlcml0XCI+PC91aS1pY29uPlxuICAgICAgICA8L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgICAgICAgPG1hdC1kYXRlcGlja2VyIHBhbmVsQ2xhc3M9XCJtb250aC1waWNrZXJcIiAjZHAgc3RhcnRWaWV3PVwibXVsdGkteWVhclwiIChtb250aFNlbGVjdGVkKT1cInNldE1vbnRoQW5kWWVhcigkZXZlbnQsIGRwKVwiPjwvbWF0LWRhdGVwaWNrZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG1hdC1oaW50IGNsYXNzPVwiaW5mb1wiICpuZ0lmPVwiaGludCAmJiAhX2Vycm9yc1wiPnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgICAgPG1hdC1oaW50IGNsYXNzPVwiZXJyb3JcIiAqbmdJZj1cImVycm9yc0xlbmd0aFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nRm9yPVwibGV0IGVycm9yIG9mIF9lcnJvcnNcIj48dWktaWNvbiBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCIgbmFtZT1cIkVycm9yXCI+PC91aS1pY29uPnt7IGVycm9yIH19PC9kaXY+XG4gICAgICA8L21hdC1oaW50PlxuXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUNBQXlDO0FBQ3pDLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixXQUFXLEVBQUUsU0FBUyxFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBWTVFLG9FQUFvRTtBQUNwRSxNQUFNLE9BQU8sbUJBQW1CO0lBNEM5Qjs7Ozs7T0FLRztJQUNILElBQWEsTUFBTSxDQUFDLE1BQWdCO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQW9KRCxZQUM2RSxlQUFpQyxFQUNwRyxHQUFzQixFQUN0QixTQUF1QixFQUNKLFNBQW9CO1FBSDRCLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUNwRyxR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Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFRRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBUUcsU0FBUztzQkFBakIsS0FBSztnQkFRRyxPQUFPO3NCQUFmLEtBQUs7Z0JBUUcsT0FBTztzQkFBZixLQUFLO2dCQVFHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBU0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQVFHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFRRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBUUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQWlCSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdW5kZXJzY29yZS1kYW5nbGUgKi9cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBEb0NoZWNrLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi91dGlscy9sb2NhbGl6YXRpb24vbGFuZ3VhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblRoZW1lIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FwcGxpY2F0aW9uLXRoZW1lLm1vZGVsJztcbmltcG9ydCB7IE1hdERhdGVwaWNrZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktZGF0ZXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWNvbmZsaWN0aW5nLWxpZmVjeWNsZVxuZXhwb3J0IGNsYXNzIERhdGVwaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBEb0NoZWNrIHtcbiAgQEhvc3RCaW5kaW5nKCkgY2xhc3MgPSAndWktZGF0ZXBpY2tlcic7XG5cbiAgLyoqXG4gICAqIEZvcm0gZmllbGQgbGFiZWxcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsPyA9ICcnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBuYW1lIGF0dHJpYnV0ZVxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZmllbGROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBwbGFjZWhvbGRlclxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/ID0gJyc7XG5cbiAgLyoqXG4gICAqIElucHV0IGlkXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpZD8gPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgdmFsdWVcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlPzogc3RyaW5nIHwgRGF0ZTtcblxuICBfZXJyb3JzOiBTYWZlSHRtbFtdO1xuICAvKipcbiAgICogSW5wdXQgZmllbGQgZXJyb3JzXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzZXQgZXJyb3JzKGVycm9yczogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9lcnJvcnMgPSBlcnJvcnM/LmZpbHRlcihCb29sZWFuKS5tYXAoZXJyb3IgPT4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoZXJyb3IpKTtcbiAgICB0aGlzLmVycm9yc0xlbmd0aCA9IHRoaXMuc2V0RXJyb3JzTGVuZ3RoKCk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBpbnB1dCBpcyBkYXRlIHJhbmdlXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgaXNSYW5nZTogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBpbnB1dCBpcyBkaXNhYmxlZFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBpcyByZXF1aXJlZCBvciBub3RcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogSGludCB0ZXh0XG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBoaW50TWVzc2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBpcyB1cGRhdGUgb25seSBvbiBibHVyXG4gICAqXG4gICAqIEB0eXBlIHtCb29sZWFufVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdXBkYXRlT25CbHVyID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSBsYW5ndWFnZSB0byBiZSB1c2VkXG4gICAqXG4gICAqIEB0eXBlIHtMYW5ndWFnZX1cbiAgICogQG1lbWJlcm9mIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGxhbmd1YWdlID0gTGFuZ3VhZ2VTZXJ2aWNlLmRlZmF1bHRMYW5ndWFnZTtcblxuICAvKipcbiAgICogU2hvdyByZXNlcnZlZCBjb250ZW50IGJlbG93IGZvcm0gZmllbGRcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzaG93Qm90dG9tQ29udGVudCA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNldCBmdWxsIHdpZHRoIERhdGVwaWNrZXJDb21wb25lbnRcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBmdWxsV2lkdGggPSBmYWxzZTtcblxuICAvKipcbiAgICogU2V0IG1pbiBkYXRlIGZvciBEYXRlcGlja2VyXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbWluRGF0ZTogRGF0ZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU2V0IG1heCBkYXRlIGZvciBEYXRlcGlja2VyXG4gICAqXG4gICAqIEB0eXBlIHtEYXRlfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbWF4RGF0ZTogRGF0ZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU2hvdyBhbmQgcGljayBkYXRlIHdpdGhvdXQgZGF5XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbW9udGhQaWNrZXIgPSBmYWxzZTtcblxuICAvKipcbiAgICpcbiAgICogRGVmaW5lcyB0aGUgYXBwbGljYXRpb24gdGhlbWVcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcHBsaWNhdGlvblRoZW1lOiBBcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogSGlkZSBpbi1idWlsZCBlcnJvcnMgZm9yIFJlYWN0aXZlIEZvcm1zXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBoaWRlQnVpbHRJbkVycm9ycyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBIaWRlIGxhYmVsIGluIGVycm9yc1xuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgaGlkZUxhYmVsSW5FcnJvcnMgPSBmYWxzZTtcblxuICAvKipcbiAgICogUHJldmVudCB1c2VyIGlucHV0XG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRGF0ZXBpY2tlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgcHJldmVudFVzZXJJbnB1dCA9IGZhbHNlO1xuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25DaGFuZ2UgPSAoXzogYW55KSA9PiB7fTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25Ub3VjaCA9ICgpID0+IHt9O1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHZhbHVlIGlzIGNoYW5nZSAtIHdoZW4gdXNlZCBvdXRzaWRlIG9mIGZvcm1cbiAgICpcbiAgICogQHR5cGUge0RhdGV9XG4gICAqIEBtZW1iZXJvZiBEYXRlcGlja2VyQ29tcG9uZW50XG4gICAqL1xuICBAT3V0cHV0KCkgY2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZSB8IHN0cmluZz4oKTtcblxuICByYW5nZSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgIHN0YXJ0OiBuZXcgRm9ybUNvbnRyb2w8RGF0ZSB8IG51bGw+KG51bGwpLFxuICAgIGVuZDogbmV3IEZvcm1Db250cm9sPERhdGUgfCBudWxsPihudWxsKSxcbiAgfSk7XG5cbiAgZXJyb3JzTGVuZ3RoOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRpb25Db250ZXh0ID0gJ0RBVEVQSUNLRVIuJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2xcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm5nQ29udHJvbCAhPSBudWxsKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gIH1cblxuICBnZXQgaGludCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmhpbnRNZXNzYWdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzUmFuZ2UgPyAnTU0vREQvWVlZWSAtIE1NL0REL1lZWVknIDogdGhpcy5tb250aFBpY2tlciA/ICdNTS9ZWVlZJyA6ICdNTS9ERC9ZWVlZJztcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5oaW50TWVzc2FnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIG1hcmsgY29tcG9uZW50IHZpZXcgYXMgZGlydHkgd2hlbiB0b3VjaGVkIHByb2dyYW1tYXRpY2FsbHkgd2l0aCBtYXJrQXNUb3VjaGVkL21hcmtBbGxBc1RvdWNoZWQgb3IgZXJyb3JzXG4gICAqIHRvIGRpc3BsYXkgdmFsaWRhdGlvbiBlcnJvcnMgdGhhdCBtaWdodCBoYXBwZW4gKGUuZy4gcmVxdWlyZWQpXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWNvbmZsaWN0aW5nLWxpZmVjeWNsZVxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sPy50b3VjaGVkIHx8IHRoaXMubmdDb250cm9sPy5lcnJvcnMpIHtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tY29uZmxpY3RpbmctbGlmZWN5Y2xlXG4gIG5nT25Jbml0KCkge1xuICAgIGRvY3VtZW50LmJvZHkuc2V0QXR0cmlidXRlKCd0aGVtZScsIHRoaXMuYXBwbGljYXRpb25UaGVtZSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWNvbmZsaWN0aW5nLWxpZmVjeWNsZVxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc1JhbmdlKSB7XG4gICAgICB0aGlzLnNldFJhbmdlKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0IGVycm9ycyBsZW5ndGggZm9yIHZhbGlkYXRpb25cbiAgLy8gQ29uc2lkZXIgb25seSB0aG9zZSBlcnJvcnMgd2hpY2ggd2hpY2ggYXJlIG5vdCBlbXB0eVxuICBzZXRFcnJvcnNMZW5ndGgoKTogYm9vbGVhbiB7XG4gICAgaWYgKCEhdGhpcy5fZXJyb3JzKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZXJyb3JzLmZpbHRlcihlcnIgPT4gISFlcnIpLmxlbmd0aCA+IDAgPyB0cnVlIDogZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UodmFsdWU6IERhdGUgfCBzdHJpbmcpIHtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMuZXJyb3JzTGVuZ3RoID0gdGhpcy5zZXRFcnJvcnNMZW5ndGgoKTtcbiAgICBpZiAoIXRoaXMudXBkYXRlT25CbHVyKSB7XG4gICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICB9XG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZT86IERhdGUgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgaWYgKHRoaXMuaXNSYW5nZSkge1xuICAgICAgdGhpcy5zZXRSYW5nZSgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgZGF0ZVJhbmdlQ2hhbmdlKHN0YXJ0OiBzdHJpbmcsIGVuZDogc3RyaW5nKSB7XG4gICAgaWYgKHN0YXJ0ICYmIGVuZCkge1xuICAgICAgdGhpcy5vblZhbHVlQ2hhbmdlKHRoaXMuZ2V0UmFuZ2Uoc3RhcnQsIGVuZCkpO1xuICAgIH1cbiAgfVxuXG4gIHNldE1vbnRoQW5kWWVhcihub3JtYWxpemVkTW9udGhBbmRZZWFyOiBhbnksIGRhdGVwaWNrZXI6IE1hdERhdGVwaWNrZXI8RGF0ZT4pIHtcbiAgICBjb25zdCBjdHJsVmFsdWUgPSB0eXBlb2YgdGhpcy52YWx1ZSA9PT0gJ3N0cmluZycgPyBuZXcgRGF0ZSh0aGlzLnZhbHVlKSA6IHRoaXMudmFsdWUgfHwgbmV3IERhdGUoKTtcblxuICAgIGN0cmxWYWx1ZS5zZXRNb250aChub3JtYWxpemVkTW9udGhBbmRZZWFyLmdldE1vbnRoKCkpO1xuICAgIGN0cmxWYWx1ZS5zZXRGdWxsWWVhcihub3JtYWxpemVkTW9udGhBbmRZZWFyLmdldEZ1bGxZZWFyKCkpO1xuXG4gICAgZGF0ZXBpY2tlci5jbG9zZSgpO1xuXG4gICAgdGhpcy5vblZhbHVlQ2hhbmdlKG5ldyBEYXRlKGN0cmxWYWx1ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRSYW5nZSgpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBbc3RhcnQsIGVuZF0gPSB0aGlzLnZhbHVlPy5zcGxpdCgnLScpO1xuICAgICAgaWYgKHN0YXJ0KSB7XG4gICAgICAgIHRoaXMucmFuZ2UuY29udHJvbHMuc3RhcnQuc2V0VmFsdWUobmV3IERhdGUoc3RhcnQpKTtcbiAgICAgIH1cbiAgICAgIGlmIChlbmQpIHtcbiAgICAgICAgdGhpcy5yYW5nZS5jb250cm9scy5lbmQuc2V0VmFsdWUobmV3IERhdGUoZW5kKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRSYW5nZShzdGFydDogc3RyaW5nLCBlbmQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3N0YXJ0fS0ke2VuZH1gO1xuICB9XG5cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgRXZlbnRUYXJnZXQgJiB7IHZhbHVlOiBzdHJpbmcgfTtcbiAgICBjb25zdCBbbW9udGgsIHllYXJdID0gdGFyZ2V0LnZhbHVlLnNwbGl0KCcvJyk7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpO1xuICAgIGNvbnN0IGZ1bGxEYXRlU3RyaW5nID0gYCR7bW9udGh9LyR7ZGF0ZX0vJHt5ZWFyfWA7XG4gICAgY29uc3QgZnVsbERhdGUgPSBuZXcgRGF0ZShmdWxsRGF0ZVN0cmluZyk7XG4gICAgdGhpcy5vblZhbHVlQ2hhbmdlKGZ1bGxEYXRlKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPG1hdC1mb3JtLWZpZWxkXG4gICAgKm5nSWY9XCIhbW9udGhQaWNrZXI7IGVsc2UgZGF0ZVllYXJQaWNrZXJcIlxuICAgICN1aURhdGVwaWNrZXJcbiAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgW2NvbG9yXT1cIihlcnJvcnNMZW5ndGggfHwgKG5nQ29udHJvbD8uZXJyb3JzICYmIG5nQ29udHJvbD8udG91Y2hlZCApKSAgPyAnd2FybicgOiAnYWNjZW50J1wiXG4gICAgW25nQ2xhc3NdPVwieyAnaGlkZS1ib3R0b20tY29udGVudCc6ICFzaG93Qm90dG9tQ29udGVudCwgJ2Z1bGwtd2lkdGgnOiBmdWxsV2lkdGggfVwiXG4gID5cbiAgICA8bWF0LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4gKjwvc3Bhbj48L21hdC1sYWJlbD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzUmFuZ2VcIj5cbiAgICAgIDxpbnB1dCAqbmdJZj1cIiFpc1JhbmdlXCIgbWF0SW5wdXRcbiAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIlxuICAgICAgICAgICAgIChibHVyKT1cIm9uVG91Y2goKVwiXG4gICAgICAgICAgICAgKGRhdGVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQudmFsdWUpXCJcbiAgICAgICAgICAgICBbaWRdPVwiaWQhXCJcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIhXCJcbiAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgW25hbWVdPVwiZmllbGROYW1lIVwiXG4gICAgICAgICAgICAgW3JlYWRvbmx5XT1cInByZXZlbnRVc2VySW5wdXRcIlxuICAgICAgICAgICAgIFttaW5dPVwibWluRGF0ZVwiXG4gICAgICAgICAgICAgW21heF09XCJtYXhEYXRlXCJcbiAgICAgIC8+XG4gICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdEljb25TdWZmaXggW2Zvcl09XCJwaWNrZXJcIj5cbiAgICAgICAgPHVpLWljb24gbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24gW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIG5hbWU9XCJDYWxlbmRhclwiIHNpemU9XCIyNFwiIGNvbG9yPVwiaW5oZXJpdFwiPjwvdWktaWNvbj5cbiAgICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXI+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1JhbmdlXCI+XG4gICAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXQgKm5nSWY9XCJpc1JhbmdlXCIgW2Zvcm1Hcm91cF09XCJyYW5nZVwiIFtyYW5nZVBpY2tlcl09XCJyYW5nZVBpY2tlclwiIFttaW5dPVwibWluRGF0ZVwiIFttYXhdPVwibWF4RGF0ZVwiID5cbiAgICAgICAgPGlucHV0IG1hdFN0YXJ0RGF0ZSAjZGF0ZVJhbmdlU3RhcnQgZm9ybUNvbnRyb2xOYW1lPVwic3RhcnRcIiBbcGxhY2Vob2xkZXJdPVwiKHRyYW5zbGF0aW9uQ29udGV4dCArICdTVEFSVF9EQVRFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlXCIgPlxuICAgICAgICA8aW5wdXQgbWF0RW5kRGF0ZSAgI2RhdGVSYW5nZUVuZCBmb3JtQ29udHJvbE5hbWU9XCJlbmRcIiBbcGxhY2Vob2xkZXJdPVwiKHRyYW5zbGF0aW9uQ29udGV4dCArICdFTkRfREFURScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZVwiIChkYXRlQ2hhbmdlKT1cImRhdGVSYW5nZUNoYW5nZShkYXRlUmFuZ2VTdGFydC52YWx1ZSwgZGF0ZVJhbmdlRW5kLnZhbHVlKVwiPlxuICAgICAgPC9tYXQtZGF0ZS1yYW5nZS1pbnB1dD5cbiAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0SWNvblN1ZmZpeCBbZm9yXT1cInJhbmdlUGlja2VyXCI+XG4gICAgICAgIDx1aS1pY29uIG1hdERhdGVwaWNrZXJUb2dnbGVJY29uIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIiBuYW1lPVwiQ2FsZW5kYXJcIiBzaXplPVwiMjRcIiBjb2xvcj1cImluaGVyaXRcIj48L3VpLWljb24+XG4gICAgICA8L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXIgI3JhbmdlUGlja2VyPjwvbWF0LWRhdGUtcmFuZ2UtcGlja2VyPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG1hdC1oaW50IGNsYXNzPVwiaW5mb1wiICpuZ0lmPVwiaGludCAmJiAhX2Vycm9ycyAmJiAhKG5nQ29udHJvbD8udG91Y2hlZCAmJiAobmdDb250cm9sPy5lcnJvcnMgfCBoYXNWYWxpZGF0aW9uRXJyb3IpKVwiPnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIDxtYXQtaGludCBjbGFzcz1cImVycm9yXCIgKm5nSWY9XCJlcnJvcnNMZW5ndGggfHwgKG5nQ29udHJvbD8udG91Y2hlZCAmJiAobmdDb250cm9sPy5lcnJvcnMgfCBoYXNWYWxpZGF0aW9uRXJyb3IpKVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9yc0xlbmd0aFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nRm9yPVwibGV0IGVycm9yIG9mIF9lcnJvcnNcIj5cbiAgICAgICAgICA8dWktaWNvbiBbYXBwbGljYXRpb25UaGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCIgbmFtZT1cIkVycm9yXCI+PC91aS1pY29uPlxuICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiZXJyb3JcIj48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8dWktdmFsaWRhdGlvbi1lcnJvciAqbmdJZj1cIm5nQ29udHJvbCAmJiAhaGlkZUJ1aWx0SW5FcnJvcnNcIiBbbmdDb250cm9sXT1cIm5nQ29udHJvbFwiIFtsYWJlbF09XCJoaWRlTGFiZWxJbkVycm9ycyA/IG51bGwgOiBsYWJlbFwiIFtsYW5ndWFnZV09XCJsYW5ndWFnZVwiPjwvdWktdmFsaWRhdGlvbi1lcnJvcj5cbiAgICA8L21hdC1oaW50PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0ZVllYXJQaWNrZXI+XG4gICAgPG1hdC1mb3JtLWZpZWxkXG4gICAgICBhcHBOb0RhdGVGb3JtYXRcbiAgICAgICN1aURhdGVwaWNrZXJcbiAgICAgIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcbiAgICAgIFtjb2xvcl09XCIoZXJyb3JzTGVuZ3RoIHx8IChuZ0NvbnRyb2w/LmVycm9ycyAmJiBuZ0NvbnRyb2w/LnRvdWNoZWQgKSkgID8gJ3dhcm4nIDogJ2FjY2VudCdcIlxuICAgICAgW25nQ2xhc3NdPVwieyAnaGlkZS1ib3R0b20tY29udGVudCc6ICFzaG93Qm90dG9tQ29udGVudCwgJ2Z1bGwtd2lkdGgnOiBmdWxsV2lkdGggfVwiXG4gICAgPlxuICAgICAgPG1hdC1sYWJlbCAqbmdJZj1cImxhYmVsXCI+e3sgbGFiZWwgfX08c3BhbiAqbmdJZj1cInJlcXVpcmVkXCI+ICo8L3NwYW4+PC9tYXQtbGFiZWw+XG5cbiAgICAgIDxuZy1jb250YWluZXIgPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgICAgIFtpZF09XCJpZCFcIlxuICAgICAgICAgICAgICAgKGJsdXIpPVwib25Ub3VjaCgpXCJcbiAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlciFcIlxuICAgICAgICAgICAgICAgW21hdERhdGVwaWNrZXJdPVwiZHBcIlxuICAgICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgICBbbmFtZV09XCJmaWVsZE5hbWUhXCJcbiAgICAgICAgICAgICAgIFttaW5dPVwibWluRGF0ZVwiXG4gICAgICAgICAgICAgICBbbWF4XT1cIm1heERhdGVcIlxuICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInByZXZlbnRVc2VySW5wdXRcIlxuICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgICAgICAgICAgKGRhdGVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQudmFsdWUpXCJcbiAgICAgICAgPlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdEljb25TdWZmaXggW2Zvcl09XCJkcFwiPlxuICAgICAgICAgIDx1aS1pY29uICpuZ0lmPVwiYXBwbGljYXRpb25UaGVtZSAhPT0gJ2NsYXNzaWMnXCIgbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24gW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIG5hbWU9XCJDYWxlbmRhclwiIHNpemU9XCIyNFwiIGNvbG9yPVwiaW5oZXJpdFwiPjwvdWktaWNvbj5cbiAgICAgICAgPC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciBwYW5lbENsYXNzPVwibW9udGgtcGlja2VyXCIgI2RwIHN0YXJ0Vmlldz1cIm11bHRpLXllYXJcIiAobW9udGhTZWxlY3RlZCk9XCJzZXRNb250aEFuZFllYXIoJGV2ZW50LCBkcClcIj48L21hdC1kYXRlcGlja2VyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxtYXQtaGludCBjbGFzcz1cImluZm9cIiAqbmdJZj1cImhpbnQgJiYgIV9lcnJvcnMgJiYgIShuZ0NvbnRyb2wudG91Y2hlZCAmJiAobmdDb250cm9sPy5lcnJvcnMgfCBoYXNWYWxpZGF0aW9uRXJyb3IpKVwiPnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgICAgPG1hdC1oaW50IGNsYXNzPVwiZXJyb3JcIiAqbmdJZj1cImVycm9yc0xlbmd0aCB8fCAobmdDb250cm9sLnRvdWNoZWQgJiYgKG5nQ29udHJvbD8uZXJyb3JzIHwgaGFzVmFsaWRhdGlvbkVycm9yKSlcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9yc0xlbmd0aFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvcnNcIiAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgX2Vycm9yc1wiPlxuICAgICAgICAgICAgPHVpLWljb24gW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIG5hbWU9XCJFcnJvclwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiZXJyb3JcIj48L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8dWktdmFsaWRhdGlvbi1lcnJvciAqbmdJZj1cIm5nQ29udHJvbCAmJiAhaGlkZUJ1aWx0SW5FcnJvcnNcIiBbbmdDb250cm9sXT1cIm5nQ29udHJvbFwiIFtsYWJlbF09XCJoaWRlTGFiZWxJbkVycm9ycyA/IG51bGwgOiBsYWJlbFwiIFtsYW5ndWFnZV09XCJsYW5ndWFnZVwiPjwvdWktdmFsaWRhdGlvbi1lcnJvcj5cbiAgICAgIDwvbWF0LWhpbnQ+XG5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L25nLXRlbXBsYXRlPlxuXG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -9,6 +9,8 @@ import { IconComponentModule } from '../icon/icon.component.module';
|
|
|
9
9
|
import { MatNativeDateModule } from '@angular/material/core';
|
|
10
10
|
import { UiTranslatePipe } from '../../pipes/ui-translate.pipe';
|
|
11
11
|
import { NoDateFormatDirective } from './no-date-format.directive';
|
|
12
|
+
import { HasValidationErrorPipe } from '../../pipes/has-validation-error.pipe';
|
|
13
|
+
import { ValidationErrorModule } from '../validation-error/validation-error.module';
|
|
12
14
|
import * as i0 from "@angular/core";
|
|
13
15
|
export class DatepickerComponentModule {
|
|
14
16
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
@@ -21,7 +23,9 @@ export class DatepickerComponentModule {
|
|
|
21
23
|
MatDatepickerModule,
|
|
22
24
|
MatNativeDateModule,
|
|
23
25
|
UiTranslatePipe,
|
|
24
|
-
NoDateFormatDirective
|
|
26
|
+
NoDateFormatDirective,
|
|
27
|
+
HasValidationErrorPipe,
|
|
28
|
+
ValidationErrorModule], exports: [DatepickerComponent] }); }
|
|
25
29
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponentModule, imports: [CommonModule,
|
|
26
30
|
MatFormFieldModule,
|
|
27
31
|
MatInputModule,
|
|
@@ -29,7 +33,8 @@ export class DatepickerComponentModule {
|
|
|
29
33
|
FormsModule,
|
|
30
34
|
ReactiveFormsModule,
|
|
31
35
|
MatDatepickerModule,
|
|
32
|
-
MatNativeDateModule
|
|
36
|
+
MatNativeDateModule,
|
|
37
|
+
ValidationErrorModule] }); }
|
|
33
38
|
}
|
|
34
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DatepickerComponentModule, decorators: [{
|
|
35
40
|
type: NgModule,
|
|
@@ -46,8 +51,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
46
51
|
MatNativeDateModule,
|
|
47
52
|
UiTranslatePipe,
|
|
48
53
|
NoDateFormatDirective,
|
|
54
|
+
HasValidationErrorPipe,
|
|
55
|
+
ValidationErrorModule,
|
|
49
56
|
],
|
|
50
57
|
exports: [DatepickerComponent],
|
|
51
58
|
}]
|
|
52
59
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQW9CcEYsTUFBTSxPQUFPLHlCQUF5QjsrR0FBekIseUJBQXlCO2dIQUF6Qix5QkFBeUIsaUJBakJyQixtQkFBbUIsYUFFaEMsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLHNCQUFzQjtZQUN0QixxQkFBcUIsYUFFYixtQkFBbUI7Z0hBRWxCLHlCQUF5QixZQWZsQyxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsbUJBQW1CO1lBSW5CLHFCQUFxQjs7NEZBSVoseUJBQXlCO2tCQWxCckMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsc0JBQXNCO3dCQUN0QixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IFVpVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3VpLXRyYW5zbGF0ZS5waXBlJztcbmltcG9ydCB7IE5vRGF0ZUZvcm1hdERpcmVjdGl2ZSB9IGZyb20gJy4vbm8tZGF0ZS1mb3JtYXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEhhc1ZhbGlkYXRpb25FcnJvclBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9oYXMtdmFsaWRhdGlvbi1lcnJvci5waXBlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvck1vZHVsZSB9IGZyb20gJy4uL3ZhbGlkYXRpb24tZXJyb3IvdmFsaWRhdGlvbi1lcnJvci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEYXRlcGlja2VyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgSWNvbkNvbXBvbmVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcbiAgICBVaVRyYW5zbGF0ZVBpcGUsXG4gICAgTm9EYXRlRm9ybWF0RGlyZWN0aXZlLFxuICAgIEhhc1ZhbGlkYXRpb25FcnJvclBpcGUsXG4gICAgVmFsaWRhdGlvbkVycm9yTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbRGF0ZXBpY2tlckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIERhdGVwaWNrZXJDb21wb25lbnRNb2R1bGUge31cbiJdfQ==
|
|
@@ -4,7 +4,7 @@ import { MatSort } from '@angular/material/sort';
|
|
|
4
4
|
import { MatTableDataSource } from '@angular/material/table';
|
|
5
5
|
import { ColumnTypeEnum } from './deprecated-table.model';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "
|
|
7
|
+
import * as i1 from "../../pipes/data-property-getter";
|
|
8
8
|
import * as i2 from "@angular/common";
|
|
9
9
|
import * as i3 from "@angular/material/table";
|
|
10
10
|
import * as i4 from "@angular/material/sort";
|
|
@@ -155,4 +155,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
155
155
|
}], onDetailRowClickEvent: [{
|
|
156
156
|
type: Output
|
|
157
157
|
}] } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZC10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvZGVwcmVjYXRlZC10YWJsZS9kZXByZWNhdGVkLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9kZXByZWNhdGVkLXRhYmxlL2RlcHJlY2F0ZWQtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsT0FBTyxFQUFRLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBaUQsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBZ0J6RyxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOztPQUVHO0lBQ0gsSUFBd0IsT0FBTyxDQUFDLE9BQWdCO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDbEgsQ0FBQztJQU9EOzs7Ozs7T0FNRztJQUNILElBQWEsU0FBUyxDQUFD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c0JBQXBCLEtBQUs7Z0JBUUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUtJLFdBQVc7c0JBQXBCLE1BQU07Z0JBS0csZUFBZTtzQkFBeEIsTUFBTTtnQkFLRyxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IERhdGFQcm9wZXJ0eUdldHRlclBpcGUgfSBmcm9tICcuL3BpcGVzL2RhdGEtcHJvcGVydHktZ2V0dGVyJztcbmltcG9ydCB7IENvbHVtblR5cGVFbnVtLCBJRGF0YVNvdXJjZSwgSVRhYmxlQ29sdW1uLCBJVGFibGVEZXRhaWxDb2x1bW4gfSBmcm9tICcuL2RlcHJlY2F0ZWQtdGFibGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1kZXByZWNhdGVkLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RlcHJlY2F0ZWQtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZXByZWNhdGVkLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignZXhwYW5kRGV0YWlsJywgW1xuICAgICAgc3RhdGUoJ2NvbGxhcHNlZCwgdm9pZCcsIHN0eWxlKHsgaGVpZ2h0OiAnMHB4JyB9KSksXG4gICAgICBzdGF0ZSgnZXhwYW5kZWQnLCBzdHlsZSh7IGhlaWdodDogJyonIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oJ2V4cGFuZGVkIDw9PiBjb2xsYXBzZWQnLCBhbmltYXRlKCcyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSknKSksXG4gICAgICB0cmFuc2l0aW9uKCdleHBhbmRlZCA8PT4gdm9pZCcsIGFuaW1hdGUoJzIyNW1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKScpKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRGVwcmVjYXRlZFRhYmxlQ29tcG9uZW50PFQgZXh0ZW5kcyBJRGF0YVNvdXJjZSwgVERldGFpbCBleHRlbmRzIElEYXRhU291cmNlPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKE1hdFNvcnQpIHNldCBtYXRTb3J0KG1hdFNvcnQ6IE1hdFNvcnQpIHtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc29ydCA9IG1hdFNvcnQ7XG4gICAgdGhpcy5kYXRhU291cmNlLnNvcnRpbmdEYXRhQWNjZXNzb3IgPSAoaXRlbSwgcHJvcGVydHkpID0+IHRoaXMuZGF0YVByb3BlcnR5R2V0dGVyUGlwZS50cmFuc2Zvcm0oaXRlbSwgcHJvcGVydHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBJbnB1dCgpIHRhYmxlRGV0YWlscyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEYXRhIHRvIGJlIHJlbmRlcmVkXG4gICAqXG4gICAqIEBpZ25vcmVcbiAgICogQHR5cGUge0lEYXRhU291cmNlfVxuICAgKiBAbWVtYmVyb2YgVGFibGVDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNldCB0YWJsZURhdGEoZGF0YTogVFtdIHwgbnVsbCkge1xuICAgIGlmIChkYXRhPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2V0VGFibGVEYXRhU291cmNlKGRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEYXRhIHN0cnVjdHVyZSB0byBzZWxlY3Qgd2hpY2ggY29sdW1ucyBzaG91bGQgYmUgcmVuZGVyZWQgYW5kIHRoZWlyIGNhcGFiaWxpdGllc1xuICAgKlxuICAgKiBAdHlwZSB7SVRhYmxlQ29sdW1ufVxuICAgKiBAbWVtYmVyb2YgVGFibGVDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHRhYmxlQ29sdW1uczogSVRhYmxlQ29sdW1uPFQ+W10gPSBbXTtcblxuICAvKipcbiAgICogRGF0YSBzdHJ1Y3R1cmUgdG8gc2VsZWN0IHdoaWNoIGNvbHVtbnMgc2hvdWxkIGJlIHJlbmRlcmVkIGFuZCB0aGVpciBjYXBhYmlsaXRpZXNcbiAgICpcbiAgICogQHR5cGUge0lUYWJsZUNvbHVtbn1cbiAgICogQG1lbWJlcm9mIFRhYmxlQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0YWJsZURldGFpbENvbHVtbnM6IElUYWJsZURldGFpbENvbHVtbjxULCBURGV0YWlsPjtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQE91dHB1dCgpIG9uU29ydEV2ZW50OiBFdmVudEVtaXR0ZXI8U29ydD4gPSBuZXcgRXZlbnRFbWl0dGVyPFNvcnQ+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBvblJvd0NsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBvbkRldGFpbFJvd0NsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPGFueT4oW10pO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBkYXRhU291cmNlRGV0YWlsID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KFtdKTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgZWxlbWVudERldGFpbDogYW55O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb2x1bW5zVG9EaXNwbGF5OiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb2x1bW5zRGV0YWlsVG9EaXNwbGF5OiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBEYXRhVHlwZSA9IENvbHVtblR5cGVFbnVtO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29sdW1uc1RvRGlzcGxheSA9IHRoaXMudGFibGVDb2x1bW5zLm1hcCgodGFibGVDb2x1bW46IElUYWJsZUNvbHVtbjxUPikgPT4gdGFibGVDb2x1bW4uaGVhZGVyTmFtZSk7XG4gICAgaWYgKHRoaXMudGFibGVEZXRhaWxDb2x1bW5zKSB7XG4gICAgICB0aGlzLmNvbHVtbnNEZXRhaWxUb0Rpc3BsYXkgPSB0aGlzLnRhYmxlRGV0YWlsQ29sdW1ucy5jb2x1bW5EZWZzLm1hcChcbiAgICAgICAgKHRhYmxlQ29sdW1uOiBJVGFibGVDb2x1bW48VERldGFpbD4pID0+IHRhYmxlQ29sdW1uLmhlYWRlck5hbWVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhUHJvcGVydHlHZXR0ZXJQaXBlOiBEYXRhUHJvcGVydHlHZXR0ZXJQaXBlKSB7fVxuXG4gIG9uU29ydChzb3J0UGFyYW1zOiBTb3J0KSB7XG4gICAgY29uc3QgY29sdW1uU29ydCA9IHRoaXMudGFibGVDb2x1bW5zLmZpbmQoKGNvbHVtbjogSVRhYmxlQ29sdW1uPFQ+KSA9PiBjb2x1bW4uaGVhZGVyTmFtZSA9PT0gc29ydFBhcmFtcy5hY3RpdmUpO1xuICAgIGlmIChjb2x1bW5Tb3J0Py5maWVsZCkge1xuICAgICAgc29ydFBhcmFtcy5hY3RpdmUgPSBjb2x1bW5Tb3J0Py5maWVsZDtcbiAgICB9XG4gICAgdGhpcy5vblNvcnRFdmVudC5lbWl0KHNvcnRQYXJhbXMpO1xuICB9XG5cbiAgb25Sb3dDbGljayhyb3dQYXJhbXM6IGFueSkge1xuICAgIHRoaXMub25Sb3dDbGlja0V2ZW50LmVtaXQocm93UGFyYW1zKTtcbiAgfVxuXG4gIG9uRGV0YWlsUm93Q2xpY2socm93UGFyYW1zOiBhbnkpIHtcbiAgICB0aGlzLm9uRGV0YWlsUm93Q2xpY2tFdmVudC5lbWl0KHJvd1BhcmFtcyk7XG4gIH1cblxuICB0b2dnbGVSb3coZWxlbWVudDogVCkge1xuICAgIHRoaXMuZWxlbWVudERldGFpbCA9IHRoaXMuZWxlbWVudERldGFpbCA9PT0gZWxlbWVudCA/IG51bGwgOiBlbGVtZW50O1xuICAgIGlmICh0aGlzLmVsZW1lbnREZXRhaWwpIHtcbiAgICAgIHRoaXMudGFibGVEZXRhaWxDb2x1bW5zLnNldERldGFpbFJvd0RhdGEoe1xuICAgICAgICBkYXRhOiBlbGVtZW50LFxuICAgICAgICBzZXREZXRhaWxEYXRhU291cmNlOiB0aGlzLnNldFRhYmxlRGV0YWlsRGF0YVNvdXJjZS5iaW5kKHRoaXMpLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgc2V0VGFibGVEYXRhU291cmNlKGRhdGE6IFRbXSkge1xuICAgIHRoaXMuZGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8YW55PihkYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIHNldFRhYmxlRGV0YWlsRGF0YVNvdXJjZShyb3dEYXRhOiBURGV0YWlsW10pIHtcbiAgICB0aGlzLmRhdGFTb3VyY2VEZXRhaWwgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPGFueT4ocm93RGF0YSk7XG4gIH1cbn1cbiIsIjx0YWJsZSAqbmdJZj1cIiF0YWJsZURldGFpbHNcIiBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIG1hdFNvcnQgKG1hdFNvcnRDaGFuZ2UpPVwib25Tb3J0KCRldmVudClcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFibGVDb2x1bW4gb2YgdGFibGVDb2x1bW5zOyBsZXQgaSA9IGluZGV4XCIgW21hdENvbHVtbkRlZl09XCJ0YWJsZUNvbHVtbi5oZWFkZXJOYW1lXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRhYmxlQ29sdW1uLnNvcnRhYmxlOyBlbHNlIG5vdFNvcnRhYmxlXCI+XG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBbbWF0LXNvcnQtaGVhZGVyXT1cInRhYmxlQ29sdW1uLmZpZWxkIHx8ICcnXCJcbiAgICAgICAgYXJyb3dQb3NpdGlvbj1cImFmdGVyXCIgW25nU3R5bGVdPVwie3dpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LndpZHRoLCBtaW5XaWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy5bJ21pbi13aWR0aCddfVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RoLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0YWJsZUhlYWRlcjsgY29udGV4dDoge3RhYmxlQ29sdW1ufVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC90aD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI25vdFNvcnRhYmxlPlxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBbbmdTdHlsZV09XCJ7d2lkdGg6IHRhYmxlQ29sdW1uLnN0eWxlcz8ud2lkdGgsIG1pbldpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LlsnbWluLXdpZHRoJ119XCJcbiAgICAgICAgW25nQ2xhc3NdPVwidGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgPyAndGgtJyt0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA6ICcnXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0YWJsZUhlYWRlcjsgY29udGV4dDoge3RhYmxlQ29sdW1ufVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC90aD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCIgKGNsaWNrKT1cIm9uUm93Q2xpY2soZWxlbWVudClcIlxuICAgICAgW2FsaWduXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50XCJcbiAgICAgIFtuZ0NsYXNzXT1cIlt0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA/ICd0ZC0nK3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50IDogJycsIG9uUm93Q2xpY2tFdmVudC5vYnNlcnZlZCAmJiBpID09PSB0YWJsZUNvbHVtbnMubGVuZ3RoIC0gMSA/ICdyb3ctZGV0YWlsJzogJyddXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVEYXRhVHBsOyBjb250ZXh0OiB7ZWxlbWVudCwgdGFibGVDb2x1bW59XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJvblJvd0NsaWNrRXZlbnQub2JzZXJ2ZWQgJiYgaSA9PT0gdGFibGVDb2x1bW5zLmxlbmd0aCAtIDFcIiBjbGFzcz1cInJvdy1kZXRhaWwtaWNvblwiPm5hdmlnYXRlX25leHQ8L21hdC1pY29uPlxuICAgIDwvdGQ+XG4gIDwvbmctY29udGFpbmVyPlxuICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbnNUb0Rpc3BsYXlcIj48L3RyPlxuICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogY29sdW1uc1RvRGlzcGxheTtcIiBbbmdDbGFzc109XCJ7J3Jvdy1jbGlja2FibGUnOiBvblJvd0NsaWNrRXZlbnQub2JzZXJ2ZWR9XCI+PC90cj5cbjwvdGFibGU+XG5cbjx0YWJsZSAqbmdJZj1cInRhYmxlRGV0YWlsc1wiIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJvblNvcnQoJGV2ZW50KVwiXG4gIG11bHRpVGVtcGxhdGVEYXRhUm93cz5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFibGVDb2x1bW4gb2YgdGFibGVDb2x1bW5zOyBsZXQgaSA9IGluZGV4XCIgW21hdENvbHVtbkRlZl09XCJ0YWJsZUNvbHVtbi5oZWFkZXJOYW1lXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRhYmxlQ29sdW1uLnNvcnRhYmxlOyBlbHNlIG5vdFNvcnRhYmxlXCI+XG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBbbWF0LXNvcnQtaGVhZGVyXT1cInRhYmxlQ29sdW1uLmZpZWxkIHx8ICcnXCJcbiAgICAgICAgYXJyb3dQb3NpdGlvbj1cImFmdGVyXCIgW25nU3R5bGVdPVwie3dpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LndpZHRoLCBtaW5XaWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy5bJ21pbi13aWR0aCddfVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RoLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVIZWFkZXI7IGNvbnRleHQ6IHt0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGg+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNub3RTb3J0YWJsZT5cbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgW25nU3R5bGVdPVwie3dpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LndpZHRoLCBtaW5XaWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy5bJ21pbi13aWR0aCddfVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RoLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVIZWFkZXI7IGNvbnRleHQ6IHt0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGg+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiIChjbGljayk9XCJvblJvd0NsaWNrKGVsZW1lbnQpXCJcbiAgICAgIFthbGlnbl09XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudFwiXG4gICAgICBbbmdDbGFzc109XCJbdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgPyAndGQtJyt0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA6ICcnLCBpID09PSAwID8gJ3Jvdy1leHBhbmQnIDogJyddXCI+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJpID09PSAwXCIgY2xhc3M9XCJyb3ctZXhwYW5kLWljb25cIj57eyBlbGVtZW50ID09PSBlbGVtZW50RGV0YWlsID8gJ2V4cGFuZF9sZXNzJyA6ICdleHBhbmRfbW9yZScgfX08L21hdC1pY29uPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRhYmxlRGF0YVRwbDsgY29udGV4dDoge2VsZW1lbnQsIHRhYmxlQ29sdW1ufVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvdGQ+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDwhLS0gRXhwYW5kZWQgQ29udGVudCBDb2x1bW4gLS0+XG4gIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZXhwYW5kZWREZXRhaWxcIj5cbiAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiIFthdHRyLmNvbHNwYW5dPVwiY29sdW1uc1RvRGlzcGxheS5sZW5ndGhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJlbGVtZW50LWRldGFpbFwiICpuZ0lmPVwiZGF0YVNvdXJjZURldGFpbC5kYXRhLmxlbmd0aFwiXG4gICAgICAgIFtAZXhwYW5kRGV0YWlsXT1cImVsZW1lbnQgPT09IGVsZW1lbnREZXRhaWwgPyAnZXhwYW5kZWQnIDogJ2NvbGxhcHNlZCdcIj5cbiAgICAgICAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlRGV0YWlsXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGFibGVDb2x1bW4gb2YgdGFibGVEZXRhaWxDb2x1bW5zLmNvbHVtbkRlZnNcIlxuICAgICAgICAgICAgW21hdENvbHVtbkRlZl09XCJ0YWJsZUNvbHVtbi5oZWFkZXJOYW1lXCI+XG4gICAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBhcnJvd1Bvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7d2lkdGg6IHRhYmxlQ29sdW1uLnN0eWxlcz8ud2lkdGh9XCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwidGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgPyAndGgtJyt0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA6ICcnXCI+XG4gICAgICAgICAgICAgIHt7dGFibGVDb2x1bW4uaGVhZGVyTmFtZSB8IHVwcGVyY2FzZX19XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiAoY2xpY2spPVwib25EZXRhaWxSb3dDbGljayhlbGVtZW50KVwiXG4gICAgICAgICAgICAgIFthbGlnbl09XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudFwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RkLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cIntwYWRkaW5nOiB0YWJsZUNvbHVtbi5zdHlsZXM/LnBhZGRpbmd9XCI+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0YWJsZURhdGFUcGw7IGNvbnRleHQ6IHtlbGVtZW50LCB0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbnNEZXRhaWxUb0Rpc3BsYXlcIj48L3RyPlxuICAgICAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93RGV0YWlsOyBjb2x1bW5zOiBjb2x1bW5zRGV0YWlsVG9EaXNwbGF5O1wiPjwvdHI+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L3RkPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbnNUb0Rpc3BsYXlcIj48L3RyPlxuICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IGVsZW1lbnQ7IGNvbHVtbnM6IGNvbHVtbnNUb0Rpc3BsYXk7XCIgY2xhc3M9XCJlbGVtZW50LXJvd1wiXG4gICAgW25nQ2xhc3NdPVwieydleHBhbmRlZC1yb3cnOiBlbGVtZW50RGV0YWlsID09PSBlbGVtZW50LCAncm93LWNsaWNrYWJsZSc6IHRhYmxlRGV0YWlsc31cIlxuICAgIChjbGljayk9XCJ0b2dnbGVSb3coZWxlbWVudClcIj5cbiAgPC90cj5cbiAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IFsnZXhwYW5kZWREZXRhaWwnXVwiIGNsYXNzPVwiZGV0YWlsLXJvd1wiPjwvdHI+XG48L3RhYmxlPlxuXG48bmctdGVtcGxhdGUgI3RhYmxlRGF0YVRwbCBsZXQtZWxlbWVudD1cImVsZW1lbnRcIiBsZXQtdGFibGVDb2x1bW49XCJ0YWJsZUNvbHVtblwiPlxuICA8ZGl2IGNsYXNzPVwiYWxpZ24td3JhcHBlclwiPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInRhYmxlQ29sdW1uLnR5cGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkRhdGFUeXBlLkZJRUxEXCI+XG4gICAgICAgIHt7ZWxlbWVudCB8IGRhdGFQcm9wZXJ0eUdldHRlcjogdGFibGVDb2x1bW4uZmllbGR9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJEYXRhVHlwZS5GVU5DVElPTlwiPlxuICAgICAgICB7e3RhYmxlQ29sdW1uLmZ1bmN0aW9uPy4oZWxlbWVudCl9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJEYXRhVHlwZS5SRU5ERVJFUlwiPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICBbZHluYW1pY0NvbXBvbmVudF09XCJ0YWJsZUNvbHVtbi5yZW5kZXJlcj8uKGVsZW1lbnQpXCI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAge3tlbGVtZW50IHwgZGF0YVByb3BlcnR5R2V0dGVyOiB0YWJsZUNvbHVtbi5maWVsZH19XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RhYmxlSGVhZGVyIGxldC10YWJsZUNvbHVtbj1cInRhYmxlQ29sdW1uXCI+XG4gIDxkaXYgY2xhc3M9XCJ0b29sdGlwXCIgW25nU3R5bGVdPVwieydqdXN0aWZ5LWNvbnRlbnQnOiB0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudH1cIiBbbmdDbGFzc109XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudFwiPlxuICAgIDxzcGFuPnt7dGFibGVDb2x1bW4uaGVhZGVyTmFtZSB8IHVwcGVyY2FzZX19PC9zcGFuPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cInRhYmxlQ29sdW1uLmhlYWRlclRvb2x0aXBcIiBbbWF0VG9vbHRpcF09XCJ0YWJsZUNvbHVtbi5oZWFkZXJUb29sdGlwXCIgY2xhc3M9XCJ0b29sdGlwLWljb25cIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+aGVscDwvbWF0LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZC10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvZGVwcmVjYXRlZC10YWJsZS9kZXByZWNhdGVkLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9kZXByZWNhdGVkLXRhYmxlL2RlcHJlY2F0ZWQtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsT0FBTyxFQUFRLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBaUQsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBZ0J6RyxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOztPQUVHO0lBQ0gsSUFBd0IsT0FBTyxDQUFDLE9BQWdCO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDbEgsQ0FBQztJQU9EOzs7Ozs7T0FNRztJQUNILElBQWEsU0FBUyxDQUFD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c0JBQXBCLEtBQUs7Z0JBUUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUtJLFdBQVc7c0JBQXBCLE1BQU07Z0JBS0csZUFBZTtzQkFBeEIsTUFBTTtnQkFLRyxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IERhdGFQcm9wZXJ0eUdldHRlclBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9kYXRhLXByb3BlcnR5LWdldHRlcic7XG5pbXBvcnQgeyBDb2x1bW5UeXBlRW51bSwgSURhdGFTb3VyY2UsIElUYWJsZUNvbHVtbiwgSVRhYmxlRGV0YWlsQ29sdW1uIH0gZnJvbSAnLi9kZXByZWNhdGVkLXRhYmxlLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktZGVwcmVjYXRlZC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXByZWNhdGVkLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGVwcmVjYXRlZC10YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ2V4cGFuZERldGFpbCcsIFtcbiAgICAgIHN0YXRlKCdjb2xsYXBzZWQsIHZvaWQnLCBzdHlsZSh7IGhlaWdodDogJzBweCcgfSkpLFxuICAgICAgc3RhdGUoJ2V4cGFuZGVkJywgc3R5bGUoeyBoZWlnaHQ6ICcqJyB9KSksXG4gICAgICB0cmFuc2l0aW9uKCdleHBhbmRlZCA8PT4gY29sbGFwc2VkJywgYW5pbWF0ZSgnMjI1bXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpJykpLFxuICAgICAgdHJhbnNpdGlvbignZXhwYW5kZWQgPD0+IHZvaWQnLCBhbmltYXRlKCcyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSknKSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERlcHJlY2F0ZWRUYWJsZUNvbXBvbmVudDxUIGV4dGVuZHMgSURhdGFTb3VyY2UsIFREZXRhaWwgZXh0ZW5kcyBJRGF0YVNvdXJjZT4gaW1wbGVtZW50cyBPbkluaXQge1xuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZChNYXRTb3J0KSBzZXQgbWF0U29ydChtYXRTb3J0OiBNYXRTb3J0KSB7XG4gICAgdGhpcy5kYXRhU291cmNlLnNvcnQgPSBtYXRTb3J0O1xuICAgIHRoaXMuZGF0YVNvdXJjZS5zb3J0aW5nRGF0YUFjY2Vzc29yID0gKGl0ZW0sIHByb3BlcnR5KSA9PiB0aGlzLmRhdGFQcm9wZXJ0eUdldHRlclBpcGUudHJhbnNmb3JtKGl0ZW0sIHByb3BlcnR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBASW5wdXQoKSB0YWJsZURldGFpbHMgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGF0YSB0byBiZSByZW5kZXJlZFxuICAgKlxuICAgKiBAaWdub3JlXG4gICAqIEB0eXBlIHtJRGF0YVNvdXJjZX1cbiAgICogQG1lbWJlcm9mIFRhYmxlQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzZXQgdGFibGVEYXRhKGRhdGE6IFRbXSB8IG51bGwpIHtcbiAgICBpZiAoZGF0YT8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNldFRhYmxlRGF0YVNvdXJjZShkYXRhKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGF0YSBzdHJ1Y3R1cmUgdG8gc2VsZWN0IHdoaWNoIGNvbHVtbnMgc2hvdWxkIGJlIHJlbmRlcmVkIGFuZCB0aGVpciBjYXBhYmlsaXRpZXNcbiAgICpcbiAgICogQHR5cGUge0lUYWJsZUNvbHVtbn1cbiAgICogQG1lbWJlcm9mIFRhYmxlQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0YWJsZUNvbHVtbnM6IElUYWJsZUNvbHVtbjxUPltdID0gW107XG5cbiAgLyoqXG4gICAqIERhdGEgc3RydWN0dXJlIHRvIHNlbGVjdCB3aGljaCBjb2x1bW5zIHNob3VsZCBiZSByZW5kZXJlZCBhbmQgdGhlaXIgY2FwYWJpbGl0aWVzXG4gICAqXG4gICAqIEB0eXBlIHtJVGFibGVDb2x1bW59XG4gICAqIEBtZW1iZXJvZiBUYWJsZUNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdGFibGVEZXRhaWxDb2x1bW5zOiBJVGFibGVEZXRhaWxDb2x1bW48VCwgVERldGFpbD47XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBPdXRwdXQoKSBvblNvcnRFdmVudDogRXZlbnRFbWl0dGVyPFNvcnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxTb3J0PigpO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAT3V0cHV0KCkgb25Sb3dDbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAT3V0cHV0KCkgb25EZXRhaWxSb3dDbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBkYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KFtdKTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgZGF0YVNvdXJjZURldGFpbCA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8YW55PihbXSk7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGVsZW1lbnREZXRhaWw6IGFueTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29sdW1uc1RvRGlzcGxheTogc3RyaW5nW10gPSBbXTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29sdW1uc0RldGFpbFRvRGlzcGxheTogc3RyaW5nW10gPSBbXTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgRGF0YVR5cGUgPSBDb2x1bW5UeXBlRW51bTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbHVtbnNUb0Rpc3BsYXkgPSB0aGlzLnRhYmxlQ29sdW1ucy5tYXAoKHRhYmxlQ29sdW1uOiBJVGFibGVDb2x1bW48VD4pID0+IHRhYmxlQ29sdW1uLmhlYWRlck5hbWUpO1xuICAgIGlmICh0aGlzLnRhYmxlRGV0YWlsQ29sdW1ucykge1xuICAgICAgdGhpcy5jb2x1bW5zRGV0YWlsVG9EaXNwbGF5ID0gdGhpcy50YWJsZURldGFpbENvbHVtbnMuY29sdW1uRGVmcy5tYXAoXG4gICAgICAgICh0YWJsZUNvbHVtbjogSVRhYmxlQ29sdW1uPFREZXRhaWw+KSA9PiB0YWJsZUNvbHVtbi5oZWFkZXJOYW1lXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0YVByb3BlcnR5R2V0dGVyUGlwZTogRGF0YVByb3BlcnR5R2V0dGVyUGlwZSkge31cblxuICBvblNvcnQoc29ydFBhcmFtczogU29ydCkge1xuICAgIGNvbnN0IGNvbHVtblNvcnQgPSB0aGlzLnRhYmxlQ29sdW1ucy5maW5kKChjb2x1bW46IElUYWJsZUNvbHVtbjxUPikgPT4gY29sdW1uLmhlYWRlck5hbWUgPT09IHNvcnRQYXJhbXMuYWN0aXZlKTtcbiAgICBpZiAoY29sdW1uU29ydD8uZmllbGQpIHtcbiAgICAgIHNvcnRQYXJhbXMuYWN0aXZlID0gY29sdW1uU29ydD8uZmllbGQ7XG4gICAgfVxuICAgIHRoaXMub25Tb3J0RXZlbnQuZW1pdChzb3J0UGFyYW1zKTtcbiAgfVxuXG4gIG9uUm93Q2xpY2socm93UGFyYW1zOiBhbnkpIHtcbiAgICB0aGlzLm9uUm93Q2xpY2tFdmVudC5lbWl0KHJvd1BhcmFtcyk7XG4gIH1cblxuICBvbkRldGFpbFJvd0NsaWNrKHJvd1BhcmFtczogYW55KSB7XG4gICAgdGhpcy5vbkRldGFpbFJvd0NsaWNrRXZlbnQuZW1pdChyb3dQYXJhbXMpO1xuICB9XG5cbiAgdG9nZ2xlUm93KGVsZW1lbnQ6IFQpIHtcbiAgICB0aGlzLmVsZW1lbnREZXRhaWwgPSB0aGlzLmVsZW1lbnREZXRhaWwgPT09IGVsZW1lbnQgPyBudWxsIDogZWxlbWVudDtcbiAgICBpZiAodGhpcy5lbGVtZW50RGV0YWlsKSB7XG4gICAgICB0aGlzLnRhYmxlRGV0YWlsQ29sdW1ucy5zZXREZXRhaWxSb3dEYXRhKHtcbiAgICAgICAgZGF0YTogZWxlbWVudCxcbiAgICAgICAgc2V0RGV0YWlsRGF0YVNvdXJjZTogdGhpcy5zZXRUYWJsZURldGFpbERhdGFTb3VyY2UuYmluZCh0aGlzKSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIHNldFRhYmxlRGF0YVNvdXJjZShkYXRhOiBUW10pIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPGFueT4oZGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBzZXRUYWJsZURldGFpbERhdGFTb3VyY2Uocm93RGF0YTogVERldGFpbFtdKSB7XG4gICAgdGhpcy5kYXRhU291cmNlRGV0YWlsID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KHJvd0RhdGEpO1xuICB9XG59XG4iLCI8dGFibGUgKm5nSWY9XCIhdGFibGVEZXRhaWxzXCIgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIiBtYXRTb3J0IChtYXRTb3J0Q2hhbmdlKT1cIm9uU29ydCgkZXZlbnQpXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhYmxlQ29sdW1uIG9mIHRhYmxlQ29sdW1uczsgbGV0IGkgPSBpbmRleFwiIFttYXRDb2x1bW5EZWZdPVwidGFibGVDb2x1bW4uaGVhZGVyTmFtZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0YWJsZUNvbHVtbi5zb3J0YWJsZTsgZWxzZSBub3RTb3J0YWJsZVwiPlxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj1cImxldCBlbGVtZW50XCIgW21hdC1zb3J0LWhlYWRlcl09XCJ0YWJsZUNvbHVtbi5maWVsZCB8fCAnJ1wiXG4gICAgICAgIGFycm93UG9zaXRpb249XCJhZnRlclwiIFtuZ1N0eWxlXT1cInt3aWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy53aWR0aCwgbWluV2lkdGg6IHRhYmxlQ29sdW1uLnN0eWxlcz8uWydtaW4td2lkdGgnXX1cIlxuICAgICAgICBbbmdDbGFzc109XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA/ICd0aC0nK3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50IDogJydcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVIZWFkZXI7IGNvbnRleHQ6IHt0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGg+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNub3RTb3J0YWJsZT5cbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgW25nU3R5bGVdPVwie3dpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LndpZHRoLCBtaW5XaWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy5bJ21pbi13aWR0aCddfVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RoLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVIZWFkZXI7IGNvbnRleHQ6IHt0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGg+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiIChjbGljayk9XCJvblJvd0NsaWNrKGVsZW1lbnQpXCJcbiAgICAgIFthbGlnbl09XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudFwiXG4gICAgICBbbmdDbGFzc109XCJbdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgPyAndGQtJyt0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA6ICcnLCBvblJvd0NsaWNrRXZlbnQub2JzZXJ2ZWQgJiYgaSA9PT0gdGFibGVDb2x1bW5zLmxlbmd0aCAtIDEgPyAncm93LWRldGFpbCc6ICcnXVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRhYmxlRGF0YVRwbDsgY29udGV4dDoge2VsZW1lbnQsIHRhYmxlQ29sdW1ufVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPG1hdC1pY29uICpuZ0lmPVwib25Sb3dDbGlja0V2ZW50Lm9ic2VydmVkICYmIGkgPT09IHRhYmxlQ29sdW1ucy5sZW5ndGggLSAxXCIgY2xhc3M9XCJyb3ctZGV0YWlsLWljb25cIj5uYXZpZ2F0ZV9uZXh0PC9tYXQtaWNvbj5cbiAgICA8L3RkPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zVG9EaXNwbGF5XCI+PC90cj5cbiAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGNvbHVtbnNUb0Rpc3BsYXk7XCIgW25nQ2xhc3NdPVwieydyb3ctY2xpY2thYmxlJzogb25Sb3dDbGlja0V2ZW50Lm9ic2VydmVkfVwiPjwvdHI+XG48L3RhYmxlPlxuXG48dGFibGUgKm5nSWY9XCJ0YWJsZURldGFpbHNcIiBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIG1hdFNvcnQgKG1hdFNvcnRDaGFuZ2UpPVwib25Tb3J0KCRldmVudClcIlxuICBtdWx0aVRlbXBsYXRlRGF0YVJvd3M+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhYmxlQ29sdW1uIG9mIHRhYmxlQ29sdW1uczsgbGV0IGkgPSBpbmRleFwiIFttYXRDb2x1bW5EZWZdPVwidGFibGVDb2x1bW4uaGVhZGVyTmFtZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0YWJsZUNvbHVtbi5zb3J0YWJsZTsgZWxzZSBub3RTb3J0YWJsZVwiPlxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj1cImxldCBlbGVtZW50XCIgW21hdC1zb3J0LWhlYWRlcl09XCJ0YWJsZUNvbHVtbi5maWVsZCB8fCAnJ1wiXG4gICAgICAgIGFycm93UG9zaXRpb249XCJhZnRlclwiIFtuZ1N0eWxlXT1cInt3aWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy53aWR0aCwgbWluV2lkdGg6IHRhYmxlQ29sdW1uLnN0eWxlcz8uWydtaW4td2lkdGgnXX1cIlxuICAgICAgICBbbmdDbGFzc109XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA/ICd0aC0nK3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50IDogJydcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRhYmxlSGVhZGVyOyBjb250ZXh0OiB7dGFibGVDb2x1bW59XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L3RoPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjbm90U29ydGFibGU+XG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtuZ1N0eWxlXT1cInt3aWR0aDogdGFibGVDb2x1bW4uc3R5bGVzPy53aWR0aCwgbWluV2lkdGg6IHRhYmxlQ29sdW1uLnN0eWxlcz8uWydtaW4td2lkdGgnXX1cIlxuICAgICAgICBbbmdDbGFzc109XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA/ICd0aC0nK3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50IDogJydcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRhYmxlSGVhZGVyOyBjb250ZXh0OiB7dGFibGVDb2x1bW59XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L3RoPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiAoY2xpY2spPVwib25Sb3dDbGljayhlbGVtZW50KVwiXG4gICAgICBbYWxpZ25dPVwidGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnRcIlxuICAgICAgW25nQ2xhc3NdPVwiW3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RkLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJywgaSA9PT0gMCA/ICdyb3ctZXhwYW5kJyA6ICcnXVwiPlxuICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaSA9PT0gMFwiIGNsYXNzPVwicm93LWV4cGFuZC1pY29uXCI+e3sgZWxlbWVudCA9PT0gZWxlbWVudERldGFpbCA/ICdleHBhbmRfbGVzcycgOiAnZXhwYW5kX21vcmUnIH19PC9tYXQtaWNvbj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0YWJsZURhdGFUcGw7IGNvbnRleHQ6IHtlbGVtZW50LCB0YWJsZUNvbHVtbn1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3RkPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8IS0tIEV4cGFuZGVkIENvbnRlbnQgQ29sdW1uIC0tPlxuICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImV4cGFuZGVkRGV0YWlsXCI+XG4gICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBbYXR0ci5jb2xzcGFuXT1cImNvbHVtbnNUb0Rpc3BsYXkubGVuZ3RoXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZWxlbWVudC1kZXRhaWxcIiAqbmdJZj1cImRhdGFTb3VyY2VEZXRhaWwuZGF0YS5sZW5ndGhcIlxuICAgICAgICBbQGV4cGFuZERldGFpbF09XCJlbGVtZW50ID09PSBlbGVtZW50RGV0YWlsID8gJ2V4cGFuZGVkJyA6ICdjb2xsYXBzZWQnXCI+XG4gICAgICAgIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZURldGFpbFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRhYmxlQ29sdW1uIG9mIHRhYmxlRGV0YWlsQ29sdW1ucy5jb2x1bW5EZWZzXCJcbiAgICAgICAgICAgIFttYXRDb2x1bW5EZWZdPVwidGFibGVDb2x1bW4uaGVhZGVyTmFtZVwiPlxuICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj1cImxldCBlbGVtZW50XCIgYXJyb3dQb3NpdGlvbj1cImFmdGVyXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwie3dpZHRoOiB0YWJsZUNvbHVtbi5zdHlsZXM/LndpZHRofVwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50ID8gJ3RoLScrdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnQgOiAnJ1wiPlxuICAgICAgICAgICAgICB7e3RhYmxlQ29sdW1uLmhlYWRlck5hbWUgfCB1cHBlcmNhc2V9fVxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCIgKGNsaWNrKT1cIm9uRGV0YWlsUm93Q2xpY2soZWxlbWVudClcIlxuICAgICAgICAgICAgICBbYWxpZ25dPVwidGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnRcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ0YWJsZUNvbHVtbi5zdHlsZXM/LmFsaWdubWVudCA/ICd0ZC0nK3RhYmxlQ29sdW1uLnN0eWxlcz8uYWxpZ25tZW50IDogJydcIlxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7cGFkZGluZzogdGFibGVDb2x1bW4uc3R5bGVzPy5wYWRkaW5nfVwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFibGVEYXRhVHBsOyBjb250ZXh0OiB7ZWxlbWVudCwgdGFibGVDb2x1bW59XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zRGV0YWlsVG9EaXNwbGF5XCI+PC90cj5cbiAgICAgICAgICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvd0RldGFpbDsgY29sdW1uczogY29sdW1uc0RldGFpbFRvRGlzcGxheTtcIj48L3RyPlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG4gICAgPC90ZD5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zVG9EaXNwbGF5XCI+PC90cj5cbiAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCBlbGVtZW50OyBjb2x1bW5zOiBjb2x1bW5zVG9EaXNwbGF5O1wiIGNsYXNzPVwiZWxlbWVudC1yb3dcIlxuICAgIFtuZ0NsYXNzXT1cInsnZXhwYW5kZWQtcm93JzogZWxlbWVudERldGFpbCA9PT0gZWxlbWVudCwgJ3Jvdy1jbGlja2FibGUnOiB0YWJsZURldGFpbHN9XCJcbiAgICAoY2xpY2spPVwidG9nZ2xlUm93KGVsZW1lbnQpXCI+XG4gIDwvdHI+XG4gIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBbJ2V4cGFuZGVkRGV0YWlsJ11cIiBjbGFzcz1cImRldGFpbC1yb3dcIj48L3RyPlxuPC90YWJsZT5cblxuPG5nLXRlbXBsYXRlICN0YWJsZURhdGFUcGwgbGV0LWVsZW1lbnQ9XCJlbGVtZW50XCIgbGV0LXRhYmxlQ29sdW1uPVwidGFibGVDb2x1bW5cIj5cbiAgPGRpdiBjbGFzcz1cImFsaWduLXdyYXBwZXJcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0YWJsZUNvbHVtbi50eXBlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJEYXRhVHlwZS5GSUVMRFwiPlxuICAgICAgICB7e2VsZW1lbnQgfCBkYXRhUHJvcGVydHlHZXR0ZXI6IHRhYmxlQ29sdW1uLmZpZWxkfX1cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiRGF0YVR5cGUuRlVOQ1RJT05cIj5cbiAgICAgICAge3t0YWJsZUNvbHVtbi5mdW5jdGlvbj8uKGVsZW1lbnQpfX1cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiRGF0YVR5cGUuUkVOREVSRVJcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgW2R5bmFtaWNDb21wb25lbnRdPVwidGFibGVDb2x1bW4ucmVuZGVyZXI/LihlbGVtZW50KVwiPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgIHt7ZWxlbWVudCB8IGRhdGFQcm9wZXJ0eUdldHRlcjogdGFibGVDb2x1bW4uZmllbGR9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0YWJsZUhlYWRlciBsZXQtdGFibGVDb2x1bW49XCJ0YWJsZUNvbHVtblwiPlxuICA8ZGl2IGNsYXNzPVwidG9vbHRpcFwiIFtuZ1N0eWxlXT1cInsnanVzdGlmeS1jb250ZW50JzogdGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnR9XCIgW25nQ2xhc3NdPVwidGFibGVDb2x1bW4uc3R5bGVzPy5hbGlnbm1lbnRcIj5cbiAgICA8c3Bhbj57e3RhYmxlQ29sdW1uLmhlYWRlck5hbWUgfCB1cHBlcmNhc2V9fTwvc3Bhbj5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJ0YWJsZUNvbHVtbi5oZWFkZXJUb29sdGlwXCIgW21hdFRvb2x0aXBdPVwidGFibGVDb2x1bW4uaGVhZGVyVG9vbHRpcFwiIGNsYXNzPVwidG9vbHRpcC1pY29uXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPmhlbHA8L21hdC1pY29uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|