@latitude-ui/widgets 0.0.11 → 0.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/core/public-api.d.ts +2 -0
  2. package/core/src/dimensions.d.ts +13 -0
  3. package/core/src/root.d.ts +12 -0
  4. package/esm2022/button/src/button.component.js +1 -1
  5. package/esm2022/core/public-api.js +3 -1
  6. package/esm2022/core/src/dimensions.js +56 -0
  7. package/esm2022/core/src/root.js +20 -0
  8. package/esm2022/icons/src/icon.component.js +18 -10
  9. package/esm2022/icons/src/icon.service.js +62 -0
  10. package/esm2022/icons/src/icon.tokens.js +8 -2
  11. package/esm2022/input/src/input.directive.js +6 -5
  12. package/esm2022/lookup/latitude-ui-widgets-lookup.js +5 -0
  13. package/esm2022/lookup/public-api.js +3 -0
  14. package/esm2022/lookup/src/lookup-outlet.directive.js +13 -0
  15. package/esm2022/lookup/src/lookup.component.js +11 -0
  16. package/esm2022/select/public-api.js +4 -4
  17. package/esm2022/select/src/select/select.directive.js +86 -0
  18. package/esm2022/select/src/select-dropdown/select-dropdown.component.js +39 -0
  19. package/esm2022/select/src/select-multiple.component.js +38 -29
  20. package/esm2022/select/src/select-option/select-option.component.js +21 -0
  21. package/esm2022/select/src/select-option/select-option.directive.js +19 -0
  22. package/esm2022/select/src/select-single.component.js +34 -29
  23. package/esm2022/select/src/select-trigger/select-trigger.component.js +29 -0
  24. package/esm2022/select/src/select-value/select-value.component.js +15 -0
  25. package/esm2022/select/src/select-values/select-values.component.js +16 -0
  26. package/esm2022/select/src/select.module.js +2 -2
  27. package/esm2022/textarea/src/textarea.component.js +8 -19
  28. package/esm2022/textbox/public-api.js +2 -1
  29. package/esm2022/textbox/src/textbox.component.js +7 -15
  30. package/esm2022/textbox/src/textbox.directive.js +25 -0
  31. package/esm2022/textbox-number/src/textbox-number.component.js +11 -11
  32. package/esm2022/textbox-search/src/textbox-search.component.js +2 -3
  33. package/esm2022/toolbar/latitude-ui-widgets-toolbar.js +5 -0
  34. package/esm2022/toolbar/public-api.js +2 -0
  35. package/esm2022/toolbar/src/toolbar.component.js +14 -0
  36. package/icons/src/icon.component.d.ts +3 -1
  37. package/icons/src/icon.service.d.ts +15 -0
  38. package/icons/src/icon.tokens.d.ts +2 -1
  39. package/input/src/input.directive.d.ts +2 -1
  40. package/lookup/README.md +3 -0
  41. package/lookup/latitude-ui-widgets-lookup.d.ts +5 -0
  42. package/lookup/public-api.d.ts +2 -0
  43. package/lookup/src/lookup-outlet.directive.d.ts +5 -0
  44. package/lookup/src/lookup.component.d.ts +5 -0
  45. package/package.json +14 -6
  46. package/select/public-api.d.ts +3 -3
  47. package/select/src/select/select.directive.d.ts +24 -0
  48. package/select/src/select-dropdown/select-dropdown.component.d.ts +14 -0
  49. package/select/src/select-multiple.component.d.ts +7 -7
  50. package/select/src/{select-option.component.d.ts → select-option/select-option.component.d.ts} +2 -2
  51. package/select/src/{select-option.directive.d.ts → select-option/select-option.directive.d.ts} +3 -3
  52. package/select/src/select-single.component.d.ts +6 -7
  53. package/select/src/{select-trigger.component.d.ts → select-trigger/select-trigger.component.d.ts} +2 -2
  54. package/select/src/{select-value.component.d.ts → select-value/select-value.component.d.ts} +1 -1
  55. package/select/src/select-values/select-values.component.d.ts +7 -0
  56. package/select/src/select.module.d.ts +1 -1
  57. package/styles/_defaults.scss +13 -0
  58. package/styles/forms/_index.scss +117 -85
  59. package/styles/icons/_index.scss +2 -2
  60. package/textarea/src/textarea.component.d.ts +3 -9
  61. package/textbox/public-api.d.ts +1 -0
  62. package/textbox/src/textbox.component.d.ts +3 -8
  63. package/textbox/src/textbox.directive.d.ts +12 -0
  64. package/textbox-number/src/textbox-number.component.d.ts +4 -5
  65. package/textbox-search/src/textbox-search.component.d.ts +1 -2
  66. package/toolbar/latitude-ui-widgets-toolbar.d.ts +5 -0
  67. package/toolbar/public-api.d.ts +1 -0
  68. package/toolbar/src/toolbar.component.d.ts +5 -0
  69. package/esm2022/select/src/select-option.component.js +0 -21
  70. package/esm2022/select/src/select-option.directive.js +0 -19
  71. package/esm2022/select/src/select-trigger.component.js +0 -28
  72. package/esm2022/select/src/select-value.component.js +0 -13
  73. package/esm2022/select/src/select.component.js +0 -44
  74. package/esm2022/select/src/select.directive.js +0 -103
  75. package/select/src/select.component.d.ts +0 -13
  76. package/select/src/select.directive.d.ts +0 -25
@@ -1,25 +1,17 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, forwardRef, input, numberAttribute, viewChild, ViewEncapsulation, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, forwardRef, input, numberAttribute, ViewEncapsulation, } from '@angular/core';
2
2
  import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
3
+ import { TextBoxDirective } from './textbox.directive';
3
4
  import * as i0 from "@angular/core";
