@taiga-ui/kit 4.32.0 → 4.33.0-canary.a0e1504

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 (78) hide show
  1. package/components/data-list-wrapper/data-list-wrapper.component.d.ts +10 -6
  2. package/components/index.d.ts +2 -0
  3. package/components/select/index.d.ts +4 -0
  4. package/components/select/native-select/native-select.component.d.ts +21 -0
  5. package/components/select/select-option/select-option.component.d.ts +15 -0
  6. package/components/select/select.d.ts +3 -0
  7. package/components/select/select.directive.d.ts +13 -0
  8. package/components/stepper/stepper.component.d.ts +5 -4
  9. package/components/textarea/index.d.ts +2 -0
  10. package/components/textarea/textarea.component.d.ts +23 -0
  11. package/components/textarea/textarea.options.d.ts +10 -0
  12. package/directives/index.d.ts +1 -0
  13. package/directives/textarea-limit/index.d.ts +1 -0
  14. package/directives/textarea-limit/textarea-limit.directive.d.ts +28 -0
  15. package/esm2022/components/data-list-wrapper/data-list-group-wrapper.component.mjs +3 -3
  16. package/esm2022/components/data-list-wrapper/data-list-wrapper.component.mjs +27 -11
  17. package/esm2022/components/index.mjs +3 -1
  18. package/esm2022/components/input-month/native-month-picker/native-month-picker.component.mjs +3 -2
  19. package/esm2022/components/input-number/step/input-number-step.component.mjs +3 -2
  20. package/esm2022/components/input-password/input-password.component.mjs +3 -2
  21. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +1 -1
  22. package/esm2022/components/input-pin/input-pin.component.mjs +3 -2
  23. package/esm2022/components/line-clamp/line-clamp.component.mjs +5 -9
  24. package/esm2022/components/select/index.mjs +5 -0
  25. package/esm2022/components/select/native-select/native-select.component.mjs +53 -0
  26. package/esm2022/components/select/select-option/select-option.component.mjs +45 -0
  27. package/esm2022/components/select/select.directive.mjs +54 -0
  28. package/esm2022/components/select/select.mjs +4 -0
  29. package/esm2022/components/select/taiga-ui-kit-components-select.mjs +5 -0
  30. package/esm2022/components/stepper/stepper.component.mjs +7 -11
  31. package/esm2022/components/tabs/tabs-with-more.component.mjs +2 -2
  32. package/esm2022/components/textarea/index.mjs +3 -0
  33. package/esm2022/components/textarea/taiga-ui-kit-components-textarea.mjs +5 -0
  34. package/esm2022/components/textarea/textarea.component.mjs +57 -0
  35. package/esm2022/components/textarea/textarea.options.mjs +6 -0
  36. package/esm2022/directives/chevron/chevron.directive.mjs +2 -2
  37. package/esm2022/directives/index.mjs +2 -1
  38. package/esm2022/directives/textarea-limit/index.mjs +2 -0
  39. package/esm2022/directives/textarea-limit/taiga-ui-kit-directives-textarea-limit.mjs +5 -0
  40. package/esm2022/directives/textarea-limit/textarea-limit.directive.mjs +95 -0
  41. package/esm2022/tokens/calendar-date-stream.mjs +1 -1
  42. package/esm2022/tokens/date-inputs-value-transformers.mjs +1 -1
  43. package/esm2022/tokens/items-handlers.mjs +11 -2
  44. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +28 -12
  45. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-kit-components-input-month.mjs +2 -1
  47. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-kit-components-input-number.mjs +2 -1
  49. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-kit-components-input-password.mjs +2 -1
  51. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +1 -1
  53. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +2 -1
  55. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +4 -8
  57. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-kit-components-select.mjs +143 -0
  59. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -0
  60. package/fesm2022/taiga-ui-kit-components-stepper.mjs +6 -10
  61. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-kit-components-tabs.mjs +1 -1
  63. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-kit-components-textarea.mjs +68 -0
  65. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -0
  66. package/fesm2022/taiga-ui-kit-components.mjs +2 -0
  67. package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +2 -2
  69. package/fesm2022/taiga-ui-kit-directives-chevron.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-kit-directives-textarea-limit.mjs +99 -0
  71. package/fesm2022/taiga-ui-kit-directives-textarea-limit.mjs.map +1 -0
  72. package/fesm2022/taiga-ui-kit-directives.mjs +1 -0
  73. package/fesm2022/taiga-ui-kit-directives.mjs.map +1 -1
  74. package/fesm2022/taiga-ui-kit-tokens.mjs +10 -1
  75. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  76. package/package.json +32 -14
  77. package/tokens/date-inputs-value-transformers.d.ts +1 -1
  78. package/tokens/items-handlers.d.ts +14 -1
@@ -1,15 +1,19 @@
1
1
  import type { ElementRef, QueryList } from '@angular/core';
2
2
  import { EventEmitter } from '@angular/core';
3
- import { TuiOption } from '@taiga-ui/core/components/data-list';
3
+ import type { TuiBooleanHandler } from '@taiga-ui/cdk/types';
4
+ import type { TuiDataListAccessor } from '@taiga-ui/core/components/data-list';
5
+ import { TuiOption, TuiOptionWithValue } from '@taiga-ui/core/components/data-list';
4
6
  import type { TuiValueContentContext } from '@taiga-ui/core/types';
5
- import type { TuiItemsHandlers } from '@taiga-ui/kit/tokens';
6
7
  import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
7
8
  import * as i0 from "@angular/core";
