@alfresco/adf-core 8.1.0-15704247529 → 8.1.0-15704418083
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +3 -3
- package/esm2022/lib/form/components/form-renderer.component.mjs +3 -3
- package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +3 -3
- package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +3 -3
- package/esm2022/lib/form/components/widgets/date/date.widget.mjs +3 -3
- package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +3 -3
- package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +3 -3
- package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +3 -3
- package/esm2022/lib/form/components/widgets/number/number.widget.mjs +3 -3
- package/esm2022/lib/form/components/widgets/text/text.widget.mjs +3 -3
- package/fesm2022/adf-core.mjs +20 -20
- package/fesm2022/adf-core.mjs.map +1 -1
- package/lib/card-view/components/card-view/card-view.component.scss +0 -1
- package/lib/form/components/form-renderer.component.scss +0 -9
- package/lib/form/components/inplace-form-input/inplace-form-input.component.scss +1 -1
- package/package.json +9 -9
|
@@ -141,7 +141,7 @@ export class DateWidgetComponent extends WidgetComponent {
|
|
|
141
141
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateWidgetComponent, isStandalone: true, selector: "date-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, providers: [
|
|
142
142
|
{ provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
|
|
143
143
|
{ provide: DateAdapter, useClass: AdfDateFnsAdapter }
|
|
144
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"{{ field.className }}\" id=\"data-widget\" [class.adf-invalid]=\"dateInputControl.invalid && dateInputControl.touched\">\n <mat-form-field [floatLabel]=\"'always'\" class=\"adf-date-widget\">\n <mat-label class=\"adf-label\"\n [id]=\"field.id + '-label'\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})\n </mat-label>\n <input matInput\n [matDatepicker]=\"datePicker\"\n [id]=\"field.id\"\n [formControl]=\"dateInputControl\"\n [placeholder]=\"field.placeholder\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\" [disabled]=\"field.readOnly\" />\n <mat-datepicker #datePicker\n [startAt]=\"startAt\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget\n *ngIf=\"dateInputControl.invalid && dateInputControl.touched\"\n [error]=\"field.validationSummary\"\n />\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
144
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"{{ field.className }}\" id=\"data-widget\" [class.adf-invalid]=\"dateInputControl.invalid && dateInputControl.touched\">\n <mat-form-field [floatLabel]=\"'always'\" class=\"adf-date-widget adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\"\n [id]=\"field.id + '-label'\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})\n </mat-label>\n <input matInput\n [matDatepicker]=\"datePicker\"\n [id]=\"field.id\"\n [formControl]=\"dateInputControl\"\n [placeholder]=\"field.placeholder\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\" [disabled]=\"field.readOnly\" />\n <mat-datepicker #datePicker\n [startAt]=\"startAt\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget\n *ngIf=\"dateInputControl.invalid && dateInputControl.touched\"\n [error]=\"field.validationSummary\"\n />\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
145
145
|
}
|
|
146
146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateWidgetComponent, decorators: [{
|
|
147
147
|
type: Component,
|
|
@@ -158,6 +158,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
158
158
|
'(input)': 'event($event)',
|
|
159
159
|
'(invalid)': 'event($event)',
|
|
160
160
|
'(select)': 'event($event)'
|
|
161
|
-
}, imports: [MatFormFieldModule, TranslateModule, MatInputModule, MatDatepickerModule, ReactiveFormsModule, ErrorWidgetComponent, NgIf], encapsulation: ViewEncapsulation.None, template: "<div class=\"{{ field.className }}\" id=\"data-widget\" [class.adf-invalid]=\"dateInputControl.invalid && dateInputControl.touched\">\n <mat-form-field [floatLabel]=\"'always'\" class=\"adf-date-widget\">\n <mat-label class=\"adf-label\"\n [id]=\"field.id + '-label'\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})\n </mat-label>\n <input matInput\n [matDatepicker]=\"datePicker\"\n [id]=\"field.id\"\n [formControl]=\"dateInputControl\"\n [placeholder]=\"field.placeholder\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\" [disabled]=\"field.readOnly\" />\n <mat-datepicker #datePicker\n [startAt]=\"startAt\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget\n *ngIf=\"dateInputControl.invalid && dateInputControl.touched\"\n [error]=\"field.validationSummary\"\n />\n </div>\n</div>\n" }]
|
|
161
|
+
}, imports: [MatFormFieldModule, TranslateModule, MatInputModule, MatDatepickerModule, ReactiveFormsModule, ErrorWidgetComponent, NgIf], encapsulation: ViewEncapsulation.None, template: "<div class=\"{{ field.className }}\" id=\"data-widget\" [class.adf-invalid]=\"dateInputControl.invalid && dateInputControl.touched\">\n <mat-form-field [floatLabel]=\"'always'\" class=\"adf-date-widget adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\"\n [id]=\"field.id + '-label'\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})\n </mat-label>\n <input matInput\n [matDatepicker]=\"datePicker\"\n [id]=\"field.id\"\n [formControl]=\"dateInputControl\"\n [placeholder]=\"field.placeholder\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"datePicker\" [disabled]=\"field.readOnly\" />\n <mat-datepicker #datePicker\n [startAt]=\"startAt\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget\n *ngIf=\"dateInputControl.invalid && dateInputControl.touched\"\n [error]=\"field.validationSummary\"\n />\n </div>\n</div>\n" }]
|
|
162
162
|
}] });
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS53aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUvZGF0ZS53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUvZGF0ZS53aWRnZXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFvQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFB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bnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yICovXG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBpbmplY3QsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIsIE1BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEFERl9EQVRFX0ZPUk1BVFMsIEFkZkRhdGVGbnNBZGFwdGVyLCBEYXRlRm5zVXRpbHMsIERFRkFVTFRfREFURV9GT1JNQVQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9lcnJvci9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VNb2RlbCB9IGZyb20gJy4uL2NvcmUvZXJyb3ItbWVzc2FnZS5tb2RlbCc7XG5pbXBvcnQgeyBwYXJzZUlTTyB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybVdpZGdldCB9IGZyb20gJy4uL3JlYWN0aXZlLXdpZGdldC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RhdGUtd2lkZ2V0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBBREZfREFURV9GT1JNQVRTIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBBZGZEYXRlRm5zQWRhcHRlciB9XG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS53aWRnZXQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW5wdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGludmFsaWQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKHNlbGVjdCknOiAnZXZlbnQoJGV2ZW50KSdcbiAgICB9LFxuICAgIGltcG9ydHM6IFtNYXRGb3JtRmllbGRNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0SW5wdXRNb2R1bGUsIE1hdERhdGVwaWNrZXJNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEVycm9yV2lkZ2V0Q29tcG9uZW50LCBOZ0lmXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERhdGVXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFJlYWN0aXZlRm9ybVdpZGdldCB7XG4gICAgbWluRGF0ZTogRGF0ZTtcbiAgICBtYXhEYXRlOiBEYXRlO1xuICAgIHN0YXJ0QXQ6IERhdGU7XG5cbiAgICBkYXRlSW5wdXRDb250cm9sOiBGb3JtQ29udHJvbDxEYXRlPiA9IG5ldyBGb3JtQ29udHJvbDxEYXRlPihudWxsKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRhdGVBZGFwdGVyID0gaW5qZWN0KERhdGVBZGFwdGVyKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRGb3JtQ29udHJvbFZhbHVlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZSgpO1xuICAgICAgICB0aGlzLmluaXREYXRlQWRhcHRlcigpO1xuICAgICAgICB0aGlzLmluaXREYXRlUmFuZ2UoKTtcbiAgICAgICAgdGhpcy5pbml0U3RhcnRBdCgpO1xuICAgICAgICB0aGlzLnN1YnNjcmliZVRvRGF0ZUNoYW5nZXMoKTtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlUmVhY3RpdmVGb3JtQ29udHJvbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtQ29udHJvbFN0YXRlKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Rm9ybUNvbnRyb2xWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuZmllbGQudmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZUlucHV0Q29udHJvbC5zZXRWYWxpZGF0b3JzKHRoaXMuaXNSZXF1aXJlZCgpICYmIHRoaXMuZmllbGQ/LmlzVmlzaWJsZSA/IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSA6IFtdKTtcbiAgICAgICAgdGhpcy5maWVsZD8ucmVhZE9ubHkgfHwgdGhpcy5yZWFkT25seVxuICAgICAgICAgICAgPyB0aGlzLmRhdGVJbnB1dENvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSlcbiAgICAgICAgICAgIDogdGhpcy5kYXRlSW5wdXRDb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9EYXRlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKG5ld0RhdGU6IERhdGUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSBuZXdEYXRlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGaWVsZCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZpZWxkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbGlkYXRlRmllbGQoKTtcbiAgICAgICAgdGhpcy5vbkZpZWxkQ2hhbmdlZCh0aGlzLmZpZWxkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlRmllbGQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGVJbnB1dENvbnRyb2wuaW52YWxpZCkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcnModGhpcy5kYXRlSW5wdXRDb250cm9sLmVycm9ycyk7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLm1hcmtBc0ludmFsaWQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRFcnJvcnMoKTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQubWFya0FzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlRXJyb3JzKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyk6IHZvaWQge1xuICAgICAgICBjb25zdCBlcnJvckF0dHJpYnV0ZXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMubWF0RGF0ZXBpY2tlclBhcnNlOlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkodGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdCB8fCB0aGlzLmZpZWxkLmRlZmF1bHREYXRlVGltZUZvcm1hdCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICEhZXJyb3JzLnJlcXVpcmVkOlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJ0ZPUk0uRklFTEQuUkVRVUlSRUQnKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMubWF0RGF0ZXBpY2tlck1pbjoge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pblZhbHVlID0gRGF0ZUZuc1V0aWxzLmZvcm1hdERhdGUoZXJyb3JzLm1hdERhdGVwaWNrZXJNaW4ubWluLCB0aGlzLmZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0KS50b0xvY2FsZVVwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIGVycm9yQXR0cmlidXRlcy5zZXQoJ21pblZhbHVlJywgbWluVmFsdWUpO1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJ0ZPUk0uRklFTEQuVkFMSURBVE9SLk5PVF9MRVNTX1RIQU4nLCBlcnJvckF0dHJpYnV0ZXMpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyTWF4OiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF4VmFsdWUgPSBEYXRlRm5zVXRpbHMuZm9ybWF0RGF0ZShlcnJvcnMubWF0RGF0ZXBpY2tlck1heC5tYXgsIHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQpLnRvTG9jYWxlVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgZXJyb3JBdHRyaWJ1dGVzLnNldCgnbWF4VmFsdWUnLCBtYXhWYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5WQUxJREFUT1IuTk9UX0dSRUFURVJfVEhBTicsIGVycm9yQXR0cmlidXRlcyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWxpZGF0aW9uU3VtbWFyeShtZXNzYWdlOiBzdHJpbmcsIGF0dHJpYnV0ZXM/OiBNYXA8c3RyaW5nLCBzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGQudmFsaWRhdGlvblN1bW1hcnkgPSBuZXcgRXJyb3JNZXNzYWdlTW9kZWwoeyBtZXNzYWdlLCBhdHRyaWJ1dGVzIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzZXRFcnJvcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVBZGFwdGVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWVsZD8uZGF0ZURpc3BsYXlGb3JtYXQpIHtcbiAgICAgICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLmRhdGVBZGFwdGVyIGFzIEFkZkRhdGVGbnNBZGFwdGVyO1xuICAgICAgICAgICAgYWRhcHRlci5kaXNwbGF5Rm9ybWF0ID0gdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVSYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQ/Lm1pblZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm1pbkRhdGUgPSBwYXJzZUlTTyh0aGlzLmZpZWxkLm1pblZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5tYXhWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlID0gcGFyc2VJU08odGhpcy5maWVsZC5tYXhWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRTdGFydEF0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWVsZD8udmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhcnRBdCA9IHRoaXMuZGF0ZUFkYXB0ZXIucGFyc2UodGhpcy5maWVsZC52YWx1ZSwgREVGQVVMVF9EQVRFX0ZPUk1BVCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwie3sgZmllbGQuY2xhc3NOYW1lIH19XCIgaWQ9XCJkYXRhLXdpZGdldFwiIFtjbGFzcy5hZGYtaW52YWxpZF09XCJkYXRlSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZUlucHV0Q29udHJvbC50b3VjaGVkXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIFtmbG9hdExhYmVsXT1cIidhbHdheXMnXCIgY2xhc3M9XCJhZGYtZGF0ZS13aWRnZXRcIj5cbiAgICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cImFkZi1sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmlkICsgJy1sYWJlbCdcIlxuICAgICAgICAgICAgICAgICAgIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fSAoe3sgZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQgfX0pXG4gICAgICAgIDwvbWF0LWxhYmVsPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cImRhdGVQaWNrZXJcIlxuICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmlkXCJcbiAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJkYXRlSW5wdXRDb250cm9sXCJcbiAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICBbbWluXT1cIm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgW21heF09XCJtYXhEYXRlXCJcbiAgICAgICAgLz5cbiAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkYXRlUGlja2VyXCIgW2Rpc2FibGVkXT1cImZpZWxkLnJlYWRPbmx5XCIgLz5cbiAgICAgICAgPG1hdC1kYXRlcGlja2VyICNkYXRlUGlja2VyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3RhcnRBdF09XCJzdGFydEF0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seVwiIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8ZGl2IGNsYXNzPVwiYWRmLWVycm9yLW1lc3NhZ2VzLWNvbnRhaW5lclwiPlxuICAgICAgICA8ZXJyb3Itd2lkZ2V0XG4gICAgICAgICAgICAqbmdJZj1cImRhdGVJbnB1dENvbnRyb2wuaW52YWxpZCAmJiBkYXRlSW5wdXRDb250cm9sLnRvdWNoZWRcIlxuICAgICAgICAgICAgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCJcbiAgICAgICAgLz5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS53aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUvZGF0ZS53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUvZGF0ZS53aWRnZXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFvQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFB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bnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yICovXG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBEZXN0cm95UmVmLCBpbmplY3QsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIsIE1BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEFERl9EQVRFX0ZPUk1BVFMsIEFkZkRhdGVGbnNBZGFwdGVyLCBEYXRlRm5zVXRpbHMsIERFRkFVTFRfREFURV9GT1JNQVQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9lcnJvci9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VNb2RlbCB9IGZyb20gJy4uL2NvcmUvZXJyb3ItbWVzc2FnZS5tb2RlbCc7XG5pbXBvcnQgeyBwYXJzZUlTTyB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybVdpZGdldCB9IGZyb20gJy4uL3JlYWN0aXZlLXdpZGdldC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RhdGUtd2lkZ2V0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBBREZfREFURV9GT1JNQVRTIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBBZGZEYXRlRm5zQWRhcHRlciB9XG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS53aWRnZXQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhjaGFuZ2UpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW5wdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGludmFsaWQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKHNlbGVjdCknOiAnZXZlbnQoJGV2ZW50KSdcbiAgICB9LFxuICAgIGltcG9ydHM6IFtNYXRGb3JtRmllbGRNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0SW5wdXRNb2R1bGUsIE1hdERhdGVwaWNrZXJNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEVycm9yV2lkZ2V0Q29tcG9uZW50LCBOZ0lmXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERhdGVXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFJlYWN0aXZlRm9ybVdpZGdldCB7XG4gICAgbWluRGF0ZTogRGF0ZTtcbiAgICBtYXhEYXRlOiBEYXRlO1xuICAgIHN0YXJ0QXQ6IERhdGU7XG5cbiAgICBkYXRlSW5wdXRDb250cm9sOiBGb3JtQ29udHJvbDxEYXRlPiA9IG5ldyBGb3JtQ29udHJvbDxEYXRlPihudWxsKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRhdGVBZGFwdGVyID0gaW5qZWN0KERhdGVBZGFwdGVyKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRGb3JtQ29udHJvbFZhbHVlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZSgpO1xuICAgICAgICB0aGlzLmluaXREYXRlQWRhcHRlcigpO1xuICAgICAgICB0aGlzLmluaXREYXRlUmFuZ2UoKTtcbiAgICAgICAgdGhpcy5pbml0U3RhcnRBdCgpO1xuICAgICAgICB0aGlzLnN1YnNjcmliZVRvRGF0ZUNoYW5nZXMoKTtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlUmVhY3RpdmVGb3JtQ29udHJvbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtQ29udHJvbFN0YXRlKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Rm9ybUNvbnRyb2xWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuZmllbGQudmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZUlucHV0Q29udHJvbC5zZXRWYWxpZGF0b3JzKHRoaXMuaXNSZXF1aXJlZCgpICYmIHRoaXMuZmllbGQ/LmlzVmlzaWJsZSA/IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSA6IFtdKTtcbiAgICAgICAgdGhpcy5maWVsZD8ucmVhZE9ubHkgfHwgdGhpcy5yZWFkT25seVxuICAgICAgICAgICAgPyB0aGlzLmRhdGVJbnB1dENvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSlcbiAgICAgICAgICAgIDogdGhpcy5kYXRlSW5wdXRDb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9EYXRlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlSW5wdXRDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKG5ld0RhdGU6IERhdGUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmllbGQudmFsdWUgPSBuZXdEYXRlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGaWVsZCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZpZWxkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbGlkYXRlRmllbGQoKTtcbiAgICAgICAgdGhpcy5vbkZpZWxkQ2hhbmdlZCh0aGlzLmZpZWxkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlRmllbGQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGVJbnB1dENvbnRyb2wuaW52YWxpZCkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcnModGhpcy5kYXRlSW5wdXRDb250cm9sLmVycm9ycyk7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLm1hcmtBc0ludmFsaWQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRFcnJvcnMoKTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQubWFya0FzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlRXJyb3JzKGVycm9yczogVmFsaWRhdGlvbkVycm9ycyk6IHZvaWQge1xuICAgICAgICBjb25zdCBlcnJvckF0dHJpYnV0ZXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMubWF0RGF0ZXBpY2tlclBhcnNlOlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkodGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdCB8fCB0aGlzLmZpZWxkLmRlZmF1bHREYXRlVGltZUZvcm1hdCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICEhZXJyb3JzLnJlcXVpcmVkOlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJ0ZPUk0uRklFTEQuUkVRVUlSRUQnKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMubWF0RGF0ZXBpY2tlck1pbjoge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pblZhbHVlID0gRGF0ZUZuc1V0aWxzLmZvcm1hdERhdGUoZXJyb3JzLm1hdERhdGVwaWNrZXJNaW4ubWluLCB0aGlzLmZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0KS50b0xvY2FsZVVwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIGVycm9yQXR0cmlidXRlcy5zZXQoJ21pblZhbHVlJywgbWluVmFsdWUpO1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJ0ZPUk0uRklFTEQuVkFMSURBVE9SLk5PVF9MRVNTX1RIQU4nLCBlcnJvckF0dHJpYnV0ZXMpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyTWF4OiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF4VmFsdWUgPSBEYXRlRm5zVXRpbHMuZm9ybWF0RGF0ZShlcnJvcnMubWF0RGF0ZXBpY2tlck1heC5tYXgsIHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQpLnRvTG9jYWxlVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgZXJyb3JBdHRyaWJ1dGVzLnNldCgnbWF4VmFsdWUnLCBtYXhWYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5WQUxJREFUT1IuTk9UX0dSRUFURVJfVEhBTicsIGVycm9yQXR0cmlidXRlcyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWxpZGF0aW9uU3VtbWFyeShtZXNzYWdlOiBzdHJpbmcsIGF0dHJpYnV0ZXM/OiBNYXA8c3RyaW5nLCBzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGQudmFsaWRhdGlvblN1bW1hcnkgPSBuZXcgRXJyb3JNZXNzYWdlTW9kZWwoeyBtZXNzYWdlLCBhdHRyaWJ1dGVzIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzZXRFcnJvcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsaWRhdGlvblN1bW1hcnkoJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVBZGFwdGVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWVsZD8uZGF0ZURpc3BsYXlGb3JtYXQpIHtcbiAgICAgICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLmRhdGVBZGFwdGVyIGFzIEFkZkRhdGVGbnNBZGFwdGVyO1xuICAgICAgICAgICAgYWRhcHRlci5kaXNwbGF5Rm9ybWF0ID0gdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVSYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQ/Lm1pblZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm1pbkRhdGUgPSBwYXJzZUlTTyh0aGlzLmZpZWxkLm1pblZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5tYXhWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlID0gcGFyc2VJU08odGhpcy5maWVsZC5tYXhWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRTdGFydEF0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWVsZD8udmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhcnRBdCA9IHRoaXMuZGF0ZUFkYXB0ZXIucGFyc2UodGhpcy5maWVsZC52YWx1ZSwgREVGQVVMVF9EQVRFX0ZPUk1BVCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwie3sgZmllbGQuY2xhc3NOYW1lIH19XCIgaWQ9XCJkYXRhLXdpZGdldFwiIFtjbGFzcy5hZGYtaW52YWxpZF09XCJkYXRlSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZUlucHV0Q29udHJvbC50b3VjaGVkXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIFtmbG9hdExhYmVsXT1cIidhbHdheXMnXCIgY2xhc3M9XCJhZGYtZGF0ZS13aWRnZXQgYWRmLWZvcm0tZmllbGQtaW5wdXRcIiBbZmxvYXRMYWJlbF09XCJmaWVsZC5wbGFjZWhvbGRlciA/ICdhbHdheXMnIDogJ2F1dG8nXCI+XG4gICAgICAgIDxtYXQtbGFiZWwgY2xhc3M9XCJhZGYtbGFiZWxcIlxuICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZCArICctbGFiZWwnXCJcbiAgICAgICAgICAgICAgICAgICBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIj5cbiAgICAgICAgICAgIHt7IGZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX0gKHt7IGZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0IH19KVxuICAgICAgICA8L21hdC1sYWJlbD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0XG4gICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJkYXRlUGlja2VyXCJcbiAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZGF0ZUlucHV0Q29udHJvbFwiXG4gICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgW21pbl09XCJtaW5EYXRlXCJcbiAgICAgICAgICAgICAgIFttYXhdPVwibWF4RGF0ZVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwiZGF0ZVBpY2tlclwiIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seVwiIC8+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjZGF0ZVBpY2tlclxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXJ0QXRdPVwic3RhcnRBdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIiAvPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPGRpdiBjbGFzcz1cImFkZi1lcnJvci1tZXNzYWdlcy1jb250YWluZXJcIj5cbiAgICAgICAgPGVycm9yLXdpZGdldFxuICAgICAgICAgICAgKm5nSWY9XCJkYXRlSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZUlucHV0Q29udHJvbC50b3VjaGVkXCJcbiAgICAgICAgICAgIFtlcnJvcl09XCJmaWVsZC52YWxpZGF0aW9uU3VtbWFyeVwiXG4gICAgICAgIC8+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -140,7 +140,7 @@ export class DateTimeWidgetComponent extends WidgetComponent {
|
|
|
140
140
|
{ provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
|
|
141
141
|
{ provide: DateAdapter, useClass: AdfDateFnsAdapter },
|
|
142
142
|
{ provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
|
|
143
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"{{ field.className }}\"\n id=\"data-time-widget\"\n [class.adf-invalid]=\"datetimeInputControl.invalid && datetimeInputControl.touched\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field class=\"adf-date-time-widget\"\n [class.adf-left-label-input-datepicker]=\"field.leftLabels\"\n [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [id]=\"field.id\"\n [formControl]=\"datetimeInputControl\"\n (keydown.enter)=\"datetimePicker.open()\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n [min]=\"minDate\"\n [max]=\"maxDate\">\n <mat-datetimepicker-toggle matSuffix [for]=\"datetimePicker\"\n [disabled]=\"field.readOnly\" />\n <mat-datetimepicker #datetimePicker\n data-automation-id=\"adf-date-time-widget-picker\"\n type=\"datetime\"\n [touchUi]=\"true\"\n [timeInterval]=\"5\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget *ngIf=\"datetimeInputControl.invalid && datetimeInputControl.touched\" [error]=\"field.validationSummary\" />\n </div>\n </div>\n</div>\n", styles: [".adf-date-time-widget .mat-mdc-form-field-text-suffix{top:26px}.adf-date-time-widget .mat-mdc-floating-label{top:20px}.adf-left-label-input-datepicker .mat-mdc-form-field-text-suffix{top:0}.adf-left-label-input-datepicker .mat-mdc-form-text-infix{width:100%}.mat-datetimepicker-toggle{color:var(--adf-theme-foreground-icon-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: MatDatetimepickerModule }, { kind: "component", type: i4.MatDatetimepickerComponent, selector: "mat-datetimepicker", inputs: ["multiYearSelector", "twelvehour", "startView", "mode", "timeInterval", "ariaNextMonthLabel", "ariaPrevMonthLabel", "ariaNextYearLabel", "ariaPrevYearLabel", "preventSameDateTimeSelection", "panelClass", "startAt", "openOnFocus", "type", "touchUi", "disabled"], outputs: ["selectedChanged", "opened", "closed", "viewChanged"], exportAs: ["matDatetimepicker"] }, { kind: "component", type: i4.MatDatetimepickerToggleComponent, selector: "mat-datetimepicker-toggle", inputs: ["for", "disabled"], exportAs: ["matDatetimepickerToggle"] }, { kind: "directive", type: i4.MatDatetimepickerInputDirective, selector: "input[matDatetimepicker]", inputs: ["matDatetimepicker", "matDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
143
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"{{ field.className }}\"\n id=\"data-time-widget\"\n [class.adf-invalid]=\"datetimeInputControl.invalid && datetimeInputControl.touched\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field class=\"adf-date-time-widget adf-form-field-input\"\n [class.adf-left-label-input-datepicker]=\"field.leftLabels\"\n [hideRequiredMarker]=\"true\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [id]=\"field.id\"\n [formControl]=\"datetimeInputControl\"\n (keydown.enter)=\"datetimePicker.open()\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n [min]=\"minDate\"\n [max]=\"maxDate\">\n <mat-datetimepicker-toggle matSuffix [for]=\"datetimePicker\"\n [disabled]=\"field.readOnly\" />\n <mat-datetimepicker #datetimePicker\n data-automation-id=\"adf-date-time-widget-picker\"\n type=\"datetime\"\n [touchUi]=\"true\"\n [timeInterval]=\"5\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget *ngIf=\"datetimeInputControl.invalid && datetimeInputControl.touched\" [error]=\"field.validationSummary\" />\n </div>\n </div>\n</div>\n", styles: [".adf-date-time-widget .mat-mdc-form-field-text-suffix{top:26px}.adf-date-time-widget .mat-mdc-floating-label{top:20px}.adf-left-label-input-datepicker .mat-mdc-form-field-text-suffix{top:0}.adf-left-label-input-datepicker .mat-mdc-form-text-infix{width:100%}.mat-datetimepicker-toggle{color:var(--adf-theme-foreground-icon-color)}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.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: "ngmodule", type: MatDatetimepickerModule }, { kind: "component", type: i4.MatDatetimepickerComponent, selector: "mat-datetimepicker", inputs: ["multiYearSelector", "twelvehour", "startView", "mode", "timeInterval", "ariaNextMonthLabel", "ariaPrevMonthLabel", "ariaNextYearLabel", "ariaPrevYearLabel", "preventSameDateTimeSelection", "panelClass", "startAt", "openOnFocus", "type", "touchUi", "disabled"], outputs: ["selectedChanged", "opened", "closed", "viewChanged"], exportAs: ["matDatetimepicker"] }, { kind: "component", type: i4.MatDatetimepickerToggleComponent, selector: "mat-datetimepicker-toggle", inputs: ["for", "disabled"], exportAs: ["matDatetimepickerToggle"] }, { kind: "directive", type: i4.MatDatetimepickerInputDirective, selector: "input[matDatetimepicker]", inputs: ["matDatetimepicker", "matDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
144
144
|
}
|
|
145
145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateTimeWidgetComponent, decorators: [{
|
|
146
146
|
type: Component,
|
|
@@ -149,6 +149,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
149
149
|
{ provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
|
|
150
150
|
{ provide: DateAdapter, useClass: AdfDateFnsAdapter },
|
|
151
151
|
{ provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
|
|
152
|
-
], imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, MatDatetimepickerModule, ReactiveFormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"{{ field.className }}\"\n id=\"data-time-widget\"\n [class.adf-invalid]=\"datetimeInputControl.invalid && datetimeInputControl.touched\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field class=\"adf-date-time-widget\"\n [class.adf-left-label-input-datepicker]=\"field.leftLabels\"\n [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [id]=\"field.id\"\n [formControl]=\"datetimeInputControl\"\n (keydown.enter)=\"datetimePicker.open()\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n [min]=\"minDate\"\n [max]=\"maxDate\">\n <mat-datetimepicker-toggle matSuffix [for]=\"datetimePicker\"\n [disabled]=\"field.readOnly\" />\n <mat-datetimepicker #datetimePicker\n data-automation-id=\"adf-date-time-widget-picker\"\n type=\"datetime\"\n [touchUi]=\"true\"\n [timeInterval]=\"5\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget *ngIf=\"datetimeInputControl.invalid && datetimeInputControl.touched\" [error]=\"field.validationSummary\" />\n </div>\n </div>\n</div>\n", styles: [".adf-date-time-widget .mat-mdc-form-field-text-suffix{top:26px}.adf-date-time-widget .mat-mdc-floating-label{top:20px}.adf-left-label-input-datepicker .mat-mdc-form-field-text-suffix{top:0}.adf-left-label-input-datepicker .mat-mdc-form-text-infix{width:100%}.mat-datetimepicker-toggle{color:var(--adf-theme-foreground-icon-color)}\n"] }]
|
|
152
|
+
], imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, MatDatetimepickerModule, ReactiveFormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"{{ field.className }}\"\n id=\"data-time-widget\"\n [class.adf-invalid]=\"datetimeInputControl.invalid && datetimeInputControl.touched\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field class=\"adf-date-time-widget adf-form-field-input\"\n [class.adf-left-label-input-datepicker]=\"field.leftLabels\"\n [hideRequiredMarker]=\"true\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }} ({{ field.dateDisplayFormat }})<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n [matDatetimepicker]=\"datetimePicker\"\n [id]=\"field.id\"\n [formControl]=\"datetimeInputControl\"\n (keydown.enter)=\"datetimePicker.open()\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n [min]=\"minDate\"\n [max]=\"maxDate\">\n <mat-datetimepicker-toggle matSuffix [for]=\"datetimePicker\"\n [disabled]=\"field.readOnly\" />\n <mat-datetimepicker #datetimePicker\n data-automation-id=\"adf-date-time-widget-picker\"\n type=\"datetime\"\n [touchUi]=\"true\"\n [timeInterval]=\"5\"\n [disabled]=\"field.readOnly\" />\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget *ngIf=\"datetimeInputControl.invalid && datetimeInputControl.touched\" [error]=\"field.validationSummary\" />\n </div>\n </div>\n</div>\n", styles: [".adf-date-time-widget .mat-mdc-form-field-text-suffix{top:26px}.adf-date-time-widget .mat-mdc-floating-label{top:20px}.adf-left-label-input-datepicker .mat-mdc-form-field-text-suffix{top:0}.adf-left-label-input-datepicker .mat-mdc-form-text-infix{width:100%}.mat-datetimepicker-toggle{color:var(--adf-theme-foreground-icon-color)}\n"] }]
|
|
153
153
|
}] });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvZGF0ZS10aW1lL2RhdGUtdGltZS53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUtdGltZS9kYXRlLXRpbWUud2lkZ2V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7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LCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGluamVjdCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IERhdGV0aW1lQWRhcHRlciwgTUFUX0RBVEVUSU1FX0ZPUk1BVFMsIE1hdERhdGV0aW1lcGlja2VyTW9kdWxlIH0gZnJvbSAnQG1hdC1kYXRldGltZXBpY2tlci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQURGX0RBVEVfRk9STUFUUywgQURGX0RBVEVUSU1FX0ZPUk1BVFMsIEFkZkRhdGVGbnNBZGFwdGVyLCBBZGZEYXRlVGltZUZuc0FkYXB0ZXIsIERhdGVGbnNVdGlscyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yTWVzc2FnZU1vZGVsIH0gZnJvbSAnLi4vY29yZS9lcnJvci1tZXNzYWdlLm1vZGVsJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybVdpZGdldCB9IGZyb20gJy4uL3JlYWN0aXZlLXdpZGdldC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RhdGUtdGltZS13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IEFERl9EQVRFX0ZPUk1BVFMgfSxcbiAgICAgICAgeyBwcm92aWRlOiBNQVRfREFURVRJTUVfRk9STUFUUywgdXNlVmFsdWU6IEFERl9EQVRFVElNRV9GT1JNQVRTIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBBZGZEYXRlRm5zQWRhcHRlciB9LFxuICAgICAgICB7IHByb3ZpZGU6IERhdGV0aW1lQWRhcHRlciwgdXNlQ2xhc3M6IEFkZkRhdGVUaW1lRm5zQWRhcHRlciB9XG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS10aW1lLndpZGdldC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRlLXRpbWUud2lkZ2V0LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXREYXRldGltZXBpY2tlck1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnRdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFJlYWN0aXZlRm9ybVdpZGdldCB7XG4gICAgbWluRGF0ZTogRGF0ZTtcbiAgICBtYXhEYXRlOiBEYXRlO1xuICAgIGRhdGV0aW1lSW5wdXRDb250cm9sOiBGb3JtQ29udHJvbDxEYXRlPiA9IG5ldyBGb3JtQ29udHJvbDxEYXRlPihudWxsKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0ZUFkYXB0ZXIgPSBpbmplY3QoRGF0ZUFkYXB0ZXIpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0ZVRpbWVBZGFwdGVyID0gaW5qZWN0KERhdGV0aW1lQWRhcHRlcik7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRGb3JtQ29udHJvbFZhbHVlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZSgpO1xuICAgICAgICB0aGlzLmluaXREYXRlQWRhcHRlcigpO1xuICAgICAgICB0aGlzLmluaXREYXRlUmFuZ2UoKTtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb0RhdGVDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVJlYWN0aXZlRm9ybUNvbnRyb2woKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0Rm9ybUNvbnRyb2xWYWx1ZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRGb3JtQ29udHJvbFZhbHVlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGV0aW1lSW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuZmllbGQudmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLmlzUmVxdWlyZWQoKSAmJiB0aGlzLmZpZWxkPy5pc1Zpc2libGUgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gOiBbXSk7XG4gICAgICAgIHRoaXMuZmllbGQ/LnJlYWRPbmx5IHx8IHRoaXMucmVhZE9ubHlcbiAgICAgICAgICAgID8gdGhpcy5kYXRldGltZUlucHV0Q29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KVxuICAgICAgICAgICAgOiB0aGlzLmRhdGV0aW1lSW5wdXRDb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRldGltZUlucHV0Q29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN1YnNjcmliZVRvRGF0ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgobmV3RGF0ZTogRGF0ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IG5ld0RhdGU7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRmllbGQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgICAgICB0aGlzLm9uRmllbGRDaGFuZ2VkKHRoaXMuZmllbGQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVGaWVsZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2w/LmludmFsaWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3JzKHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQubWFya0FzSW52YWxpZCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldEVycm9ycygpO1xuICAgICAgICAgICAgdGhpcy5maWVsZC5tYXJrQXNWYWxpZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcnMoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVycm9yQXR0cmlidXRlcyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyUGFyc2U6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSh0aGlzLmZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0IHx8IHRoaXMuZmllbGQuZGVmYXVsdERhdGVUaW1lRm9ybWF0KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMucmVxdWlyZWQ6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5SRVFVSVJFRCcpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyTWluOiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluVmFsdWUgPSBEYXRlRm5zVXRpbHMuZm9ybWF0RGF0ZShlcnJvcnMubWF0RGF0ZXBpY2tlck1pbi5taW4sIHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQpLnRvTG9jYWxlVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgZXJyb3JBdHRyaWJ1dGVzLnNldCgnbWluVmFsdWUnLCBtaW5WYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5WQUxJREFUT1IuTk9UX0xFU1NfVEhBTicsIGVycm9yQXR0cmlidXRlcyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICEhZXJyb3JzLm1hdERhdGVwaWNrZXJNYXg6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXhWYWx1ZSA9IERhdGVGbnNVdGlscy5mb3JtYXREYXRlKGVycm9ycy5tYXREYXRlcGlja2VyTWF4Lm1heCwgdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdCkudG9Mb2NhbGVVcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICBlcnJvckF0dHJpYnV0ZXMuc2V0KCdtYXhWYWx1ZScsIG1heFZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbGlkYXRpb25TdW1tYXJ5KCdGT1JNLkZJRUxELlZBTElEQVRPUi5OT1RfR1JFQVRFUl9USEFOJywgZXJyb3JBdHRyaWJ1dGVzKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVZhbGlkYXRpb25TdW1tYXJ5KG1lc3NhZ2U6IHN0cmluZywgYXR0cmlidXRlcz86IE1hcDxzdHJpbmcsIHN0cmluZz4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWVsZC52YWxpZGF0aW9uU3VtbWFyeSA9IG5ldyBFcnJvck1lc3NhZ2VNb2RlbCh7IG1lc3NhZ2UsIGF0dHJpYnV0ZXMgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldEVycm9ycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0RGF0ZUFkYXB0ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5kYXRlRGlzcGxheUZvcm1hdCkge1xuICAgICAgICAgICAgY29uc3QgZGF0ZUFkYXB0ZXIgPSB0aGlzLmRhdGVBZGFwdGVyIGFzIEFkZkRhdGVGbnNBZGFwdGVyO1xuICAgICAgICAgICAgZGF0ZUFkYXB0ZXIuZGlzcGxheUZvcm1hdCA9IHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQ7XG5cbiAgICAgICAgICAgIGNvbnN0IGRhdGVUaW1lQWRhcHRlciA9IHRoaXMuZGF0ZVRpbWVBZGFwdGVyIGFzIEFkZkRhdGVUaW1lRm5zQWRhcHRlcjtcbiAgICAgICAgICAgIGRhdGVUaW1lQWRhcHRlci5kaXNwbGF5Rm9ybWF0ID0gdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVSYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQ/Lm1pblZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm1pbkRhdGUgPSBEYXRlRm5zVXRpbHMuZ2V0RGF0ZSh0aGlzLmZpZWxkLm1pblZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5tYXhWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlID0gRGF0ZUZuc1V0aWxzLmdldERhdGUodGhpcy5maWVsZC5tYXhWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwie3sgZmllbGQuY2xhc3NOYW1lIH19XCJcbiAgICAgaWQ9XCJkYXRhLXRpbWUtd2lkZ2V0XCJcbiAgICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cImRhdGV0aW1lSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZXRpbWVJbnB1dENvbnRyb2wudG91Y2hlZFwiXG4gICAgIFtjbGFzcy5hZGYtbGVmdC1sYWJlbC1pbnB1dC1jb250YWluZXJdPVwiZmllbGQubGVmdExhYmVsc1wiPlxuICAgIDxkaXYgKm5nSWY9XCJmaWVsZC5sZWZ0TGFiZWxzXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImFkZi1sYWJlbCBhZGYtbGVmdC1sYWJlbFwiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fSAoe3sgZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQgfX0pPHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiYWRmLWRhdGUtdGltZS13aWRnZXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFkZi1sZWZ0LWxhYmVsLWlucHV0LWRhdGVwaWNrZXJdPVwiZmllbGQubGVmdExhYmVsc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaGlkZVJlcXVpcmVkTWFya2VyXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxtYXQtbGFiZWwgY2xhc3M9XCJhZGYtbGFiZWxcIiAqbmdJZj1cIiFmaWVsZC5sZWZ0TGFiZWxzXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+XG4gICAgICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fSAoe3sgZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQgfX0pPHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+XG4gICAgICAgICAgICA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dFxuICAgICAgICAgICAgICAgICAgIFttYXREYXRldGltZXBpY2tlcl09XCJkYXRldGltZVBpY2tlclwiXG4gICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZGF0ZXRpbWVJbnB1dENvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cImRhdGV0aW1lUGlja2VyLm9wZW4oKVwiXG4gICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiZmllbGQudG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgICAgW21pbl09XCJtaW5EYXRlXCJcbiAgICAgICAgICAgICAgICAgICBbbWF4XT1cIm1heERhdGVcIj5cbiAgICAgICAgICAgIDxtYXQtZGF0ZXRpbWVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cImRhdGV0aW1lUGlja2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seVwiIC8+XG4gICAgICAgICAgICA8bWF0LWRhdGV0aW1lcGlja2VyICNkYXRldGltZVBpY2tlclxuICAgICAgICAgICAgICAgIGRhdGEtYXV0b21hdGlvbi1pZD1cImFkZi1kYXRlLXRpbWUtd2lkZ2V0LXBpY2tlclwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImRhdGV0aW1lXCJcbiAgICAgICAgICAgICAgICBbdG91Y2hVaV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBbdGltZUludGVydmFsXT1cIjVcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seVwiIC8+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtZXJyb3ItbWVzc2FnZXMtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8ZXJyb3Itd2lkZ2V0ICpuZ0lmPVwiZGF0ZXRpbWVJbnB1dENvbnRyb2wuaW52YWxpZCAmJiBkYXRldGltZUlucHV0Q29udHJvbC50b3VjaGVkXCIgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvZGF0ZS10aW1lL2RhdGUtdGltZS53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGUtdGltZS9kYXRlLXRpbWUud2lkZ2V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQVUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7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LCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGluamVjdCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IERhdGV0aW1lQWRhcHRlciwgTUFUX0RBVEVUSU1FX0ZPUk1BVFMsIE1hdERhdGV0aW1lcGlja2VyTW9kdWxlIH0gZnJvbSAnQG1hdC1kYXRldGltZXBpY2tlci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQURGX0RBVEVfRk9STUFUUywgQURGX0RBVEVUSU1FX0ZPUk1BVFMsIEFkZkRhdGVGbnNBZGFwdGVyLCBBZGZEYXRlVGltZUZuc0FkYXB0ZXIsIERhdGVGbnNVdGlscyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yTWVzc2FnZU1vZGVsIH0gZnJvbSAnLi4vY29yZS9lcnJvci1tZXNzYWdlLm1vZGVsJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybVdpZGdldCB9IGZyb20gJy4uL3JlYWN0aXZlLXdpZGdldC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RhdGUtdGltZS13aWRnZXQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IEFERl9EQVRFX0ZPUk1BVFMgfSxcbiAgICAgICAgeyBwcm92aWRlOiBNQVRfREFURVRJTUVfRk9STUFUUywgdXNlVmFsdWU6IEFERl9EQVRFVElNRV9GT1JNQVRTIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBBZGZEYXRlRm5zQWRhcHRlciB9LFxuICAgICAgICB7IHByb3ZpZGU6IERhdGV0aW1lQWRhcHRlciwgdXNlQ2xhc3M6IEFkZkRhdGVUaW1lRm5zQWRhcHRlciB9XG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS10aW1lLndpZGdldC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRlLXRpbWUud2lkZ2V0LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXREYXRldGltZXBpY2tlck1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnRdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFJlYWN0aXZlRm9ybVdpZGdldCB7XG4gICAgbWluRGF0ZTogRGF0ZTtcbiAgICBtYXhEYXRlOiBEYXRlO1xuICAgIGRhdGV0aW1lSW5wdXRDb250cm9sOiBGb3JtQ29udHJvbDxEYXRlPiA9IG5ldyBGb3JtQ29udHJvbDxEYXRlPihudWxsKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBmb3JtU2VydmljZSA9IGluamVjdChGb3JtU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0ZUFkYXB0ZXIgPSBpbmplY3QoRGF0ZUFkYXB0ZXIpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0ZVRpbWVBZGFwdGVyID0gaW5qZWN0KERhdGV0aW1lQWRhcHRlcik7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRGb3JtQ29udHJvbFZhbHVlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZSgpO1xuICAgICAgICB0aGlzLmluaXREYXRlQWRhcHRlcigpO1xuICAgICAgICB0aGlzLmluaXREYXRlUmFuZ2UoKTtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb0RhdGVDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVJlYWN0aXZlRm9ybUNvbnRyb2woKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0Rm9ybUNvbnRyb2xWYWx1ZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRGb3JtQ29udHJvbFZhbHVlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGV0aW1lSW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuZmllbGQudmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUZvcm1Db250cm9sU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLmlzUmVxdWlyZWQoKSAmJiB0aGlzLmZpZWxkPy5pc1Zpc2libGUgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gOiBbXSk7XG4gICAgICAgIHRoaXMuZmllbGQ/LnJlYWRPbmx5IHx8IHRoaXMucmVhZE9ubHlcbiAgICAgICAgICAgID8gdGhpcy5kYXRldGltZUlucHV0Q29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KVxuICAgICAgICAgICAgOiB0aGlzLmRhdGV0aW1lSW5wdXRDb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICAgICAgdGhpcy5kYXRldGltZUlucHV0Q29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN1YnNjcmliZVRvRGF0ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgobmV3RGF0ZTogRGF0ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZSA9IG5ld0RhdGU7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRmllbGQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCgpO1xuICAgICAgICB0aGlzLm9uRmllbGRDaGFuZ2VkKHRoaXMuZmllbGQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVGaWVsZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2w/LmludmFsaWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3JzKHRoaXMuZGF0ZXRpbWVJbnB1dENvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQubWFya0FzSW52YWxpZCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldEVycm9ycygpO1xuICAgICAgICAgICAgdGhpcy5maWVsZC5tYXJrQXNWYWxpZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcnMoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVycm9yQXR0cmlidXRlcyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyUGFyc2U6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSh0aGlzLmZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0IHx8IHRoaXMuZmllbGQuZGVmYXVsdERhdGVUaW1lRm9ybWF0KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgISFlcnJvcnMucmVxdWlyZWQ6XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5SRVFVSVJFRCcpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAhIWVycm9ycy5tYXREYXRlcGlja2VyTWluOiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluVmFsdWUgPSBEYXRlRm5zVXRpbHMuZm9ybWF0RGF0ZShlcnJvcnMubWF0RGF0ZXBpY2tlck1pbi5taW4sIHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQpLnRvTG9jYWxlVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgZXJyb3JBdHRyaWJ1dGVzLnNldCgnbWluVmFsdWUnLCBtaW5WYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnRk9STS5GSUVMRC5WQUxJREFUT1IuTk9UX0xFU1NfVEhBTicsIGVycm9yQXR0cmlidXRlcyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICEhZXJyb3JzLm1hdERhdGVwaWNrZXJNYXg6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXhWYWx1ZSA9IERhdGVGbnNVdGlscy5mb3JtYXREYXRlKGVycm9ycy5tYXREYXRlcGlja2VyTWF4Lm1heCwgdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdCkudG9Mb2NhbGVVcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICBlcnJvckF0dHJpYnV0ZXMuc2V0KCdtYXhWYWx1ZScsIG1heFZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbGlkYXRpb25TdW1tYXJ5KCdGT1JNLkZJRUxELlZBTElEQVRPUi5OT1RfR1JFQVRFUl9USEFOJywgZXJyb3JBdHRyaWJ1dGVzKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVZhbGlkYXRpb25TdW1tYXJ5KG1lc3NhZ2U6IHN0cmluZywgYXR0cmlidXRlcz86IE1hcDxzdHJpbmcsIHN0cmluZz4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWVsZC52YWxpZGF0aW9uU3VtbWFyeSA9IG5ldyBFcnJvck1lc3NhZ2VNb2RlbCh7IG1lc3NhZ2UsIGF0dHJpYnV0ZXMgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldEVycm9ycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWxpZGF0aW9uU3VtbWFyeSgnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0RGF0ZUFkYXB0ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5kYXRlRGlzcGxheUZvcm1hdCkge1xuICAgICAgICAgICAgY29uc3QgZGF0ZUFkYXB0ZXIgPSB0aGlzLmRhdGVBZGFwdGVyIGFzIEFkZkRhdGVGbnNBZGFwdGVyO1xuICAgICAgICAgICAgZGF0ZUFkYXB0ZXIuZGlzcGxheUZvcm1hdCA9IHRoaXMuZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQ7XG5cbiAgICAgICAgICAgIGNvbnN0IGRhdGVUaW1lQWRhcHRlciA9IHRoaXMuZGF0ZVRpbWVBZGFwdGVyIGFzIEFkZkRhdGVUaW1lRm5zQWRhcHRlcjtcbiAgICAgICAgICAgIGRhdGVUaW1lQWRhcHRlci5kaXNwbGF5Rm9ybWF0ID0gdGhpcy5maWVsZC5kYXRlRGlzcGxheUZvcm1hdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERhdGVSYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGQ/Lm1pblZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLm1pbkRhdGUgPSBEYXRlRm5zVXRpbHMuZ2V0RGF0ZSh0aGlzLmZpZWxkLm1pblZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkPy5tYXhWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlID0gRGF0ZUZuc1V0aWxzLmdldERhdGUodGhpcy5maWVsZC5tYXhWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwie3sgZmllbGQuY2xhc3NOYW1lIH19XCJcbiAgICAgaWQ9XCJkYXRhLXRpbWUtd2lkZ2V0XCJcbiAgICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cImRhdGV0aW1lSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZXRpbWVJbnB1dENvbnRyb2wudG91Y2hlZFwiXG4gICAgIFtjbGFzcy5hZGYtbGVmdC1sYWJlbC1pbnB1dC1jb250YWluZXJdPVwiZmllbGQubGVmdExhYmVsc1wiPlxuICAgIDxkaXYgKm5nSWY9XCJmaWVsZC5sZWZ0TGFiZWxzXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImFkZi1sYWJlbCBhZGYtbGVmdC1sYWJlbFwiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fSAoe3sgZmllbGQuZGF0ZURpc3BsYXlGb3JtYXQgfX0pPHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiYWRmLWRhdGUtdGltZS13aWRnZXQgYWRmLWZvcm0tZmllbGQtaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFkZi1sZWZ0LWxhYmVsLWlucHV0LWRhdGVwaWNrZXJdPVwiZmllbGQubGVmdExhYmVsc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaGlkZVJlcXVpcmVkTWFya2VyXT1cInRydWVcIiBbZmxvYXRMYWJlbF09XCJmaWVsZC5wbGFjZWhvbGRlciA/ICdhbHdheXMnIDogJ2F1dG8nXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGNsYXNzPVwiYWRmLWxhYmVsXCIgKm5nSWY9XCIhZmllbGQubGVmdExhYmVsc1wiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICAgICAgICAgIHt7IGZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX0gKHt7IGZpZWxkLmRhdGVEaXNwbGF5Rm9ybWF0IH19KTxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPlxuICAgICAgICAgICAgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgICAgICAgICBbbWF0RGF0ZXRpbWVwaWNrZXJdPVwiZGF0ZXRpbWVQaWNrZXJcIlxuICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImRhdGV0aW1lSW5wdXRDb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJkYXRldGltZVBpY2tlci5vcGVuKClcIlxuICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgIFttaW5dPVwibWluRGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgW21heF09XCJtYXhEYXRlXCI+XG4gICAgICAgICAgICA8bWF0LWRhdGV0aW1lcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkYXRldGltZVBpY2tlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIiAvPlxuICAgICAgICAgICAgPG1hdC1kYXRldGltZXBpY2tlciAjZGF0ZXRpbWVQaWNrZXJcbiAgICAgICAgICAgICAgICBkYXRhLWF1dG9tYXRpb24taWQ9XCJhZGYtZGF0ZS10aW1lLXdpZGdldC1waWNrZXJcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJkYXRldGltZVwiXG4gICAgICAgICAgICAgICAgW3RvdWNoVWldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW3RpbWVJbnRlcnZhbF09XCI1XCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIiAvPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWVycm9yLW1lc3NhZ2VzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGVycm9yLXdpZGdldCAqbmdJZj1cImRhdGV0aW1lSW5wdXRDb250cm9sLmludmFsaWQgJiYgZGF0ZXRpbWVJbnB1dENvbnRyb2wudG91Y2hlZFwiIFtlcnJvcl09XCJmaWVsZC52YWxpZGF0aW9uU3VtbWFyeVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -35,7 +35,7 @@ export class DecimalWidgetComponent extends WidgetComponent {
|
|
|
35
35
|
this.formService = formService;
|
|
36
36
|
}
|
|
37
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecimalWidgetComponent, deps: [{ token: i1.FormService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DecimalWidgetComponent, isStandalone: true, selector: "adf-decimal", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-textfield adf-decimal-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]*)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\" />\n </mat-form-field>\n\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-decimal-widget{width:100%}.adf-decimal-widget .adf-label{top:20px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { 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: "ngmodule", type: MatInputModule }, { 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: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DecimalWidgetComponent, isStandalone: true, selector: "adf-decimal", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-textfield adf-decimal-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]*)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\" />\n </mat-form-field>\n\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-decimal-widget{width:100%}.adf-decimal-widget .adf-label{top:20px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { 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: "ngmodule", type: MatInputModule }, { 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: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
39
39
|
}
|
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecimalWidgetComponent, decorators: [{
|
|
41
41
|
type: Component,
|
|
@@ -49,6 +49,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
49
49
|
'(input)': 'event($event)',
|
|
50
50
|
'(invalid)': 'event($event)',
|
|
51
51
|
'(select)': 'event($event)'
|
|
52
|
-
}, imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-textfield adf-decimal-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]*)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\" />\n </mat-form-field>\n\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-decimal-widget{width:100%}.adf-decimal-widget .adf-label{top:20px}\n"] }]
|
|
52
|
+
}, imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-textfield adf-decimal-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]*)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\" />\n </mat-form-field>\n\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-decimal-widget{width:100%}.adf-decimal-widget .adf-label{top:20px}\n"] }]
|
|
53
53
|
}], ctorParameters: () => [{ type: i1.FormService }] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjaW1hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RlY2ltYWwvZGVjaW1hbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RlY2ltYWwvZGVjaW1hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBcUJ0RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBZTtJQUN2RCxZQUFtQixXQUF3QjtRQUN2QyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFESixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUUzQyxDQUFDOytHQUhRLHNCQUFzQjttR0FBdEIsc0JBQXNCLHlXQzlDbkMsNjBEQXVDQSxtSURJYyxJQUFJLDRGQUFFLGVBQWUsMkZBQUUsa0JBQWtCLDBTQUFFLGNBQWMsMFdBQUUsV0FBVyxxK0JBQUUsb0JBQW9COzs0RkFHN0Ysc0JBQXNCO2tCQW5CbEMsU0FBUzsrQkFDSSxhQUFhLGNBQ1gsSUFBSSxRQUdWO3dCQUNGLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixRQUFRLEVBQUUsZUFBZTt3QkFDekIsVUFBVSxFQUFFLGVBQWU7d0JBQzNCLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixXQUFXLEVBQUUsZUFBZTt3QkFDNUIsWUFBWSxFQUFFLGVBQWU7d0JBQzdCLFNBQVMsRUFBRSxlQUFlO3dCQUMxQixXQUFXLEVBQUUsZUFBZTt3QkFDNUIsVUFBVSxFQUFFLGVBQWU7cUJBQzlCLFdBQ1EsQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLENBQUMsaUJBQ3hGLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtZGVjaW1hbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGVjaW1hbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGVjaW1hbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnRdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRGVjaW1hbFdpZGdldENvbXBvbmVudCBleHRlbmRzIFdpZGdldENvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSkge1xuICAgICAgICBzdXBlcihmb3JtU2VydmljZSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZi10ZXh0ZmllbGQgYWRmLWRlY2ltYWwtd2lkZ2V0IHt7IGZpZWxkLmNsYXNzTmFtZSB9fVwiXG4gICAgIFtjbGFzcy5hZGYtaW52YWxpZF09XCIhZmllbGQuaXNWYWxpZCAmJiBpc1RvdWNoZWQoKVwiXG4gICAgIFtjbGFzcy5hZGYtcmVhZG9ubHldPVwiZmllbGQucmVhZE9ubHlcIlxuICAgICBbY2xhc3MuYWRmLWxlZnQtbGFiZWwtaW5wdXQtY29udGFpbmVyXT1cImZpZWxkLmxlZnRMYWJlbHNcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiZmllbGQubGVmdExhYmVsc1wiPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJhZGYtbGFiZWwgYWRmLWxlZnQtbGFiZWxcIiBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIj5cbiAgICAgICAgICAgIHt7IGZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX08c3BhbiBjbGFzcz1cImFkZi1hc3Rlcmlza1wiIFtzdHlsZS52aXNpYmlsaXR5XT1cImlzUmVxdWlyZWQoKSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXCI+Kjwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXY+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBbaGlkZVJlcXVpcmVkTWFya2VyXT1cInRydWVcIiBjbGFzcz1cImFkZi1mb3JtLWZpZWxkLWlucHV0XCIgW2Zsb2F0TGFiZWxdPVwiZmllbGQucGxhY2Vob2xkZXIgPyAnYWx3YXlzJyA6ICdhdXRvJ1wiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cImFkZi1sYWJlbFwiICpuZ0lmPVwiIWZpZWxkLmxlZnRMYWJlbHNcIiBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIj5cbiAgICAgICAgICAgICAgICB7eyBmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19PHNwYW4gY2xhc3M9XCJhZGYtYXN0ZXJpc2tcIiBbc3R5bGUudmlzaWJpbGl0eV09XCJpc1JlcXVpcmVkKCkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiPio8L3NwYW4+XG4gICAgICAgICAgICA8L21hdC1sYWJlbD5cblxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0XG4gICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICBwYXR0ZXJuPVwiLT9bMC05XSooXFwuWzAtOV0qKT9cIlxuICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cImlzUmVxdWlyZWQoKVwiXG4gICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25GaWVsZENoYW5nZWQoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm1hcmtBc1RvdWNoZWQoKVwiIC8+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1lcnJvci1tZXNzYWdlcy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxlcnJvci13aWRnZXQgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICAgICAgICAgIDxlcnJvci13aWRnZXRcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzSW52YWxpZEZpZWxkUmVxdWlyZWQoKSAmJiBpc1RvdWNoZWQoKVwiXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ9XCJ7eyAnRk9STS5GSUVMRC5SRVFVSVJFRCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -37,7 +37,7 @@ export class MultilineTextWidgetComponentComponent extends WidgetComponent {
|
|
|
37
37
|
this.formService = formService;
|
|
38
38
|
}
|
|
39
39
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultilineTextWidgetComponentComponent, deps: [{ token: i1.FormService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MultilineTextWidgetComponentComponent, isStandalone: true, selector: "multiline-text-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-multiline-text-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\">\n <mat-form-field floatPlaceholder=\"never\" [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <textarea matInput\n class=\"adf-input\"\n [cdkTextareaAutosize]=\"true\"\n type=\"text\"\n rows=\"3\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly || readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </textarea>\n </mat-form-field>\n <div *ngIf=\"field.maxLength > 0\" class=\"adf-multiline-word-counter\">\n <span class=\"adf-multiline-word-counter-value\">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span>\n </div>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n class=\"adf-multiline-required-message\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n</div>\n\n", styles: [".adf-multiline-text-widget{width:100%}.adf-multiline-text-widget .adf-label{top:20px}.adf-multiline-word-counter:has(.adf-multiline-word-counter-value){float:right;margin-top:-20px;min-height:24px;min-width:1px;font-size:var(--theme-caption-font-size);line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;padding-top:5px;text-align:right;padding-right:2px;padding-left:0}.adf-multiline-required-message{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { 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: "directive", type: i5.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MultilineTextWidgetComponentComponent, isStandalone: true, selector: "multiline-text-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-multiline-text-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\">\n <mat-form-field floatPlaceholder=\"never\" [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <textarea matInput\n class=\"adf-input\"\n [cdkTextareaAutosize]=\"true\"\n type=\"text\"\n rows=\"3\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly || readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </textarea>\n </mat-form-field>\n <div *ngIf=\"field.maxLength > 0\" class=\"adf-multiline-word-counter\">\n <span class=\"adf-multiline-word-counter-value\">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span>\n </div>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n class=\"adf-multiline-required-message\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n</div>\n\n", styles: [".adf-multiline-text-widget{width:100%}.adf-multiline-text-widget .adf-label{top:20px}.adf-multiline-word-counter:has(.adf-multiline-word-counter-value){float:right;margin-top:-20px;min-height:24px;min-width:1px;font-size:var(--theme-caption-font-size);line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;padding-top:5px;text-align:right;padding-right:2px;padding-left:0}.adf-multiline-required-message{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatInputModule }, { 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: "directive", type: i5.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
41
41
|
}
|
|
42
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultilineTextWidgetComponentComponent, decorators: [{
|
|
43
43
|
type: Component,
|
|
@@ -51,6 +51,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
51
51
|
'(input)': 'event($event)',
|
|
52
52
|
'(invalid)': 'event($event)',
|
|
53
53
|
'(select)': 'event($event)'
|
|
54
|
-
}, imports: [MatFormFieldModule, NgIf, TranslateModule, MatInputModule, FormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-multiline-text-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\">\n <mat-form-field floatPlaceholder=\"never\" [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <textarea matInput\n class=\"adf-input\"\n [cdkTextareaAutosize]=\"true\"\n type=\"text\"\n rows=\"3\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly || readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </textarea>\n </mat-form-field>\n <div *ngIf=\"field.maxLength > 0\" class=\"adf-multiline-word-counter\">\n <span class=\"adf-multiline-word-counter-value\">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span>\n </div>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n class=\"adf-multiline-required-message\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n</div>\n\n", styles: [".adf-multiline-text-widget{width:100%}.adf-multiline-text-widget .adf-label{top:20px}.adf-multiline-word-counter:has(.adf-multiline-word-counter-value){float:right;margin-top:-20px;min-height:24px;min-width:1px;font-size:var(--theme-caption-font-size);line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;padding-top:5px;text-align:right;padding-right:2px;padding-left:0}.adf-multiline-required-message{display:flex}\n"] }]
|
|
54
|
+
}, imports: [MatFormFieldModule, NgIf, TranslateModule, MatInputModule, FormsModule, ErrorWidgetComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-multiline-text-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\">\n <mat-form-field floatPlaceholder=\"never\" [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <textarea matInput\n class=\"adf-input\"\n [cdkTextareaAutosize]=\"true\"\n type=\"text\"\n rows=\"3\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onFieldChanged(field)\"\n [disabled]=\"field.readOnly || readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </textarea>\n </mat-form-field>\n <div *ngIf=\"field.maxLength > 0\" class=\"adf-multiline-word-counter\">\n <span class=\"adf-multiline-word-counter-value\">{{ field?.value?.length || 0 }}/{{ field.maxLength }}</span>\n </div>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n class=\"adf-multiline-required-message\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n</div>\n\n", styles: [".adf-multiline-text-widget{width:100%}.adf-multiline-text-widget .adf-label{top:20px}.adf-multiline-word-counter:has(.adf-multiline-word-counter-value){float:right;margin-top:-20px;min-height:24px;min-width:1px;font-size:var(--theme-caption-font-size);line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;padding-top:5px;text-align:right;padding-right:2px;padding-left:0}.adf-multiline-required-message{display:flex}\n"] }]
|
|
55
55
|
}], ctorParameters: () => [{ type: i1.FormService }] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsaW5lLXRleHQud2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9mb3JtL2NvbXBvbmVudHMvd2lkZ2V0cy9tdWx0aWxpbmUtdGV4dC9tdWx0aWxpbmUtdGV4dC53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL211bHRpbGluZS10ZXh0L211bHRpbGluZS10ZXh0LndpZGdldC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7OztBQXFCdEQsTUFBTSxPQUFPLHFDQUFzQyxTQUFRLGVBQWU7SUFDdEUsWUFBbUIsV0FBd0I7UUFDdkMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBREosZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFFM0MsQ0FBQzsrR0FIUSxxQ0FBcUM7bUdBQXJDLHFDQUFxQyxtWENoRGxELG90REFtQ0EsK2ZEVWMsa0JBQWtCLDJTQUFFLElBQUksNEZBQUUsZUFBZSwyRkFBRSxjQUFjLHlrQkFBRSxXQUFXLDQwQkFBRSxvQkFBb0I7OzRGQUc3RixxQ0FBcUM7a0JBbkJqRCxTQUFTOytCQUNJLHVCQUF1QixjQUNyQixJQUFJLFFBR1Y7d0JBQ0YsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFFBQVEsRUFBRSxlQUFlO3dCQUN6QixVQUFVLEVBQUUsZUFBZTt3QkFDM0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixZQUFZLEVBQUUsZUFBZTt3QkFDN0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixVQUFVLEVBQUUsZUFBZTtxQkFDOUIsV0FDUSxDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQyxpQkFDeEYsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvciAqL1xuXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXJyb3JXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi9lcnJvci9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vd2lkZ2V0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbXVsdGlsaW5lLXRleHQtd2lkZ2V0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tdWx0aWxpbmUtdGV4dC53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbXVsdGlsaW5lLXRleHQud2lkZ2V0LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoY2xpY2spJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGJsdXIpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGNoYW5nZSknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXMpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3VzaW4pJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGZvY3Vzb3V0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnB1dCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoaW52YWxpZCknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoc2VsZWN0KSc6ICdldmVudCgkZXZlbnQpJ1xuICAgIH0sXG4gICAgaW1wb3J0czogW01hdEZvcm1GaWVsZE1vZHVsZSwgTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRJbnB1dE1vZHVsZSwgRm9ybXNNb2R1bGUsIEVycm9yV2lkZ2V0Q29tcG9uZW50XSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpbGluZVRleHRXaWRnZXRDb21wb25lbnRDb21wb25lbnQgZXh0ZW5kcyBXaWRnZXRDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoZm9ybVNlcnZpY2UpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhZGYtbXVsdGlsaW5lLXRleHQtd2lkZ2V0IHt7IGZpZWxkLmNsYXNzTmFtZSB9fVwiXG4gICAgIFtjbGFzcy5hZGYtaW52YWxpZF09XCIhZmllbGQuaXNWYWxpZCAmJiBpc1RvdWNoZWQoKVwiXG4gICAgIFtjbGFzcy5hZGYtcmVhZG9ubHldPVwiZmllbGQucmVhZE9ubHlcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgZmxvYXRQbGFjZWhvbGRlcj1cIm5ldmVyXCIgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCJ0cnVlXCIgY2xhc3M9XCJhZGYtZm9ybS1maWVsZC1pbnB1dFwiIFtmbG9hdExhYmVsXT1cImZpZWxkLnBsYWNlaG9sZGVyID8gJ2Fsd2F5cycgOiAnYXV0bydcIj5cbiAgICAgICAgPG1hdC1sYWJlbCBjbGFzcz1cImFkZi1sYWJlbFwiIFthdHRyLmZvcl09XCJmaWVsZC5pZFwiPlxuICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fTxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPlxuICAgICAgICA8L21hdC1sYWJlbD5cbiAgICAgICAgPHRleHRhcmVhIG1hdElucHV0XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi1pbnB1dFwiXG4gICAgICAgICAgICAgICAgICBbY2RrVGV4dGFyZWFBdXRvc2l6ZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIHJvd3M9XCIzXCJcbiAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5pZFwiXG4gICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiaXNSZXF1aXJlZCgpXCJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25GaWVsZENoYW5nZWQoZmllbGQpXCJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5yZWFkT25seSB8fCByZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgKGJsdXIpPVwibWFya0FzVG91Y2hlZCgpXCI+XG4gICAgICAgIDwvdGV4dGFyZWE+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8ZGl2ICpuZ0lmPVwiZmllbGQubWF4TGVuZ3RoID4gMFwiIGNsYXNzPVwiYWRmLW11bHRpbGluZS13b3JkLWNvdW50ZXJcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZGYtbXVsdGlsaW5lLXdvcmQtY291bnRlci12YWx1ZVwiPnt7IGZpZWxkPy52YWx1ZT8ubGVuZ3RoIHx8IDAgfX0ve3sgZmllbGQubWF4TGVuZ3RoIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhZGYtZXJyb3ItbWVzc2FnZXMtY29udGFpbmVyXCI+XG4gICAgICAgIDxlcnJvci13aWRnZXQgW2Vycm9yXT1cImZpZWxkLnZhbGlkYXRpb25TdW1tYXJ5XCIgLz5cbiAgICAgICAgPGVycm9yLXdpZGdldFxuICAgICAgICAgICAgKm5nSWY9XCJpc0ludmFsaWRGaWVsZFJlcXVpcmVkKCkgJiYgaXNUb3VjaGVkKClcIlxuICAgICAgICAgICAgY2xhc3M9XCJhZGYtbXVsdGlsaW5lLXJlcXVpcmVkLW1lc3NhZ2VcIlxuICAgICAgICAgICAgcmVxdWlyZWQ9XCJ7eyAnRk9STS5GSUVMRC5SRVFVSVJFRCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAvPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbiJdfQ==
|
|
@@ -53,7 +53,7 @@ export class NumberWidgetComponent extends WidgetComponent {
|
|
|
53
53
|
this.onFieldChanged(this.field);
|
|
54
54
|
}
|
|
55
55
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NumberWidgetComponent, deps: [{ token: i1.FormService }, { token: i2.DecimalNumberPipe }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
56
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NumberWidgetComponent, isStandalone: true, selector: "number-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, providers: [DecimalNumberPipe], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-textfield adf-number-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]+)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [value]=\"displayValue\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onNumberChange($event)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-number-widget{width:100%}.adf-number-widget .adf-label{top:20px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { 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: "ngmodule", type: MatInputModule }, { 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: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
56
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NumberWidgetComponent, isStandalone: true, selector: "number-widget", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, providers: [DecimalNumberPipe], usesInheritance: true, ngImport: i0, template: "<div class=\"adf-textfield adf-number-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]+)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [value]=\"displayValue\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onNumberChange($event)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-number-widget{width:100%}.adf-number-widget .adf-label{top:20px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { 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: "ngmodule", type: MatInputModule }, { 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: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
57
57
|
}
|
|
58
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NumberWidgetComponent, decorators: [{
|
|
59
59
|
type: Component,
|
|
@@ -67,6 +67,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
67
67
|
'(input)': 'event($event)',
|
|
68
68
|
'(invalid)': 'event($event)',
|
|
69
69
|
'(select)': 'event($event)'
|
|
70
|
-
}, imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent], providers: [DecimalNumberPipe], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-textfield adf-number-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]+)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [value]=\"displayValue\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onNumberChange($event)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-number-widget{width:100%}.adf-number-widget .adf-label{top:20px}\n"] }]
|
|
70
|
+
}, imports: [NgIf, TranslateModule, MatFormFieldModule, MatInputModule, FormsModule, ErrorWidgetComponent], providers: [DecimalNumberPipe], encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-textfield adf-number-widget {{ field.className }}\"\n [class.adf-invalid]=\"!field.isValid && isTouched()\"\n [class.adf-readonly]=\"field.readOnly\"\n [class.adf-left-label-input-container]=\"field.leftLabels\">\n <div *ngIf=\"field.leftLabels\">\n <label class=\"adf-label adf-left-label\"\n [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </label>\n </div>\n <div>\n <mat-form-field [hideRequiredMarker]=\"true\" class=\"adf-form-field-input\" [floatLabel]=\"field.placeholder ? 'always' : 'auto'\">\n <mat-label class=\"adf-label\" *ngIf=\"!field.leftLabels\" [attr.for]=\"field.id\">\n {{ field.name | translate }}<span class=\"adf-asterisk\" [style.visibility]=\"isRequired() ? 'visible' : 'hidden'\">*</span>\n </mat-label>\n <input matInput\n class=\"adf-input\"\n type=\"text\"\n pattern=\"-?[0-9]*(\\.[0-9]+)?\"\n [id]=\"field.id\"\n [required]=\"isRequired()\"\n [value]=\"displayValue\"\n [(ngModel)]=\"field.value\"\n (ngModelChange)=\"onNumberChange($event)\"\n [disabled]=\"field.readOnly\"\n [placeholder]=\"field.placeholder\"\n [title]=\"field.tooltip\"\n (blur)=\"markAsTouched()\">\n </mat-form-field>\n <div class=\"adf-error-messages-container\">\n <error-widget [error]=\"field.validationSummary\" />\n <error-widget\n *ngIf=\"isInvalidFieldRequired() && isTouched()\"\n required=\"{{ 'FORM.FIELD.REQUIRED' | translate }}\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-number-widget{width:100%}.adf-number-widget .adf-label{top:20px}\n"] }]
|
|
71
71
|
}], ctorParameters: () => [{ type: i1.FormService }, { type: i2.DecimalNumberPipe }] });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvbnVtYmVyL251bWJlci53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL251bWJlci9udW1iZXIud2lkZ2V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsd0ZBQXdGO0FBRXhGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7O0FBc0J0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBZTtJQUd0RCxZQUFtQixXQUF3QixFQUFVLGlCQUFvQztRQUNyRixLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFESixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFFekYsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0UsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3pDLENBQUM7SUFDTCxDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQWE7UUFDbEMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3hELElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQzsrR0FyQlEscUJBQXFCO21HQUFyQixxQkFBcUIsdVVBSG5CLENBQUMsaUJBQWlCLENBQUMsaURDL0NsQyxrNERBc0NBLGlJRFFjLElBQUksNEZBQUUsZUFBZSwyRkFBRSxrQkFBa0IsMFNBQUUsY0FBYywwV0FBRSxXQUFXLHErQkFBRSxvQkFBb0I7OzRGQUk3RixxQkFBcUI7a0JBcEJqQyxTQUFTOytCQUNJLGVBQWUsY0FDYixJQUFJLFFBR1Y7d0JBQ0YsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFFBQVEsRUFBRSxlQUFlO3dCQUN6QixVQUFVLEVBQUUsZUFBZTt3QkFDM0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixZQUFZLEVBQUUsZUFBZTt3QkFDN0IsU0FBUyxFQUFFLGVBQWU7d0JBQzFCLFdBQVcsRUFBRSxlQUFlO3dCQUM1QixVQUFVLEVBQUUsZUFBZTtxQkFDOUIsV0FDUSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQyxhQUM1RixDQUFDLGlCQUFpQixDQUFDLGlCQUNmLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IsIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWUgKi9cblxuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgRGVjaW1hbE51bWJlclBpcGUgfSBmcm9tICcuLi8uLi8uLi8uLi9waXBlcyc7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcldpZGdldENvbXBvbmVudCB9IGZyb20gJy4uL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdudW1iZXItd2lkZ2V0JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9udW1iZXIud2lkZ2V0Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL251bWJlci53aWRnZXQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHJhbnNsYXRlTW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBGb3Jtc01vZHVsZSwgRXJyb3JXaWRnZXRDb21wb25lbnRdLFxuICAgIHByb3ZpZGVyczogW0RlY2ltYWxOdW1iZXJQaXBlXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIE51bWJlcldpZGdldENvbXBvbmVudCBleHRlbmRzIFdpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgZGlzcGxheVZhbHVlOiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZm9ybVNlcnZpY2U6IEZvcm1TZXJ2aWNlLCBwcml2YXRlIGRlY2ltYWxOdW1iZXJQaXBlOiBEZWNpbWFsTnVtYmVyUGlwZSkge1xuICAgICAgICBzdXBlcihmb3JtU2VydmljZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmZpZWxkLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHRoaXMuZGVjaW1hbE51bWJlclBpcGUudHJhbnNmb3JtKHRoaXMuZmllbGQudmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSB0aGlzLmZpZWxkLnZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uTnVtYmVyQ2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLnZhbHVlID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25GaWVsZENoYW5nZWQodGhpcy5maWVsZCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZi10ZXh0ZmllbGQgYWRmLW51bWJlci13aWRnZXQge3sgZmllbGQuY2xhc3NOYW1lIH19XCJcbiAgICAgW2NsYXNzLmFkZi1pbnZhbGlkXT1cIiFmaWVsZC5pc1ZhbGlkICYmIGlzVG91Y2hlZCgpXCJcbiAgICAgW2NsYXNzLmFkZi1yZWFkb25seV09XCJmaWVsZC5yZWFkT25seVwiXG4gICAgIFtjbGFzcy5hZGYtbGVmdC1sYWJlbC1pbnB1dC1jb250YWluZXJdPVwiZmllbGQubGVmdExhYmVsc1wiPlxuICAgIDxkaXYgKm5nSWY9XCJmaWVsZC5sZWZ0TGFiZWxzXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImFkZi1sYWJlbCBhZGYtbGVmdC1sYWJlbFwiXG4gICAgICAgICAgICAgICBbYXR0ci5mb3JdPVwiZmllbGQuaWRcIj5cbiAgICAgICAgICAgIHt7IGZpZWxkLm5hbWUgfCB0cmFuc2xhdGUgfX08c3BhbiBjbGFzcz1cImFkZi1hc3Rlcmlza1wiIFtzdHlsZS52aXNpYmlsaXR5XT1cImlzUmVxdWlyZWQoKSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXCI+Kjwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCJ0cnVlXCIgY2xhc3M9XCJhZGYtZm9ybS1maWVsZC1pbnB1dFwiIFtmbG9hdExhYmVsXT1cImZpZWxkLnBsYWNlaG9sZGVyID8gJ2Fsd2F5cycgOiAnYXV0bydcIj5cbiAgICAgICAgICAgIDxtYXQtbGFiZWwgY2xhc3M9XCJhZGYtbGFiZWxcIiAqbmdJZj1cIiFmaWVsZC5sZWZ0TGFiZWxzXCIgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+XG4gICAgICAgICAgICAgICAge3sgZmllbGQubmFtZSB8IHRyYW5zbGF0ZSB9fTxzcGFuIGNsYXNzPVwiYWRmLWFzdGVyaXNrXCIgW3N0eWxlLnZpc2liaWxpdHldPVwiaXNSZXF1aXJlZCgpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIj4qPC9zcGFuPlxuICAgICAgICAgICAgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZi1pbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgIHBhdHRlcm49XCItP1swLTldKihcXC5bMC05XSspP1wiXG4gICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmlkXCJcbiAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwiaXNSZXF1aXJlZCgpXCJcbiAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZGlzcGxheVZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpZWxkLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbk51bWJlckNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cImZpZWxkLnRvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm1hcmtBc1RvdWNoZWQoKVwiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWVycm9yLW1lc3NhZ2VzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGVycm9yLXdpZGdldCBbZXJyb3JdPVwiZmllbGQudmFsaWRhdGlvblN1bW1hcnlcIiAvPlxuICAgICAgICAgICAgPGVycm9yLXdpZGdldFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNJbnZhbGlkRmllbGRSZXF1aXJlZCgpICYmIGlzVG91Y2hlZCgpXCJcbiAgICAgICAgICAgICAgICByZXF1aXJlZD1cInt7ICdGT1JNLkZJRUxELlJFUVVJUkVEJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|