4
- export class TextBoxComponent extends BuildInInputValueAccessor {
5
+ export class TextBoxComponent extends TextBoxDirective {
5
6
  maxlength = input(undefined, { transform: numberAttribute });
6
7
  minlength = input(undefined, { transform: numberAttribute });
7
- placeholder = input();
8
- inputElementRef = viewChild.required('inputElementRef', { read: (ElementRef) });
9
- handleBlurEvent() {
10
- this.markAsTouched();
11
- }
12
- handleInputEvent() {
13
- const input = this.inputElementRef();
14
- this.writeValue(input.nativeElement.value);
15
- }
16
8
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
17
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.4", type: TextBoxComponent, isStandalone: true, selector: "lat-textbox:not([type]), lat-textbox[type=\"text\"]", inputs: { maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
9
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.4", type: TextBoxComponent, isStandalone: true, selector: "lat-textbox:not([type]), lat-textbox[type=\"text\"]", inputs: { maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
18
10
  {
19
11
  provide: BuildInInputValueAccessor,
20
12
  useExisting: forwardRef(() => TextBoxComponent),
21
13
  },
22
- ], 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=\"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)=\"handleInputEvent()\"\r\n/>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
14
+ ], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "<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)=\"handleInputEvent()\"\r\n/>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23
15
  }
24
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxComponent, decorators: [{
25
17
  type: Component,
@@ -28,6 +20,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
28
20
  provide: BuildInInputValueAccessor,
29
21
  useExisting: forwardRef(() => TextBoxComponent),
30
22
  },
31
- ], 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)=\"handleInputEvent()\"\r\n/>\r\n" }]
23
+ ], template: "<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)=\"handleInputEvent()\"\r\n/>\r\n" }]
32
24
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3RleHRib3gvc3JjL3RleHRib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94L3NyYy90ZXh0Ym94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsS0FBSyxFQUNMLGVBQWUsRUFDZixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQWV2RSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEseUJBQWlDO0lBQ3JELFNBQVMsR0FBRyxLQUFLLENBQWtCLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLFNBQVMsR0FBRyxLQUFLLENBQWtCLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLFdBQVcsR0FBRyxLQUFLLEVBQVUsQ0FBQztJQUU5QixlQUFlLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFBLFVBQTRCLENBQUEsRUFBRSxDQUFDLENBQUM7SUFFdEcsZUFBZTtRQUN2QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFckMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7dUdBZlUsZ0JBQWdCOzJGQUFoQixnQkFBZ0IsZ2dCQVBoQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7YUFDaEQ7U0FDRix5SEFPK0UsVUFBVSw4RkM5QjVGLGt4QkFxQkE7OzJGRElhLGdCQUFnQjtrQkFiNUIsU0FBUzsrQkFDRSxZQUFZLFlBQ1osbURBQW1ELGlCQUU5QyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSx5QkFBeUI7NEJBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDO3lCQUNoRDtxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgZm9yd2FyZFJlZixcclxuICBpbnB1dCxcclxuICBudW1iZXJBdHRyaWJ1dGUsXHJcbiAgdmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvaW5wdXQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgZXhwb3J0QXM6ICdsYXRUZXh0Qm94JyxcclxuICBzZWxlY3RvcjogJ2xhdC10ZXh0Ym94Om5vdChbdHlwZV0pLCBsYXQtdGV4dGJveFt0eXBlPVwidGV4dFwiXScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHRib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRleHRCb3hDb21wb25lbnQpLFxyXG4gICAgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXh0Qm94Q29tcG9uZW50IGV4dGVuZHMgQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvcjxzdHJpbmc+IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgbWF4bGVuZ3RoID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XHJcbiAgcHVibGljIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xyXG4gIHB1YmxpYyByZWFkb25seSBwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oKTtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IGlucHV0RWxlbWVudFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZCgnaW5wdXRFbGVtZW50UmVmJywgeyByZWFkOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+IH0pO1xyXG5cclxuICBwcm90ZWN0ZWQgaGFuZGxlQmx1ckV2ZW50KCk6IHZvaWQge1xyXG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgaGFuZGxlSW5wdXRFdmVudCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dEVsZW1lbnRSZWYoKTtcclxuXHJcbiAgICB0aGlzLndyaXRlVmFsdWUoaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxpbnB1dFxyXG4gICNpbnB1dEVsZW1lbnRSZWZcclxuICB0eXBlPVwidGV4dFwiXHJcbiAgcm9sZT1cInRleHRib3hcIlxyXG4gIFt2YWx1ZV09J3ZhbHVlQXNTdHJpbmcoKSdcclxuICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gIFthdHRyLnRhYmluZGV4XT1cImRpc2FibGVkKCkgPyAtMSA6IHRhYmluZGV4KClcIlxyXG4gIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGgoKVwiXHJcbiAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aCgpXCJcclxuICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW52YWxpZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWQoKVwiXHJcbiAgKGJsdXIpPVwiaGFuZGxlQmx1ckV2ZW50KClcIlxyXG4gIChpbnB1dCk9XCJoYW5kbGVJbnB1dEV2ZW50KClcIlxyXG4vPlxyXG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3RleHRib3gvc3JjL3RleHRib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94L3NyYy90ZXh0Ym94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsZUFBZSxFQUNmLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFldkQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUF3QjtJQUM1QyxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUM5RSxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQzt1R0FGbkYsZ0JBQWdCOzJGQUFoQixnQkFBZ0Isc1hBUGhCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLHlCQUF5QjtnQkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzthQUNoRDtTQUNGLDJFQ3RCSCx3d0JBcUJBOzsyRkRHYSxnQkFBZ0I7a0JBYjVCLFNBQVM7K0JBQ0UsWUFBWSxZQUNaLG1EQUFtRCxpQkFFOUMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt5QkFDaEQ7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBpbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvaW5wdXQnO1xuaW1wb3J0IHsgVGV4dEJveERpcmVjdGl2ZSB9IGZyb20gJy4vdGV4dGJveC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgZXhwb3J0QXM6ICdsYXRUZXh0Qm94JyxcbiAgc2VsZWN0b3I6ICdsYXQtdGV4dGJveDpub3QoW3R5cGVdKSwgbGF0LXRleHRib3hbdHlwZT1cInRleHRcIl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGJveC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGV4dEJveENvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEJveENvbXBvbmVudCBleHRlbmRzIFRleHRCb3hEaXJlY3RpdmU8c3RyaW5nPiB7XG4gIHB1YmxpYyByZWFkb25seSBtYXhsZW5ndGggPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcbiAgcHVibGljIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xufVxuIiwiPGlucHV0XHJcbiAgI2lucHV0XHJcbiAgdHlwZT1cInRleHRcIlxyXG4gIHJvbGU9XCJ0ZXh0Ym94XCJcclxuICBbdmFsdWVdPSd2YWx1ZUFzU3RyaW5nKCknXHJcbiAgW2F0dHIuaWRdPVwiaW5wdXRJZCgpXCJcclxuICBbYXR0ci50YWJpbmRleF09XCJkaXNhYmxlZCgpID8gLTEgOiB0YWJpbmRleCgpXCJcclxuICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoKClcIlxyXG4gIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGgoKVwiXHJcbiAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcbiAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJsYWJlbElkKClcIlxyXG4gIChibHVyKT1cImhhbmRsZUJsdXJFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiaGFuZGxlSW5wdXRFdmVudCgpXCJcclxuLz5cclxuIl19
@@ -0,0 +1,25 @@
1
+ import { Directive, ElementRef, viewChild } from '@angular/core';
2
+ import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
3
+ import * as i0 from "@angular/core";
4
+ export class TextBoxDirective extends BuildInInputValueAccessor {
5
+ input = viewChild.required('input', { read: (ElementRef) });
6
+ blur() {
7
+ this.input().nativeElement.blur();
8
+ }
9
+ focus() {
10
+ this.input().nativeElement.focus();
11
+ }
12
+ handleBlurEvent() {
13
+ this.markAsTouched();
14
+ }
15
+ handleInputEvent() {
16
+ const input = this.input();
17
+ this.writeValue(input.nativeElement.value);
18
+ }
19
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
20
+ 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
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxDirective, decorators: [{
23
+ type: Directive
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3RleHRib3gvc3JjL3RleHRib3guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHdkUsTUFBTSxPQUFPLGdCQUFvQixTQUFRLHlCQUE0QjtJQUNuRCxLQUFLLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQSxVQUE0QixDQUFBLEVBQUUsQ0FBQyxDQUFDO0lBRXJGLElBQUk7UUFDVCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRVMsZUFBZTtRQUN2QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7dUdBbkJVLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLHlIQUNpQyxVQUFVOzsyRkFEM0QsZ0JBQWdCO2tCQUQ1QixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFRleHRCb3hEaXJlY3RpdmU8VD4gZXh0ZW5kcyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yPFQ+IHtcbiAgcHVibGljIHJlYWRvbmx5IGlucHV0ID0gdmlld0NoaWxkLnJlcXVpcmVkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICBwdWJsaWMgYmx1cigpIHtcbiAgICB0aGlzLmlucHV0KCkubmF0aXZlRWxlbWVudC5ibHVyKCk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXMoKSB7XG4gICAgdGhpcy5pbnB1dCgpLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVCbHVyRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlSW5wdXRFdmVudCgpOiB2b2lkIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXQoKTtcblxuICAgIHRoaXMud3JpdGVWYWx1ZShpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgfVxufVxuIl19
@@ -2,17 +2,17 @@ import { ChangeDetectionStrategy, Component, computed, effect, ElementRef, forwa
2
2
  import { Maskito, maskitoInitialCalibrationPlugin } from '@maskito/core';
3
3
  import { maskitoNumberOptionsGenerator, maskitoParseNumber, maskitoStringifyNumber } from '@maskito/kit';
4
4
  import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
5
+ import { TextBoxDirective } from '@latitude-ui/widgets/textbox';
5
6
  import { SpinnersComponent } from './spinners.component';
6
7
  import * as i0 from "@angular/core";
7
- export class TextBoxNumberComponent extends BuildInInputValueAccessor {
8
+ export class TextBoxNumberComponent extends TextBoxDirective {
8
9
  max = input(undefined, { transform: numberAttribute });
9
10
  min = input(undefined, { transform: numberAttribute });
10
11
  step = input(undefined, { transform: numberAttribute });
11
12
  decimals = input(2);
12
13
  decimalMode = input('not-zero');
13
14
  decimalSeparator = input(',');
14
- thousandSeparator = input(' ');
15
- placeholder = input();
15
+ thousandSeparator = input('');
16
16
  inputElementRef = viewChild.required('inputElementRef', { read: (ElementRef) });
17
17
  ariaValueMax = computed(() => this.max() ?? Number.MAX_SAFE_INTEGER);
18
18
  ariaValueMin = computed(() => this.min() ?? Number.MIN_SAFE_INTEGER);
@@ -88,6 +88,12 @@ export class TextBoxNumberComponent extends BuildInInputValueAccessor {
88
88
  }
89
89
  return valueAsNumber;
90
90
  }
91
+ handleFocusEvent() {
92
+ const value = maskitoParseNumber(this.valueAsString(), this.decimalSeparator());
93
+ if (Number.isNaN(value) && !this.readonly()) {
94
+ this.valueAsString.set('');
95
+ }
96
+ }
91
97
  handleBlurEvent() {
92
98
  this.markAsTouched();
93
99
  const valueAsString = this.valueSimplify(this.valueAsString());
@@ -95,12 +101,6 @@ export class TextBoxNumberComponent extends BuildInInputValueAccessor {
95
101
  this.valueAsString.update(() => this.valueStringify(this.value()));
96
102
  }
97
103
  }
98
- handleFocusEvent() {
99
- const value = maskitoParseNumber(this.valueAsString(), this.decimalSeparator());
100
- if (Number.isNaN(value) && !this.readonly()) {
101
- this.valueAsString.set('');
102
- }
103
- }
104
104
  handleInputEvent() {
105
105
  const input = this.inputElementRef();
106
106
  const valueAsString = this.valueSimplify(input.nativeElement.value);
@@ -117,7 +117,7 @@ export class TextBoxNumberComponent extends BuildInInputValueAccessor {
117
117
  this.writeValue(value);
118
118
  }
119
119
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxNumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
120
- 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 }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
120
+ 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
121
  {
122
122
  provide: BuildInInputValueAccessor,
123
123
  useExisting: forwardRef(() => TextBoxNumberComponent),
@@ -133,4 +133,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
133
133
  },
134
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]=\"ariaValueMax()\"\r\n [attr.aria-valuemin]=\"ariaValueMin()\"\r\n [attr.aria-valuenow]=\"ariaValueNow()\"\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)=\"handleInputEvent()\"\r\n/>\r\n\r\n@if (step() && !readonly()) {\r\n <lat-spinners />\r\n}\r\n" }]
135
135
  }], ctorParameters: () => [] });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV6RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFnQnpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx5QkFBaUM7SUFDM0QsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsSUFBSSxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDekUsUUFBUSxHQUFHLEtBQUssQ0FBUyxDQUFD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QUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDO3lCQUN0RDtxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIGNvbXB1dGVkLFxyXG4gIGVmZmVjdCxcclxuICBFbGVtZW50UmVmLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5wdXQsXHJcbiAgbnVtYmVyQXR0cmlidXRlLFxyXG4gIHZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE1hc2tpdG8sIG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4gfSBmcm9tICdAbWFza2l0by9jb3JlJztcclxuaW1wb3J0IHsgbWFza2l0b051bWJlck9wdGlvbnNHZW5lcmF0b3IsIG1hc2tpdG9QYXJzZU51bWJlciwgbWFza2l0b1N0cmluZ2lmeU51bWJlciB9IGZyb20gJ0BtYXNraXRvL2tpdCc7XHJcblxyXG5pbXBvcnQgeyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvaW5wdXQnO1xyXG5cclxuaW1wb3J0IHsgU3Bpbm5lcnNDb21wb25lbnQgfSBmcm9tICcuL3NwaW5uZXJzLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBpbXBvcnRzOiBbU3Bpbm5lcnNDb21wb25lbnRdLFxyXG4gIGV4cG9ydEFzOiAnbGF0VGV4dEJveCcsXHJcbiAgc2VsZWN0b3I6ICdsYXQtdGV4dGJveFt0eXBlPVwibnVtYmVyXCJdJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGJveC1udW1iZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRleHRCb3hOdW1iZXJDb21wb25lbnQpLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dEJveE51bWJlckNvbXBvbmVudCBleHRlbmRzIEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3I8bnVtYmVyPiB7XHJcbiAgcHVibGljIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xyXG4gIHB1YmxpYyByZWFkb25seSBtaW4gPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcclxuICBwdWJsaWMgcmVhZG9ubHkgc3RlcCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xyXG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFscyA9IGlucHV0PG51bWJlcj4oMik7XHJcbiAgcHVibGljIHJlYWRvbmx5IGRlY2ltYWxNb2RlID0gaW5wdXQ8J2Fsd2F5cycgfCAnbm90LXplcm8nIHwgJ3BhZCc+KCdub3QtemVybycpO1xyXG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFsU2VwYXJhdG9yID0gaW5wdXQ8JywnIHwgJy4nPignLCcpO1xyXG4gIHB1YmxpYyByZWFkb25seSB0aG91c2FuZFNlcGFyYXRvciA9IGlucHV0PHN0cmluZz4oJyAnKTtcclxuICBwdWJsaWMgcmVhZG9ubHkgcGxhY2Vob2xkZXIgPSBpbnB1dDxzdHJpbmc+KCk7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEVsZW1lbnRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQoJ2lucHV0RWxlbWVudFJlZicsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IGFyaWFWYWx1ZU1heCA9IGNvbXB1dGVkKCgpID0+IHRoaXMubWF4KCkgPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO1xyXG4gIHB1YmxpYyByZWFkb25seSBhcmlhVmFsdWVNaW4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLm1pbigpID8/IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKTtcclxuICBwdWJsaWMgcmVhZG9ubHkgYXJpYVZhbHVlTm93ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy52YWx1ZSgpIHx8IDApO1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgbWF4bGVuZ3RoID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgY29uc3QgeyBkZWNpbWFsU2VwYXJhdG9yLCB0aG91c2FuZFNlcGFyYXRvciB9ID0gdGhpcy5tYXNraXRvTnVtYmVyUGFyYW1zKCk7XHJcblxyXG4gICAgY29uc3QgZGVjaW1hbHMgPSB0aGlzLmRlY2ltYWxzKCk7XHJcblxyXG4gICAgY29uc3QgbWFudGlzc2EgPSBkZWNpbWFscyAmJiB0aGlzLnZhbHVlQXNTdHJpbmcoKS5pbmNsdWRlcyhkZWNpbWFsU2VwYXJhdG9yKTtcclxuICAgIGNvbnN0IHByZWNpc2lvbiA9IG1hbnRpc3NhID8gTWF0aC5taW4oZGVjaW1hbHMgKyAxLCAyMCkgOiAwO1xyXG4gICAgY29uc3QgdGhvdXNhbmQgPSB0aG91c2FuZFNlcGFyYXRvci5yZXBlYXQoNSkubGVuZ3RoO1xyXG5cclxuICAgIHJldHVybiAxOCArIHByZWNpc2lvbiArIHRob3VzYW5kO1xyXG4gIH0pO1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgbWFza2l0b051bWJlclBhcmFtcyA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgIGNvbnN0IGRlY2ltYWxNb2RlID0gdGhpcy5kZWNpbWFsTW9kZSgpO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIG1heDogdGhpcy5hcmlhVmFsdWVNYXgoKSxcclxuICAgICAgbWluOiB0aGlzLmFyaWFWYWx1ZU1pbigpLFxyXG4gICAgICBtaW51c1NpZ246ICctJyxcclxuICAgICAgcHJlY2lzaW9uOiB0aGlzLmRlY2ltYWxzKCksXHJcbiAgICAgIGRlY2ltYWxaZXJvUGFkZGluZzogZGVjaW1hbE1vZGUgPT09ICdhbHdheXMnLFxyXG4gICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmRlY2ltYWxTZXBhcmF0b3IoKSxcclxuICAgICAgdGhvdXNhbmRTZXBhcmF0b3I6IHRoaXMudGhvdXNhbmRTZXBhcmF0b3IoKSxcclxuICAgIH07XHJcbiAgfSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuXHJcbiAgICBlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xyXG4gICAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbGVtZW50UmVmKCk7XHJcbiAgICAgIGNvbnN0IGZvcm1hdHRlciA9IHRoaXMubWFza2l0b051bWJlclBhcmFtcygpO1xyXG5cclxuICAgICAgY29uc3QgeyBwbHVnaW5zLCAuLi5vcHRpb25zIH0gPSBtYXNraXRvTnVtYmVyT3B0aW9uc0dlbmVyYXRvcihmb3JtYXR0ZXIpO1xyXG5cclxuICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgTWFza2l0byhpbnB1dC5uYXRpdmVFbGVtZW50LCB7XHJcbiAgICAgICAgLi4ub3B0aW9ucyxcclxuICAgICAgICBwbHVnaW5zOiBbXHJcbiAgICAgICAgICAuLi5wbHVnaW5zLFxyXG4gICAgICAgICAgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbihcclxuICAgICAgICAgICAgbWFza2l0b051bWJlck9wdGlvbnNHZW5lcmF0b3Ioe1xyXG4gICAgICAgICAgICAgIC4uLmZvcm1hdHRlcixcclxuICAgICAgICAgICAgICBtaW46IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSLFxyXG4gICAgICAgICAgICAgIG1heDogTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIsXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApLFxyXG4gICAgICAgIF0sXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgb25DbGVhbnVwKCgpID0+IGluc3RhbmNlLmRlc3Ryb3koKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZVN0cmluZ2lmeSh2YWx1ZUFzU3RyaW5nOiB1bmtub3duKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5wYXJzZU51bWJlcih2YWx1ZUFzU3RyaW5nKTtcclxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1hc2tpdG9TdHJpbmdpZnlOdW1iZXIodmFsdWUsIHRoaXMubWFza2l0b051bWJlclBhcmFtcygpKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB2YWx1ZVNpbXBsaWZ5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZGVjaW1hbFNlcGFyYXRvciA9IG5ldyBSZWdFeHAodGhpcy5kZWNpbWFsU2VwYXJhdG9yKCksICdnaScpO1xyXG4gICAgY29uc3QgdGhvdXNhbmRTZXBhcmF0b3IgPSBuZXcgUmVnRXhwKHRoaXMudGhvdXNhbmRTZXBhcmF0b3IoKSwgJ2dpJyk7XHJcblxyXG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UodGhvdXNhbmRTZXBhcmF0b3IsICcnKS5yZXBsYWNlKGRlY2ltYWxTZXBhcmF0b3IsICcuJyk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdmFsdWVVbnNldHRsZWQodmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKFxyXG4gICAgICB2YWx1ZSA9PT0gJy0nIHx8XHJcbiAgICAgIHZhbHVlLm1hdGNoKC9eXFxzKihbLStdKT9cXGQrXFwuJC8pIHx8XHJcbiAgICAgIHZhbHVlLm1hdGNoKC9eXFxzKihbLStdKT9cXGQrXFwuWzAtOV0qMCQvKSB8fFxyXG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSkwKyQvKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBwYXJzZU51bWJlcih2YWx1ZTogdW5rbm93bik6IG51bWJlciB8IG51bGwge1xyXG4gICAgbGV0IHZhbHVlQXNOdW1iZXI6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XHJcbiAgICAgIHZhbHVlQXNOdW1iZXIgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgICB2YWx1ZUFzTnVtYmVyID0gTnVtYmVyLnBhcnNlRmxvYXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChOdW1iZXIuaXNOYU4odmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB2YWx1ZUFzTnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGhhbmRsZUJsdXJFdmVudCgpOiB2b2lkIHtcclxuICAgIHRoaXMubWFya0FzVG91Y2hlZCgpO1xyXG5cclxuICAgIGNvbnN0IHZhbHVlQXNTdHJpbmcgPSB0aGlzLnZhbHVlU2ltcGxpZnkodGhpcy52YWx1ZUFzU3RyaW5nKCkpO1xyXG5cclxuICAgIGlmICh0aGlzLnZhbHVlVW5zZXR0bGVkKHZhbHVlQXNTdHJpbmcpKSB7XHJcbiAgICAgIHRoaXMudmFsdWVBc1N0cmluZy51cGRhdGUoKCkgPT4gdGhpcy52YWx1ZVN0cmluZ2lmeSh0aGlzLnZhbHVlKCkpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBoYW5kbGVGb2N1c0V2ZW50KCk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWUgPSBtYXNraXRvUGFyc2VOdW1iZXIodGhpcy52YWx1ZUFzU3RyaW5nKCksIHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpKTtcclxuXHJcbiAgICBpZiAoTnVtYmVyLmlzTmFOKHZhbHVlKSAmJiAhdGhpcy5yZWFkb25seSgpKSB7XHJcbiAgICAgIHRoaXMudmFsdWVBc1N0cmluZy5zZXQoJycpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGhhbmRsZUlucHV0RXZlbnQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbGVtZW50UmVmKCk7XHJcblxyXG4gICAgY29uc3QgdmFsdWVBc1N0cmluZyA9IHRoaXMudmFsdWVTaW1wbGlmeShpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcclxuXHJcbiAgICBpZiAodGhpcy52YWx1ZVVuc2V0dGxlZCh2YWx1ZUFzU3RyaW5nKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy52YWx1ZUFzU3RyaW5nLnVwZGF0ZSgoKSA9PiBpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XHJcblxyXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZSA8IHRoaXMuYXJpYVZhbHVlTWluKCkgfHwgdmFsdWUgPiB0aGlzLmFyaWFWYWx1ZU1heCgpKSB7XHJcbiAgICAgIHJldHVybiB2b2lkIDA7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcclxuICB9XHJcbn1cclxuIiwiPGlucHV0XHJcbiAgI2lucHV0RWxlbWVudFJlZlxyXG4gIHR5cGU9XCJ0ZXh0XCJcclxuICByb2xlPVwic3BpbmJ1dHRvblwiXHJcbiAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXHJcbiAgW3ZhbHVlXT0ndmFsdWVBc1N0cmluZygpJ1xyXG4gIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXHJcbiAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQoKSA/IC0xIDogdGFiaW5kZXgoKVwiXHJcbiAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLnJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aCgpXCJcclxuICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW52YWxpZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS12YWx1ZW1heF09XCJhcmlhVmFsdWVNYXgoKVwiXHJcbiAgW2F0dHIuYXJpYS12YWx1ZW1pbl09XCJhcmlhVmFsdWVNaW4oKVwiXHJcbiAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJhcmlhVmFsdWVOb3coKVwiXHJcbiAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWQoKVwiXHJcbiAgKGJsdXIpPVwiaGFuZGxlQmx1ckV2ZW50KClcIlxyXG4gIChmb2N1cyk9XCJoYW5kbGVGb2N1c0V2ZW50KClcIlxyXG4gIChpbnB1dCk9XCJoYW5kbGVJbnB1dEV2ZW50KClcIlxyXG4vPlxyXG5cclxuQGlmIChzdGVwKCkgJiYgIXJlYWRvbmx5KCkpIHtcclxuICA8bGF0LXNwaW5uZXJzIC8+XHJcbn1cclxuIl19
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LW51bWJlci9zcmMvdGV4dGJveC1udW1iZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV6RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFnQnpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBd0I7SUFDbEQsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsR0FBRyxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDeEUsSUFBSSxHQUFHLEtBQUssQ0FBa0IsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDekUsUUFBUSxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUM1QixXQUFXLEdBQUcsS0FBSyxDQUFnQyxVQUFVLENBQUMsQ0FBQztJQUMvRCxnQkFBZ0IsR0FBRyxLQUFLLENBQVksR0FBRyxDQUFDLENBQUM7SUFDekMsaUJBQWlCLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRXRDLGVBQWUsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUEsVUFBNEIsQ0FBQSxFQUFFLENBQUMsQ0FBQztJQUVoRyxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRSxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRSxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVqRCxTQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN4QyxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUUzRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFakMsTUFBTSxRQUFRLEdBQUcsUUFBUSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVELE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFFcEQsT0FBTyxFQUFFLEdBQUcsU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUNuQyxDQUFDLENBQUMsQ0FBQztJQUVhLG1CQUFtQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDbEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXZDLE9BQU87WUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN4QixHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN4QixTQUFTLEVBQUUsR0FBRztZQUNkLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzFCLGtCQUFrQixFQUFFLFdBQVcsS0FBSyxRQUFRO1lBQzVDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7U0FDNUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUg7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUVSLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUU3QyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFekUsTUFBTSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtnQkFDaEQsR0FBRyxPQUFPO2dCQUNWLE9BQU8sRUFBRTtvQkFDUCxHQUFHLE9BQU87b0JBQ1YsK0JBQStCLENBQzdCLDZCQUE2QixDQUFDO3dCQUM1QixHQUFHLFNBQVM7d0JBQ1osR0FBRyxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7d0JBQzVCLEdBQUcsRUFBRSxNQUFNLENBQUMsZ0JBQWdCO3FCQUM3QixDQUFDLENBQ0g7aUJBQ0Y7YUFDRixDQUFDLENBQUM7WUFFSCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRWUsY0FBYyxDQUFDLGFBQXNCO1FBQ25ELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRVMsYUFBYSxDQUFDLEtBQWE7UUFDbkMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuRSxNQUFNLGlCQUFpQixHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVTLGNBQWMsQ0FBQyxLQUFhO1FBQ3BDLE9BQU8sQ0FBQyxDQUFDLENBQ1AsS0FBSyxLQUFLLEdBQUc7WUFDYixLQUFLLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDO1lBQ2hDLEtBQUssQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUM7WUFDdkMsS0FBSyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFFUyxXQUFXLENBQUMsS0FBYztRQUNsQyxJQUFJLGFBQWEsR0FBa0IsSUFBSSxDQUFDO1FBRXhDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDOUIsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUN4QixDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNyQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUNTLGdCQUFnQjtRQUN4QixNQUFNLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUVoRixJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVrQixlQUFlO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUVyQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRS9ELElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyRSxDQUFDO0lBQ0gsQ0FBQztJQUVrQixnQkFBZ0I7UUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXJDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVwRSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFOUMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFFRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQy9ELE9BQU8sS0FBSyxDQUFDLENBQUM7UUFDaEIsQ0FBQztRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzt1R0FsSlUsc0JBQXNCOzJGQUF0QixzQkFBc0IsZy9CQVB0QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7YUFDdEQ7U0FDRix5SEFXK0UsVUFBVSw4RkM1QzVGLGdoQ0E4QkEsNENEUlksaUJBQWlCOzsyRkFhaEIsc0JBQXNCO2tCQWRsQyxTQUFTOzhCQUNDLENBQUMsaUJBQWlCLENBQUMsWUFDbEIsWUFBWSxZQUNaLDRCQUE0QixpQkFFdkIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzt5QkFDdEQ7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBmb3J3YXJkUmVmLFxuICBpbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICB2aWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWFza2l0bywgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbiB9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IHsgbWFza2l0b051bWJlck9wdGlvbnNHZW5lcmF0b3IsIG1hc2tpdG9QYXJzZU51bWJlciwgbWFza2l0b1N0cmluZ2lmeU51bWJlciB9IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5cbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5pbXBvcnQgeyBUZXh0Qm94RGlyZWN0aXZlIH0gZnJvbSAnQGxhdGl0dWRlLXVpL3dpZGdldHMvdGV4dGJveCc7XG5cbmltcG9ydCB7IFNwaW5uZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9zcGlubmVycy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW1NwaW5uZXJzQ29tcG9uZW50XSxcbiAgZXhwb3J0QXM6ICdsYXRUZXh0Qm94JyxcbiAgc2VsZWN0b3I6ICdsYXQtdGV4dGJveFt0eXBlPVwibnVtYmVyXCJdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHRib3gtbnVtYmVyLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZXh0Qm94TnVtYmVyQ29tcG9uZW50KSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Qm94TnVtYmVyQ29tcG9uZW50IGV4dGVuZHMgVGV4dEJveERpcmVjdGl2ZTxudW1iZXI+IHtcbiAgcHVibGljIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgbWluID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBzdGVwID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFscyA9IGlucHV0PG51bWJlcj4oMik7XG4gIHB1YmxpYyByZWFkb25seSBkZWNpbWFsTW9kZSA9IGlucHV0PCdhbHdheXMnIHwgJ25vdC16ZXJvJyB8ICdwYWQnPignbm90LXplcm8nKTtcbiAgcHVibGljIHJlYWRvbmx5IGRlY2ltYWxTZXBhcmF0b3IgPSBpbnB1dDwnLCcgfCAnLic+KCcsJyk7XG4gIHB1YmxpYyByZWFkb25seSB0aG91c2FuZFNlcGFyYXRvciA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEVsZW1lbnRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQoJ2lucHV0RWxlbWVudFJlZicsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYXJpYVZhbHVlTWF4ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5tYXgoKSA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7XG4gIHB1YmxpYyByZWFkb25seSBhcmlhVmFsdWVNaW4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLm1pbigpID8/IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKTtcbiAgcHVibGljIHJlYWRvbmx5IGFyaWFWYWx1ZU5vdyA9IGNvbXB1dGVkKCgpID0+IHRoaXMudmFsdWUoKSB8fCAwKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbWF4bGVuZ3RoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHsgZGVjaW1hbFNlcGFyYXRvciwgdGhvdXNhbmRTZXBhcmF0b3IgfSA9IHRoaXMubWFza2l0b051bWJlclBhcmFtcygpO1xuXG4gICAgY29uc3QgZGVjaW1hbHMgPSB0aGlzLmRlY2ltYWxzKCk7XG5cbiAgICBjb25zdCBtYW50aXNzYSA9IGRlY2ltYWxzICYmIHRoaXMudmFsdWVBc1N0cmluZygpLmluY2x1ZGVzKGRlY2ltYWxTZXBhcmF0b3IpO1xuICAgIGNvbnN0IHByZWNpc2lvbiA9IG1hbnRpc3NhID8gTWF0aC5taW4oZGVjaW1hbHMgKyAxLCAyMCkgOiAwO1xuICAgIGNvbnN0IHRob3VzYW5kID0gdGhvdXNhbmRTZXBhcmF0b3IucmVwZWF0KDUpLmxlbmd0aDtcblxuICAgIHJldHVybiAxOCArIHByZWNpc2lvbiArIHRob3VzYW5kO1xuICB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbWFza2l0b051bWJlclBhcmFtcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBkZWNpbWFsTW9kZSA9IHRoaXMuZGVjaW1hbE1vZGUoKTtcblxuICAgIHJldHVybiB7XG4gICAgICBtYXg6IHRoaXMuYXJpYVZhbHVlTWF4KCksXG4gICAgICBtaW46IHRoaXMuYXJpYVZhbHVlTWluKCksXG4gICAgICBtaW51c1NpZ246ICctJyxcbiAgICAgIHByZWNpc2lvbjogdGhpcy5kZWNpbWFscygpLFxuICAgICAgZGVjaW1hbFplcm9QYWRkaW5nOiBkZWNpbWFsTW9kZSA9PT0gJ2Fsd2F5cycsXG4gICAgICBkZWNpbWFsU2VwYXJhdG9yOiB0aGlzLmRlY2ltYWxTZXBhcmF0b3IoKSxcbiAgICAgIHRob3VzYW5kU2VwYXJhdG9yOiB0aGlzLnRob3VzYW5kU2VwYXJhdG9yKCksXG4gICAgfTtcbiAgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG4gICAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbGVtZW50UmVmKCk7XG4gICAgICBjb25zdCBmb3JtYXR0ZXIgPSB0aGlzLm1hc2tpdG9OdW1iZXJQYXJhbXMoKTtcblxuICAgICAgY29uc3QgeyBwbHVnaW5zLCAuLi5vcHRpb25zIH0gPSBtYXNraXRvTnVtYmVyT3B0aW9uc0dlbmVyYXRvcihmb3JtYXR0ZXIpO1xuXG4gICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBNYXNraXRvKGlucHV0Lm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgIC4uLnBsdWdpbnMsXG4gICAgICAgICAgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbihcbiAgICAgICAgICAgIG1hc2tpdG9OdW1iZXJPcHRpb25zR2VuZXJhdG9yKHtcbiAgICAgICAgICAgICAgLi4uZm9ybWF0dGVyLFxuICAgICAgICAgICAgICBtaW46IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSLFxuICAgICAgICAgICAgICBtYXg6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuXG4gICAgICBvbkNsZWFudXAoKCkgPT4gaW5zdGFuY2UuZGVzdHJveSgpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZVN0cmluZ2lmeSh2YWx1ZUFzU3RyaW5nOiB1bmtub3duKTogc3RyaW5nIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hc2tpdG9TdHJpbmdpZnlOdW1iZXIodmFsdWUsIHRoaXMubWFza2l0b051bWJlclBhcmFtcygpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWx1ZVNpbXBsaWZ5KHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRlY2ltYWxTZXBhcmF0b3IgPSBuZXcgUmVnRXhwKHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpLCAnZ2knKTtcbiAgICBjb25zdCB0aG91c2FuZFNlcGFyYXRvciA9IG5ldyBSZWdFeHAodGhpcy50aG91c2FuZFNlcGFyYXRvcigpLCAnZ2knKTtcblxuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKHRob3VzYW5kU2VwYXJhdG9yLCAnJykucmVwbGFjZShkZWNpbWFsU2VwYXJhdG9yLCAnLicpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHZhbHVlVW5zZXR0bGVkKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoXG4gICAgICB2YWx1ZSA9PT0gJy0nIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSk/XFxkK1xcLiQvKSB8fFxuICAgICAgdmFsdWUubWF0Y2goL15cXHMqKFstK10pP1xcZCtcXC5bMC05XSowJC8pIHx8XG4gICAgICB2YWx1ZS5tYXRjaCgvXlxccyooWy0rXSkwKyQvKVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VOdW1iZXIodmFsdWU6IHVua25vd24pOiBudW1iZXIgfCBudWxsIHtcbiAgICBsZXQgdmFsdWVBc051bWJlcjogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgdmFsdWVBc051bWJlciA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdmFsdWVBc051bWJlciA9IE51bWJlci5wYXJzZUZsb2F0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoTnVtYmVyLmlzTmFOKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlQXNOdW1iZXI7XG4gIH1cbiAgcHJvdGVjdGVkIGhhbmRsZUZvY3VzRXZlbnQoKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSBtYXNraXRvUGFyc2VOdW1iZXIodGhpcy52YWx1ZUFzU3RyaW5nKCksIHRoaXMuZGVjaW1hbFNlcGFyYXRvcigpKTtcblxuICAgIGlmIChOdW1iZXIuaXNOYU4odmFsdWUpICYmICF0aGlzLnJlYWRvbmx5KCkpIHtcbiAgICAgIHRoaXMudmFsdWVBc1N0cmluZy5zZXQoJycpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBoYW5kbGVCbHVyRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG5cbiAgICBjb25zdCB2YWx1ZUFzU3RyaW5nID0gdGhpcy52YWx1ZVNpbXBsaWZ5KHRoaXMudmFsdWVBc1N0cmluZygpKTtcblxuICAgIGlmICh0aGlzLnZhbHVlVW5zZXR0bGVkKHZhbHVlQXNTdHJpbmcpKSB7XG4gICAgICB0aGlzLnZhbHVlQXNTdHJpbmcudXBkYXRlKCgpID0+IHRoaXMudmFsdWVTdHJpbmdpZnkodGhpcy52YWx1ZSgpKSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGhhbmRsZUlucHV0RXZlbnQoKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmlucHV0RWxlbWVudFJlZigpO1xuXG4gICAgY29uc3QgdmFsdWVBc1N0cmluZyA9IHRoaXMudmFsdWVTaW1wbGlmeShpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcblxuICAgIGlmICh0aGlzLnZhbHVlVW5zZXR0bGVkKHZhbHVlQXNTdHJpbmcpKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZUFzU3RyaW5nLnVwZGF0ZSgoKSA9PiBpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFyc2VOdW1iZXIodmFsdWVBc1N0cmluZyk7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IHRoaXMuYXJpYVZhbHVlTWluKCkgfHwgdmFsdWUgPiB0aGlzLmFyaWFWYWx1ZU1heCgpKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cblxuICAgIHRoaXMud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxpbnB1dFxyXG4gICNpbnB1dEVsZW1lbnRSZWZcclxuICB0eXBlPVwidGV4dFwiXHJcbiAgcm9sZT1cInNwaW5idXR0b25cIlxyXG4gIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgYXV0b2NhcGl0YWxpemU9XCJvZmZcIlxyXG4gIFt2YWx1ZV09J3ZhbHVlQXNTdHJpbmcoKSdcclxuICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gIFthdHRyLnRhYmluZGV4XT1cImRpc2FibGVkKCkgPyAtMSA6IHRhYmluZGV4KClcIlxyXG4gIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZWFkb25seV09XCJyZWFkb25seSgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGgoKVwiXHJcbiAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcbiAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVtYXhdPVwiYXJpYVZhbHVlTWF4KClcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVtaW5dPVwiYXJpYVZhbHVlTWluKClcIlxyXG4gIFthdHRyLmFyaWEtdmFsdWVub3ddPVwiYXJpYVZhbHVlTm93KClcIlxyXG4gIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJsYWJlbElkKClcIlxyXG4gIChibHVyKT1cImhhbmRsZUJsdXJFdmVudCgpXCJcclxuICAoZm9jdXMpPVwiaGFuZGxlRm9jdXNFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiaGFuZGxlSW5wdXRFdmVudCgpXCJcclxuLz5cclxuXHJcbkBpZiAoc3RlcCgpICYmICFyZWFkb25seSgpKSB7XHJcbiAgPGxhdC1zcGlubmVycyAvPlxyXG59XHJcbiJdfQ==
@@ -5,7 +5,6 @@ export class TextBoxSearchComponent extends BuildInInputValueAccessor {
5
5
  maxlength = input(undefined, { transform: numberAttribute });
6
6
  minlength = input(undefined, { transform: numberAttribute });
7
7
  debounceTime = input(300, { transform: numberAttribute });
8
- placeholder = input();
9
8
  inputElementRef = viewChild.required('inputElementRef', { read: (ElementRef) });
10
9
  timeoutRef = undefined;
11
10
  constructor() {
@@ -23,7 +22,7 @@ export class TextBoxSearchComponent extends BuildInInputValueAccessor {
23
22
  }, this.debounceTime());
24
23
  }