8
- export declare class TuiDataListWrapperComponent<T, K = T> {
9
+ export declare class TuiDataListWrapperComponent<T, K = T> implements TuiDataListAccessor<T> {
9
10
  private readonly itemsHandlers;
10
- protected readonly optionsQuery: QueryList<TuiOption<T>>;
11
+ private readonly itemsHandlersLegacy;
12
+ protected readonly legacyOptionsQuery: QueryList<TuiOption<T>>;
13
+ protected readonly optionsQuery: QueryList<TuiOptionWithValue<T>>;
14
+ protected readonly newOptionMode: boolean;
11
15
  items: readonly K[] | null;
12
- disabledItemHandler: TuiItemsHandlers<T>['disabledItemHandler'];
16
+ disabledItemHandler: TuiBooleanHandler<T>;
13
17
  emptyContent: PolymorpheusContent;
14
18
  size: "m" | "l" | "s";
15
19
  readonly itemClick: EventEmitter<T>;
@@ -18,5 +22,5 @@ export declare class TuiDataListWrapperComponent<T, K = T> {
18
22
  getOptions(includeDisabled?: boolean): readonly T[];
19
23
  protected $cast(items: readonly K[]): readonly T[];
20
24
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDataListWrapperComponent<any, any>, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDataListWrapperComponent<any, any>, "tui-data-list-wrapper:not([labels])", never, { "items": { "alias": "items"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "emptyContent": { "alias": "emptyContent"; "required": false; }; "size": { "alias": "size"; "required": false; }; "itemContent": { "alias": "itemContent"; "required": false; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiDataListWrapperComponent<any, any>, "tui-data-list-wrapper:not([labels]), tui-data-list-wrapper:not([labels])[new]", never, { "items": { "alias": "items"; "required": false; }; "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "emptyContent": { "alias": "emptyContent"; "required": false; }; "size": { "alias": "size"; "required": false; }; "itemContent": { "alias": "itemContent"; "required": false; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
22
26
  }
@@ -46,10 +46,12 @@ export * from '@taiga-ui/kit/components/range';
46
46
  export * from '@taiga-ui/kit/components/rating';
47
47
  export * from '@taiga-ui/kit/components/routable-dialog';
48
48
  export * from '@taiga-ui/kit/components/segmented';
49
+ export * from '@taiga-ui/kit/components/select';
49
50
  export * from '@taiga-ui/kit/components/slider';
50
51
  export * from '@taiga-ui/kit/components/status';
51
52
  export * from '@taiga-ui/kit/components/stepper';
52
53
  export * from '@taiga-ui/kit/components/switch';
53
54
  export * from '@taiga-ui/kit/components/tabs';
55
+ export * from '@taiga-ui/kit/components/textarea';
54
56
  export * from '@taiga-ui/kit/components/tiles';
55
57
  export * from '@taiga-ui/kit/components/tree';
@@ -0,0 +1,4 @@
1
+ export * from './native-select/native-select.component';
2
+ export * from './select';
3
+ export * from './select.directive';
4
+ export * from './select-option/select-option.component';
@@ -0,0 +1,21 @@
1
+ import { TuiControl } from '@taiga-ui/cdk/classes';
2
+ import type { TuiTextfieldAccessor } from '@taiga-ui/core/components/textfield';
3
+ import type { TuiItemsHandlers } from '@taiga-ui/core/directives/items-handlers';
4
+ import { tuiIsFlat } from '@taiga-ui/kit/utils';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@taiga-ui/core/components/textfield";
7
+ export declare class TuiNativeSelect<T> extends TuiControl<T | null> implements TuiTextfieldAccessor<T> {
8
+ protected readonly isFlat: typeof tuiIsFlat;
9
+ protected readonly placeholder: import("@angular/core").WritableSignal<string>;
10
+ protected readonly itemsHandlers: TuiItemsHandlers<T>;
11
+ protected readonly stringified: import("@angular/core").Signal<string>;
12
+ protected readonly showPlaceholder: import("@angular/core").Signal<boolean | "">;
13
+ protected readonly isSelected: import("@angular/core").Signal<(x: T) => boolean>;
14
+ items: ReadonlyArray<readonly T[]> | readonly T[] | null;
15
+ labels: readonly string[];
16
+ set placeholderSetter(x: string);
17
+ setValue(value: T | null): void;
18
+ protected selectOption(index: number): void;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiNativeSelect<any>, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiNativeSelect<any>, "select[tuiSelect]", never, { "items": { "alias": "items"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "placeholderSetter": { "alias": "placeholder"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiWithTextfield; inputs: {}; outputs: {}; }]>;
21
+ }
@@ -0,0 +1,15 @@
1
+ import { TuiOptionWithValue } from '@taiga-ui/core/components/data-list';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@taiga-ui/core/components/scrollbar";
4
+ export declare class TuiSelectOption<T> {
5
+ private readonly host;
6
+ private readonly itemsHandlers;
7
+ private readonly control;
8
+ protected readonly option: TuiOptionWithValue<T> | null;
9
+ protected readonly icon: import("@angular/core").WritableSignal<string> | null;
10
+ protected readonly selected: import("@angular/core").Signal<boolean>;
11
+ protected readonly scrolled: import("@angular/core").Signal<boolean>;
12
+ protected onClick(): void;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiSelectOption<any>, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiSelectOption<any>, "ng-component", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiScrollIntoView; inputs: {}; outputs: {}; }]>;
15
+ }
@@ -0,0 +1,3 @@
1
+ import { TuiNativeSelect } from './native-select/native-select.component';
2
+ import { TuiSelectDirective } from './select.directive';
3
+ export declare const TuiSelect: readonly [typeof TuiSelectDirective, typeof TuiNativeSelect];
@@ -0,0 +1,13 @@
1
+ import { TuiControl } from '@taiga-ui/cdk/classes';
2
+ import type { TuiTextfieldAccessor } from '@taiga-ui/core/components/textfield';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@taiga-ui/core/components/textfield";
5
+ export declare class TuiSelectDirective<T> extends TuiControl<T | null> implements TuiTextfieldAccessor<T> {
6
+ private readonly open;
7
+ private readonly itemsHandlers;
8
+ protected readonly dropdownEnabled: import("@angular/core").Signal<boolean>;
9
+ protected readonly stringified: import("@angular/core").Signal<string>;
10
+ setValue(value: T): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiSelectDirective<any>, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSelectDirective<any>, "input[tuiSelect]", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiWithTextfield; inputs: {}; outputs: {}; }, { directive: typeof i1.TuiSelectLike; inputs: {}; outputs: {}; }]>;
13
+ }
@@ -1,19 +1,20 @@
1
+ import type { OnChanges } from '@angular/core';
1
2
  import { EventEmitter } from '@angular/core';
2
3
  import type { TuiOrientation } from '@taiga-ui/core/types';
3
4
  import type { Observable } from 'rxjs';
4
5
  import * as i0 from "@angular/core";
5
- export declare class TuiStepperComponent {
6
+ export declare class TuiStepperComponent implements OnChanges {
6
7
  private readonly steps;
7
8
  private readonly cdr;
8
9
  private readonly el;
9
10
  private readonly scrollService;
10
11
  private readonly speed;
11
12
  private readonly destroyRef;
12
- protected activeItemIndex: number;
13
13
  protected readonly $: import("rxjs").Subscription;
14
+ activeItemIndex: number;
14
15
  orientation: TuiOrientation;
15
16
  readonly activeItemIndexChange: EventEmitter<number>;
16
- set activeIndex(index: number);
17
+ ngOnChanges(): void;
17
18
  indexOf(step: HTMLElement): number;
18
19
  isActive(index: number): boolean;
19
20
  activate(index: number): void;
@@ -23,5 +24,5 @@ export declare class TuiStepperComponent {
23
24
  private moveFocus;
24
25
  private scrollIntoView;
25
26
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiStepperComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiStepperComponent, "tui-stepper, nav[tuiStepper]", never, { "orientation": { "alias": "orientation"; "required": false; }; "activeIndex": { "alias": "activeItemIndex"; "required": false; }; }, { "activeItemIndexChange": "activeItemIndexChange"; }, ["steps"], ["*"], true, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiStepperComponent, "tui-stepper, nav[tuiStepper]", never, { "activeItemIndex": { "alias": "activeItemIndex"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; }, { "activeItemIndexChange": "activeItemIndexChange"; }, ["steps"], ["*"], true, never>;
27
28
  }
@@ -0,0 +1,2 @@
1
+ export * from './textarea.component';
2
+ export * from './textarea.options';
@@ -0,0 +1,23 @@
1
+ import type { AfterViewInit } from '@angular/core';
2
+ import { ElementRef } from '@angular/core';
3
+ import type { TuiContext } from '@taiga-ui/cdk/types';
4
+ import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
5
+ import type { PolymorpheusContent } from '@taiga-ui/polymorpheus';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@taiga-ui/core/components/textfield";
8
+ export declare class TuiTextarea implements AfterViewInit {
9
+ private readonly template?;
10
+ private readonly options;
11
+ private readonly vcr;
12
+ protected readonly text?: ElementRef<HTMLElement>;
13
+ protected readonly el: HTMLTextAreaElement;
14
+ protected readonly textfield: TuiTextfieldComponent<any>;
15
+ protected readonly isMobile: boolean;
16
+ min: number;
17
+ max: number;
18
+ content: PolymorpheusContent<TuiContext<string>>;
19
+ ngAfterViewInit(): void;
20
+ protected onScroll(): void;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextarea, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTextarea, "textarea[tuiTextarea]", never, { "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "content": { "alias": "content"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiWithTextfield; inputs: {}; outputs: {}; }]>;
23
+ }
@@ -0,0 +1,10 @@
1
+ export declare const TUI_TEXTAREA_OPTIONS: import("@angular/core").InjectionToken<{
2
+ min: number;
3
+ max: number;
4
+ }>, tuiTextareaOptionsProvider: (item: Partial<{
5
+ min: number;
6
+ max: number;
7
+ }> | import("@angular/core").ProviderToken<Partial<{
8
+ min: number;
9
+ max: number;
10
+ }>>) => import("@angular/core").FactoryProvider;
@@ -14,6 +14,7 @@ export * from '@taiga-ui/kit/directives/password';
14
14
  export * from '@taiga-ui/kit/directives/present';
15
15
  export * from '@taiga-ui/kit/directives/sensitive';
16
16
  export * from '@taiga-ui/kit/directives/skeleton';
17
+ export * from '@taiga-ui/kit/directives/textarea-limit';
17
18
  export * from '@taiga-ui/kit/directives/tooltip';
18
19
  export * from '@taiga-ui/kit/directives/unfinished-validator';
19
20
  export * from '@taiga-ui/kit/directives/unmask-handler';
@@ -0,0 +1 @@
1
+ export * from './textarea-limit.directive';
@@ -0,0 +1,28 @@
1
+ import type { DoCheck } from '@angular/core';
2
+ import type { AbstractControl, ValidationErrors, Validator } from '@angular/forms';
3
+ import type { TuiContext } from '@taiga-ui/cdk/types';
4
+ import * as i0 from "@angular/core";
5
+ export declare class TuiTextareaLimitComponent {
6
+ protected readonly limit: import("@angular/core").WritableSignal<number>;
7
+ protected readonly context: TuiContext<string>;
8
+ protected readonly background = "linear-gradient(transparent 0.125rem, var(--tui-status-negative-pale) 0.125rem, var(--tui-status-negative-pale) calc(100% - 0.125rem), transparent calc(100% - 0.125rem))";
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextareaLimitComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTextareaLimitComponent, "ng-component", never, {}, {}, never, never, true, never>;
11
+ }
12
+ export declare class TuiTextareaCounterComponent implements DoCheck {
13
+ private readonly textfield;
14
+ protected readonly limit: import("@angular/core").WritableSignal<number>;
15
+ protected readonly length: import("@angular/core").WritableSignal<number>;
16
+ ngDoCheck(): void;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextareaCounterComponent, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiTextareaCounterComponent, "ng-component", never, {}, {}, never, never, true, never>;
19
+ }
20
+ export declare class TuiTextareaLimit implements Validator {
21
+ readonly size: import("@angular/core").WritableSignal<"m" | "l" | "s">;
22
+ readonly limit: import("@angular/core").WritableSignal<number>;
23
+ constructor();
24
+ set limitSetter(limit: number);
25
+ validate(control: AbstractControl): ValidationErrors | null;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextareaLimit, never>;
27
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTextareaLimit, "[tuiTextarea][limit]", never, { "limitSetter": { "alias": "limit"; "required": false; }; }, {}, never, never, true, never>;
28
+ }
@@ -13,13 +13,13 @@ class TuiDataListGroupWrapperComponent extends TuiDataListWrapperComponent {
13
13
  this.labels = [];
14
14
  }
15
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListGroupWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListGroupWrapperComponent, isStandalone: true, selector: "tui-data-list-wrapper[labels]", inputs: { labels: "labels" }, providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)], usesInheritance: true, ngImport: i0, template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\" />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i1.TuiOption, selector: "button[tuiOption]:not([new]), a[tuiOption]:not([new]), label[tuiOption]:not([new])", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.TuiOptGroup, selector: "tui-opt-group", inputs: ["label"] }, { kind: "directive", type: TuiElement, selector: "[tuiElement]", exportAs: ["elementRef"] }, { kind: "component", type: TuiLoader, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListGroupWrapperComponent, isStandalone: true, selector: "tui-data-list-wrapper[labels]", inputs: { labels: "labels" }, providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)], usesInheritance: true, ngImport: i0, template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <ng-container *ngIf=\"newOptionMode; else legacyOptionFallback\">\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n new\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-container>\n\n <!-- TODO(v5): delete fallback -->\n <ng-template #legacyOptionFallback>\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-template>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\" />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i1.TuiOption, selector: "button[tuiOption]:not([new]), a[tuiOption]:not([new]), label[tuiOption]:not([new])", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.TuiOptionNew, selector: "button[tuiOption][new], a[tuiOption][new], label[tuiOption][new]", inputs: ["disabled"] }, { kind: "directive", type: i1.TuiOptionWithValue, selector: "button[tuiOption][value][new], a[tuiOption][value][new], label[tuiOption][value][new]", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.TuiOptGroup, selector: "tui-opt-group", inputs: ["label"] }, { kind: "directive", type: TuiElement, selector: "[tuiElement]", exportAs: ["elementRef"] }, { kind: "component", type: TuiLoader, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
17
  }
18
18
  export { TuiDataListGroupWrapperComponent };
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListGroupWrapperComponent, decorators: [{
20
20
  type: Component,
21
- args: [{ standalone: true, selector: 'tui-data-list-wrapper[labels]', imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiDataList, TuiElement, TuiLoader], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)], template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\" />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"] }]
21
+ args: [{ standalone: true, selector: 'tui-data-list-wrapper[labels]', imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiDataList, TuiElement, TuiLoader], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListGroupWrapperComponent)], template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <tui-opt-group\n *ngFor=\"let group of items; let index = index\"\n [label]=\"labels[index]\"\n >\n <ng-container *ngIf=\"newOptionMode; else legacyOptionFallback\">\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n new\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-container>\n\n <!-- TODO(v5): delete fallback -->\n <ng-template #legacyOptionFallback>\n <button\n *ngFor=\"let item of group\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-template>\n </tui-opt-group>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader class=\"t-loader\" />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"] }]
22
22
  }], propDecorators: { labels: [{
23
23
  type: Input
24
24
  }] } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTFELE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7QUFFMUUsTUFTYSxnQ0FBb0MsU0FBUSwyQkFHeEQ7SUFaRDs7UUFjVyxXQUFNLEdBQXNCLEVBQUUsQ0FBQztLQUN6QzsrR0FOWSxnQ0FBZ0M7bUdBQWhDLGdDQUFnQywwR0FGOUIsQ0FBQyxxQkFBcUIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLGlEQ2hCeEUscTVCQTZCQSw4SURqQmMsT0FBTyxtSEFBRSxJQUFJLDZGQUFFLGtCQUFrQixzZkFBZSxVQUFVLG1GQUFFLFNBQVM7O1NBTXRFLGdDQUFnQzs0RkFBaEMsZ0NBQWdDO2tCQVQ1QyxTQUFTO2lDQUNNLElBQUksWUFDTiwrQkFBK0IsV0FDaEMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLG1CQUcvRCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMscUJBQXFCLGtDQUFrQyxDQUFDOzhCQU83RCxNQUFNO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nRm9yT2YsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2VsZW1lbnQnO1xuaW1wb3J0IHt0dWlBc0RhdGFMaXN0QWNjZXNzb3IsIFR1aURhdGFMaXN0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1R1aUxvYWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9sb2FkZXInO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aURhdGFMaXN0V3JhcHBlckNvbXBvbmVudH0gZnJvbSAnLi9kYXRhLWxpc3Qtd3JhcHBlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWRhdGEtbGlzdC13cmFwcGVyW2xhYmVsc10nLFxuICAgIGltcG9ydHM6IFtOZ0Zvck9mLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aURhdGFMaXN0LCBUdWlFbGVtZW50LCBUdWlMb2FkZXJdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kYXRhLWxpc3QtZ3JvdXAtd3JhcHBlci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRhLWxpc3Qtd3JhcHBlci5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbdHVpQXNEYXRhTGlzdEFjY2Vzc29yKFR1aURhdGFMaXN0R3JvdXBXcmFwcGVyQ29tcG9uZW50KV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURhdGFMaXN0R3JvdXBXcmFwcGVyQ29tcG9uZW50PFQ+IGV4dGVuZHMgVHVpRGF0YUxpc3RXcmFwcGVyQ29tcG9uZW50PFxuICAgIFQsXG4gICAgcmVhZG9ubHkgVFtdXG4+IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsYWJlbHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gW107XG59XG4iLCI8dHVpLWRhdGEtbGlzdFxuICAgICpuZ0lmPVwiaXRlbXM7IGVsc2UgbG9hZGluZ1wiXG4gICAgW2VtcHR5Q29udGVudF09XCJlbXB0eUNvbnRlbnRcIlxuICAgIFtzaXplXT1cInNpemVcIlxuPlxuICAgIDx0dWktb3B0LWdyb3VwXG4gICAgICAgICpuZ0Zvcj1cImxldCBncm91cCBvZiBpdGVtczsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICBbbGFiZWxdPVwibGFiZWxzW2luZGV4XVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cFwiXG4gICAgICAgICAgICAjZWxlbWVudFJlZj1cImVsZW1lbnRSZWZcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1kYXRhLWxpc3Qtd3JhcHBlcl9fb3B0aW9uXCJcbiAgICAgICAgICAgIHR1aUVsZW1lbnRcbiAgICAgICAgICAgIHR1aU9wdGlvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiaXRlbUNsaWNrLmVtaXQoaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtQ29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiBnZXRDb250ZXh0KGl0ZW0sIGVsZW1lbnRSZWYpXCI+XG4gICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvdHVpLW9wdC1ncm91cD5cbjwvdHVpLWRhdGEtbGlzdD5cbjxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICA8dHVpLWxvYWRlciBjbGFzcz1cInQtbG9hZGVyXCIgLz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RCxPQUFPLEVBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTFELE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7QUFFMUUsTUFTYSxnQ0FBb0MsU0FBUSwyQkFHeEQ7SUFaRDs7UUFjVyxXQUFNLEdBQXNCLEVBQUUsQ0FBQztLQUN6QzsrR0FOWSxnQ0FBZ0M7bUdBQWhDLGdDQUFnQywwR0FGOUIsQ0FBQyxxQkFBcUIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLGlEQ2hCeEUsNHVEQWtEQSw4SUR0Q2MsT0FBTyxtSEFBRSxJQUFJLDZGQUFFLGtCQUFrQiw4ekJBQWUsVUFBVSxtRkFBRSxTQUFTOztTQU10RSxnQ0FBZ0M7NEZBQWhDLGdDQUFnQztrQkFUNUMsU0FBUztpQ0FDTSxJQUFJLFlBQ04sK0JBQStCLFdBQ2hDLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxtQkFHL0QsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHFCQUFxQixrQ0FBa0MsQ0FBQzs4QkFPN0QsTUFBTTtzQkFEWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0Zvck9mLCBOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUVsZW1lbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9lbGVtZW50JztcbmltcG9ydCB7dHVpQXNEYXRhTGlzdEFjY2Vzc29yLCBUdWlEYXRhTGlzdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlMb2FkZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvbG9hZGVyJztcbmltcG9ydCB7UG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlEYXRhTGlzdFdyYXBwZXJDb21wb25lbnR9IGZyb20gJy4vZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1kYXRhLWxpc3Qtd3JhcHBlcltsYWJlbHNdJyxcbiAgICBpbXBvcnRzOiBbTmdGb3JPZiwgTmdJZiwgUG9seW1vcnBoZXVzT3V0bGV0LCBUdWlEYXRhTGlzdCwgVHVpRWxlbWVudCwgVHVpTG9hZGVyXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1saXN0LWdyb3VwLXdyYXBwZXIudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGF0YS1saXN0LXdyYXBwZXIuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW3R1aUFzRGF0YUxpc3RBY2Nlc3NvcihUdWlEYXRhTGlzdEdyb3VwV3JhcHBlckNvbXBvbmVudCldLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEYXRhTGlzdEdyb3VwV3JhcHBlckNvbXBvbmVudDxUPiBleHRlbmRzIFR1aURhdGFMaXN0V3JhcHBlckNvbXBvbmVudDxcbiAgICBULFxuICAgIHJlYWRvbmx5IFRbXVxuPiB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGFiZWxzOiByZWFkb25seSBzdHJpbmdbXSA9IFtdO1xufVxuIiwiPHR1aS1kYXRhLWxpc3RcbiAgICAqbmdJZj1cIml0ZW1zOyBlbHNlIGxvYWRpbmdcIlxuICAgIFtlbXB0eUNvbnRlbnRdPVwiZW1wdHlDb250ZW50XCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbj5cbiAgICA8dHVpLW9wdC1ncm91cFxuICAgICAgICAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgW2xhYmVsXT1cImxhYmVsc1tpbmRleF1cIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5ld09wdGlvbk1vZGU7IGVsc2UgbGVnYWN5T3B0aW9uRmFsbGJhY2tcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cFwiXG4gICAgICAgICAgICAgICAgI2VsZW1lbnRSZWY9XCJlbGVtZW50UmVmXCJcbiAgICAgICAgICAgICAgICBuZXdcbiAgICAgICAgICAgICAgICB0dWlFbGVtZW50XG4gICAgICAgICAgICAgICAgdHVpT3B0aW9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiaXRlbUNsaWNrLmVtaXQoaXRlbSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKnBvbHltb3JwaGV1c091dGxldD1cIml0ZW1Db250ZW50IGFzIHRleHQ7IGNvbnRleHQ6IGdldENvbnRleHQoaXRlbSwgZWxlbWVudFJlZilcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gVE9ETyh2NSk6IGRlbGV0ZSBmYWxsYmFjayAtLT5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNsZWdhY3lPcHRpb25GYWxsYmFjaz5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cFwiXG4gICAgICAgICAgICAgICAgI2VsZW1lbnRSZWY9XCJlbGVtZW50UmVmXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWRhdGEtbGlzdC13cmFwcGVyX19vcHRpb25cIlxuICAgICAgICAgICAgICAgIHR1aUVsZW1lbnRcbiAgICAgICAgICAgICAgICB0dWlPcHRpb25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKVwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJpdGVtQ2xpY2suZW1pdChpdGVtKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbUNvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogZ2V0Q29udGV4dChpdGVtLCBlbGVtZW50UmVmKVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyB0ZXh0IH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3R1aS1vcHQtZ3JvdXA+XG48L3R1aS1kYXRhLWxpc3Q+XG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gICAgPHR1aS1sb2FkZXIgY2xhc3M9XCJ0LWxvYWRlclwiIC8+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,47 +1,63 @@
