@latitude-ui/widgets 0.0.13 → 0.0.14
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/cdk/latitude-ui-widgets-cdk.d.ts +5 -0
- package/cdk/public-api.d.ts +12 -0
- package/cdk/src/collection/collection.d.ts +20 -0
- package/cdk/src/expression/expression.d.ts +12 -0
- package/cdk/src/expression/filter/filter-criteria-descriptor.d.ts +6 -0
- package/cdk/src/expression/filter/filter-descriptor.d.ts +7 -0
- package/cdk/src/expression/filter/filter-logic.d.ts +1 -0
- package/cdk/src/expression/linq.d.ts +38 -0
- package/cdk/src/expression/sort/sort-descriptor.d.ts +7 -0
- package/cdk/src/expression/sort/sort-logic.d.ts +1 -0
- package/cdk/src/queryable/http-transport/http-transport.d.ts +15 -0
- package/cdk/src/queryable/query.d.ts +16 -0
- package/cdk/src/queryable/queryable.d.ts +18 -0
- package/cdk/src/queryable/transport.d.ts +19 -0
- package/checkbox/src/checkbox.component.d.ts +1 -1
- package/core/src/listeners.d.ts +1 -1
- package/esm2022/button/src/button.component.js +1 -1
- package/esm2022/cdk/latitude-ui-widgets-cdk.js +5 -0
- package/esm2022/cdk/public-api.js +13 -0
- package/esm2022/cdk/src/collection/collection.js +51 -0
- package/esm2022/cdk/src/expression/expression.js +21 -0
- package/esm2022/cdk/src/expression/filter/filter-criteria-descriptor.js +9 -0
- package/esm2022/cdk/src/expression/filter/filter-descriptor.js +9 -0
- package/esm2022/cdk/src/expression/filter/filter-logic.js +1 -0
- package/esm2022/cdk/src/expression/linq.js +55 -0
- package/esm2022/cdk/src/expression/sort/sort-descriptor.js +9 -0
- package/esm2022/cdk/src/expression/sort/sort-logic.js +1 -0
- package/esm2022/cdk/src/queryable/http-transport/http-transport.js +24 -0
- package/esm2022/cdk/src/queryable/query.js +22 -0
- package/esm2022/cdk/src/queryable/queryable.js +20 -0
- package/esm2022/cdk/src/queryable/transport.js +1 -0
- package/esm2022/checkbox/src/checkbox.component.js +4 -4
- package/esm2022/core/src/listeners.js +1 -1
- package/esm2022/input/src/input-error/input-error.component.js +1 -1
- package/esm2022/input/src/input-label/input-label.component.js +1 -1
- package/esm2022/input/src/input.component.js +1 -1
- package/esm2022/input/src/input.directive.js +9 -11
- package/esm2022/listbox/src/listbox-option.component.js +5 -26
- package/esm2022/listview/latitude-ui-widgets-listview.js +5 -0
- package/esm2022/listview/public-api.js +2 -0
- package/esm2022/listview/src/listview.component.js +16 -0
- package/esm2022/listview/src/listview.tokens.js +3 -0
- package/esm2022/select/src/select/select.directive.js +2 -1
- package/esm2022/select/src/select-dropdown/select-dropdown.component.js +2 -2
- package/esm2022/select/src/select-multiple.component.js +1 -1
- package/esm2022/select/src/select-option/select-option.component.js +3 -3
- package/esm2022/select/src/select-option/select-option.directive.js +1 -1
- package/esm2022/select/src/select-trigger/select-trigger.component.js +1 -1
- package/esm2022/select/src/select-value/select-value.component.js +1 -1
- package/esm2022/select/src/select-values/select-values.component.js +1 -1
- package/esm2022/switch/src/switch.component.js +4 -4
- package/esm2022/textbox/src/textbox.component.js +21 -5
- package/esm2022/textbox/src/textbox.directive.js +1 -8
- package/esm2022/textbox-number/src/spinners.component.js +2 -2
- package/esm2022/textbox-number/src/textbox-number.component.js +40 -33
- package/esm2022/textbox-search/src/textbox-search.component.js +17 -14
- package/input/src/input.directive.d.ts +11 -13
- package/listbox/src/listbox-option.component.d.ts +2 -5
- package/listview/latitude-ui-widgets-listview.d.ts +5 -0
- package/listview/public-api.d.ts +1 -0
- package/listview/src/listview.component.d.ts +6 -0
- package/listview/src/listview.tokens.d.ts +3 -0
- package/package.json +12 -8
- package/select/src/select/select.directive.d.ts +1 -0
- package/styles/forms/_index.scss +11 -9
- package/switch/src/switch.component.d.ts +1 -1
- package/textbox/src/textbox.component.d.ts +7 -1
- package/textbox/src/textbox.directive.d.ts +0 -2
- package/textbox-number/src/textbox-number.component.d.ts +17 -10
- package/textbox-search/src/textbox-search.component.d.ts +8 -7
|
@@ -2,14 +2,14 @@ import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } fro
|
|
|
2
2
|
import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class SwitchComponent extends BuildInInputValueAccessor {
|
|
5
|
-
|
|
5
|
+
toggle() {
|
|
6
6
|
if (!this.disabled()) {
|
|
7
7
|
const value = this.value() ?? false;
|
|
8
8
|
this.writeValue(!value);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: SwitchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.4", type: SwitchComponent, isStandalone: true, selector: "lat-switch", host: { listeners: { "click": "
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.4", type: SwitchComponent, isStandalone: true, selector: "lat-switch", host: { listeners: { "click": "toggle()" } }, providers: [
|
|
13
13
|
{
|
|
14
14
|
provide: BuildInInputValueAccessor,
|
|
15
15
|
useExisting: forwardRef(() => SwitchComponent),
|
|
@@ -24,7 +24,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
24
24
|
useExisting: forwardRef(() => SwitchComponent),
|
|
25
25
|
},
|
|
26
26
|
], host: {
|
|
27
|
-
'(click)': '
|
|
27
|
+
'(click)': 'toggle()',
|
|
28
28
|
}, template: "<button\r\n type=\"button\"\r\n role=\"switch\"\r\n [attr.id]=\"inputId()\"\r\n [attr.value]=\"value() ? 'on' : 'off'\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.aria-checked]=\"value() || false\"\r\n>\r\n <div\r\n role=\"presentation\"\r\n class=\"lat-switch-thumb\"\r\n ></div>\r\n</button>\r\n<ng-content/>\r\n" }]
|
|
29
29
|
}] });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3dpZGdldHMvc3dpdGNoL3NyYy9zd2l0Y2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy9zd2l0Y2gvc3JjL3N3aXRjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFrQnZFLE1BQU0sT0FBTyxlQUFnQixTQUFRLHlCQUFrQztJQUNyRSxNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxLQUFLLENBQUM7WUFFcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO3VHQVBVLGVBQWU7MkZBQWYsZUFBZSx1R0FWZjtZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDO2FBQy9DO1NBQ0YsMEVDZEgsK1lBZUE7OzJGRElhLGVBQWU7a0JBaEIzQixTQUFTOytCQUNFLFdBQVcsWUFDWCxZQUFZLGlCQUVQLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUM7eUJBQy9DO3FCQUNGLFFBQ0s7d0JBQ0osU0FBUyxFQUFFLFVBQVU7cUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5cbkBDb21wb25lbnQoe1xuICBleHBvcnRBczogJ2xhdFN3aXRjaCcsXG4gIHNlbGVjdG9yOiAnbGF0LXN3aXRjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zd2l0Y2guY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvcixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFN3aXRjaENvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ3RvZ2dsZSgpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU3dpdGNoQ29tcG9uZW50IGV4dGVuZHMgQnVpbGRJbklucHV0VmFsdWVBY2Nlc3Nvcjxib29sZWFuPiB7XG4gIHRvZ2dsZSgpIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlKCkgPz8gZmFsc2U7XG5cbiAgICAgIHRoaXMud3JpdGVWYWx1ZSghdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvblxyXG4gIHR5cGU9XCJidXR0b25cIlxyXG4gIHJvbGU9XCJzd2l0Y2hcIlxyXG4gIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXHJcbiAgW2F0dHIudmFsdWVdPVwidmFsdWUoKSA/ICdvbicgOiAnb2ZmJ1wiXHJcbiAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQoKSA/IC0xIDogdGFiaW5kZXgoKVwiXHJcbiAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtY2hlY2tlZF09XCJ2YWx1ZSgpIHx8IGZhbHNlXCJcclxuPlxyXG4gIDxkaXZcclxuICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gICAgY2xhc3M9XCJsYXQtc3dpdGNoLXRodW1iXCJcclxuICA+PC9kaXY+XHJcbjwvYnV0dG9uPlxyXG48bmctY29udGVudC8+XHJcbiJdfQ==
|
|
@@ -1,17 +1,31 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, input, numberAttribute, ViewEncapsulation, } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, forwardRef, input, numberAttribute, ViewEncapsulation, } from '@angular/core';
|
|
2
2
|
import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
|
|
3
3
|
import { TextBoxDirective } from './textbox.directive';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class TextBoxComponent extends TextBoxDirective {
|
|
6
|
+
rows = input(undefined, { transform: numberAttribute });
|
|
6
7
|
maxlength = input(undefined, { transform: numberAttribute });
|
|
7
8
|
minlength = input(undefined, { transform: numberAttribute });
|
|
9
|
+
textarea = computed(() => {
|
|
10
|
+
const rows = this.rows();
|
|
11
|
+
return rows ? rows >= 2 : false;
|
|
12
|
+
});
|
|
13
|
+
/** @internal */
|
|
14
|
+
_handleBlurEvent() {
|
|
15
|
+
this.markAsTouched();
|
|
16
|
+
}
|
|
17
|
+
/** @internal */
|
|
18
|
+
_handleValueChanged() {
|
|
19
|
+
const input = this.input();
|
|
20
|
+
this.writeValue(input.nativeElement.value);
|
|
21
|
+
}
|
|
8
22
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
23
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: TextBoxComponent, isStandalone: true, selector: "lat-textbox:not([type]), lat-textbox[type=\"text\"]", inputs: { rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
10
24
|
{
|
|
11
25
|
provide: BuildInInputValueAccessor,
|
|
12
26
|
useExisting: forwardRef(() => TextBoxComponent),
|
|
13
27
|
},
|
|
14
|
-
], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "<input\r\n #input\r\n
|
|
28
|
+
], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "@if(textarea()) {\r\n <textarea\r\n #input\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.rows]=\"rows()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n [style.resize]=\"'none'\"\r\n [style.height]=\"'auto'\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n ></textarea>\r\n} @else {\r\n <input\r\n #input\r\n type=\"text\"\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n />\r\n}\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
15
29
|
}
|
|
16
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxComponent, decorators: [{
|
|
17
31
|
type: Component,
|
|
@@ -20,6 +34,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
20
34
|
provide: BuildInInputValueAccessor,
|
|
21
35
|
useExisting: forwardRef(() => TextBoxComponent),
|
|
22
36
|
},
|
|
23
|
-
],
|
|
37
|
+
], host: {
|
|
38
|
+
// '[style.height]': 'textarea() ? "auto" : undefined'
|
|
39
|
+
}, template: "@if(textarea()) {\r\n <textarea\r\n #input\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.rows]=\"rows()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n [style.resize]=\"'none'\"\r\n [style.height]=\"'auto'\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n ></textarea>\r\n} @else {\r\n <input\r\n #input\r\n type=\"text\"\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n />\r\n}\r\n" }]
|
|
24
40
|
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3RleHRib3gvc3JjL3RleHRib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94L3NyYy90ZXh0Ym94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsS0FBSyxFQUNMLGVBQWUsRUFDZixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBa0J2RCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZ0JBQXdCO0lBQ25ELElBQUksR0FBRyxLQUFLLENBQWtCLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLFNBQVMsR0FBRyxLQUFLLENBQWtCLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLFNBQVMsR0FBRyxLQUFLLENBQWtCLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBRTlFLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUV6QixPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2xDLENBQUMsQ0FBQyxDQUFDO0lBRUgsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtRQUNkLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtRQUNqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7dUdBckJVLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLDJlQVZoQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7YUFDaEQ7U0FDRiwyRUN2QkgseXVEQStDQTs7MkZEbkJhLGdCQUFnQjtrQkFoQjVCLFNBQVM7K0JBQ0UsWUFBWSxZQUNaLG1EQUFtRCxpQkFFOUMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt5QkFDaEQ7cUJBQ0YsUUFDSztvQkFDSixzREFBc0Q7cUJBQ3ZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGZvcndhcmRSZWYsXG4gIGlucHV0LFxuICBudW1iZXJBdHRyaWJ1dGUsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5pbXBvcnQgeyBUZXh0Qm94RGlyZWN0aXZlIH0gZnJvbSAnLi90ZXh0Ym94LmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBleHBvcnRBczogJ2xhdFRleHRCb3gnLFxuICBzZWxlY3RvcjogJ2xhdC10ZXh0Ym94Om5vdChbdHlwZV0pLCBsYXQtdGV4dGJveFt0eXBlPVwidGV4dFwiXScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0Ym94LmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZXh0Qm94Q29tcG9uZW50KSxcbiAgICB9LFxuICBdLFxuICBob3N0OiB7XG4gICAgLy8gJ1tzdHlsZS5oZWlnaHRdJzogJ3RleHRhcmVhKCkgPyBcImF1dG9cIiA6IHVuZGVmaW5lZCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Qm94Q29tcG9uZW50IGV4dGVuZHMgVGV4dEJveERpcmVjdGl2ZTxzdHJpbmc+IHtcbiAgcmVhZG9ubHkgcm93cyA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICByZWFkb25seSBtYXhsZW5ndGggPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcbiAgcmVhZG9ubHkgbWlubGVuZ3RoID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG5cbiAgcmVhZG9ubHkgdGV4dGFyZWEgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMucm93cygpO1xuXG4gICAgcmV0dXJuIHJvd3MgPyByb3dzID49IDIgOiBmYWxzZTtcbiAgfSk7XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBfaGFuZGxlQmx1ckV2ZW50KCk6IHZvaWQge1xuICAgIHRoaXMubWFya0FzVG91Y2hlZCgpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBfaGFuZGxlVmFsdWVDaGFuZ2VkKCk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dCgpO1xuXG4gICAgdGhpcy53cml0ZVZhbHVlKGlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICB9XG59XG4iLCJAaWYodGV4dGFyZWEoKSkge1xyXG4gIDx0ZXh0YXJlYVxyXG4gICAgI2lucHV0XHJcbiAgICByb2xlPVwidGV4dGJveFwiXHJcbiAgICBbdmFsdWVdPSd2YWx1ZUFzU3RyaW5nKCknXHJcbiAgICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gICAgW2F0dHIucm93c109XCJyb3dzKClcIlxyXG4gICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQoKSA/IC0xIDogdGFiaW5kZXgoKVwiXHJcbiAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoKClcIlxyXG4gICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aCgpXCJcclxuICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxyXG4gICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5hcmlhLXJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWQoKVwiXHJcbiAgICBbc3R5bGUucmVzaXplXT1cIidub25lJ1wiXHJcbiAgICBbc3R5bGUuaGVpZ2h0XT1cIidhdXRvJ1wiXHJcbiAgICAoYmx1cik9XCJfaGFuZGxlQmx1ckV2ZW50KClcIlxyXG4gICAgKGlucHV0KT1cIl9oYW5kbGVWYWx1ZUNoYW5nZWQoKVwiXHJcbiAgPjwvdGV4dGFyZWE+XHJcbn0gQGVsc2Uge1xyXG4gIDxpbnB1dFxyXG4gICAgI2lucHV0XHJcbiAgICB0eXBlPVwidGV4dFwiXHJcbiAgICByb2xlPVwidGV4dGJveFwiXHJcbiAgICBbdmFsdWVdPSd2YWx1ZUFzU3RyaW5nKCknXHJcbiAgICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQoKSA/IC0xIDogdGFiaW5kZXgoKVwiXHJcbiAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoKClcIlxyXG4gICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aCgpXCJcclxuICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxyXG4gICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgICBbYXR0ci5hcmlhLXJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWQoKVwiXHJcbiAgICAoYmx1cik9XCJfaGFuZGxlQmx1ckV2ZW50KClcIlxyXG4gICAgKGlucHV0KT1cIl9oYW5kbGVWYWx1ZUNoYW5nZWQoKVwiXHJcbiAgLz5cclxufVxyXG4iXX0=
|
|
@@ -9,17 +9,10 @@ export class TextBoxDirective extends BuildInInputValueAccessor {
|
|
|
9
9
|
focus() {
|
|
10
10
|
this.input().nativeElement.focus();
|
|
11
11
|
}
|
|
12
|
-
handleBlurEvent() {
|
|
13
|
-
this.markAsTouched();
|
|
14
|
-
}
|
|
15
|
-
handleInputEvent() {
|
|
16
|
-
const input = this.input();
|
|
17
|
-
this.writeValue(input.nativeElement.value);
|
|
18
|
-
}
|
|
19
12
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
20
13
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.0.4", type: TextBoxDirective, isStandalone: true, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0 });
|
|
21
14
|
}
|
|
22
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxDirective, decorators: [{
|
|
23
16
|
type: Directive
|
|
24
17
|
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3RleHRib3gvc3JjL3RleHRib3guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHdkUsTUFBTSxPQUFPLGdCQUFvQixTQUFRLHlCQUE0QjtJQUNuRCxLQUFLLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQSxVQUE0QixDQUFBLEVBQUUsQ0FBQyxDQUFDO0lBRTVGLElBQUk7UUFDRixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO3VHQVRVLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLHlIQUNpQyxVQUFVOzsyRkFEM0QsZ0JBQWdCO2tCQUQ1QixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFRleHRCb3hEaXJlY3RpdmU8VD4gZXh0ZW5kcyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yPFQ+IHtcbiAgcHVibGljIHJlYWRvbmx5IGlucHV0ID0gdmlld0NoaWxkLnJlcXVpcmVkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICBibHVyKCkge1xuICAgIHRoaXMuaW5wdXQoKS5uYXRpdmVFbGVtZW50LmJsdXIoKTtcbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuaW5wdXQoKS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxufVxuIl19
|
|
@@ -7,7 +7,7 @@ export class SpinnersComponent {
|
|
|
7
7
|
textbox = inject(TextBoxNumberComponent);
|
|
8
8
|
handleValueChanged(dir) {
|
|
9
9
|
const value = (this.textbox.value() ?? 0) + (this.textbox.step() ?? 0) * (dir ? 1 : -1);
|
|
10
|
-
if (value < this.textbox.
|
|
10
|
+
if (value < this.textbox.minvalue() || value > this.textbox.maxvalue()) {
|
|
11
11
|
return void 0;
|
|
12
12
|
}
|
|
13
13
|
this.textbox.writeValue(value);
|
|
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
19
19
|
type: Component,
|
|
20
20
|
args: [{ exportAs: 'latSpinners', selector: 'lat-spinners', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ButtonComponent, IconComponent], template: "<lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"textbox.size()\" [disabled]=\"textbox.disabled()\" (click)=\"handleValueChanged(true)\">\r\n <lat-icon name=\"chevron-up\" />\r\n</lat-button>\r\n<lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"textbox.size()\" [disabled]=\"textbox.disabled()\" (click)=\"handleValueChanged(false)\">\r\n <lat-icon name=\"chevron-down\" />\r\n</lat-button>\r\n" }]
|
|
21
21
|
}] });
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvc3Bpbm5lcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvc3Bpbm5lcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFVcEUsTUFBTSxPQUFPLGlCQUFpQjtJQUNaLE9BQU8sR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUUvQyxrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4RixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDdkUsT0FBTyxLQUFLLENBQUMsQ0FBQztRQUNoQixDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzt1R0FYVSxpQkFBaUI7MkZBQWpCLGlCQUFpQixtR0NmOUIsMlpBTUEsNENET1ksZUFBZSxxSUFBRSxhQUFhOzsyRkFFN0IsaUJBQWlCO2tCQVI3QixTQUFTOytCQUNFLGFBQWEsWUFDYixjQUFjLGlCQUVULGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvYnV0dG9uJztcclxuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BsYXRpdHVkZS11aS93aWRnZXRzL2ljb25zJztcclxuXHJcbmltcG9ydCB7IFRleHRCb3hOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL3RleHRib3gtbnVtYmVyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBleHBvcnRBczogJ2xhdFNwaW5uZXJzJyxcclxuICBzZWxlY3RvcjogJ2xhdC1zcGlubmVycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NwaW5uZXJzLmNvbXBvbmVudC5odG1sJyxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGltcG9ydHM6IFtCdXR0b25Db21wb25lbnQsIEljb25Db21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Bpbm5lcnNDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSB0ZXh0Ym94ID0gaW5qZWN0KFRleHRCb3hOdW1iZXJDb21wb25lbnQpO1xyXG5cclxuICBwcm90ZWN0ZWQgaGFuZGxlVmFsdWVDaGFuZ2VkKGRpcjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWUgPSAodGhpcy50ZXh0Ym94LnZhbHVlKCkgPz8gMCkgKyAodGhpcy50ZXh0Ym94LnN0ZXAoKSA/PyAwKSAqIChkaXIgPyAxIDogLTEpO1xyXG5cclxuICAgIGlmICh2YWx1ZSA8IHRoaXMudGV4dGJveC5taW52YWx1ZSgpIHx8IHZhbHVlID4gdGhpcy50ZXh0Ym94Lm1heHZhbHVlKCkpIHtcclxuICAgICAgcmV0dXJuIHZvaWQgMDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnRleHRib3gud3JpdGVWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxsYXQtYnV0dG9uIHRhYmluZGV4PVwiLTFcIiB2YXJpYW50PVwic3VidGxlXCIgW3NpemVdPVwidGV4dGJveC5zaXplKClcIiBbZGlzYWJsZWRdPVwidGV4dGJveC5kaXNhYmxlZCgpXCIgKGNsaWNrKT1cImhhbmRsZVZhbHVlQ2hhbmdlZCh0cnVlKVwiPlxyXG4gIDxsYXQtaWNvbiBuYW1lPVwiY2hldnJvbi11cFwiIC8+XHJcbjwvbGF0LWJ1dHRvbj5cclxuPGxhdC1idXR0b24gdGFiaW5kZXg9XCItMVwiIHZhcmlhbnQ9XCJzdWJ0bGVcIiBbc2l6ZV09XCJ0ZXh0Ym94LnNpemUoKVwiIFtkaXNhYmxlZF09XCJ0ZXh0Ym94LmRpc2FibGVkKClcIiAoY2xpY2spPVwiaGFuZGxlVmFsdWVDaGFuZ2VkKGZhbHNlKVwiPlxyXG4gIDxsYXQtaWNvbiBuYW1lPVwiY2hldnJvbi1kb3duXCIgLz5cclxuPC9sYXQtYnV0dG9uPlxyXG4iXX0=
|
|
@@ -14,9 +14,9 @@ export class TextBoxNumberComponent extends TextBoxDirective {
|
|
|
14
14
|
decimalSeparator = input(',');
|
|
15
15
|
thousandSeparator = input('');
|
|
16
16
|
inputElementRef = viewChild.required('inputElementRef', { read: (ElementRef) });
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
maxvalue = computed(() => this.max() ?? Number.MAX_SAFE_INTEGER);
|
|
18
|
+
minvalue = computed(() => this.min() ?? Number.MIN_SAFE_INTEGER);
|
|
19
|
+
nowvalue = computed(() => this.value() || 0);
|
|
20
20
|
maxlength = computed(() => {
|
|
21
21
|
const { decimalSeparator, thousandSeparator } = this.maskitoNumberParams();
|
|
22
22
|
const decimals = this.decimals();
|
|
@@ -28,8 +28,8 @@ export class TextBoxNumberComponent extends TextBoxDirective {
|
|
|
28
28
|
maskitoNumberParams = computed(() => {
|
|
29
29
|
const decimalMode = this.decimalMode();
|
|
30
30
|
return {
|
|
31
|
-
max: this.
|
|
32
|
-
min: this.
|
|
31
|
+
max: this.maxvalue(),
|
|
32
|
+
min: this.minvalue(),
|
|
33
33
|
minusSign: '-',
|
|
34
34
|
precision: this.decimals(),
|
|
35
35
|
decimalZeroPadding: decimalMode === 'always',
|
|
@@ -57,25 +57,45 @@ export class TextBoxNumberComponent extends TextBoxDirective {
|
|
|
57
57
|
onCleanup(() => instance.destroy());
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
/** @internal */
|
|
61
|
+
_handleValueChanged() {
|
|
62
|
+
const input = this.inputElementRef();
|
|
63
|
+
const valueAsString = this._valueSimplify(input.nativeElement.value);
|
|
64
|
+
if (this._valueUnsettled(valueAsString)) {
|
|
65
|
+
return this.valueAsString.update(() => input.nativeElement.value);
|
|
66
|
+
}
|
|
67
|
+
const value = this._parseNumber(valueAsString);
|
|
68
|
+
if (value === null) {
|
|
69
|
+
return this.writeValue(value);
|
|
70
|
+
}
|
|
71
|
+
if (value < this.minvalue() || value > this.maxvalue()) {
|
|
72
|
+
return void 0;
|
|
73
|
+
}
|
|
74
|
+
this.writeValue(value);
|
|
75
|
+
}
|
|
76
|
+
/** @internal */
|
|
77
|
+
_valueStringify(valueAsString) {
|
|
78
|
+
const value = this._parseNumber(valueAsString);
|
|
62
79
|
if (value === null) {
|
|
63
80
|
return '';
|
|
64
81
|
}
|
|
65
82
|
return maskitoStringifyNumber(value, this.maskitoNumberParams());
|
|
66
83
|
}
|
|
67
|
-
|
|
84
|
+
/** @internal */
|
|
85
|
+
_valueSimplify(value) {
|
|
68
86
|
const decimalSeparator = new RegExp(this.decimalSeparator(), 'gi');
|
|
69
87
|
const thousandSeparator = new RegExp(this.thousandSeparator(), 'gi');
|
|
70
88
|
return value.replace(thousandSeparator, '').replace(decimalSeparator, '.');
|
|
71
89
|
}
|
|
72
|
-
|
|
90
|
+
/** @internal */
|
|
91
|
+
_valueUnsettled(value) {
|
|
73
92
|
return !!(value === '-' ||
|
|
74
93
|
value.match(/^\s*([-+])?\d+\.$/) ||
|
|
75
94
|
value.match(/^\s*([-+])?\d+\.[0-9]*0$/) ||
|
|
76
95
|
value.match(/^\s*([-+])0+$/));
|
|
77
96
|
}
|
|
78
|
-
|
|
97
|
+
/** @internal */
|
|
98
|
+
_parseNumber(value) {
|
|
79
99
|
let valueAsNumber = null;
|
|
80
100
|
if (typeof value === 'number') {
|
|
81
101
|
valueAsNumber = value;
|
|
@@ -88,41 +108,28 @@ export class TextBoxNumberComponent extends TextBoxDirective {
|
|
|
88
108
|
}
|
|
89
109
|
return valueAsNumber;
|
|
90
110
|
}
|
|
91
|
-
|
|
111
|
+
/** @internal */
|
|
112
|
+
_handleFocusEvent() {
|
|
92
113
|
const value = maskitoParseNumber(this.valueAsString(), this.decimalSeparator());
|
|
93
114
|
if (Number.isNaN(value) && !this.readonly()) {
|
|
94
115
|
this.valueAsString.set('');
|
|
95
116
|
}
|
|
96
117
|
}
|
|
97
|
-
|
|
118
|
+
/** @internal */
|
|
119
|
+
_handleBlurEvent() {
|
|
98
120
|
this.markAsTouched();
|
|
99
|
-
const valueAsString = this.
|
|
100
|
-
if (this.
|
|
101
|
-
this.valueAsString.update(() => this.
|
|
121
|
+
const valueAsString = this._valueSimplify(this.valueAsString());
|
|
122
|
+
if (this._valueUnsettled(valueAsString)) {
|
|
123
|
+
this.valueAsString.update(() => this._valueStringify(this.value()));
|
|
102
124
|
}
|
|
103
125
|
}
|
|
104
|
-
handleInputEvent() {
|
|
105
|
-
const input = this.inputElementRef();
|
|
106
|
-
const valueAsString = this.valueSimplify(input.nativeElement.value);
|
|
107
|
-
if (this.valueUnsettled(valueAsString)) {
|
|
108
|
-
return this.valueAsString.update(() => input.nativeElement.value);
|
|
109
|
-
}
|
|
110
|
-
const value = this.parseNumber(valueAsString);
|
|
111
|
-
if (value === null) {
|
|
112
|
-
return this.writeValue(value);
|
|
113
|
-
}
|
|
114
|
-
if (value < this.ariaValueMin() || value > this.ariaValueMax()) {
|
|
115
|
-
return void 0;
|
|
116
|
-
}
|
|
117
|
-
this.writeValue(value);
|
|
118
|
-
}
|
|
119
126
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxNumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
120
127
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: TextBoxNumberComponent, isStandalone: true, selector: "lat-textbox[type=\"number\"]", inputs: { max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, decimals: { classPropertyName: "decimals", publicName: "decimals", isSignal: true, isRequired: false, transformFunction: null }, decimalMode: { classPropertyName: "decimalMode", publicName: "decimalMode", isSignal: true, isRequired: false, transformFunction: null }, decimalSeparator: { classPropertyName: "decimalSeparator", publicName: "decimalSeparator", isSignal: true, isRequired: false, transformFunction: null }, thousandSeparator: { classPropertyName: "thousandSeparator", publicName: "thousandSeparator", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
121
128
|
{
|
|
122
129
|
provide: BuildInInputValueAccessor,
|
|
123
130
|
useExisting: forwardRef(() => TextBoxNumberComponent),
|
|
124
131
|
},
|
|
125
|
-
], viewQueries: [{ propertyName: "inputElementRef", first: true, predicate: ["inputElementRef"], descendants: true, read: ElementRef, isSignal: true }], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"spinbutton\"\r\n autocomplete=\"off\"\r\n autocapitalize=\"off\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-valuemax]=\"
|
|
132
|
+
], viewQueries: [{ propertyName: "inputElementRef", first: true, predicate: ["inputElementRef"], descendants: true, read: ElementRef, isSignal: true }], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"spinbutton\"\r\n autocomplete=\"off\"\r\n autocapitalize=\"off\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-valuemax]=\"maxvalue()\"\r\n [attr.aria-valuemin]=\"minvalue()\"\r\n [attr.aria-valuenow]=\"nowvalue()\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (focus)=\"_handleFocusEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n/>\r\n\r\n@if (step() && !readonly()) {\r\n <lat-spinners />\r\n}\r\n", dependencies: [{ kind: "component", type: SpinnersComponent, selector: "lat-spinners", exportAs: ["latSpinners"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
126
133
|
}
|
|
127
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxNumberComponent, decorators: [{
|
|
128
135
|
type: Component,
|
|
@@ -131,6 +138,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
131
138
|
provide: BuildInInputValueAccessor,
|
|
132
139
|
useExisting: forwardRef(() => TextBoxNumberComponent),
|
|
133
140
|
},
|
|
134
|
-
], template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"spinbutton\"\r\n autocomplete=\"off\"\r\n autocapitalize=\"off\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-valuemax]=\"
|
|
141
|
+
], template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"spinbutton\"\r\n autocomplete=\"off\"\r\n autocapitalize=\"off\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-valuemax]=\"maxvalue()\"\r\n [attr.aria-valuemin]=\"minvalue()\"\r\n [attr.aria-valuenow]=\"nowvalue()\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (focus)=\"_handleFocusEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n/>\r\n\r\n@if (step() && !readonly()) {\r\n <lat-spinners />\r\n}\r\n" }]
|
|
135
142
|
}], ctorParameters: () => [] });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV6RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFnQnpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBd0I7SUFDbEQsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsSUFBSSxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUs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QUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzt5QkFDdEQ7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBmb3J3YXJkUmVmLFxuICBpbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICB2aWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWFza2l0bywgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbiB9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IHsgbWFza2l0b051bWJlck9wdGlvbnNHZW5lcmF0b3IsIG1hc2tpdG9QYXJzZU51bWJlciwgbWFza2l0b1N0cmluZ2lmeU51bWJlciB9IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5cbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5pbXBvcnQgeyBUZXh0Qm94RGlyZWN0aXZlIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvdGV4dGJveCc7XG5cbmltcG9ydCB7IFNwaW5uZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9zcGlubmVycy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW1NwaW5uZXJzQ29tcG9uZW50XSxcbiAgZXhwb3J0QXM6ICdsYXRUZXh0Qm94JyxcbiAgc2VsZWN0b3I6ICdsYXQtdGV4dGJveFt0eXBlPVwibnVtYmVyXCJdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHRib3gtbnVtYmVyLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZXh0Qm94TnVtYmVyQ29tcG9uZW50KSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Qm94TnVtYmVyQ29tcG9uZW50IGV4dGVuZHMgVGV4dEJveERpcmVjdGl2ZTxudW1iZXI+IHtcbiAgcHVibGljIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgbWluID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBzdGVwID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFscyA9IGlucHV0PG51bWJlcj4oMik7XG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFsTW9kZSA9IGlucHV0PCdhbHdheXMnIHwgJ25vdC16ZXJvJyB8ICdwYWQnPignbm90LXplcm8nKTtcbiAgcHVibGljIHJlYWRvbmx5IGRlY2ltYWxTZXBhcmF0b3IgPSBpbnB1dDwnLCcgfCAnLic+KCcsJyk7XG4gIHB1YmxpYyByZWFkb25seSB0aG91c2FuZFNlcGFyYXRvciA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEVsZW1lbnRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQoJ2lucHV0RWxlbWVudFJlZicsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYXJpYVZhbHVlTWF4ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5tYXgoKSA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7XG4gIHB1YmxpYyByZWFkb25seSBhcmlhVmFsdWVNaW4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLm1pbigpID8/IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKTtcbiAgcHVibGljIHJlYWRvbmx5IGFyaWFWYWx1ZU5vdyA9IGNvbXB1dGVkKCgpID0+IHRoaXMudmFsdWUoKSB8fCAwKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbWF4bGVuZ3RoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHsgZGVjaW1hbFNlcGFyYXRvciwgdGhvdXNhbmRTZXBhcmF0b3IgfSA9IHRoaXMubWFza2l0b051bWJlclBhcmFtcygpO1xuXG4gICAgY29uc3QgZGVjaW1hbHMgPSB0aGlzLmRlY2ltYWxzKCk7XG5cbiAgICBjb25zdCBtYW50aXNzYSA9IGRlY2ltYWxzICYmIHRoaXMudmFsdWVBc1N0cmluZygpLmluY2x1ZGVzKGRlY2ltYWxTZXBhcmF0b3IpO1xuICAgIGNvbnN0IHByZWNpc2lvbiA9IG1hbnRpc3NhID8gTWF0aC5taW4oZGVjaW1hbHMgKyAxLCAyMCkgOiAwO1xuICAgIGNvbnN0IHRob3VzYW5kID0gdGhvdXNhbmRTZXBhcmF0b3IucmVwZWF0KDUpLmxlbmd0aDtcblxuICAgIHJldHVybiAxOCArIHByZWNpc2lvbiArIHRob3VzYW5kO1xuICB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbWFza2l0b051bWJlclBhcmFtcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBkZWNpbWFsTW9kZSA9IHRoaXMuZGVjaW1hbE1vZGUoKTtcblxuICAgIHJldHVybiB7XG4gICAgICBtYXg6IHRoaXMuYXJpYVZhbHVlTWF4KCksXG4gICAgICBtaW46IHRoaXMuYXJpYVZhbHVlTWluKCksXG4gICAgICBtaW51c1NpZ246ICctJyxcbiAgICAgIHByZWNpc2lvbjogdGhpcy5kZWNpbWFscygpLFxuICAgICAgZGVjaW1hbFplcm9QYWRkaW5nOiBkZWNpbWFsTW9kZSA9PT0gJ2Fsd2F5cycsXG4gICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmRlY2ltYWxTZXBhcmF0b3IoKSxcbiAgICAgIHRob3VzYW5kU2VwYXJhdG9yOiB0aGlzLnRob3VzYW5kU2VwYXJhdG9yKCksXG4gICAgfTtcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG4gICAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbGVtZW50UmVmKCk7XG4gICAgICBjb25zdCBmb3JtYXR0ZXIgPSB0aGlzLm1hc2tpdG9OdW1iZXJQYXJhbXMoKTtcblxuICAgICAgY29uc3QgeyBwbHVnaW5zLCAuLi5vcHRpb25zIH0gPSBtYXNraXRvTnVtYmVyT3B0aW9uc0dlbmVyYXRvcihmb3JtYXR0ZXIpO1xuXG4gICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBNYXNraXRvKGlucHV0Lm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgIC4uLnBsdWdpbnMsXG4gICAgICAgICAgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbihcbiAgICAgICAgICAgIG1hc2tpdG9OdW1iZXJPcHRpb25zR2VuZXJhdG9yKHtcbiAgICAgICAgICAgICAgLi4uZm9ybWF0dGVyLFxuICAgICAgICAgICAgICBtaW46IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSLFxuICAgICAgICAgICAgICBtYXg6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuXG4gICAgICBvbkNsZWFudXAoKCkgPT4gaW5zdGFuY2UuZGVzdHJveSgpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZVN0cmluZ2lmeSh2YWx1ZUFzU3RyaW5nOiB1bmtub3duKTogc3RyaW5nIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hc2tpdG9TdHJpbmdpZnlOdW1iZXIodmFsdWUsIHRoaXMubWFza2l0b051bWJlclBhcmFtcygpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWx1ZVNpbXBsaWZ5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRlY2ltYWxTZXBhcmF0b3IgPSBuZXcgUmVnRXhwKHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpLCAnZ2knKTtcbiAgICBjb25zdCB0aG91c2FuZFNlcGFyYXRvciA9IG5ldyBSZWdFeHAodGhpcy50aG91c2FuZFNlcGFyYXRvcigpLCAnZ2knKTtcblxuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKHRob3VzYW5kU2VwYXJhdG9yLCAnJykucmVwbGFjZShkZWNpbWFsU2VwYXJhdG9yLCAnLicpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHZhbHVlVW5zZXR0bGVkKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoXG4gICAgICB2YWx1ZSA9PT0gJy0nIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSk/XFxkK1xcLiQvKSB8fFxuICAgICAgdmFsdWUubWF0Y2goL15cXHMqKFstK10pP1xcZCtcXC5bMC05XSowJC8pIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSkwKyQvKVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VOdW1iZXIodmFsdWU6IHVua25vd24pOiBudW1iZXIgfCBudWxsIHtcbiAgICBsZXQgdmFsdWVBc051bWJlcjogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgdmFsdWVBc051bWJlciA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdmFsdWVBc051bWJlciA9IE51bWJlci5wYXJzZUZsb2F0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoTnVtYmVyLmlzTmFOKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlQXNOdW1iZXI7XG4gIH1cbiAgcHJvdGVjdGVkIGhhbmRsZUZvY3VzRXZlbnQoKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSBtYXNraXRvUGFyc2VOdW1iZXIodGhpcy52YWx1ZUFzU3RyaW5nKCksIHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpKTtcblxuICAgIGlmIChOdW1iZXIuaXNOYU4odmFsdWUpICYmICF0aGlzLnJlYWRvbmx5KCkpIHtcbiAgICAgIHRoaXMudmFsdWVBc1N0cmluZy5zZXQoJycpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBoYW5kbGVCbHVyRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG5cbiAgICBjb25zdCB2YWx1ZUFzU3RyaW5nID0gdGhpcy52YWx1ZVNpbXBsaWZ5KHRoaXMudmFsdWVBc1N0cmluZygpKTtcblxuICAgIGlmICh0aGlzLnZhbHVlVW5zZXR0bGVkKHZhbHVlQXNTdHJpbmcpKSB7XG4gICAgICB0aGlzLnZhbHVlQXNTdHJpbmcudXBkYXRlKCgpID0+IHRoaXMudmFsdWVTdHJpbmdpZnkodGhpcy52YWx1ZSgpKSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGhhbmRsZUlucHV0RXZlbnQoKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmlucHV0RWxlbWVudFJlZigpO1xuXG4gICAgY29uc3QgdmFsdWVBc1N0cmluZyA9IHRoaXMudmFsdWVTaW1wbGlmeShpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcblxuICAgIGlmICh0aGlzLnZhbHVlVW5zZXR0bGVkKHZhbHVlQXNTdHJpbmcpKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZUFzU3RyaW5nLnVwZGF0ZSgoKSA9PiBpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IHRoaXMuYXJpYVZhbHVlTWluKCkgfHwgdmFsdWUgPiB0aGlzLmFyaWFWYWx1ZU1heCgpKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cblxuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxpbnB1dFxyXG4gICNpbnB1dEVsZW1lbnRSZWZcclxuICB0eXBlPVwidGV4dFwiXHJcbiAgcm9sZT1cInNwaW5idXR0b25cIlxyXG4gIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgYXV0b2NhcGl0YWxpemU9XCJvZmZcIlxyXG4gIFt2YWx1ZV09J3ZhbHVlQXNTdHJpbmcoKSdcclxuICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gIFthdHRyLnRhYmluZGV4XT1cImRpc2FibGVkKCkgPyAtMSA6IHRhYmluZGV4KClcIlxyXG4gIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGgoKVwiXHJcbiAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcbiAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVtYXhdPVwiYXJpYVZhbHVlTWF4KClcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVtaW5dPVwiYXJpYVZhbHVlTWluKClcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVub3ddPVwiYXJpYVZhbHVlTm93KClcIlxyXG4gIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJsYWJlbElkKClcIlxyXG4gIChibHVyKT1cImhhbmRsZUJsdXJFdmVudCgpXCJcclxuICAoZm9jdXMpPVwiaGFuZGxlRm9jdXNFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiaGFuZGxlSW5wdXRFdmVudCgpXCJcclxuLz5cclxuXHJcbkBpZiAoc3RlcCgpICYmICFyZWFkb25seSgpKSB7XHJcbiAgPGxhdC1zcGlubmVycyAvPlxyXG59XHJcbiJdfQ==
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV6RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFnQnpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBd0I7SUFDekQsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsSUFBSSxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDekUsUUFBUSxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUM1QixXQUFXLEdBQUcsS0FBSyxDQUFnQyxVQUFVLENBQUMsQ0FBQztJQUMvRCxnQkFBZ0IsR0FBRyxLQUFLLENBQVksR0FBRyxDQUFDLENBQUM7SUFDekMsaUJBQWlCLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRXRDLGVBQWUsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUEsVUFBNEIsQ0FBQSxFQUFFLENBQUMsQ0FBQztJQUVoRyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRSxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRSxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUU3QyxTQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNqQyxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUUzRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakMsTUFBTSxRQUFRLEdBQUcsUUFBUSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVELE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFFcEQsT0FBTyxFQUFFLEdBQUcsU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUNuQyxDQUFDLENBQUMsQ0FBQztJQUVNLG1CQUFtQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDM0MsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXZDLE9BQU87WUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQixHQUFHLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwQixTQUFTLEVBQUUsR0FBRztZQUNkLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzFCLGtCQUFrQixFQUFFLFdBQVcsS0FBSyxRQUFRO1lBQzVDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7U0FDNUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUg7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUVSLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUU3QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFekUsTUFBTSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtnQkFDaEQsR0FBRyxPQUFPO2dCQUNWLE9BQU8sRUFBRTtvQkFDUCxHQUFHLE9BQU87b0JBQ1YsK0JBQStCLENBQzdCLDZCQUE2QixDQUFDO3dCQUM1QixHQUFHLFNBQVM7d0JBQ1osR0FBRyxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7d0JBQzVCLEdBQUcsRUFBRSxNQUFNLENBQUMsZ0JBQWdCO3FCQUM3QixDQUFDLENBQ0g7aUJBQ0Y7YUFDRixDQUFDLENBQUM7WUFFSCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtRQUNqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFckMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUUvQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDdkQsT0FBTyxLQUFLLENBQUMsQ0FBQztRQUNoQixDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsZ0JBQWdCO0lBQ1AsZUFBZSxDQUFDLGFBQXNCO1FBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDL0MsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLGNBQWMsQ0FBQyxLQUFhO1FBQzFCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbkUsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVyRSxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxnQkFBZ0I7SUFDaEIsZUFBZSxDQUFDLEtBQWE7UUFDM0IsT0FBTyxDQUFDLENBQUMsQ0FDUCxLQUFLLEtBQUssR0FBRztZQUNiLEtBQUssQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUM7WUFDaEMsS0FBSyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQztZQUN2QyxLQUFLLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUM3QixDQUFDO0lBQ0osQ0FBQztJQUVELGdCQUFnQjtJQUNoQixZQUFZLENBQUMsS0FBYztRQUN6QixJQUFJLGFBQWEsR0FBa0IsSUFBSSxDQUFDO1FBRXhDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDOUIsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUN4QixDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNyQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixpQkFBaUI7UUFDZixNQUFNLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUVoRixJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixnQkFBZ0I7UUFDZCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUVoRSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdEUsQ0FBQztJQUNILENBQUM7dUdBMUpVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLGcvQkFQdEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2FBQ3REO1NBQ0YseUhBV3dFLFVBQVUsOEZDNUNyRix5Z0NBOEJBLDRDRFJZLGlCQUFpQjs7MkZBYWhCLHNCQUFzQjtrQkFkbEMsU0FBUzs4QkFDQyxDQUFDLGlCQUFpQixDQUFDLFlBQ2xCLFlBQVksWUFDWiw0QkFBNEIsaUJBRXZCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLENBQUM7eUJBQ3REO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgaW5wdXQsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgdmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1hc2tpdG8sIG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4gfSBmcm9tICdAbWFza2l0by9jb3JlJztcbmltcG9ydCB7IG1hc2tpdG9OdW1iZXJPcHRpb25zR2VuZXJhdG9yLCBtYXNraXRvUGFyc2VOdW1iZXIsIG1hc2tpdG9TdHJpbmdpZnlOdW1iZXIgfSBmcm9tICdAbWFza2l0by9raXQnO1xuXG5pbXBvcnQgeyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvaW5wdXQnO1xuaW1wb3J0IHsgVGV4dEJveERpcmVjdGl2ZSB9IGZyb20gJ0BsYXRpdHVkZS11aS93aWRnZXRzL3RleHRib3gnO1xuXG5pbXBvcnQgeyBTcGlubmVyc0NvbXBvbmVudCB9IGZyb20gJy4vc3Bpbm5lcnMuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIGltcG9ydHM6IFtTcGlubmVyc0NvbXBvbmVudF0sXG4gIGV4cG9ydEFzOiAnbGF0VGV4dEJveCcsXG4gIHNlbGVjdG9yOiAnbGF0LXRleHRib3hbdHlwZT1cIm51bWJlclwiXScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0Ym94LW51bWJlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGV4dEJveE51bWJlckNvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEJveE51bWJlckNvbXBvbmVudCBleHRlbmRzIFRleHRCb3hEaXJlY3RpdmU8bnVtYmVyPiB7XG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICByZWFkb25seSBtaW4gPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcbiAgcmVhZG9ubHkgc3RlcCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICByZWFkb25seSBkZWNpbWFscyA9IGlucHV0PG51bWJlcj4oMik7XG4gIHJlYWRvbmx5IGRlY2ltYWxNb2RlID0gaW5wdXQ8J2Fsd2F5cycgfCAnbm90LXplcm8nIHwgJ3BhZCc+KCdub3QtemVybycpO1xuICByZWFkb25seSBkZWNpbWFsU2VwYXJhdG9yID0gaW5wdXQ8JywnIHwgJy4nPignLCcpO1xuICByZWFkb25seSB0aG91c2FuZFNlcGFyYXRvciA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIHJlYWRvbmx5IGlucHV0RWxlbWVudFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZCgnaW5wdXRFbGVtZW50UmVmJywgeyByZWFkOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+IH0pO1xuXG4gIHJlYWRvbmx5IG1heHZhbHVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5tYXgoKSA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7XG4gIHJlYWRvbmx5IG1pbnZhbHVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5taW4oKSA/PyBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUik7XG4gIHJlYWRvbmx5IG5vd3ZhbHVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy52YWx1ZSgpIHx8IDApO1xuXG4gIHJlYWRvbmx5IG1heGxlbmd0aCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB7IGRlY2ltYWxTZXBhcmF0b3IsIHRob3VzYW5kU2VwYXJhdG9yIH0gPSB0aGlzLm1hc2tpdG9OdW1iZXJQYXJhbXMoKTtcblxuICAgIGNvbnN0IGRlY2ltYWxzID0gdGhpcy5kZWNpbWFscygpO1xuXG4gICAgY29uc3QgbWFudGlzc2EgPSBkZWNpbWFscyAmJiB0aGlzLnZhbHVlQXNTdHJpbmcoKS5pbmNsdWRlcyhkZWNpbWFsU2VwYXJhdG9yKTtcbiAgICBjb25zdCBwcmVjaXNpb24gPSBtYW50aXNzYSA/IE1hdGgubWluKGRlY2ltYWxzICsgMSwgMjApIDogMDtcbiAgICBjb25zdCB0aG91c2FuZCA9IHRob3VzYW5kU2VwYXJhdG9yLnJlcGVhdCg1KS5sZW5ndGg7XG5cbiAgICByZXR1cm4gMTggKyBwcmVjaXNpb24gKyB0aG91c2FuZDtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgbWFza2l0b051bWJlclBhcmFtcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBkZWNpbWFsTW9kZSA9IHRoaXMuZGVjaW1hbE1vZGUoKTtcblxuICAgIHJldHVybiB7XG4gICAgICBtYXg6IHRoaXMubWF4dmFsdWUoKSxcbiAgICAgIG1pbjogdGhpcy5taW52YWx1ZSgpLFxuICAgICAgbWludXNTaWduOiAnLScsXG4gICAgICBwcmVjaXNpb246IHRoaXMuZGVjaW1hbHMoKSxcbiAgICAgIGRlY2ltYWxaZXJvUGFkZGluZzogZGVjaW1hbE1vZGUgPT09ICdhbHdheXMnLFxuICAgICAgZGVjaW1hbFNlcGFyYXRvcjogdGhpcy5kZWNpbWFsU2VwYXJhdG9yKCksXG4gICAgICB0aG91c2FuZFNlcGFyYXRvcjogdGhpcy50aG91c2FuZFNlcGFyYXRvcigpLFxuICAgIH07XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICBlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLmlucHV0RWxlbWVudFJlZigpO1xuICAgICAgY29uc3QgZm9ybWF0dGVyID0gdGhpcy5tYXNraXRvTnVtYmVyUGFyYW1zKCk7XG5cbiAgICAgIGNvbnN0IHsgcGx1Z2lucywgLi4ub3B0aW9ucyB9ID0gbWFza2l0b051bWJlck9wdGlvbnNHZW5lcmF0b3IoZm9ybWF0dGVyKTtcblxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgTWFza2l0byhpbnB1dC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICAuLi5wbHVnaW5zLFxuICAgICAgICAgIG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4oXG4gICAgICAgICAgICBtYXNraXRvTnVtYmVyT3B0aW9uc0dlbmVyYXRvcih7XG4gICAgICAgICAgICAgIC4uLmZvcm1hdHRlcixcbiAgICAgICAgICAgICAgbWluOiBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUixcbiAgICAgICAgICAgICAgbWF4OiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICB9KTtcblxuICAgICAgb25DbGVhbnVwKCgpID0+IGluc3RhbmNlLmRlc3Ryb3koKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIF9oYW5kbGVWYWx1ZUNoYW5nZWQoKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmlucHV0RWxlbWVudFJlZigpO1xuXG4gICAgY29uc3QgdmFsdWVBc1N0cmluZyA9IHRoaXMuX3ZhbHVlU2ltcGxpZnkoaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG5cbiAgICBpZiAodGhpcy5fdmFsdWVVbnNldHRsZWQodmFsdWVBc1N0cmluZykpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlQXNTdHJpbmcudXBkYXRlKCgpID0+IGlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fcGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IHRoaXMubWludmFsdWUoKSB8fCB2YWx1ZSA+IHRoaXMubWF4dmFsdWUoKSkge1xuICAgICAgcmV0dXJuIHZvaWQgMDtcbiAgICB9XG5cbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBvdmVycmlkZSBfdmFsdWVTdHJpbmdpZnkodmFsdWVBc1N0cmluZzogdW5rbm93bik6IHN0cmluZyB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLl9wYXJzZU51bWJlcih2YWx1ZUFzU3RyaW5nKTtcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICByZXR1cm4gbWFza2l0b1N0cmluZ2lmeU51bWJlcih2YWx1ZSwgdGhpcy5tYXNraXRvTnVtYmVyUGFyYW1zKCkpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBfdmFsdWVTaW1wbGlmeSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBkZWNpbWFsU2VwYXJhdG9yID0gbmV3IFJlZ0V4cCh0aGlzLmRlY2ltYWxTZXBhcmF0b3IoKSwgJ2dpJyk7XG4gICAgY29uc3QgdGhvdXNhbmRTZXBhcmF0b3IgPSBuZXcgUmVnRXhwKHRoaXMudGhvdXNhbmRTZXBhcmF0b3IoKSwgJ2dpJyk7XG5cbiAgICByZXR1cm4gdmFsdWUucmVwbGFjZSh0aG91c2FuZFNlcGFyYXRvciwgJycpLnJlcGxhY2UoZGVjaW1hbFNlcGFyYXRvciwgJy4nKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX3ZhbHVlVW5zZXR0bGVkKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoXG4gICAgICB2YWx1ZSA9PT0gJy0nIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSk/XFxkK1xcLiQvKSB8fFxuICAgICAgdmFsdWUubWF0Y2goL15cXHMqKFstK10pP1xcZCtcXC5bMC05XSowJC8pIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSkwKyQvKVxuICAgICk7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIF9wYXJzZU51bWJlcih2YWx1ZTogdW5rbm93bik6IG51bWJlciB8IG51bGwge1xuICAgIGxldCB2YWx1ZUFzTnVtYmVyOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICB2YWx1ZUFzTnVtYmVyID0gdmFsdWU7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB2YWx1ZUFzTnVtYmVyID0gTnVtYmVyLnBhcnNlRmxvYXQodmFsdWUpO1xuICAgIH1cblxuICAgIGlmIChOdW1iZXIuaXNOYU4odmFsdWUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWVBc051bWJlcjtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX2hhbmRsZUZvY3VzRXZlbnQoKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSBtYXNraXRvUGFyc2VOdW1iZXIodGhpcy52YWx1ZUFzU3RyaW5nKCksIHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpKTtcblxuICAgIGlmIChOdW1iZXIuaXNOYU4odmFsdWUpICYmICF0aGlzLnJlYWRvbmx5KCkpIHtcbiAgICAgIHRoaXMudmFsdWVBc1N0cmluZy5zZXQoJycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX2hhbmRsZUJsdXJFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtBc1RvdWNoZWQoKTtcblxuICAgIGNvbnN0IHZhbHVlQXNTdHJpbmcgPSB0aGlzLl92YWx1ZVNpbXBsaWZ5KHRoaXMudmFsdWVBc1N0cmluZygpKTtcblxuICAgIGlmICh0aGlzLl92YWx1ZVVuc2V0dGxlZCh2YWx1ZUFzU3RyaW5nKSkge1xuICAgICAgdGhpcy52YWx1ZUFzU3RyaW5nLnVwZGF0ZSgoKSA9PiB0aGlzLl92YWx1ZVN0cmluZ2lmeSh0aGlzLnZhbHVlKCkpKTtcbiAgICB9XG4gIH1cblxuXG59XG4iLCI8aW5wdXRcclxuICAjaW5wdXRFbGVtZW50UmVmXHJcbiAgdHlwZT1cInRleHRcIlxyXG4gIHJvbGU9XCJzcGluYnV0dG9uXCJcclxuICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gIGF1dG9jYXBpdGFsaXplPVwib2ZmXCJcclxuICBbdmFsdWVdPSd2YWx1ZUFzU3RyaW5nKCknXHJcbiAgW2F0dHIuaWRdPVwiaW5wdXRJZCgpXCJcclxuICBbYXR0ci50YWJpbmRleF09XCJkaXNhYmxlZCgpID8gLTEgOiB0YWJpbmRleCgpXCJcclxuICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoKClcIlxyXG4gIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxyXG4gIFthdHRyLmFyaWEtaW52YWxpZF09XCJpbnZhbGlkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLXZhbHVlbWF4XT1cIm1heHZhbHVlKClcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVtaW5dPVwibWludmFsdWUoKVwiXHJcbiAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJub3d2YWx1ZSgpXCJcclxuICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLXJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwibGFiZWxJZCgpXCJcclxuICAoYmx1cik9XCJfaGFuZGxlQmx1ckV2ZW50KClcIlxyXG4gIChmb2N1cyk9XCJfaGFuZGxlRm9jdXNFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiX2hhbmRsZVZhbHVlQ2hhbmdlZCgpXCJcclxuLz5cclxuXHJcbkBpZiAoc3RlcCgpICYmICFyZWFkb25seSgpKSB7XHJcbiAgPGxhdC1zcGlubmVycyAvPlxyXG59XHJcbiJdfQ==
|
|
@@ -1,33 +1,36 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, DestroyRef,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, DestroyRef, forwardRef, inject, input, numberAttribute, ViewEncapsulation, } from '@angular/core';
|
|
2
2
|
import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
|
|
3
|
+
import { TextBoxDirective } from '@latitude-ui/widgets/textbox';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
|
-
export class TextBoxSearchComponent extends
|
|
5
|
+
export class TextBoxSearchComponent extends TextBoxDirective {
|
|
5
6
|
maxlength = input(undefined, { transform: numberAttribute });
|
|
6
7
|
minlength = input(undefined, { transform: numberAttribute });
|
|
7
8
|
debounceTime = input(300, { transform: numberAttribute });
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
/** @internal */
|
|
10
|
+
_timeoutRef = undefined;
|
|
10
11
|
constructor() {
|
|
11
12
|
super();
|
|
12
|
-
inject(DestroyRef).onDestroy(() => clearTimeout(this.
|
|
13
|
+
inject(DestroyRef).onDestroy(() => clearTimeout(this._timeoutRef));
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
+
/** @internal */
|
|
16
|
+
_handleBlurEvent() {
|
|
15
17
|
this.markAsTouched();
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
/** @internal */
|
|
20
|
+
_handleValueChanged() {
|
|
21
|
+
clearTimeout(this._timeoutRef);
|
|
22
|
+
const input = this.input();
|
|
23
|
+
this._timeoutRef = setTimeout(() => {
|
|
21
24
|
this.writeValue(input.nativeElement.value);
|
|
22
25
|
}, this.debounceTime());
|
|
23
26
|
}
|
|
24
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.4", type: TextBoxSearchComponent, isStandalone: true, selector: "lat-textbox[type=\"search\"]", inputs: { maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
26
29
|
{
|
|
27
30
|
provide: BuildInInputValueAccessor,
|
|
28
31
|
useExisting: forwardRef(() => TextBoxSearchComponent),
|
|
29
32
|
},
|
|
30
|
-
],
|
|
33
|
+
], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n/>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
31
34
|
}
|
|
32
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxSearchComponent, decorators: [{
|
|
33
36
|
type: Component,
|
|
@@ -36,6 +39,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
|
|
|
36
39
|
provide: BuildInInputValueAccessor,
|
|
37
40
|
useExisting: forwardRef(() => TextBoxSearchComponent),
|
|
38
41
|
},
|
|
39
|
-
], template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"
|
|
42
|
+
], template: "<input\r\n #inputElementRef\r\n type=\"text\"\r\n role=\"textbox\"\r\n [value]='valueAsString()'\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.readonly]=\"readonly() || undefined\"\r\n [attr.required]=\"required() || undefined\"\r\n [attr.maxlength]=\"maxlength()\"\r\n [attr.minlength]=\"minlength()\"\r\n [attr.placeholder]=\"placeholder()\"\r\n [attr.aria-invalid]=\"invalid() || undefined\"\r\n [attr.aria-disabled]=\"disabled() || undefined\"\r\n [attr.aria-readonly]=\"readonly() || undefined\"\r\n [attr.aria-required]=\"required() || undefined\"\r\n [attr.aria-labelledby]=\"labelId()\"\r\n (blur)=\"_handleBlurEvent()\"\r\n (input)=\"_handleValueChanged()\"\r\n/>\r\n" }]
|
|
40
43
|
}], ctorParameters: () => [] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLGVBQWUsRUFDZixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBZWhFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBd0I7SUFDekQsU0FBUyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDOUUsU0FBUyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDOUUsWUFBWSxHQUFHLEtBQUssQ0FBa0IsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFFcEYsZ0JBQWdCO0lBQ2hCLFdBQVcsR0FBdUIsU0FBUyxDQUFDO0lBRTVDO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFFUixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtRQUNkLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtRQUNqQixZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRS9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDakMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUMxQixDQUFDO3VHQTNCVSxzQkFBc0I7MkZBQXRCLHNCQUFzQiw0ZUFQdEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2FBQ3REO1NBQ0YsMkVDekJILHN4QkFxQkE7OzJGRE1hLHNCQUFzQjtrQkFibEMsU0FBUzsrQkFDRSxZQUFZLFlBQ1osNEJBQTRCLGlCQUV2QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSx5QkFBeUI7NEJBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDO3lCQUN0RDtxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIGZvcndhcmRSZWYsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvaW5wdXQnO1xuaW1wb3J0IHsgVGV4dEJveERpcmVjdGl2ZSB9IGZyb20gJ0BsYXRpdHVkZS11aS93aWRnZXRzL3RleHRib3gnO1xuXG5AQ29tcG9uZW50KHtcbiAgZXhwb3J0QXM6ICdsYXRUZXh0Qm94JyxcbiAgc2VsZWN0b3I6ICdsYXQtdGV4dGJveFt0eXBlPVwic2VhcmNoXCJdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHRib3gtc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZXh0Qm94U2VhcmNoQ29tcG9uZW50KSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Qm94U2VhcmNoQ29tcG9uZW50IGV4dGVuZHMgVGV4dEJveERpcmVjdGl2ZTxzdHJpbmc+IHtcbiAgcmVhZG9ubHkgbWF4bGVuZ3RoID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICByZWFkb25seSBkZWJvdW5jZVRpbWUgPSBpbnB1dDxudW1iZXIsIHVua25vd24+KDMwMCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcblxuICAvKiogQGludGVybmFsICovXG4gIF90aW1lb3V0UmVmOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGluamVjdChEZXN0cm95UmVmKS5vbkRlc3Ryb3koKCkgPT4gY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXRSZWYpKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX2hhbmRsZUJsdXJFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtBc1RvdWNoZWQoKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgX2hhbmRsZVZhbHVlQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dFJlZik7XG5cbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXQoKTtcbiAgICB0aGlzLl90aW1lb3V0UmVmID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUoaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgfSwgdGhpcy5kZWJvdW5jZVRpbWUoKSk7XG4gIH1cbn1cbiIsIjxpbnB1dFxyXG4gICNpbnB1dEVsZW1lbnRSZWZcclxuICB0eXBlPVwidGV4dFwiXHJcbiAgcm9sZT1cInRleHRib3hcIlxyXG4gIFt2YWx1ZV09J3ZhbHVlQXNTdHJpbmcoKSdcclxuICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gIFthdHRyLnRhYmluZGV4XT1cImRpc2FibGVkKCkgPyAtMSA6IHRhYmluZGV4KClcIlxyXG4gIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGgoKVwiXHJcbiAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aCgpXCJcclxuICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW52YWxpZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWQoKVwiXHJcbiAgKGJsdXIpPVwiX2hhbmRsZUJsdXJFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiX2hhbmRsZVZhbHVlQ2hhbmdlZCgpXCJcclxuLz5cclxuIl19
|
|
@@ -28,8 +28,10 @@ export declare class BuildInInputValueAccessor<T> {
|
|
|
28
28
|
readonly inputId: import("@angular/core").Signal<string | undefined>;
|
|
29
29
|
readonly labelId: import("@angular/core").Signal<string | undefined>;
|
|
30
30
|
readonly inputSize: import("@angular/core").Signal<InputSize>;
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
/** @internal */
|
|
32
|
+
readonly _value: import("@angular/core").WritableSignal<T | null>;
|
|
33
|
+
/** @internal */
|
|
34
|
+
readonly _control: import("@angular/core").WritableSignal<AbstractControl<any, any> | null>;
|
|
33
35
|
constructor();
|
|
34
36
|
/**
|
|
35
37
|
* Sets the "value" property on the input element.
|
|
@@ -43,20 +45,16 @@ export declare class BuildInInputValueAccessor<T> {
|
|
|
43
45
|
* Marks the control as `touched`.
|
|
44
46
|
*/
|
|
45
47
|
markAsTouched(): void;
|
|
46
|
-
/**
|
|
47
|
-
* @nodoc
|
|
48
|
-
*/
|
|
49
|
-
valueEquality(value0: T | null, value1: unknown): boolean;
|
|
50
|
-
/**
|
|
51
|
-
* @nodoc
|
|
52
|
-
*/
|
|
53
|
-
valueStringify(value: unknown): string;
|
|
54
48
|
/** @internal */
|
|
55
|
-
|
|
49
|
+
_valueEquality(value0: T | null, value1: unknown): boolean;
|
|
50
|
+
/** @internal */
|
|
51
|
+
_valueStringify(value: unknown): string;
|
|
52
|
+
/** @internal */
|
|
53
|
+
_writeValue(input: T | null): boolean;
|
|
56
54
|
/** @internal */
|
|
57
|
-
|
|
55
|
+
_markAsTouched: VoidFunction;
|
|
58
56
|
/** @internal */
|
|
59
|
-
|
|
57
|
+
_markAsChanged: VoidFunction;
|
|
60
58
|
static ɵfac: i0.ɵɵFactoryDeclaration<BuildInInputValueAccessor<any>, never>;
|
|
61
59
|
static ɵdir: i0.ɵɵDirectiveDeclaration<BuildInInputValueAccessor<any>, never, never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "tabindex": { "alias": "tabindex"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
62
60
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
1
2
|
import * as i0 from "@angular/core";
|
|
2
3
|
export declare class ListBoxOptionComponent<T> {
|
|
3
|
-
readonly
|
|
4
|
+
readonly option: ElementRef<any>;
|
|
4
5
|
readonly value: import("@angular/core").InputSignal<T>;
|
|
5
6
|
readonly setsize: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
|
|
6
7
|
readonly posinset: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
|
|
@@ -8,10 +9,6 @@ export declare class ListBoxOptionComponent<T> {
|
|
|
8
9
|
readonly disabled: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
|
|
9
10
|
readonly checkbox: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
|
|
10
11
|
constructor();
|
|
11
|
-
/**
|
|
12
|
-
* https://github.com/angular/angular/issues/9587
|
|
13
|
-
*/
|
|
14
|
-
private _setUpHostListeners;
|
|
15
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<ListBoxOptionComponent<any>, never>;
|
|
16
13
|
static ɵcmp: i0.ɵɵComponentDeclaration<ListBoxOptionComponent<any>, "lat-listbox-option, lat-option", ["latListBoxOption"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "setsize": { "alias": "setsize"; "required": false; "isSignal": true; }; "posinset": { "alias": "posinset"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "checkbox": { "alias": "checkbox"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
17
14
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './src/listview.component';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class ListViewComponent {
|
|
3
|
+
readonly queryable: import("@latitude-ui/widgets/cdk").Queryable<unknown>;
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ListViewComponent, never>;
|
|
5
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ListViewComponent, "lat-listview", ["latListView"], {}, {}, never, never, true, never>;
|
|
6
|
+
}
|