25
24
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TextBoxSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.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 }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
25
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.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: [
27
26
  {
28
27
  provide: BuildInInputValueAccessor,
29
28
  useExisting: forwardRef(() => TextBoxSearchComponent),
@@ -39,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
39
38
  },
40
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)=\"handleBlurEvent()\"\r\n (input)=\"handleInputEvent()\"\r\n/>\r\n" }]
41
40
  }], ctorParameters: () => [] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFldkUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHlCQUFpQztJQUMzRCxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUM5RSxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUM5RSxZQUFZLEdBQUcsS0FBSyxDQUFrQixHQUFHLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUMzRSxXQUFXLEdBQUcsS0FBSyxFQUFVLENBQUM7SUFFOUIsZUFBZSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQSxVQUE0QixDQUFBLEVBQUUsQ0FBQyxDQUFDO0lBRXRHLFVBQVUsR0FBdUIsU0FBUyxDQUFDO0lBRXJEO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFFUixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRVMsZUFBZTtRQUN2QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTlCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUMxQixDQUFDO3VHQTNCVSxzQkFBc0I7MkZBQXRCLHNCQUFzQixzbkJBUHRCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLHlCQUF5QjtnQkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQzthQUN0RDtTQUNGLHlIQVErRSxVQUFVLDhGQ2xDNUYsa3hCQXFCQTs7MkZET2Esc0JBQXNCO2tCQWJsQyxTQUFTOytCQUNFLFlBQVksWUFDWiw0QkFBNEIsaUJBRXZCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLENBQUM7eUJBQ3REO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgbnVtYmVyQXR0cmlidXRlLFxuICB2aWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvciB9IGZyb20gJ0BsYXRpdHVkZS11aS93aWRnZXRzL2lucHV0JztcblxuQENvbXBvbmVudCh7XG4gIGV4cG9ydEFzOiAnbGF0VGV4dEJveCcsXG4gIHNlbGVjdG9yOiAnbGF0LXRleHRib3hbdHlwZT1cInNlYXJjaFwiXScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0Ym94LXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGV4dEJveFNlYXJjaENvbXBvbmVudCksXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dEJveFNlYXJjaENvbXBvbmVudCBleHRlbmRzIEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3I8c3RyaW5nPiB7XG4gIHB1YmxpYyByZWFkb25seSBtYXhsZW5ndGggPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcbiAgcHVibGljIHJlYWRvbmx5IG1pbmxlbmd0aCA9IGlucHV0PG51bWJlciwgdW5rbm93bj4odW5kZWZpbmVkLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgZGVib3VuY2VUaW1lID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPigzMDAsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgaW5wdXRFbGVtZW50UmVmID0gdmlld0NoaWxkLnJlcXVpcmVkKCdpbnB1dEVsZW1lbnRSZWYnLCB7IHJlYWQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfSk7XG5cbiAgcHJvdGVjdGVkIHRpbWVvdXRSZWY6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgaW5qZWN0KERlc3Ryb3lSZWYpLm9uRGVzdHJveSgoKSA9PiBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVmKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQmx1ckV2ZW50KCk6IHZvaWQge1xuICAgIHRoaXMubWFya0FzVG91Y2hlZCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUlucHV0RXZlbnQoKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dFJlZik7XG5cbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbGVtZW50UmVmKCk7XG4gICAgdGhpcy50aW1lb3V0UmVmID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUoaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgfSwgdGhpcy5kZWJvdW5jZVRpbWUoKSk7XG4gIH1cblxufVxuIiwiPGlucHV0XHJcbiAgI2lucHV0RWxlbWVudFJlZlxyXG4gIHR5cGU9XCJ0ZXh0XCJcclxuICByb2xlPVwidGV4dGJveFwiXHJcbiAgW3ZhbHVlXT0ndmFsdWVBc1N0cmluZygpJ1xyXG4gIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXHJcbiAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQoKSA/IC0xIDogdGFiaW5kZXgoKVwiXHJcbiAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLnJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aCgpXCJcclxuICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoKClcIlxyXG4gIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxyXG4gIFthdHRyLmFyaWEtaW52YWxpZF09XCJpbnZhbGlkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLXJlYWRvbmx5XT1cInJlYWRvbmx5KCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwibGFiZWxJZCgpXCJcclxuICAoYmx1cik9XCJoYW5kbGVCbHVyRXZlbnQoKVwiXHJcbiAgKGlucHV0KT1cImhhbmRsZUlucHV0RXZlbnQoKVwiXHJcbi8+XHJcbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90ZXh0Ym94LXNlYXJjaC9zcmMvdGV4dGJveC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFldkUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHlCQUFpQztJQUMzRCxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUM5RSxTQUFTLEdBQUcsS0FBSyxDQUFrQixTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUM5RSxZQUFZLEdBQUcsS0FBSyxDQUFrQixHQUFHLEVBQUUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUUzRSxlQUFlLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFBLFVBQTRCLENBQUEsRUFBRSxDQUFDLENBQUM7SUFFdEcsVUFBVSxHQUF1QixTQUFTLENBQUM7SUFFckQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUVSLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFUyxlQUFlO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRVMsZ0JBQWdCO1FBQ3hCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsQ0FBQyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7dUdBMUJVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDRlQVB0QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSx5QkFBeUI7Z0JBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7YUFDdEQ7U0FDRix5SEFPK0UsVUFBVSw4RkNqQzVGLGt4QkFxQkE7OzJGRE9hLHNCQUFzQjtrQkFibEMsU0FBUzsrQkFDRSxZQUFZLFlBQ1osNEJBQTRCLGlCQUV2QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSx5QkFBeUI7NEJBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDO3lCQUN0RDtxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgdmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbGF0aXR1ZGUtdWkvd2lkZ2V0cy9pbnB1dCc7XG5cbkBDb21wb25lbnQoe1xuICBleHBvcnRBczogJ2xhdFRleHRCb3gnLFxuICBzZWxlY3RvcjogJ2xhdC10ZXh0Ym94W3R5cGU9XCJzZWFyY2hcIl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGJveC1zZWFyY2guY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvcixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRleHRCb3hTZWFyY2hDb21wb25lbnQpLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRleHRCb3hTZWFyY2hDb21wb25lbnQgZXh0ZW5kcyBCdWlsZEluSW5wdXRWYWx1ZUFjY2Vzc29yPHN0cmluZz4ge1xuICBwdWJsaWMgcmVhZG9ubHkgbWF4bGVuZ3RoID0gaW5wdXQ8bnVtYmVyLCB1bmtub3duPih1bmRlZmluZWQsIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBtaW5sZW5ndGggPSBpbnB1dDxudW1iZXIsIHVua25vd24+KHVuZGVmaW5lZCwgeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KTtcbiAgcHVibGljIHJlYWRvbmx5IGRlYm91bmNlVGltZSA9IGlucHV0PG51bWJlciwgdW5rbm93bj4oMzAwLCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pO1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEVsZW1lbnRSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQoJ2lucHV0RWxlbWVudFJlZicsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICBwcm90ZWN0ZWQgdGltZW91dFJlZjogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRSZWYpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVCbHVyRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlSW5wdXRFdmVudCgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVmKTtcblxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dEVsZW1lbnRSZWYoKTtcbiAgICB0aGlzLnRpbWVvdXRSZWYgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMud3JpdGVWYWx1ZShpbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICB9LCB0aGlzLmRlYm91bmNlVGltZSgpKTtcbiAgfVxuXG59XG4iLCI8aW5wdXRcclxuICAjaW5wdXRFbGVtZW50UmVmXHJcbiAgdHlwZT1cInRleHRcIlxyXG4gIHJvbGU9XCJ0ZXh0Ym94XCJcclxuICBbdmFsdWVdPSd2YWx1ZUFzU3RyaW5nKCknXHJcbiAgW2F0dHIuaWRdPVwiaW5wdXRJZCgpXCJcclxuICBbYXR0ci50YWJpbmRleF09XCJkaXNhYmxlZCgpID8gLTEgOiB0YWJpbmRleCgpXCJcclxuICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCgpIHx8IHVuZGVmaW5lZFwiXHJcbiAgW2F0dHIucmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgdW5kZWZpbmVkXCJcclxuICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoKClcIlxyXG4gIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGgoKVwiXHJcbiAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcbiAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImludmFsaWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVhZG9ubHldPVwicmVhZG9ubHkoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWQoKSB8fCB1bmRlZmluZWRcIlxyXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJsYWJlbElkKClcIlxyXG4gIChibHVyKT1cImhhbmRsZUJsdXJFdmVudCgpXCJcclxuICAoaW5wdXQpPVwiaGFuZGxlSW5wdXRFdmVudCgpXCJcclxuLz5cclxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0aXR1ZGUtdWktd2lkZ2V0cy10b29sYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90b29sYmFyL2xhdGl0dWRlLXVpLXdpZGdldHMtdG9vbGJhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './src/toolbar.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3dpZGdldHMvdG9vbGJhci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy90b29sYmFyLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,14 @@