1
1
  import { NgForOf, NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, inject, Input, Output, ViewChildren, } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, inject, Input, isSignal, Output, ViewChildren, } from '@angular/core';
3
3
  import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
4
4
  import { TuiElement } from '@taiga-ui/cdk/directives/element';
5
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
5
6
  import { tuiIsNativeFocused } from '@taiga-ui/cdk/utils/focus';
6
7
  import { tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
7
- import { tuiAsDataListAccessor, TuiDataList, tuiInjectDataListSize, TuiOption, } from '@taiga-ui/core/components/data-list';
8
+ import { tuiAsDataListAccessor, TuiDataList, tuiInjectDataListSize, TuiOption, TuiOptionWithValue, } from '@taiga-ui/core/components/data-list';
8
9
  import { TuiLoader } from '@taiga-ui/core/components/loader';
9
- import { TUI_ITEMS_HANDLERS } from '@taiga-ui/kit/tokens';
10
+ import { TUI_ITEMS_HANDLERS } from '@taiga-ui/core/directives/items-handlers';
11
+ import { TUI_ITEMS_HANDLERS as TUI_ITEMS_HANDLERS_LEGACY } from '@taiga-ui/kit/tokens';
10
12
  import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
11
13
  import * as i0 from "@angular/core";
12
14
  import * as i1 from "@taiga-ui/core/components/data-list";
13
15
  class TuiDataListWrapperComponent {
14
16
  constructor() {
15
17
  this.itemsHandlers = inject(TUI_ITEMS_HANDLERS);
18
+ // TODO(v5): delete
19
+ this.itemsHandlersLegacy = inject(TUI_ITEMS_HANDLERS_LEGACY);
20
+ this.legacyOptionsQuery = EMPTY_QUERY;
16
21
  this.optionsQuery = EMPTY_QUERY;
22
+ this.newOptionMode = tuiInjectElement().hasAttribute('new');
17
23
  this.items = [];
18
- this.disabledItemHandler = this.itemsHandlers.disabledItemHandler;
24
+ this.disabledItemHandler = this.newOptionMode
25
+ ? this.itemsHandlers?.disabledItemHandler()
26
+ : this.itemsHandlersLegacy.disabledItemHandler;
19
27
  this.size = tuiInjectDataListSize();
20
28
  this.itemClick = new EventEmitter();
21
- this.itemContent = ({ $implicit }) => this.itemsHandlers.stringify($implicit);
29
+ this.itemContent = ({ $implicit }) => this.newOptionMode
30
+ ? this.itemsHandlers.stringify()($implicit)
31
+ : this.itemsHandlersLegacy.stringify($implicit);
22
32
  }
23
33
  getContext($implicit, { nativeElement }) {
24
34
  return { $implicit, active: tuiIsNativeFocused(nativeElement) };
25
35
  }
26
36
  getOptions(includeDisabled = false) {
27
- return this.optionsQuery
37
+ return [
38
+ ...this.legacyOptionsQuery,
39
+ ...this.optionsQuery,
40
+ ]
28
41
  .filter(({ disabled }) => includeDisabled || !disabled)
29
- .map(({ value }) => value)
42
+ .map(({ value }) => (isSignal(value) ? value() : value))
30
43
  .filter(tuiIsPresent);
31
44
  }
32
45
  $cast(items) {
33
46
  return items;
34
47
  }
35
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListWrapperComponent, isStandalone: true, selector: "tui-data-list-wrapper:not([labels])", inputs: { items: "items", disabledItemHandler: "disabledItemHandler", emptyContent: "emptyContent", size: "size", itemContent: "itemContent" }, outputs: { itemClick: "itemClick" }, providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)], viewQueries: [{ propertyName: "optionsQuery", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }], ngImport: i0, template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i1.TuiOption, selector: "button[tuiOption]:not([new]), a[tuiOption]:not([new]), label[tuiOption]:not([new])", inputs: ["disabled", "value"] }, { kind: "directive", type: TuiElement, selector: "[tuiElement]", exportAs: ["elementRef"] }, { kind: "component", type: TuiLoader, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiDataListWrapperComponent, isStandalone: true, selector: "tui-data-list-wrapper:not([labels]), tui-data-list-wrapper:not([labels])[new]", inputs: { items: "items", disabledItemHandler: "disabledItemHandler", emptyContent: "emptyContent", size: "size", itemContent: "itemContent" }, outputs: { itemClick: "itemClick" }, providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)], viewQueries: [{ propertyName: "legacyOptionsQuery", predicate: i0.forwardRef(function () { return TuiOption; }), descendants: true }, { propertyName: "optionsQuery", predicate: i0.forwardRef(function () { return TuiOptionWithValue; }), descendants: true }], ngImport: i0, template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <ng-container *ngIf=\"newOptionMode; else legacyOptionFallback\">\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n new\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-container>\n\n <!-- TODO(v5): delete fallback -->\n <ng-template #legacyOptionFallback>\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n </ng-template>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"], dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["emptyContent", "size"] }, { kind: "component", type: i1.TuiOption, selector: "button[tuiOption]:not([new]), a[tuiOption]:not([new]), label[tuiOption]:not([new])", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.TuiOptionNew, selector: "button[tuiOption][new], a[tuiOption][new], label[tuiOption][new]", inputs: ["disabled"] }, { kind: "directive", type: i1.TuiOptionWithValue, selector: "button[tuiOption][value][new], a[tuiOption][value][new], label[tuiOption][value][new]", inputs: ["disabled", "value"] }, { kind: "directive", type: TuiElement, selector: "[tuiElement]", exportAs: ["elementRef"] }, { kind: "component", type: TuiLoader, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
37
50
  }