1
+ import { Component, ViewEncapsulation } from '@angular/core';
2
+ import { ChangeDetectionStrategy } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class ToolBarComponent {
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: ToolBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.4", type: ToolBarComponent, isStandalone: true, selector: "lat-toolbar", host: { attributes: { "role": "presentation" } }, exportAs: ["latTooBar"], ngImport: i0, template: "", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: ToolBarComponent, decorators: [{
9
+ type: Component,
10
+ args: [{ exportAs: 'latTooBar', selector: 'lat-toolbar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
11
+ role: 'presentation',
12
+ }, template: "" }]
13
+ }] });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy93aWRnZXRzL3Rvb2xiYXIvc3JjL3Rvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvd2lkZ2V0cy90b29sYmFyL3NyYy90b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVl4RCxNQUFNLE9BQU8sZ0JBQWdCO3VHQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQixrSkNkN0IsRUFBQTs7MkZEY2EsZ0JBQWdCO2tCQVY1QixTQUFTOytCQUNFLFdBQVcsWUFDWCxhQUFhLGlCQUVSLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osSUFBSSxFQUFFLGNBQWM7cUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIGV4cG9ydEFzOiAnbGF0VG9vQmFyJyxcclxuICBzZWxlY3RvcjogJ2xhdC10b29sYmFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbGJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBob3N0OiB7XHJcbiAgICByb2xlOiAncHJlc2VudGF0aW9uJyxcclxuICB9LFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbEJhckNvbXBvbmVudCB7XHJcbn1cclxuIiwiIl19
@@ -1,9 +1,11 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class IconComponent {
3
- readonly resolve: (name: string) => string;
3
+ readonly resolve: (icon: string) => string;
4
+ readonly polyfill: import("@angular/core").Signal<boolean>;
4
5
  readonly url: import("@angular/core").InputSignal<string | undefined>;
5
6
  readonly name: import("@angular/core").InputSignal<string | undefined>;
6
7
  readonly icon: import("@angular/core").Signal<string>;
8
+ constructor();
7
9
  static ɵfac: i0.ɵɵFactoryDeclaration<IconComponent, never>;
8
10
  static ɵcmp: i0.ɵɵComponentDeclaration<IconComponent, "lat-icon", ["latIcon"], { "url": { "alias": "url"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
11
  }
@@ -0,0 +1,15 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Renderer2, Signal } from '@angular/core';
3
+ import { HttpClient } from '@angular/common/http';
4
+ import * as i0 from "@angular/core";
5
+ export declare class IconService {
6
+ readonly _http: HttpClient;
7
+ readonly _renderer: Renderer2;
8
+ readonly _icons: Map<string, SVGElement>;
9
+ readonly _tasks: Map<string, Observable<SVGElement>>;
10
+ get(url: string): Observable<SVGElement>;
11
+ toObservable(url: Signal<string | undefined>): void;
12
+ _normalize(text: string): SVGElement;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<IconService, never>;
14
+ static ɵprov: i0.ɵɵInjectableDeclaration<IconService>;
15
+ }
@@ -1,3 +1,4 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  export declare const ICONS_ASSETS: InjectionToken<string>;
3
- export declare const ICONS_RESOLVER: InjectionToken<(name: string) => string>;
3
+ export declare const ICONS_RESOLVER: InjectionToken<(icon: string) => string>;
4
+ export declare const ICONS_POLYFILL: InjectionToken<import("@angular/core").Signal<boolean>>;
@@ -10,6 +10,7 @@ export declare class BuildInInputValueAccessor<T> {
10
10
  readonly tabindex: import("@angular/core").InputSignalWithTransform<number, unknown>;
11
11
  readonly readonly: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
12
12
  readonly required: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
13
+ readonly placeholder: import("@angular/core").InputSignal<string | undefined>;
13
14
  readonly value: import("@angular/core").Signal<T | null>;
14
15
  readonly control: import("@angular/core").Signal<AbstractControl<any, any> | null>;
15
16
  readonly valueAsString: import("@angular/core").WritableSignal<string>;
@@ -57,5 +58,5 @@ export declare class BuildInInputValueAccessor<T> {
57
58
  /** @internal */
58
59
  private _markAsChanged;
59
60
  static ɵfac: i0.ɵɵFactoryDeclaration<BuildInInputValueAccessor<any>, never>;
60
- 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; }; }, {}, never, never, true, never>;
61
+ 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>;
61
62
  }
@@ -0,0 +1,3 @@
1
+ # @latitude-ui/widgets/button
2
+
3
+ Secondary entry point of `@latitude-ui/widgets`. It can be used by importing from `@latitude-ui/widgets/button`.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@latitude-ui/widgets/lookup" />
5
+ export * from './public-api';
@@ -0,0 +1,2 @@
1
+ export * from './src/lookup-outlet.directive';
2
+ export * from './src/lookup.component';
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LookupOutletDirective {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LookupOutletDirective, never>;
4
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LookupOutletDirective, "ng-template[latLookupOutlet], ng-template[lat-lookup-outlet], [latLookupOutlet], [lat-lookup-outlet]", never, {}, {}, never, never, true, never>;
5
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LookupComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LookupComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<LookupComponent, "lat-lookup", ["latLookup"], {}, {}, never, never, true, never>;
5
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@latitude-ui/widgets",
3
- "version": "0.0.11",
3
+ "version": "0.0.13",
4
4
  "sideEffects": false,
5
5
  "description": "UI Widgets",
6
6
  "keywords": [
@@ -28,14 +28,14 @@
28
28
  "types": "./button/latitude-ui-widgets-button.d.ts",
29
29
  "default": "./esm2022/button/latitude-ui-widgets-button.js"
30
30
  },
31
- "./checkbox": {
32
- "types": "./checkbox/latitude-ui-widgets-checkbox.d.ts",
33
- "default": "./esm2022/checkbox/latitude-ui-widgets-checkbox.js"
34
- },
35
31
  "./combobox": {
36
32
  "types": "./combobox/latitude-ui-widgets-combobox.d.ts",
37
33
  "default": "./esm2022/combobox/latitude-ui-widgets-combobox.js"
38
34
  },
35
+ "./checkbox": {
36
+ "types": "./checkbox/latitude-ui-widgets-checkbox.d.ts",
37
+ "default": "./esm2022/checkbox/latitude-ui-widgets-checkbox.js"
38
+ },
39
39
  "./core": {
40
40
  "types": "./core/latitude-ui-widgets-core.d.ts",
41
41
  "default": "./esm2022/core/latitude-ui-widgets-core.js"
@@ -52,6 +52,10 @@
52
52
  "types": "./listbox/latitude-ui-widgets-listbox.d.ts",
53
53
  "default": "./esm2022/listbox/latitude-ui-widgets-listbox.js"
54
54
  },
55
+ "./lookup": {
56
+ "types": "./lookup/latitude-ui-widgets-lookup.d.ts",
57
+ "default": "./esm2022/lookup/latitude-ui-widgets-lookup.js"
58
+ },
55
59
  "./select": {
56
60
  "types": "./select/latitude-ui-widgets-select.d.ts",
57
61
  "default": "./esm2022/select/latitude-ui-widgets-select.js"
@@ -75,6 +79,10 @@
75
79
  "./textbox-search": {
76
80
  "types": "./textbox-search/latitude-ui-widgets-textbox-search.d.ts",
77
81
  "default": "./esm2022/textbox-search/latitude-ui-widgets-textbox-search.js"
82
+ },
83
+ "./toolbar": {
84
+ "types": "./toolbar/latitude-ui-widgets-toolbar.d.ts",
85
+ "default": "./esm2022/toolbar/latitude-ui-widgets-toolbar.js"
78
86
  }
79
87
  },
80
88
  "peerDependencies": {
@@ -88,4 +96,4 @@
88
96
  "dependencies": {
89
97
  "tslib": "^2.3.0"
90
98
  }
91
- }
99
+ }
@@ -1,6 +1,6 @@
1
- export * from './src/select-option.directive';
2
- export * from './src/select.directive';
3
- export * from './src/select-option.component';
1
+ export * from './src/select/select.directive';
2
+ export * from './src/select-option/select-option.component';
3
+ export * from './src/select-option/select-option.directive';
4
4
  export * from './src/select-multiple.component';