38
51
  export { TuiDataListWrapperComponent };
39
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDataListWrapperComponent, decorators: [{
40
53
  type: Component,
41
- args: [{ standalone: true, selector: 'tui-data-list-wrapper:not([labels])', imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiDataList, TuiElement, TuiLoader], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)], template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"] }]
42
- }], propDecorators: { optionsQuery: [{
54
+ args: [{ standalone: true, selector: 'tui-data-list-wrapper:not([labels]), tui-data-list-wrapper:not([labels])[new]', imports: [NgForOf, NgIf, PolymorpheusOutlet, TuiDataList, TuiElement, TuiLoader], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAsDataListAccessor(TuiDataListWrapperComponent)], template: "<tui-data-list\n *ngIf=\"items; else loading\"\n [emptyContent]=\"emptyContent\"\n [size]=\"size\"\n>\n <ng-container *ngIf=\"newOptionMode; else legacyOptionFallback\">\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n new\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </button>\n </ng-container>\n\n <!-- TODO(v5): delete fallback -->\n <ng-template #legacyOptionFallback>\n <button\n *ngFor=\"let item of $cast(items)\"\n #elementRef=\"elementRef\"\n automation-id=\"tui-data-list-wrapper__option\"\n tuiElement\n tuiOption\n type=\"button\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n (click)=\"itemClick.emit(item)\"\n >\n <span class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"itemContent as text; context: getContext(item, elementRef)\">\n {{ text }}\n </ng-container>\n </span>\n </button>\n </ng-template>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n automation-id=\"tui-data-list-wrapper__loader\"\n class=\"t-loader\"\n />\n</ng-template>\n", styles: [":host{display:block}.t-content{flex:1;min-inline-size:0}.t-loader{margin:.75rem 0}\n"] }]
55
+ }], propDecorators: { legacyOptionsQuery: [{
43
56
  type: ViewChildren,
44
57
  args: [forwardRef(() => TuiOption)]
58
+ }], optionsQuery: [{
59
+ type: ViewChildren,
60
+ args: [forwardRef(() => TuiOptionWithValue)]
45
61
  }], items: [{
46
62
  type: Input
47
63
  }], disabledItemHandler: [{
@@ -55,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
55
71
  }], itemContent: [{
56
72
  type: Input
57
73
  }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LXdyYXBwZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTlDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQy9ELE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsV0FBVyxFQUNYLHFCQUFxQixFQUNyQixTQUFTLEdBQ1osTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHM0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7OztBQUUxRCxNQVNhLDJCQUEyQjtJQVR4QztRQVVxQixrQkFBYSxHQUF3QixNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUc5RCxpQkFBWSxHQUE0QixXQUFXLENBQUM7UUFHaEUsVUFBSyxHQUF3QixFQUFFLENBQUM7UUFHaEMsd0JBQW1CLEdBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUM7UUFNcEMsU0FBSSxHQUFHLHFCQUFxQixFQUFFLENBQUM7UUFHdEIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7UUFHM0MsZ0JBQVcsR0FBbUQsQ0FBQyxFQUFDLFNBQVMsRUFBQyxFQUFFLEVBQUUsQ0FDakYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7S0FtQi9DO0lBakJVLFVBQVUsQ0FDYixTQUFZLEVBQ1osRUFBQyxhQUFhLEVBQTBCO1FBRXhDLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxFQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLFVBQVUsQ0FBQyxlQUFlLEdBQUcsS0FBSztRQUNyQyxPQUFPLElBQUksQ0FBQyxZQUFZO2FBQ25CLE1BQU0sQ0FBQyxDQUFDLEVBQUMsUUFBUSxFQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNwRCxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7YUFDdkIsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFUyxLQUFLLENBQUMsS0FBbUI7UUFDL0IsT0FBTyxLQUFnQyxDQUFDO0lBQzVDLENBQUM7K0dBMUNRLDJCQUEyQjttR0FBM0IsMkJBQTJCLHVRQUZ6QixDQUFDLHFCQUFxQixDQUFDLDJCQUEyQixDQUFDLENBQUMsOEZBS2hDLFNBQVMsb0RDekM1QywwMUJBNkJBLDhJREdjLE9BQU8sbUhBQUUsSUFBSSw2RkFBRSxrQkFBa0IsMlpBQWUsVUFBVSxtRkFBRSxTQUFTOztTQU10RSwyQkFBMkI7NEZBQTNCLDJCQUEyQjtrQkFUdkMsU0FBUztpQ0FDTSxJQUFJLFlBQ04scUNBQXFDLFdBQ3RDLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxtQkFHL0QsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLHFCQUFxQiw2QkFBNkIsQ0FBQzs4QkFNNUMsWUFBWTtzQkFEOUIsWUFBWTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUlsQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsbUJBQW1CO3NCQUR6QixLQUFLO2dCQUtDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlVLFNBQVM7c0JBRHhCLE1BQU07Z0JBSUEsV0FBVztzQkFEakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdGb3JPZiwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHtFbGVtZW50UmVmLCBRdWVyeUxpc3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvZWxlbWVudCc7XG5pbXBvcnQge3R1aUlzTmF0aXZlRm9jdXNlZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aUlzUHJlc2VudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7XG4gICAgdHVpQXNEYXRhTGlzdEFjY2Vzc29yLFxuICAgIFR1aURhdGFMaXN0LFxuICAgIHR1aUluamVjdERhdGFMaXN0U2l6ZSxcbiAgICBUdWlPcHRpb24sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7VHVpTG9hZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2xvYWRlcic7XG5pbXBvcnQgdHlwZSB7VHVpVmFsdWVDb250ZW50Q29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHR5cGUge1R1aUl0ZW1zSGFuZGxlcnN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7VFVJX0lURU1TX0hBTkRMRVJTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQgdHlwZSB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktZGF0YS1saXN0LXdyYXBwZXI6bm90KFtsYWJlbHNdKScsXG4gICAgaW1wb3J0czogW05nRm9yT2YsIE5nSWYsIFBvbHltb3JwaGV1c091dGxldCwgVHVpRGF0YUxpc3QsIFR1aUVsZW1lbnQsIFR1aUxvYWRlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbGlzdC13cmFwcGVyLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RhdGEtbGlzdC13cmFwcGVyLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc0RhdGFMaXN0QWNjZXNzb3IoVHVpRGF0YUxpc3RXcmFwcGVyQ29tcG9uZW50KV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURhdGFMaXN0V3JhcHBlckNvbXBvbmVudDxULCBLID0gVD4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXRlbXNIYW5kbGVyczogVHVpSXRlbXNIYW5kbGVyczxUPiA9IGluamVjdChUVUlfSVRFTVNfSEFORExFUlMpO1xuXG4gICAgQFZpZXdDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IFR1aU9wdGlvbikpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnNRdWVyeTogUXVlcnlMaXN0PFR1aU9wdGlvbjxUPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGl0ZW1zOiByZWFkb25seSBLW10gfCBudWxsID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlZEl0ZW1IYW5kbGVyOiBUdWlJdGVtc0hhbmRsZXJzPFQ+WydkaXNhYmxlZEl0ZW1IYW5kbGVyJ10gPVxuICAgICAgICB0aGlzLml0ZW1zSGFuZGxlcnMuZGlzYWJsZWRJdGVtSGFuZGxlcjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGVtcHR5Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNpemUgPSB0dWlJbmplY3REYXRhTGlzdFNpemUoKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlWYWx1ZUNvbnRlbnRDb250ZXh0PFQ+PiA9ICh7JGltcGxpY2l0fSkgPT5cbiAgICAgICAgdGhpcy5pdGVtc0hhbmRsZXJzLnN0cmluZ2lmeSgkaW1wbGljaXQpO1xuXG4gICAgcHVibGljIGdldENvbnRleHQoXG4gICAgICAgICRpbXBsaWNpdDogVCxcbiAgICAgICAge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICApOiBUdWlWYWx1ZUNvbnRlbnRDb250ZXh0PFQ+IHtcbiAgICAgICAgcmV0dXJuIHskaW1wbGljaXQsIGFjdGl2ZTogdHVpSXNOYXRpdmVGb2N1c2VkKG5hdGl2ZUVsZW1lbnQpfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3B0aW9ucyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNRdWVyeVxuICAgICAgICAgICAgLmZpbHRlcigoe2Rpc2FibGVkfSkgPT4gaW5jbHVkZURpc2FibGVkIHx8ICFkaXNhYmxlZClcbiAgICAgICAgICAgIC5tYXAoKHt2YWx1ZX0pID0+IHZhbHVlKVxuICAgICAgICAgICAgLmZpbHRlcih0dWlJc1ByZXNlbnQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCAkY2FzdChpdGVtczogcmVhZG9ubHkgS1tdKTogcmVhZG9ubHkgVFtdIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zIGFzIHVua25vd24gYXMgcmVhZG9ubHkgVFtdO1xuICAgIH1cbn1cbiIsIjx0dWktZGF0YS1saXN0XG4gICAgKm5nSWY9XCJpdGVtczsgZWxzZSBsb2FkaW5nXCJcbiAgICBbZW1wdHlDb250ZW50XT1cImVtcHR5Q29udGVudFwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4+XG4gICAgPGJ1dHRvblxuICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiAkY2FzdChpdGVtcylcIlxuICAgICAgICAjZWxlbWVudFJlZj1cImVsZW1lbnRSZWZcIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWRhdGEtbGlzdC13cmFwcGVyX19vcHRpb25cIlxuICAgICAgICB0dWlFbGVtZW50XG4gICAgICAgIHR1aU9wdGlvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICBbdmFsdWVdPVwiaXRlbVwiXG4gICAgICAgIChjbGljayk9XCJpdGVtQ2xpY2suZW1pdChpdGVtKVwiXG4gICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbUNvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogZ2V0Q29udGV4dChpdGVtLCBlbGVtZW50UmVmKVwiPlxuICAgICAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3NwYW4+XG4gICAgPC9idXR0b24+XG48L3R1aS1kYXRhLWxpc3Q+XG48bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gICAgPHR1aS1sb2FkZXJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1kYXRhLWxpc3Qtd3JhcHBlcl9fbG9hZGVyXCJcbiAgICAgICAgY2xhc3M9XCJ0LWxvYWRlclwiXG4gICAgLz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZGF0YS1saXN0LXdyYXBwZXIvZGF0YS1saXN0LXdyYXBwZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTlDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTVELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUUvRCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLFdBQVcsRUFDWCxxQkFBcUIsRUFDckIsU0FBUyxFQUNULGtCQUFrQixHQUNyQixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUUzRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUc1RSxPQUFPLEVBQUMsa0JBQWtCLElBQUkseUJBQXlCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTFELE1BVWEsMkJBQTJCO0lBVnhDO1FBV3FCLGtCQUFhLEdBQXdCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2pGLG1CQUFtQjtRQUNGLHdCQUFtQixHQUE4QixNQUFNLENBQ3BFLHlCQUF5QixDQUM1QixDQUFDO1FBR2lCLHVCQUFrQixHQUE0QixXQUFXLENBQUM7UUFHMUQsaUJBQVksR0FBcUMsV0FBVyxDQUFDO1FBRTdELGtCQUFhLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFHbkUsVUFBSyxHQUF3QixFQUFFLENBQUM7UUFHaEMsd0JBQW1CLEdBQXlCLElBQUksQ0FBQyxhQUFhO1lBQ2pFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLG1CQUFtQixFQUFFO1lBQzNDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLENBQUM7UUFNNUMsU0FBSSxHQUFHLHFCQUFxQixFQUFFLENBQUM7UUFHdEIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7UUFHM0MsZ0JBQVcsR0FBbUQsQ0FBQyxFQUFDLFNBQVMsRUFBQyxFQUFFLEVBQUUsQ0FDakYsSUFBSSxDQUFDLGFBQWE7WUFDZCxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxTQUFTLENBQUM7WUFDM0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7S0FzQjNEO0lBcEJVLFVBQVUsQ0FDYixTQUFZLEVBQ1osRUFBQyxhQUFhLEVBQTBCO1FBRXhDLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxFQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLFVBQVUsQ0FBQyxlQUFlLEdBQUcsS0FBSztRQUNyQyxPQUFPO1lBQ0gsR0FBRyxJQUFJLENBQUMsa0JBQWtCO1lBQzFCLEdBQUcsSUFBSSxDQUFDLFlBQVk7U0FDdkI7YUFDSSxNQUFNLENBQUMsQ0FBQyxFQUFDLFFBQVEsRUFBQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDcEQsR0FBRyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNyRCxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVTLEtBQUssQ0FBQyxLQUFtQjtRQUMvQixPQUFPLEtBQWdDLENBQUM7SUFDNUMsQ0FBQzsrR0F6RFEsMkJBQTJCO21HQUEzQiwyQkFBMkIsaVRBRnpCLENBQUMscUJBQXFCLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxvR0FTaEMsU0FBUyx5R0FHVCxrQkFBa0Isb0RDeERyRCxnbkRBa0RBLDhJRFZjLE9BQU8sbUhBQUUsSUFBSSw2RkFBRSxrQkFBa0IsbXVCQUFlLFVBQVUsbUZBQUUsU0FBUzs7U0FNdEUsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBVnZDLFNBQVM7aUNBQ00sSUFBSSxZQUVaLCtFQUErRSxXQUMxRSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsbUJBRy9ELHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxxQkFBcUIsNkJBQTZCLENBQUM7OEJBVTVDLGtCQUFrQjtzQkFEcEMsWUFBWTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDO2dCQUl0QixZQUFZO3NCQUQ5QixZQUFZO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFNM0MsS0FBSztzQkFEWCxLQUFLO2dCQUlDLG1CQUFtQjtzQkFEekIsS0FBSztnQkFNQyxZQUFZO3NCQURsQixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJVSxTQUFTO3NCQUR4QixNQUFNO2dCQUlBLFdBQVc7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nRm9yT2YsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgdHlwZSB7RWxlbWVudFJlZiwgUXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBpc1NpZ25hbCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpRWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2VsZW1lbnQnO1xuaW1wb3J0IHR5cGUge1R1aUJvb2xlYW5IYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlJc05hdGl2ZUZvY3VzZWR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZm9jdXMnO1xuaW1wb3J0IHt0dWlJc1ByZXNlbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQgdHlwZSB7VHVpRGF0YUxpc3RBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtcbiAgICB0dWlBc0RhdGFMaXN0QWNjZXNzb3IsXG4gICAgVHVpRGF0YUxpc3QsXG4gICAgdHVpSW5qZWN0RGF0YUxpc3RTaXplLFxuICAgIFR1aU9wdGlvbixcbiAgICBUdWlPcHRpb25XaXRoVmFsdWUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7VHVpTG9hZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2xvYWRlcic7XG5pbXBvcnQgdHlwZSB7VHVpSXRlbXNIYW5kbGVyc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9pdGVtcy1oYW5kbGVycyc7XG5pbXBvcnQge1RVSV9JVEVNU19IQU5ETEVSU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9pdGVtcy1oYW5kbGVycyc7XG5pbXBvcnQgdHlwZSB7VHVpVmFsdWVDb250ZW50Q29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHR5cGUge1R1aUl0ZW1zSGFuZGxlcnMgYXMgVHVpSXRlbXNIYW5kbGVyc0xlZ2FjeX0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtUVUlfSVRFTVNfSEFORExFUlMgYXMgVFVJX0lURU1TX0hBTkRMRVJTX0xFR0FDWX0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHR5cGUge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOlxuICAgICAgICAndHVpLWRhdGEtbGlzdC13cmFwcGVyOm5vdChbbGFiZWxzXSksIHR1aS1kYXRhLWxpc3Qtd3JhcHBlcjpub3QoW2xhYmVsc10pW25ld10nLCAvLyBUT0RPKHY1KTogcmVtb3ZlIFtuZXddXG4gICAgaW1wb3J0czogW05nRm9yT2YsIE5nSWYsIFBvbHltb3JwaGV1c091dGxldCwgVHVpRGF0YUxpc3QsIFR1aUVsZW1lbnQsIFR1aUxvYWRlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbGlzdC13cmFwcGVyLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RhdGEtbGlzdC13cmFwcGVyLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt0dWlBc0RhdGFMaXN0QWNjZXNzb3IoVHVpRGF0YUxpc3RXcmFwcGVyQ29tcG9uZW50KV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURhdGFMaXN0V3JhcHBlckNvbXBvbmVudDxULCBLID0gVD4gaW1wbGVtZW50cyBUdWlEYXRhTGlzdEFjY2Vzc29yPFQ+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1zSGFuZGxlcnM6IFR1aUl0ZW1zSGFuZGxlcnM8VD4gPSBpbmplY3QoVFVJX0lURU1TX0hBTkRMRVJTKTtcbiAgICAvLyBUT0RPKHY1KTogZGVsZXRlXG4gICAgcHJpdmF0ZSByZWFkb25seSBpdGVtc0hhbmRsZXJzTGVnYWN5OiBUdWlJdGVtc0hhbmRsZXJzTGVnYWN5PFQ+ID0gaW5qZWN0KFxuICAgICAgICBUVUlfSVRFTVNfSEFORExFUlNfTEVHQUNZLFxuICAgICk7XG5cbiAgICBAVmlld0NoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpT3B0aW9uKSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGVnYWN5T3B0aW9uc1F1ZXJ5OiBRdWVyeUxpc3Q8VHVpT3B0aW9uPFQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IFR1aU9wdGlvbldpdGhWYWx1ZSkpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnNRdWVyeTogUXVlcnlMaXN0PFR1aU9wdGlvbldpdGhWYWx1ZTxUPj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBuZXdPcHRpb25Nb2RlID0gdHVpSW5qZWN0RWxlbWVudCgpLmhhc0F0dHJpYnV0ZSgnbmV3Jyk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpdGVtczogcmVhZG9ubHkgS1tdIHwgbnVsbCA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VD4gPSB0aGlzLm5ld09wdGlvbk1vZGVcbiAgICAgICAgPyB0aGlzLml0ZW1zSGFuZGxlcnM/LmRpc2FibGVkSXRlbUhhbmRsZXIoKVxuICAgICAgICA6IHRoaXMuaXRlbXNIYW5kbGVyc0xlZ2FjeS5kaXNhYmxlZEl0ZW1IYW5kbGVyO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZW1wdHlDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2l6ZSA9IHR1aUluamVjdERhdGFMaXN0U2l6ZSgpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGl0ZW1Db250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50PFR1aVZhbHVlQ29udGVudENvbnRleHQ8VD4+ID0gKHskaW1wbGljaXR9KSA9PlxuICAgICAgICB0aGlzLm5ld09wdGlvbk1vZGVcbiAgICAgICAgICAgID8gdGhpcy5pdGVtc0hhbmRsZXJzLnN0cmluZ2lmeSgpKCRpbXBsaWNpdClcbiAgICAgICAgICAgIDogdGhpcy5pdGVtc0hhbmRsZXJzTGVnYWN5LnN0cmluZ2lmeSgkaW1wbGljaXQpO1xuXG4gICAgcHVibGljIGdldENvbnRleHQoXG4gICAgICAgICRpbXBsaWNpdDogVCxcbiAgICAgICAge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICApOiBUdWlWYWx1ZUNvbnRlbnRDb250ZXh0PFQ+IHtcbiAgICAgICAgcmV0dXJuIHskaW1wbGljaXQsIGFjdGl2ZTogdHVpSXNOYXRpdmVGb2N1c2VkKG5hdGl2ZUVsZW1lbnQpfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0T3B0aW9ucyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAuLi50aGlzLmxlZ2FjeU9wdGlvbnNRdWVyeSwgLy8gVE9ETyh2NSk6IGRlbGV0ZVxuICAgICAgICAgICAgLi4udGhpcy5vcHRpb25zUXVlcnksXG4gICAgICAgIF1cbiAgICAgICAgICAgIC5maWx0ZXIoKHtkaXNhYmxlZH0pID0+IGluY2x1ZGVEaXNhYmxlZCB8fCAhZGlzYWJsZWQpXG4gICAgICAgICAgICAubWFwKCh7dmFsdWV9KSA9PiAoaXNTaWduYWwodmFsdWUpID8gdmFsdWUoKSA6IHZhbHVlKSlcbiAgICAgICAgICAgIC5maWx0ZXIodHVpSXNQcmVzZW50KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgJGNhc3QoaXRlbXM6IHJlYWRvbmx5IEtbXSk6IHJlYWRvbmx5IFRbXSB7XG4gICAgICAgIHJldHVybiBpdGVtcyBhcyB1bmtub3duIGFzIHJlYWRvbmx5IFRbXTtcbiAgICB9XG59XG4iLCI8dHVpLWRhdGEtbGlzdFxuICAgICpuZ0lmPVwiaXRlbXM7IGVsc2UgbG9hZGluZ1wiXG4gICAgW2VtcHR5Q29udGVudF09XCJlbXB0eUNvbnRlbnRcIlxuICAgIFtzaXplXT1cInNpemVcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJuZXdPcHRpb25Nb2RlOyBlbHNlIGxlZ2FjeU9wdGlvbkZhbGxiYWNrXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mICRjYXN0KGl0ZW1zKVwiXG4gICAgICAgICAgICAjZWxlbWVudFJlZj1cImVsZW1lbnRSZWZcIlxuICAgICAgICAgICAgbmV3XG4gICAgICAgICAgICB0dWlFbGVtZW50XG4gICAgICAgICAgICB0dWlPcHRpb25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cIml0ZW1DbGljay5lbWl0KGl0ZW0pXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbUNvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogZ2V0Q29udGV4dChpdGVtLCBlbGVtZW50UmVmKVwiPlxuICAgICAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gVE9ETyh2NSk6IGRlbGV0ZSBmYWxsYmFjayAtLT5cbiAgICA8bmctdGVtcGxhdGUgI2xlZ2FjeU9wdGlvbkZhbGxiYWNrPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiAkY2FzdChpdGVtcylcIlxuICAgICAgICAgICAgI2VsZW1lbnRSZWY9XCJlbGVtZW50UmVmXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktZGF0YS1saXN0LXdyYXBwZXJfX29wdGlvblwiXG4gICAgICAgICAgICB0dWlFbGVtZW50XG4gICAgICAgICAgICB0dWlPcHRpb25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cIml0ZW1DbGljay5lbWl0KGl0ZW0pXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0LWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtQ29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiBnZXRDb250ZXh0KGl0ZW0sIGVsZW1lbnRSZWYpXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdHVpLWRhdGEtbGlzdD5cbjxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICA8dHVpLWxvYWRlclxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLWRhdGEtbGlzdC13cmFwcGVyX19sb2FkZXJcIlxuICAgICAgICBjbGFzcz1cInQtbG9hZGVyXCJcbiAgICAvPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -46,11 +46,13 @@ export * from '@taiga-ui/kit/components/range';
46
46
  export * from '@taiga-ui/kit/components/rating';
47
47
  export * from '@taiga-ui/kit/components/routable-dialog';
48
48
  export * from '@taiga-ui/kit/components/segmented';
49
+ export * from '@taiga-ui/kit/components/select';
49
50
  export * from '@taiga-ui/kit/components/slider';
50
51
  export * from '@taiga-ui/kit/components/status';
51
52
  export * from '@taiga-ui/kit/components/stepper';
52
53
  export * from '@taiga-ui/kit/components/switch';
53
54
  export * from '@taiga-ui/kit/components/tabs';
55
+ export * from '@taiga-ui/kit/components/textarea';
54
56
  export * from '@taiga-ui/kit/components/tiles';
55
57
  export * from '@taiga-ui/kit/components/tree';
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2FjY29yZGlvbic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYWN0aW9uLWJhcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYXZhdGFyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9iYWRnZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYmFkZ2Utbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9iYWRnZWQtY29udGVudCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYmxvY2snO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9idXR0b24tbG9hZGluZyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvY2FsZW5kYXItbW9udGgnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NhbGVuZGFyLXJhbmdlJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jYXJvdXNlbCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvY2hlY2tib3gnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NoaXAnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NvbW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NvbXBhc3MnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NvbmZpcm0nO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2RhdGEtbGlzdC13cmFwcGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9kcmF3ZXInO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2VsYXN0aWMtY29udGFpbmVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9maWxlcyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1pbmxpbmUnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LW1vbnRoJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1tb250aC1yYW5nZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtbnVtYmVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1wYXNzd29yZCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtcGluJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1zbGlkZXInO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2l0ZW1zLXdpdGgtbW9yZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvbGlrZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvbGluZS1jbGFtcCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvbWVzc2FnZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcGFnZXInO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3BhZ2luYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3BkZi12aWV3ZXInO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Bpbic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHJldmlldyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHJvZ3Jlc3MnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3B1bHNlJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wdXNoJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9yYWRpbyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcmFkaW8tbGlzdCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JhdGluZyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcm91dGFibGUtZGlhbG9nJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zZWdtZW50ZWQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3NsaWRlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc3RhdHVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zdGVwcGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zd2l0Y2gnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3RhYnMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3RpbGVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy90cmVlJztcbiJdfQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2FjdGlvbi1iYXInO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2F2YXRhcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYmFkZ2UnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2JhZGdlLW5vdGlmaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYmFkZ2VkLWNvbnRlbnQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2Jsb2NrJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvYnV0dG9uLWxvYWRpbmcnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NhbGVuZGFyLW1vbnRoJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jYWxlbmRhci1yYW5nZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvY2Fyb3VzZWwnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2NoZWNrYm94JztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jaGlwJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jb21tZW50JztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jb21wYXNzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9jb25maXJtJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9kYXRhLWxpc3Qtd3JhcHBlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZHJhd2VyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9lbGFzdGljLWNvbnRhaW5lcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvZmlsZXMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2ZpbHRlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtaW5saW5lJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1tb250aCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtbW9udGgtcmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtcGFzc3dvcmQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLWludGVybmF0aW9uYWwnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBpbic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtc2xpZGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pdGVtcy13aXRoLW1vcmUnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2xpa2UnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2xpbmUtY2xhbXAnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL21lc3NhZ2UnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3BhZ2VyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wZGYtdmlld2VyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9waW4nO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3ByZXZpZXcnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3Byb2dyZXNzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9wdWxzZSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcHVzaCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvcmFkaW8nO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JhZGlvLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JhbmdlJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9yYXRpbmcnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3JvdXRhYmxlLWRpYWxvZyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc2VnbWVudGVkJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zZWxlY3QnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3NsaWRlcic7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc3RhdHVzJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zdGVwcGVyJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9zd2l0Y2gnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3RhYnMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL3RleHRhcmVhJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9raXQvY29tcG9uZW50cy90aWxlcyc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvdHJlZSc7XG4iXX0=
@@ -36,12 +36,13 @@ class TuiNativeMonthPicker {
36
36
  this.control.onChange(new TuiMonth(year, month - 1));
37
37
  }
38
38
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNativeMonthPicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiNativeMonthPicker, isStandalone: true, selector: "input[tuiInputMonth][type=\"month\"]", inputs: { minSetter: ["min", "minSetter"], maxSetter: ["max", "maxSetter"] }, host: { properties: { "type": "\"text\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"host.nativePickerEnabled\">\n <input\n *tuiTextfieldContent\n type=\"month\"\n [max]=\"max()?.toJSON()\"\n [min]=\"min()?.toJSON()\"\n [value]=\"host.value()?.toJSON()\"\n (click.stop.zoneless)=\"(0)\"\n (input)=\"onInput($any($event.target).value)\"\n (mousedown.stop.zoneless)=\"(0)\"\n />\n</ng-container>\n", styles: ["tui-textfield input[tuiInputMonth]+.t-content input[type=month]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0;border:0}tui-textfield input[tuiInputMonth]+.t-content input[type=month]::-webkit-calendar-picker-indicator{position:absolute;top:0;left:0;inline-size:100%;block-size:100%}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiTextfieldContent, selector: "ng-template[tuiTextfieldContent]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiNativeMonthPicker, isStandalone: true, selector: "input[tuiInputMonth][type=\"month\"]", inputs: { minSetter: ["min", "minSetter"], maxSetter: ["max", "maxSetter"] }, host: { attributes: { "ngSkipHydration": "true" }, properties: { "type": "\"text\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"host.nativePickerEnabled\">\n <input\n *tuiTextfieldContent\n type=\"month\"\n [max]=\"max()?.toJSON()\"\n [min]=\"min()?.toJSON()\"\n [value]=\"host.value()?.toJSON()\"\n (click.stop.zoneless)=\"(0)\"\n (input)=\"onInput($any($event.target).value)\"\n (mousedown.stop.zoneless)=\"(0)\"\n />\n</ng-container>\n", styles: ["tui-textfield input[tuiInputMonth]+.t-content input[type=month]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0;border:0}tui-textfield input[tuiInputMonth]+.t-content input[type=month]::-webkit-calendar-picker-indicator{position:absolute;top:0;left:0;inline-size:100%;block-size:100%}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiTextfieldContent, selector: "ng-template[tuiTextfieldContent]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
40
40
  }
41
41
  export { TuiNativeMonthPicker };
42
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNativeMonthPicker, decorators: [{
43
43
  type: Component,
44
44
  args: [{ standalone: true, selector: 'input[tuiInputMonth][type="month"]', imports: [NgIf, TuiTextfieldContent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
45
+ ngSkipHydration: 'true',
45
46
  '[type]': '"text"',
46
47
  }, template: "<ng-container *ngIf=\"host.nativePickerEnabled\">\n <input\n *tuiTextfieldContent\n type=\"month\"\n [max]=\"max()?.toJSON()\"\n [min]=\"min()?.toJSON()\"\n [value]=\"host.value()?.toJSON()\"\n (click.stop.zoneless)=\"(0)\"\n (input)=\"onInput($any($event.target).value)\"\n (mousedown.stop.zoneless)=\"(0)\"\n />\n</ng-container>\n", styles: ["tui-textfield input[tuiInputMonth]+.t-content input[type=month]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;opacity:0;border:0}tui-textfield input[tuiInputMonth]+.t-content input[type=month]::-webkit-calendar-picker-indicator{position:absolute;top:0;left:0;inline-size:100%;block-size:100%}\n"] }]
47
48
  }], propDecorators: { minSetter: [{
@@ -51,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
51
52
  type: Input,
52
53
  args: ['max']
53
54
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLW1vbnRoLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1tb250aC9uYXRpdmUtbW9udGgtcGlja2VyL25hdGl2ZS1tb250aC1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtbW9udGgvbmF0aXZlLW1vbnRoLXBpY2tlci9uYXRpdmUtbW9udGgtcGlja2VyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzlFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDOztBQUVoRSxNQVlhLG9CQUFvQjtJQVpqQztRQWFxQixZQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTNCLFNBQUksR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN0QyxRQUFHLEdBQUcsTUFBTSxDQUFrQixJQUFJLENBQUMsQ0FBQztRQUNwQyxRQUFHLEdBQUcsTUFBTSxDQUFrQixJQUFJLENBQUMsQ0FBQztRQUNwQyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDMUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUV0QyxJQUFJLFFBQVEsRUFBRTtnQkFDVixRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQywwQ0FBMEM7Z0JBQ3pGLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLHlDQUF5QzthQUMxRjtRQUNMLENBQUMsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0tBdUIvQjtJQXJCRyw4QkFBOEI7SUFDOUIsSUFDVyxTQUFTLENBQUMsQ0FBa0I7UUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUNXLFNBQVMsQ0FBQyxDQUFrQjtRQUNuQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRVMsT0FBTyxDQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7UUFFRCxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7K0dBbkNRLG9CQUFvQjttR0FBcEIsb0JBQW9CLDROQzdCakMsNFlBWUEsa1hEUWMsSUFBSSw2RkFBRSxtQkFBbUI7O1NBUzFCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQVpoQyxTQUFTO2lDQUNNLElBQUksWUFDTixvQ0FBb0MsV0FDckMsQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsaUJBR3JCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsUUFBUSxFQUFFLFFBQVE7cUJBQ3JCOzhCQW1CVSxTQUFTO3NCQURuQixLQUFLO3VCQUFDLEtBQUs7Z0JBT0QsU0FBUztzQkFEbkIsS0FBSzt1QkFBQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZWZmZWN0LFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBzaWduYWwsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlDb250cm9sfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtUVUlfQUxMT1dfU0lHTkFMX1dSSVRFU30gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUVUlfRklSU1RfREFZLCBUVUlfTEFTVF9EQVksIFR1aU1vbnRofSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge1R1aVRleHRmaWVsZENvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcblxuaW1wb3J0IHtUdWlJbnB1dE1vbnRoRGlyZWN0aXZlfSBmcm9tICcuLi9pbnB1dC1tb250aC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRNb250aF1bdHlwZT1cIm1vbnRoXCJdJyxcbiAgICBpbXBvcnRzOiBbTmdJZiwgVHVpVGV4dGZpZWxkQ29udGVudF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL25hdGl2ZS1tb250aC1waWNrZXIudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbmF0aXZlLW1vbnRoLXBpY2tlci5zdHlsZS5sZXNzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbdHlwZV0nOiAnXCJ0ZXh0XCInLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aU5hdGl2ZU1vbnRoUGlja2VyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2wgPSBpbmplY3QoVHVpQ29udHJvbCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaG9zdCA9IGluamVjdChUdWlJbnB1dE1vbnRoRGlyZWN0aXZlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWluID0gc2lnbmFsPFR1aU1vbnRoIHwgbnVsbD4obnVsbCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1heCA9IHNpZ25hbDxUdWlNb250aCB8IG51bGw+KG51bGwpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjYWxlbmRhclN5bmMgPSBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCBjYWxlbmRhciA9IHRoaXMuaG9zdC5jYWxlbmRhcigpO1xuXG4gICAgICAgIGlmIChjYWxlbmRhcikge1xuICAgICAgICAgICAgY2FsZW5kYXIubWluLnNldCh0aGlzLm1pbigpID8/IFRVSV9GSVJTVF9EQVkpOyAvLyBUT0RPKHY1KTogcmVtb3ZlIFRVSV9GSVJTVF9EQVkgZmFsbGJhY2tcbiAgICAgICAgICAgIGNhbGVuZGFyLm1heC5zZXQodGhpcy5tYXgoKSA/PyBUVUlfTEFTVF9EQVkpOyAvLyBUT0RPKHY1KTogcmVtb3ZlIFRVSV9MQVNUX0RBWSBmYWxsYmFja1xuICAgICAgICB9XG4gICAgfSwgVFVJX0FMTE9XX1NJR05BTF9XUklURVMpO1xuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdtaW4nKVxuICAgIHB1YmxpYyBzZXQgbWluU2V0dGVyKHg6IFR1aU1vbnRoIHwgbnVsbCkge1xuICAgICAgICB0aGlzLm1pbi5zZXQoeCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdtYXgnKVxuICAgIHB1YmxpYyBzZXQgbWF4U2V0dGVyKHg6IFR1aU1vbnRoIHwgbnVsbCkge1xuICAgICAgICB0aGlzLm1heC5zZXQoeCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uSW5wdXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sLm9uQ2hhbmdlKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgW3llYXIgPSAwLCBtb250aCA9IDBdID0gdmFsdWUuc3BsaXQoJy0nKS5tYXAoTnVtYmVyKTtcblxuICAgICAgICB0aGlzLmNvbnRyb2wub25DaGFuZ2UobmV3IFR1aU1vbnRoKHllYXIsIG1vbnRoIC0gMSkpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJob3N0Lm5hdGl2ZVBpY2tlckVuYWJsZWRcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgKnR1aVRleHRmaWVsZENvbnRlbnRcbiAgICAgICAgdHlwZT1cIm1vbnRoXCJcbiAgICAgICAgW21heF09XCJtYXgoKT8udG9KU09OKClcIlxuICAgICAgICBbbWluXT1cIm1pbigpPy50b0pTT04oKVwiXG4gICAgICAgIFt2YWx1ZV09XCJob3N0LnZhbHVlKCk/LnRvSlNPTigpXCJcbiAgICAgICAgKGNsaWNrLnN0b3Auem9uZWxlc3MpPVwiKDApXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGFueSgkZXZlbnQudGFyZ2V0KS52YWx1ZSlcIlxuICAgICAgICAobW91c2Vkb3duLnN0b3Auem9uZWxlc3MpPVwiKDApXCJcbiAgICAvPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLW1vbnRoLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1tb250aC9uYXRpdmUtbW9udGgtcGlja2VyL25hdGl2ZS1tb250aC1waWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtbW9udGgvbmF0aXZlLW1vbnRoLXBpY2tlci9uYXRpdmUtbW9udGgtcGlja2VyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzlFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDOztBQUVoRSxNQWFhLG9CQUFvQjtJQWJqQztRQWNxQixZQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTNCLFNBQUksR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN0QyxRQUFHLEdBQUcsTUFBTSxDQUFrQixJQUFJLENBQUMsQ0FBQztRQUNwQyxRQUFHLEdBQUcsTUFBTSxDQUFrQixJQUFJLENBQUMsQ0FBQztRQUNwQyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDMUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUV0QyxJQUFJLFFBQVEsRUFBRTtnQkFDVixRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQywwQ0FBMEM7Z0JBQ3pGLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLHlDQUF5QzthQUMxRjtRQUNMLENBQUMsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0tBdUIvQjtJQXJCRyw4QkFBOEI7SUFDOUIsSUFDVyxTQUFTLENBQUMsQ0FBa0I7UUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUNXLFNBQVMsQ0FBQyxDQUFrQjtRQUNuQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRVMsT0FBTyxDQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7UUFFRCxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7K0dBbkNRLG9CQUFvQjttR0FBcEIsb0JBQW9CLHVRQzlCakMsNFlBWUEsa1hEUWMsSUFBSSw2RkFBRSxtQkFBbUI7O1NBVTFCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQWJoQyxTQUFTO2lDQUNNLElBQUksWUFDTixvQ0FBb0MsV0FDckMsQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsaUJBR3JCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsZUFBZSxFQUFFLE1BQU07d0JBQ3ZCLFFBQVEsRUFBRSxRQUFRO3FCQUNyQjs4QkFtQlUsU0FBUztzQkFEbkIsS0FBSzt1QkFBQyxLQUFLO2dCQU9ELFNBQVM7c0JBRG5CLEtBQUs7dUJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGVmZmVjdCxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgc2lnbmFsLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpQ29udHJvbH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7VFVJX0FMTE9XX1NJR05BTF9XUklURVN9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VFVJX0ZJUlNUX0RBWSwgVFVJX0xBU1RfREFZLCBUdWlNb250aH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlUZXh0ZmllbGRDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3RleHRmaWVsZCc7XG5cbmltcG9ydCB7VHVpSW5wdXRNb250aERpcmVjdGl2ZX0gZnJvbSAnLi4vaW5wdXQtbW9udGguZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2lucHV0W3R1aUlucHV0TW9udGhdW3R5cGU9XCJtb250aFwiXScsXG4gICAgaW1wb3J0czogW05nSWYsIFR1aVRleHRmaWVsZENvbnRlbnRdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9uYXRpdmUtbW9udGgtcGlja2VyLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL25hdGl2ZS1tb250aC1waWNrZXIuc3R5bGUubGVzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBuZ1NraXBIeWRyYXRpb246ICd0cnVlJyxcbiAgICAgICAgJ1t0eXBlXSc6ICdcInRleHRcIicsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTmF0aXZlTW9udGhQaWNrZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbCA9IGluamVjdChUdWlDb250cm9sKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBob3N0ID0gaW5qZWN0KFR1aUlucHV0TW9udGhEaXJlY3RpdmUpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtaW4gPSBzaWduYWw8VHVpTW9udGggfCBudWxsPihudWxsKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWF4ID0gc2lnbmFsPFR1aU1vbnRoIHwgbnVsbD4obnVsbCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhbGVuZGFyU3luYyA9IGVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhbGVuZGFyID0gdGhpcy5ob3N0LmNhbGVuZGFyKCk7XG5cbiAgICAgICAgaWYgKGNhbGVuZGFyKSB7XG4gICAgICAgICAgICBjYWxlbmRhci5taW4uc2V0KHRoaXMubWluKCkgPz8gVFVJX0ZJUlNUX0RBWSk7IC8vIFRPRE8odjUpOiByZW1vdmUgVFVJX0ZJUlNUX0RBWSBmYWxsYmFja1xuICAgICAgICAgICAgY2FsZW5kYXIubWF4LnNldCh0aGlzLm1heCgpID8/IFRVSV9MQVNUX0RBWSk7IC8vIFRPRE8odjUpOiByZW1vdmUgVFVJX0xBU1RfREFZIGZhbGxiYWNrXG4gICAgICAgIH1cbiAgICB9LCBUVUlfQUxMT1dfU0lHTkFMX1dSSVRFUyk7XG5cbiAgICAvLyBUT0RPKHY1KTogdXNlIHNpZ25hbCBpbnB1dHNcbiAgICBASW5wdXQoJ21pbicpXG4gICAgcHVibGljIHNldCBtaW5TZXR0ZXIoeDogVHVpTW9udGggfCBudWxsKSB7XG4gICAgICAgIHRoaXMubWluLnNldCh4KTtcbiAgICB9XG5cbiAgICAvLyBUT0RPKHY1KTogdXNlIHNpZ25hbCBpbnB1dHNcbiAgICBASW5wdXQoJ21heCcpXG4gICAgcHVibGljIHNldCBtYXhTZXR0ZXIoeDogVHVpTW9udGggfCBudWxsKSB7XG4gICAgICAgIHRoaXMubWF4LnNldCh4KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25JbnB1dCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2wub25DaGFuZ2UobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbeWVhciA9IDAsIG1vbnRoID0gMF0gPSB2YWx1ZS5zcGxpdCgnLScpLm1hcChOdW1iZXIpO1xuXG4gICAgICAgIHRoaXMuY29udHJvbC5vbkNoYW5nZShuZXcgVHVpTW9udGgoeWVhciwgbW9udGggLSAxKSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhvc3QubmF0aXZlUGlja2VyRW5hYmxlZFwiPlxuICAgIDxpbnB1dFxuICAgICAgICAqdHVpVGV4dGZpZWxkQ29udGVudFxuICAgICAgICB0eXBlPVwibW9udGhcIlxuICAgICAgICBbbWF4XT1cIm1heCgpPy50b0pTT04oKVwiXG4gICAgICAgIFttaW5dPVwibWluKCk/LnRvSlNPTigpXCJcbiAgICAgICAgW3ZhbHVlXT1cImhvc3QudmFsdWUoKT8udG9KU09OKClcIlxuICAgICAgICAoY2xpY2suc3RvcC56b25lbGVzcyk9XCIoMClcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkYW55KCRldmVudC50YXJnZXQpLnZhbHVlKVwiXG4gICAgICAgIChtb3VzZWRvd24uc3RvcC56b25lbGVzcyk9XCIoMClcIlxuICAgIC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==