5
5
  export * from './src/select-single.component';
6
6
  export * from './src/select.module';
@@ -0,0 +1,24 @@
1
+ import { Signal } from '@angular/core';
2
+ import { ConnectedOverlayPositionChange, ConnectedPosition } from '@angular/cdk/overlay';
3
+ import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
4
+ import { SelectOptionDirective } from '../select-option/select-option.directive';
5
+ import * as i0 from "@angular/core";
6
+ export declare abstract class SelectDirective<T, TValue> extends BuildInInputValueAccessor<TValue> {
7
+ readonly _children: Signal<readonly SelectOptionDirective<T>[]>;
8
+ readonly _indexes: Signal<Map<T, SelectOptionDirective<T>>>;
9
+ readonly _selected: Signal<SelectOptionDirective<T>[]>;
10
+ readonly _overlayWidth: import("@angular/core").WritableSignal<number>;
11
+ readonly _overlayState: import("@angular/core").WritableSignal<boolean>;
12
+ readonly _overlayExpanded: Signal<boolean>;
13
+ readonly _overlayPositions: import("@angular/core").WritableSignal<ConnectedPosition[]>;
14
+ readonly _overlayPositionSide: import("@angular/core").WritableSignal<"bottom" | "top" | "left" | "right">;
15
+ hide(): undefined;
16
+ open(): undefined;
17
+ toggle(): void;
18
+ _updateOverlayPositionSide({ connectionPair }: ConnectedOverlayPositionChange): void;
19
+ /** ABSTRACT SECTION */
20
+ abstract selected: Signal<T[]>;
21
+ abstract select(option: SelectOptionDirective<T>): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectDirective<any, any>, never>;
23
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SelectDirective<any, any>, never, never, {}, {}, ["_children"], never, true, never>;
24
+ }
@@ -0,0 +1,14 @@
1
+ import { TextBoxComponent } from '@latitude-ui/widgets/textbox';
2
+ import { SelectDirective } from '../select/select.directive';
3
+ import { SelectOptionDirective } from '../select-option/select-option.directive';
4
+ import * as i0 from "@angular/core";
5
+ export declare class SelectDropDownComponent<T> {
6
+ readonly dir: SelectDirective<any, any>;
7
+ readonly selection: import("@angular/core").OutputEmitterRef<SelectOptionDirective<T>>;
8
+ readonly textbox: import("@angular/core").Signal<TextBoxComponent>;
9
+ readonly filters: import("@angular/core").WritableSignal<string>;
10
+ readonly options: import("@angular/core").Signal<readonly SelectOptionDirective<any>[]>;
11
+ constructor();
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectDropDownComponent<any>, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectDropDownComponent<any>, "lat-select-dropdown", ["latSelectDropDown"], {}, { "selection": "selection"; }, never, never, true, never>;
14
+ }
@@ -1,10 +1,10 @@
1
- import { SelectOptionDirective } from './select-option.directive';
2
- import { SelectDirective } from './select.directive';
1
+ import { SelectDirective } from './select/select.directive';
2
+ import { SelectOptionDirective } from './select-option/select-option.directive';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "./select.directive";
5
- export declare class SelectMultipleComponent<T> {
6
- readonly dir: SelectDirective<T, false>;
7
- protected handleSelectOption(option: SelectOptionDirective<T>): void;
4
+ export declare class SelectMultipleComponent<T> extends SelectDirective<T, T[]> {
5
+ readonly maxlength: import("@angular/core").InputSignalWithTransform<number, unknown>;
6
+ selected: import("@angular/core").Signal<T[]>;
7
+ select(option: SelectOptionDirective<T>): void;
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectMultipleComponent<any>, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectMultipleComponent<any>, "lat-select[type=\"multiple\"]", ["latSelect"], {}, {}, never, never, true, [{ directive: typeof i1.SelectDirective; inputs: {}; outputs: {}; }]>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectMultipleComponent<any>, "lat-select[type=\"multiple\"]", ["latSelect"], { "maxlength": { "alias": "maxlength"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
10
10
  }
@@ -2,9 +2,9 @@ import * as i0 from "@angular/core";
2
2
  import * as i1 from "./select-option.directive";
3
3
  export declare class SelectOptionComponent<T> {
4
4
  readonly value: import("@angular/core").InputSignal<T>;
5
- readonly label: import("@angular/core").InputSignal<string | undefined>;
5
+ readonly label: import("@angular/core").InputSignal<string>;
6
6
  readonly hidden: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
7
7
  readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectOptionComponent<any>, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectOptionComponent<any>, "lat-select-option", ["latSelectOption"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.SelectOptionDirective; inputs: {}; outputs: {}; }]>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectOptionComponent<any>, "lat-select-option", ["latSelectOption"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.SelectOptionDirective; inputs: {}; outputs: {}; }]>;
10
10
  }
@@ -1,14 +1,14 @@
1
- import { SelectDirective } from './select.directive';
1
+ import { SelectDirective } from '../select/select.directive';
2
2
  import { SelectOptionComponent } from './select-option.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SelectOptionDirective<T> {
5
5
  readonly select: SelectDirective<any, any>;
6
6
  readonly option: SelectOptionComponent<T>;
7
7
  readonly value: import("@angular/core").Signal<T>;
8
- readonly label: import("@angular/core").Signal<string | undefined>;
8
+ readonly label: import("@angular/core").Signal<string>;
9
9
  readonly hidden: import("@angular/core").Signal<boolean>;
10
10
  readonly disabled: import("@angular/core").Signal<boolean>;
11
- readonly selected: import("@angular/core").Signal<any>;
11
+ readonly selected: import("@angular/core").Signal<boolean>;
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectOptionDirective<any>, never>;
13
13
  static ɵdir: i0.ɵɵDirectiveDeclaration<SelectOptionDirective<any>, never, never, {}, {}, never, never, true, never>;
14
14
  }
@@ -1,11 +1,10 @@
1
- import { SelectOptionDirective } from './select-option.directive';
2
- import { SelectDirective } from './select.directive';
1
+ import { SelectDirective } from './select/select.directive';
2
+ import { SelectOptionDirective } from './select-option/select-option.directive';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "./select.directive";
5
- export declare class SelectSingleComponent<T> {
6
- readonly dir: SelectDirective<T, true>;
4
+ export declare class SelectSingleComponent<T> extends SelectDirective<T, T> {
7
5
  readonly nullable: import("@angular/core").InputSignalWithTransform<unknown, boolean>;
8
- protected handleSelectOption(option: SelectOptionDirective<T>): void;
6
+ selected: import("@angular/core").Signal<T[]>;
7
+ select(option: SelectOptionDirective<T>): void;
9
8
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectSingleComponent<any>, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectSingleComponent<any>, "lat-select[type=\"single\"]", ["latSelect"], { "nullable": { "alias": "nullable"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.SelectDirective; inputs: {}; outputs: {}; }]>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectSingleComponent<any>, "lat-select[type=\"single\"]", ["latSelect"], { "nullable": { "alias": "nullable"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11
10
  }