@taiga-ui/core 4.74.0 → 4.75.0

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 (31) hide show
  1. package/components/data-list/data-list.component.d.ts +1 -0
  2. package/components/textfield/textfield.component.d.ts +1 -0
  3. package/components/textfield/textfield.directive.d.ts +7 -4
  4. package/directives/dropdown/dropdown-a11y.directive.d.ts +11 -0
  5. package/directives/dropdown/dropdown-context.directive.d.ts +2 -1
  6. package/directives/dropdown/dropdown-open.directive.d.ts +4 -3
  7. package/directives/dropdown/dropdown.d.ts +2 -1
  8. package/directives/dropdown/dropdown.directive.d.ts +3 -2
  9. package/directives/dropdown/dropdown.providers.d.ts +2 -1
  10. package/directives/dropdown/index.d.ts +1 -0
  11. package/esm2022/components/data-list/data-list.component.mjs +8 -2
  12. package/esm2022/components/root/root.component.mjs +1 -1
  13. package/esm2022/components/textfield/textfield-multi/textfield-multi.component.mjs +7 -7
  14. package/esm2022/components/textfield/textfield.component.mjs +15 -9
  15. package/esm2022/components/textfield/textfield.directive.mjs +10 -5
  16. package/esm2022/directives/dropdown/dropdown-a11y.directive.mjs +52 -0
  17. package/esm2022/directives/dropdown/dropdown-context.directive.mjs +12 -15
  18. package/esm2022/directives/dropdown/dropdown-open.directive.mjs +44 -36
  19. package/esm2022/directives/dropdown/dropdown.directive.mjs +11 -5
  20. package/esm2022/directives/dropdown/dropdown.mjs +3 -1
  21. package/esm2022/directives/dropdown/dropdown.providers.mjs +2 -1
  22. package/esm2022/directives/dropdown/index.mjs +2 -1
  23. package/fesm2022/taiga-ui-core-components-data-list.mjs +7 -1
  24. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-core-components-root.mjs +1 -1
  26. package/fesm2022/taiga-ui-core-components-textfield.mjs +30 -21
  27. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  28. package/fesm2022/taiga-ui-core-directives-dropdown.mjs +105 -47
  29. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
  30. package/package.json +9 -9
  31. package/styles/mixins/hitbox.less +1 -1
@@ -83,6 +83,9 @@ class TuiTextfieldBaseComponent {
83
83
  this.accessor?.setValue(option);
84
84
  this.open.set(false);
85
85
  }
86
+ get interactiveInput() {
87
+ return this._input ?? this.input;
88
+ }
86
89
  get hasLabel() {
87
90
  return Boolean(this.label?.nativeElement?.childNodes.length);
88
91
  }
@@ -91,14 +94,14 @@ class TuiTextfieldBaseComponent {
91
94
  }
92
95
  // Click on ::before,::after pseudo-elements ([iconStart] / [iconEnd])
93
96
  onIconClick() {
94
- this.input?.nativeElement.focus();
97
+ this.interactiveInput?.nativeElement.focus();
95
98
  if (!this.dropdownOpen.tuiDropdownEnabled ||
96
- this.input?.nativeElement.matches('input:read-only,textarea:read-only')) {
99
+ this.interactiveInput?.nativeElement.matches('input:read-only,textarea:read-only')) {
97
100
  return;
98
101
  }
99
102
  this.open.update((open) => !open);
100
103
  try {
101
- this.input?.nativeElement.showPicker?.();
104
+ this.interactiveInput?.nativeElement.showPicker?.();
102
105
  }
103
106
  catch {
104
107
  // Empty catch block - silently ignore showPicker errors
@@ -128,7 +131,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
128
131
  args: [TUI_AUXILIARY, { descendants: true }]
129
132
  }], _input: [{
130
133
  type: ContentChild,
131
- args: [forwardRef(() => TuiTextfieldBase), { read: ElementRef }]
134
+ args: [forwardRef(() => TuiTextfieldBase), {
135
+ read: ElementRef,
136
+ descendants: true,
137
+ }]
132
138
  }], vcr: [{
133
139
  type: ViewChild,
134
140
  args: ['vcr', { read: ViewContainerRef, static: true }]
@@ -137,10 +143,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
137
143
  args: [TUI_TEXTFIELD_ACCESSOR, { descendants: true }]
138
144
  }], control: [{
139
145
  type: ContentChild,
140
- args: [NgControl]
146
+ args: [NgControl, { descendants: true }]
141
147
  }], cva: [{
142
148
  type: ContentChild,
143
- args: [TuiControl]
149
+ args: [TuiControl, { descendants: true }]
144
150
  }], input: [{
145
151
  type: ContentChild,
146
152
  args: [forwardRef(() => TuiTextfieldBase), {
@@ -158,7 +164,7 @@ class TuiTextfieldComponent extends TuiTextfieldBaseComponent {
158
164
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldComponent, isStandalone: true, selector: "tui-textfield:not([multi])", host: { listeners: { "click.self.prevent": "0", "pointerdown.self.prevent": "onIconClick()", "scroll.capture.zoneless": "onScroll($event.target)", "tuiActiveZoneChange": "!$event && cva?.onTouched()" }, properties: { "attr.data-size": "options.size()", "class._with-label": "hasLabel", "class._with-template": "content && control?.value != null", "class._disabled": "disabled" } }, providers: [
159
165
  tuiButtonOptionsProvider({ size: 'xs', appearance: 'icon' }),
160
166
  tuiAsDataListHost(TuiTextfieldComponent),
161
- ], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiDropdownFixed }, { directive: i2.TuiTransitioned }, { directive: i1.TuiWithDropdownOpen }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: i6.TuiWithTextfieldDropdown }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield input::-webkit-inner-spin-button,tui-textfield select::-webkit-inner-spin-button,tui-textfield textarea::-webkit-inner-spin-button,tui-textfield input::-webkit-outer-spin-button,tui-textfield select::-webkit-outer-spin-button,tui-textfield textarea::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.375rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.375rem}tui-textfield[data-size=s]:before{margin-inline-end:.625rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-1 * var(--t-padding));margin-inline-start:calc(.5rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.25rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);letter-spacing:calc((max(1em,.75rem) - 1em)*.4);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
167
+ ], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownDirective }, { directive: i1.TuiDropdownFixed }, { directive: i2.TuiTransitioned }, { directive: i1.TuiWithDropdownOpen }, { directive: i3.TuiWithIcons }, { directive: i4.TuiWithItemsHandlers }, { directive: i5.TuiWithOptionContent }, { directive: i6.TuiWithTextfieldDropdown }], ngImport: i0, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (click)=\"interactiveInput?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield input::-webkit-inner-spin-button,tui-textfield select::-webkit-inner-spin-button,tui-textfield textarea::-webkit-inner-spin-button,tui-textfield input::-webkit-outer-spin-button,tui-textfield select::-webkit-outer-spin-button,tui-textfield textarea::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.375rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.375rem}tui-textfield[data-size=s]:before{margin-inline-end:.625rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-1 * var(--t-padding));margin-inline-start:calc(.5rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.25rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);letter-spacing:calc((max(1em,.75rem) - 1em)*.4);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
162
168
  }
163
169
  export { TuiTextfieldComponent };
164
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldComponent, decorators: [{
@@ -184,6 +190,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
184
190
  '(pointerdown.self.prevent)': 'onIconClick()',
185
191
  '(scroll.capture.zoneless)': 'onScroll($event.target)',
186
192
  '(tuiActiveZoneChange)': '!$event && cva?.onTouched()',
187
- }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield input::-webkit-inner-spin-button,tui-textfield select::-webkit-inner-spin-button,tui-textfield textarea::-webkit-inner-spin-button,tui-textfield input::-webkit-outer-spin-button,tui-textfield select::-webkit-outer-spin-button,tui-textfield textarea::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.375rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.375rem}tui-textfield[data-size=s]:before{margin-inline-end:.625rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-1 * var(--t-padding));margin-inline-start:calc(.5rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.25rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);letter-spacing:calc((max(1em,.75rem) - 1em)*.4);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"] }]
193
+ }, template: "<ng-container *ngIf=\"control?.control?.valueChanges | async\" />\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (click)=\"interactiveInput?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <button\n *ngIf=\"options.cleaner()\"\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n >\n {{ clear() }}\n </button>\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n<span\n *ngIf=\"control?.value != null\"\n class=\"t-template\"\n>\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n</span>\n<input\n *ngIf=\"showFiller()\"\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n/>\n", styles: ["tui-textfield{scrollbar-width:none;-ms-overflow-style:none;transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;--t-height: var(--tui-height-l);--t-padding: var(--tui-padding-l);--t-label-y: -.75rem;--t-label-font: var(--tui-font-text-s);--t-end: 0rem;--t-start: 0rem;position:relative;display:flex;flex-wrap:wrap;align-items:center;cursor:pointer;min-block-size:var(--t-height);padding:0 var(--t-padding);border-radius:var(--tui-radius-l);font:var(--tui-font-text-ui-m);line-height:1.25rem;box-sizing:border-box;gap:0 .25rem;isolation:isolate}tui-textfield::-webkit-scrollbar,tui-textfield::-webkit-scrollbar-thumb{display:none}tui-textfield[tuiIcons]:read-only{color:var(--tui-text-tertiary)}tui-textfield[style*=\"--t-icon-start:\"]{--t-start: 2.25rem}tui-textfield[style*=\"--t-icon-end:\"]{--t-end: 2.25rem}tui-textfield[tuiIcons]:after{position:relative;block-size:auto;align-self:stretch;border-inline-start:var(--t-padding) solid transparent;border-inline-end:var(--t-padding) solid transparent;margin:0 calc(-1 * var(--t-padding))}tui-textfield::-webkit-resizer{border:.25rem solid transparent;inline-size:.5rem;block-size:.5rem;box-sizing:content-box;color:var(--tui-text-tertiary);background:linear-gradient(-45deg,transparent,transparent .125rem,currentColor .125rem,currentColor .1875rem,transparent .1875rem,transparent .25rem,currentColor .25rem,currentColor .3125rem,transparent .35rem);background-clip:content-box}tui-textfield label,tui-textfield>.t-content,tui-textfield>.t-template{pointer-events:none}tui-textfield input,tui-textfield select,tui-textfield textarea{font:inherit;resize:none;outline:none;padding-block-start:1.125rem;padding-block-end:1.125rem;color:var(--tui-text-primary)}tui-textfield input[inputmode=none],tui-textfield select[inputmode=none],tui-textfield textarea[inputmode=none]{caret-color:transparent}tui-textfield input::-webkit-inner-spin-button,tui-textfield select::-webkit-inner-spin-button,tui-textfield textarea::-webkit-inner-spin-button,tui-textfield input::-webkit-outer-spin-button,tui-textfield select::-webkit-outer-spin-button,tui-textfield textarea::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}tui-textfield[data-size=s]{--t-height: var(--tui-height-s);--t-padding: var(--tui-padding-s);border-radius:var(--tui-radius-m);gap:0;font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=s][style*=\"--t-icon-start:\"]{--t-start: 1.375rem}tui-textfield[data-size=s][style*=\"--t-icon-end:\"]{--t-end: 1.375rem}tui-textfield[data-size=s]:before{margin-inline-end:.625rem;font-size:1rem}tui-textfield[data-size=s]:after{margin-inline-end:calc(-1 * var(--t-padding));margin-inline-start:calc(.5rem - var(--t-padding));font-size:1rem}tui-textfield[data-size=s] input,tui-textfield[data-size=s] select,tui-textfield[data-size=s] textarea{padding-block-start:.5rem;padding-block-end:.5rem}tui-textfield[data-size=s]>.t-content{margin-inline-end:-.25rem}tui-textfield[data-size=m]{--t-height: var(--tui-height-m);--t-padding: var(--tui-padding-m);--t-label-font: var(--tui-font-text-xs);--t-label-y: -.5625rem;border-radius:var(--tui-radius-m);font:var(--tui-font-text-ui-s);line-height:1rem}tui-textfield[data-size=m][style*=\"--t-icon-start:\"]{--t-start: 1.75rem}tui-textfield[data-size=m][style*=\"--t-icon-end:\"]{--t-end: 1.75rem}tui-textfield[data-size=m]:before{margin-inline-start:-.125rem;margin-inline-end:.125rem}tui-textfield[data-size=m]:after{margin-inline-start:calc(.25rem - var(--t-padding));margin-inline-end:calc(-.125rem - var(--t-padding))}tui-textfield[data-size=m] input,tui-textfield[data-size=m] select,tui-textfield[data-size=m] textarea{padding-block-start:.875rem;padding-block-end:.875rem}tui-textfield[data-size=m]>.t-content{margin-inline-end:-.125rem}tui-textfield[data-size=l]{--t-label: -.7rem}tui-textfield[tuiIcons]:hover{color:var(--tui-text-secondary)}tui-textfield[tuiIcons]:hover:has(input:read-only):not([multi]),tui-textfield[tuiIcons]:hover:has(textarea:read-only),tui-textfield[tuiIcons]:hover:has(select[data-mode~=readonly]){color:var(--tui-text-tertiary)}tui-textfield:before{z-index:1;margin-inline-end:.5rem;pointer-events:none}tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):before,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip])):after,tui-textfield:has(:disabled:not(.t-filler,button,option,[tuiChip]))>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield._disabled:before,tui-textfield._disabled:after,tui-textfield._disabled>.t-template{opacity:var(--tui-disabled-opacity)}tui-textfield:has(label:not(:empty))>.t-template,tui-textfield:has(label:not(:empty)) input:not([type=range]),tui-textfield:has(label:not(:empty)) select:defined,tui-textfield:has(label:not(:empty)) textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined::placeholder,tui-textfield:not([data-focus=true]):has(label:not(:empty))>.t-template._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) input:not([type=range])._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) select:defined._empty,tui-textfield:not([data-focus=true]):has(label:not(:empty)) textarea:defined._empty{color:transparent}tui-textfield._with-label>.t-template,tui-textfield._with-label input:not([type=range]),tui-textfield._with-label select:defined,tui-textfield._with-label textarea:defined{padding-block-start:calc(var(--t-height) / 3);padding-block-end:0}tui-textfield:not([data-focus=true])._with-label>.t-template::placeholder,tui-textfield:not([data-focus=true])._with-label input:not([type=range])::placeholder,tui-textfield:not([data-focus=true])._with-label select:defined::placeholder,tui-textfield:not([data-focus=true])._with-label textarea:defined::placeholder,tui-textfield:not([data-focus=true])._with-label>.t-template._empty,tui-textfield:not([data-focus=true])._with-label input:not([type=range])._empty,tui-textfield:not([data-focus=true])._with-label select:defined._empty,tui-textfield:not([data-focus=true])._with-label textarea:defined._empty{color:transparent}tui-textfield>.t-template,tui-textfield input:defined,tui-textfield select:defined,tui-textfield textarea:defined{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box;border-radius:inherit;border-width:0;overscroll-behavior:none;padding-inline-start:calc(var(--t-start, 0rem) + var(--t-padding));padding-inline-end:calc(var(--t-end, 0rem) + var(--t-side) + var(--t-padding))}tui-textfield>.t-template{display:flex;align-items:center;color:var(--tui-text-primary)}tui-textfield._with-template input:first-of-type,tui-textfield._with-template select,tui-textfield._with-template textarea{color:transparent!important}tui-textfield input:not([type=range]),tui-textfield select:defined,tui-textfield textarea:defined{pointer-events:auto;background:none}tui-textfield input:not([type=range]):not(select):read-only~.t-filler,tui-textfield select:defined:not(select):read-only~.t-filler,tui-textfield textarea:defined:not(select):read-only~.t-filler{display:none}tui-textfield input:not([type=range]):disabled~label,tui-textfield select:defined:disabled~label,tui-textfield textarea:defined:disabled~label,tui-textfield input:not([type=range]):disabled~.t-content,tui-textfield select:defined:disabled~.t-content,tui-textfield textarea:defined:disabled~.t-content{opacity:var(--tui-disabled-opacity)}tui-textfield input:not([type=range]):disabled~label>tui-icon,tui-textfield select:defined:disabled~label>tui-icon,tui-textfield textarea:defined:disabled~label>tui-icon,tui-textfield input:not([type=range]):disabled~.t-content>tui-icon,tui-textfield select:defined:disabled~.t-content>tui-icon,tui-textfield textarea:defined:disabled~.t-content>tui-icon{display:none}tui-textfield input:not([type=range]):-webkit-autofill~label,tui-textfield select:defined:-webkit-autofill~label,tui-textfield textarea:defined:-webkit-autofill~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown)~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown)~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown)~label{font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:-webkit-autofill:not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled)[data-mode~=invalid]~label,tui-textfield input:not([type=range]):-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:-webkit-autofill:invalid:not(:disabled):not([data-mode])~label,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield select:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):invalid:not(:disabled):not([data-mode])~label{color:var(--tui-text-negative)}tui-textfield input:not([type=range]):-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:-webkit-autofill:not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield input:not([type=range]):not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield select:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear,tui-textfield textarea:defined:not(._empty):not(:placeholder-shown):not(:disabled):not([data-mode~=readonly])~.t-content .t-clear{display:flex}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield select:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label,tui-textfield textarea:defined:not([data-mode~=readonly]):focus-visible:not([data-focus=false])~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[data-focus=true]~label,tui-textfield select:defined:not([data-mode~=readonly])[data-focus=true]~label,tui-textfield textarea:defined:not([data-mode~=readonly])[data-focus=true]~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused::placeholder,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)._empty,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused._empty{color:var(--tui-text-secondary)}tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]:not(._focused):has(:focus-visible)~label,tui-textfield input:not([type=range]):not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield select:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label,tui-textfield textarea:defined:not([data-mode~=readonly])[tuiWrapper]._focused~label{color:var(--tui-text-primary)!important;font:var(--t-label-font);line-height:var(--t-height);transform:translateY(var(--t-label-y))}@supports (-webkit-touch-callout: none){tui-textfield input:not([type=range])._ios-fix,tui-textfield select:defined._ios-fix,tui-textfield textarea:defined._ios-fix{position:fixed;left:1000rem}}tui-textfield [tuiLabel][tuiLabel][tuiLabel]{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:block;flex:1;align-self:flex-start;font-size:inherit;line-height:var(--t-height);letter-spacing:calc((max(1em,.75rem) - 1em)*.4);transition-duration:inherit}tui-textfield label:defined,tui-textfield input:defined::placeholder,tui-textfield textarea:defined::placeholder,tui-textfield select:defined._empty{color:var(--tui-text-secondary)}tui-textfield select:not([data-mode~=readonly]){cursor:pointer}tui-textfield select option[value=\"\"]:disabled{color:transparent}tui-textfield select optgroup,tui-textfield select option{background-color:var(--tui-background-elevation-3)}tui-textfield select optgroup,tui-textfield select option:not(:disabled){color:var(--tui-text-primary)}tui-textfield button,tui-textfield a{pointer-events:auto}tui-textfield>.t-content{z-index:1;display:flex;block-size:var(--t-height);align-items:center;gap:inherit;margin-inline-start:auto;isolation:isolate;border-radius:inherit}tui-textfield>.t-content>tui-icon{pointer-events:auto}tui-textfield textarea~.t-content{min-inline-size:.5rem}tui-textfield .t-clear{z-index:1;display:none;pointer-events:auto}tui-textfield>.t-filler:defined{pointer-events:none;color:var(--tui-text-tertiary);opacity:1}tui-textfield [tuiFluidTypography]{font-weight:700}tui-textfield [tuiSelectLike]:not(:read-only){cursor:pointer}tui-textfield:has(input[type=tel]){direction:ltr}\n"] }]
188
194
  }] });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFDLFlB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M0IsNEJBQTRCLEVBQUUsZUFBZTt3QkFDN0MsMkJBQTJCLEVBQUUseUJBQXlCO3dCQUN0RCx1QkFBdUIsRUFBRSw2QkFBNkI7cUJBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3luY1BpcGUsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIHR5cGUgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICB0eXBlIFF1ZXJ5TGlzdCxcbiAgICBzaWduYWwsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL3Jlc2l6ZS1vYnNlcnZlcic7XG5pbXBvcnQge1R1aUNvbnRyb2x9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge0VNUFRZX1FVRVJZfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aVRyYW5zaXRpb25lZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3RyYW5zaXRpb25lZCc7XG5pbXBvcnQge3R1aVF1ZXJ5TGlzdENoYW5nZXN9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RJZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge3R5cGUgVHVpQ29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnQsIHR1aVZhbHVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUZvY3VzZWRJbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cyc7XG5pbXBvcnQge3R1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlCdXR0b24sIHR1aUJ1dHRvbk9wdGlvbnNQcm92aWRlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtcbiAgICB0dWlBc0RhdGFMaXN0SG9zdCxcbiAgICB0eXBlIFR1aURhdGFMaXN0SG9zdCxcbiAgICBUdWlXaXRoT3B0aW9uQ29udGVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QnO1xuaW1wb3J0IHtUdWlMYWJlbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQge1xuICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIFR1aURyb3Bkb3duRml4ZWQsXG4gICAgVHVpRHJvcGRvd25PcGVuLFxuICAgIHR1aURyb3Bkb3duT3BlbixcbiAgICBUdWlXaXRoRHJvcGRvd25PcGVuLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7VHVpV2l0aEljb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2ljb25zJztcbmltcG9ydCB7VHVpV2l0aEl0ZW1zSGFuZGxlcnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaXRlbXMtaGFuZGxlcnMnO1xuaW1wb3J0IHtUVUlfQVVYSUxJQVJZLCBUVUlfQ0xFQVJfV09SRCwgVFVJX0NPTU1PTl9JQ09OU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7dHlwZSBUdWlTaXplTCwgdHlwZSBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0eXBlIFBvbHltb3JwaGV1c0NvbnRlbnQsIFBvbHltb3JwaGV1c091dGxldH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge1JlcGxheVN1YmplY3QsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlUZXh0ZmllbGRCYXNlfSBmcm9tICcuL3RleHRmaWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtUVUlfVEVYVEZJRUxEX09QVElPTlN9IGZyb20gJy4vdGV4dGZpZWxkLm9wdGlvbnMnO1xuaW1wb3J0IHtUVUlfVEVYVEZJRUxEX0FDQ0VTU09SLCB0eXBlIFR1aVRleHRmaWVsZEFjY2Vzc29yfSBmcm9tICcuL3RleHRmaWVsZC1hY2Nlc3Nvcic7XG5pbXBvcnQge1R1aVdpdGhUZXh0ZmllbGREcm9wZG93bn0gZnJvbSAnLi90ZXh0ZmllbGQtZHJvcGRvd24uZGlyZWN0aXZlJztcblxuLy8gVE9ETzogUmVtb3ZlIGJhc2UgY2xhc3MgaW4gdjVcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFR1aVRleHRmaWVsZEJhc2VDb21wb25lbnQ8VD5cbiAgICBpbXBsZW1lbnRzIFR1aURhdGFMaXN0SG9zdDxUPiwgQWZ0ZXJDb250ZW50Q2hlY2tlZFxue1xuICAgIC8vIFRPRE86IHJlZmFjdG9yIHRvIHNpZ25hbCBpbnB1dHMgYWZ0ZXIgQW5ndWxhciB1cGRhdGVcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbGxlciA9IHNpZ25hbCgnJyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvSWQgPSB0dWlJbmplY3RJZCgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9jdXNlZEluID0gdHVpRm9jdXNlZEluKHR1aUluamVjdEVsZW1lbnQoKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZW50UmVhZHkkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dFF1ZXJ5ID0gc2lnbmFsPEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQ+KFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2dob3N0JylcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZ2hvc3Q/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlMYWJlbCksIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGFiZWw/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oVFVJX0FVWElMSUFSWSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXV4aWxpYXJ5UXVlcnk6IFF1ZXJ5TGlzdDxvYmplY3Q+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICAvLyBUT0RPOiBBZGRlZCBqdXN0IHRvIGF2b2lkIGJyZWFraW5nIGFueXRoaW5nIHVudGlsIHdlIHJlZmFjdG9yIHRvIHNpZ25hbCBxdWVyaWVzXG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IFR1aVRleHRmaWVsZEJhc2UpLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgIHByb3RlY3RlZCByZWFkb25seSBfaW5wdXQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wZW4gPSB0dWlEcm9wZG93bk9wZW4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJvcGRvd24gPSBpbmplY3QoVHVpRHJvcGRvd25EaXJlY3RpdmUpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bk9wZW4gPSBpbmplY3QoVHVpRHJvcGRvd25PcGVuKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29ucyA9IGluamVjdChUVUlfQ09NTU9OX0lDT05TKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xlYXIgPSB0b1NpZ25hbChpbmplY3QoVFVJX0NMRUFSX1dPUkQpKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjb21wdXRlZEZpbGxlciA9IGNvbXB1dGVkKCh2YWx1ZSA9IHRoaXMudmFsdWUoKSkgPT4ge1xuICAgICAgICBjb25zdCBmaWxsZXIgPSB2YWx1ZSArIHRoaXMuZmlsbGVyKCkuc2xpY2UodmFsdWUubGVuZ3RoKTtcblxuICAgICAgICByZXR1cm4gZmlsbGVyLmxlbmd0aCA+IHZhbHVlLmxlbmd0aCA/IGZpbGxlciA6ICcnO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNob3dGaWxsZXIgPSBjb21wdXRlZDxib29sZWFuPihcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAgIHRoaXMuZm9jdXNlZCgpICYmXG4gICAgICAgICAgICAhIXRoaXMuY29tcHV0ZWRGaWxsZXIoKSAmJlxuICAgICAgICAgICAgKCEhdGhpcy52YWx1ZSgpIHx8ICF0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LnBsYWNlaG9sZGVyKSxcbiAgICApO1xuXG4gICAgQFZpZXdDaGlsZCgndmNyJywge3JlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZX0pXG4gICAgcHVibGljIHJlYWRvbmx5IHZjcj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBAQ29udGVudENoaWxkKFRVSV9URVhURklFTERfQUNDRVNTT1IsIHtkZXNjZW5kYW50czogdHJ1ZX0pXG4gICAgcHVibGljIHJlYWRvbmx5IGFjY2Vzc29yPzogVHVpVGV4dGZpZWxkQWNjZXNzb3I8VD47XG5cbiAgICBAQ29udGVudENoaWxkKE5nQ29udHJvbClcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udHJvbD86IE5nQ29udHJvbDtcblxuICAgIEBDb250ZW50Q2hpbGQoVHVpQ29udHJvbClcbiAgICBwdWJsaWMgcmVhZG9ubHkgY3ZhPzogVHVpQ29udHJvbDx1bmtub3duPjtcblxuICAgIC8vIFRPRE86IFJlcGxhY2Ugd2l0aCBzaWduYWwgcXVlcnkgd2hlbiBBbmd1bGFyIGlzIHVwZGF0ZWQgdjVcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gVHVpVGV4dGZpZWxkQmFzZSksIHtcbiAgICAgICAgcmVhZDogRWxlbWVudFJlZixcbiAgICAgICAgc3RhdGljOiB0cnVlLFxuICAgIH0pXG4gICAgcHVibGljIHJlYWRvbmx5IGlucHV0PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxUPj47XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9jdXNlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMub3BlbigpIHx8IHRoaXMuZm9jdXNlZEluKCkpO1xuICAgIHB1YmxpYyByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9URVhURklFTERfT1BUSU9OUyk7XG4gICAgcHVibGljIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZSA9IHR1aVZhbHVlKHRoaXMuaW5wdXRRdWVyeSk7XG5cbiAgICAvLyBUT0RPOiBSZWZhY3RvciB0byBzaWduYWwgcXVlcmllcyB3aGVuIEFuZ3VsYXIgaXMgdXBkYXRlZFxuICAgIHB1YmxpYyByZWFkb25seSBhdXhpbGlhcmllcyA9IHRvU2lnbmFsPHJlYWRvbmx5IG9iamVjdFtdPihcbiAgICAgICAgdGhpcy5jb250ZW50UmVhZHkkLnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHR1aVF1ZXJ5TGlzdENoYW5nZXModGhpcy5hdXhpbGlhcnlRdWVyeSkpLFxuICAgICAgICAgICAgc3RhcnRXaXRoKFtdKSxcbiAgICAgICAgKSxcbiAgICAgICAge3JlcXVpcmVTeW5jOiB0cnVlfSxcbiAgICApO1xuXG4gICAgQElucHV0KCdmaWxsZXInKVxuICAgIHB1YmxpYyBzZXQgZmlsbGVyU2V0dGVyKGZpbGxlcjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZmlsbGVyLnNldChmaWxsZXIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuaWQgfHwgdGhpcy5hdXRvSWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzaXplKCk6IFR1aVNpemVMIHwgVHVpU2l6ZVMge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLnNpemUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5jdmE/LmRpc2FibGVkKCkgPz9cbiAgICAgICAgICAgIHRoaXMuY29udHJvbD8uZGlzYWJsZWQgPz9cbiAgICAgICAgICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQ/LmRpc2FibGVkID8/XG4gICAgICAgICAgICBmYWxzZVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGVudFJlYWR5JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmlucHV0UXVlcnkuc2V0KHRoaXMuX2lucHV0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlT3B0aW9uKG9wdGlvbjogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjY2Vzc29yPy5zZXRWYWx1ZShvcHRpb24pO1xuICAgICAgICB0aGlzLm9wZW4uc2V0KGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGhhc0xhYmVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLmxhYmVsPy5uYXRpdmVFbGVtZW50Py5jaGlsZE5vZGVzLmxlbmd0aCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uUmVzaXplKHtjb250ZW50UmVjdH06IFJlc2l6ZU9ic2VydmVyRW50cnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS10LXNpZGUnLCB0dWlQeChjb250ZW50UmVjdC53aWR0aCkpO1xuICAgIH1cblxuICAgIC8vIENsaWNrIG9uIDo6YmVmb3JlLDo6YWZ0ZXIgcHNldWRvLWVsZW1lbnRzIChbaWNvblN0YXJ0XSAvIFtpY29uRW5kXSlcbiAgICBwcm90ZWN0ZWQgb25JY29uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5kcm9wZG93bk9wZW4udHVpRHJvcGRvd25FbmFibGVkIHx8XG4gICAgICAgICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50Lm1hdGNoZXMoJ2lucHV0OnJlYWQtb25seSx0ZXh0YXJlYTpyZWFkLW9ubHknKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3Blbi51cGRhdGUoKG9wZW4pID0+ICFvcGVuKTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5zaG93UGlja2VyPy4oKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAvLyBFbXB0eSBjYXRjaCBibG9jayAtIHNpbGVudGx5IGlnbm9yZSBzaG93UGlja2VyIGVycm9yc1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU2Nyb2xsKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50ID09PSBlbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLmdob3N0Py5uYXRpdmVFbGVtZW50LnNjcm9sbFRvKHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLXRleHRmaWVsZDpub3QoW211bHRpXSknLFxuICAgIGltcG9ydHM6IFtBc3luY1BpcGUsIE5nSWYsIFBvbHltb3JwaGV1c091dGxldCwgVHVpQnV0dG9uLCBXYVJlc2l6ZU9ic2VydmVyXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlczogWydAaW1wb3J0IFwiQHRhaWdhLXVpL2NvcmUvc3R5bGVzL2NvbXBvbmVudHMvdGV4dGZpZWxkLmxlc3NcIjsnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlCdXR0b25PcHRpb25zUHJvdmlkZXIoe3NpemU6ICd4cycsIGFwcGVhcmFuY2U6ICdpY29uJ30pLFxuICAgICAgICB0dWlBc0RhdGFMaXN0SG9zdChUdWlUZXh0ZmllbGRDb21wb25lbnQpLFxuICAgIF0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICAgICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgICAgIFR1aURyb3Bkb3duRml4ZWQsXG4gICAgICAgIFR1aVRyYW5zaXRpb25lZCxcbiAgICAgICAgVHVpV2l0aERyb3Bkb3duT3BlbixcbiAgICAgICAgVHVpV2l0aEljb25zLFxuICAgICAgICBUdWlXaXRoSXRlbXNIYW5kbGVycyxcbiAgICAgICAgVHVpV2l0aE9wdGlvbkNvbnRlbnQsXG4gICAgICAgIFR1aVdpdGhUZXh0ZmllbGREcm9wZG93bixcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc2l6ZV0nOiAnb3B0aW9ucy5zaXplKCknLFxuICAgICAgICAnW2NsYXNzLl93aXRoLWxhYmVsXSc6ICdoYXNMYWJlbCcsXG4gICAgICAgICdbY2xhc3MuX3dpdGgtdGVtcGxhdGVdJzogJ2NvbnRlbnQgJiYgY29udHJvbD8udmFsdWUgIT0gbnVsbCcsXG4gICAgICAgICdbY2xhc3MuX2Rpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgICAgICcoY2xpY2suc2VsZi5wcmV2ZW50KSc6ICcwJyxcbiAgICAgICAgJyhwb2ludGVyZG93bi5zZWxmLnByZXZlbnQpJzogJ29uSWNvbkNsaWNrKCknLFxuICAgICAgICAnKHNjcm9sbC5jYXB0dXJlLnpvbmVsZXNzKSc6ICdvblNjcm9sbCgkZXZlbnQudGFyZ2V0KScsXG4gICAgICAgICcodHVpQWN0aXZlWm9uZUNoYW5nZSknOiAnISRldmVudCAmJiBjdmE/Lm9uVG91Y2hlZCgpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0ZmllbGRDb21wb25lbnQ8VD4gZXh0ZW5kcyBUdWlUZXh0ZmllbGRCYXNlQ29tcG9uZW50PFQ+IHt9XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udHJvbD8uY29udHJvbD8udmFsdWVDaGFuZ2VzIHwgYXN5bmNcIiAvPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiaW5wdXRcIiAvPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwic2VsZWN0XCIgLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cInRleHRhcmVhXCIgLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cImxhYmVsXCIgLz5cbjxzcGFuXG4gICAgY2xhc3M9XCJ0LWNvbnRlbnRcIlxuICAgIChjbGljayk9XCJpbnB1dD8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKVwiXG4gICAgKHBvaW50ZXJkb3duLnpvbmVsZXNzLnByZXZlbnQpPVwiKDApXCJcbiAgICAod2FSZXNpemVPYnNlcnZlcik9XCIkZXZlbnRbMF0gJiYgb25SZXNpemUoJGV2ZW50WzBdKVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwib3B0aW9ucy5jbGVhbmVyKClcIlxuICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgIHNpemU9XCJ4c1wiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInQtY2xlYXJcIlxuICAgICAgICBbaWNvblN0YXJ0XT1cImljb25zLmNsb3NlXCJcbiAgICAgICAgKGNsaWNrKT1cImFjY2Vzc29yPy5zZXRWYWx1ZShudWxsKVwiXG4gICAgPlxuICAgICAgICB7eyBjbGVhcigpIH19XG4gICAgPC9idXR0b24+XG4gICAgPG5nLWNvbnRhaW5lciAjdmNyIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLWljb25cIiAvPlxuPC9zcGFuPlxuPHNwYW5cbiAgICAqbmdJZj1cImNvbnRyb2w/LnZhbHVlICE9IG51bGxcIlxuICAgIGNsYXNzPVwidC10ZW1wbGF0ZVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBjb250cm9sPy52YWx1ZX1cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9zcGFuPlxuPGlucHV0XG4gICAgKm5nSWY9XCJzaG93RmlsbGVyKClcIlxuICAgICNnaG9zdFxuICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgZGlzYWJsZWRcbiAgICBjbGFzcz1cInQtZmlsbGVyXCJcbiAgICBbdmFsdWVdPVwiY29tcHV0ZWRGaWxsZXIoKVwiXG4vPlxuIl19
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFDLFlB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QkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3FCQUMzQixRQUNLO3dCQUNGLGtCQUFrQixFQUFFLGdCQUFnQjt3QkFDcEMscUJBQXFCLEVBQUUsVUFBVTt3QkFDakMsd0JBQXdCLEVBQUUsbUNBQW1DO3dCQUM3RCxtQkFBbUIsRUFBRSxVQUFVO3dCQUMvQixzQkFBc0IsRUFBRSxHQUFHO3dCQUMzQiw0QkFBNEIsRUFBRSxlQUFlO3dCQUM3QywyQkFBMkIsRUFBRSx5QkFBeUI7d0JBQ3RELHVCQUF1QixFQUFFLDZCQUE2QjtxQkFDekQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgdHlwZSBBZnRlckNvbnRlbnRDaGVja2VkLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIHR5cGUgUXVlcnlMaXN0LFxuICAgIHNpZ25hbCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtXYVJlc2l6ZU9ic2VydmVyfSBmcm9tICdAbmctd2ViLWFwaXMvcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7VHVpQ29udHJvbH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7RU1QVFlfUVVFUll9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpVHJhbnNpdGlvbmVkfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvdHJhbnNpdGlvbmVkJztcbmltcG9ydCB7dHVpUXVlcnlMaXN0Q2hhbmdlc30gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge3R1aUluamVjdElkfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7dHlwZSBUdWlDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpSW5qZWN0RWxlbWVudCwgdHVpVmFsdWV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7dHVpRm9jdXNlZElufSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2ZvY3VzJztcbmltcG9ydCB7dHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUJ1dHRvbiwgdHVpQnV0dG9uT3B0aW9uc1Byb3ZpZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1xuICAgIHR1aUFzRGF0YUxpc3RIb3N0LFxuICAgIHR5cGUgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aVdpdGhPcHRpb25Db250ZW50LFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1R1aUxhYmVsfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7XG4gICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVHVpRHJvcGRvd25GaXhlZCxcbiAgICBUdWlEcm9wZG93bk9wZW4sXG4gICAgdHVpRHJvcGRvd25PcGVuLFxuICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHtUdWlXaXRoSWNvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaWNvbnMnO1xuaW1wb3J0IHtUdWlXaXRoSXRlbXNIYW5kbGVyc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9pdGVtcy1oYW5kbGVycyc7XG5pbXBvcnQge1RVSV9BVVhJTElBUlksIFRVSV9DTEVBUl9XT1JELCBUVUlfQ09NTU9OX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0eXBlIFR1aVNpemVMLCB0eXBlIFR1aVNpemVTfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge3R5cGUgUG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7UmVwbGF5U3ViamVjdCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2V9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aVRleHRmaWVsZEJhc2V9IGZyb20gJy4vdGV4dGZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1RVSV9URVhURklFTERfT1BUSU9OU30gZnJvbSAnLi90ZXh0ZmllbGQub3B0aW9ucyc7XG5pbXBvcnQge1RVSV9URVhURklFTERfQUNDRVNTT1IsIHR5cGUgVHVpVGV4dGZpZWxkQWNjZXNzb3J9IGZyb20gJy4vdGV4dGZpZWxkLWFjY2Vzc29yJztcbmltcG9ydCB7VHVpV2l0aFRleHRmaWVsZERyb3Bkb3dufSBmcm9tICcuL3RleHRmaWVsZC1kcm9wZG93bi5kaXJlY3RpdmUnO1xuXG4vLyBUT0RPOiBSZW1vdmUgYmFzZSBjbGFzcyBpbiB2NVxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQmFzZUNvbXBvbmVudDxUPlxuICAgIGltcGxlbWVudHMgVHVpRGF0YUxpc3RIb3N0PFQ+LCBBZnRlckNvbnRlbnRDaGVja2VkXG57XG4gICAgLy8gVE9ETzogcmVmYWN0b3IgdG8gc2lnbmFsIGlucHV0cyBhZnRlciBBbmd1bGFyIHVwZGF0ZVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmlsbGVyID0gc2lnbmFsKCcnKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZCA9IHR1aUluamVjdElkKCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2VkSW4gPSB0dWlGb2N1c2VkSW4odHVpSW5qZWN0RWxlbWVudCgpKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRlbnRSZWFkeSQgPSBuZXcgUmVwbGF5U3ViamVjdDxib29sZWFuPigxKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0UXVlcnkgPSBzaWduYWw8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZD4oXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICApO1xuXG4gICAgQFZpZXdDaGlsZCgnZ2hvc3QnKVxuICAgIHByb3RlY3RlZCByZWFkb25seSBnaG9zdD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IFR1aUxhYmVsKSwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBsYWJlbD86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihUVUlfQVVYSUxJQVJZLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBhdXhpbGlhcnlRdWVyeTogUXVlcnlMaXN0PG9iamVjdD4gPSBFTVBUWV9RVUVSWTtcblxuICAgIC8vIFRPRE86IEFkZGVkIGp1c3QgdG8gYXZvaWQgYnJlYWtpbmcgYW55dGhpbmcgdW50aWwgd2UgcmVmYWN0b3IgdG8gc2lnbmFsIHF1ZXJpZXNcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gVHVpVGV4dGZpZWxkQmFzZSksIHtcbiAgICAgICAgcmVhZDogRWxlbWVudFJlZixcbiAgICAgICAgZGVzY2VuZGFudHM6IHRydWUsXG4gICAgfSlcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9pbnB1dD86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3BlbiA9IHR1aURyb3Bkb3duT3BlbigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93biA9IGluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRyb3Bkb3duT3BlbiA9IGluamVjdChUdWlEcm9wZG93bk9wZW4pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjbGVhciA9IHRvU2lnbmFsKGluamVjdChUVUlfQ0xFQVJfV09SRCkpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbXB1dGVkRmlsbGVyID0gY29tcHV0ZWQoKHZhbHVlID0gdGhpcy52YWx1ZSgpKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpbGxlciA9IHZhbHVlICsgdGhpcy5maWxsZXIoKS5zbGljZSh2YWx1ZS5sZW5ndGgpO1xuXG4gICAgICAgIHJldHVybiBmaWxsZXIubGVuZ3RoID4gdmFsdWUubGVuZ3RoID8gZmlsbGVyIDogJyc7XG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2hvd0ZpbGxlciA9IGNvbXB1dGVkPGJvb2xlYW4+KFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgdGhpcy5mb2N1c2VkKCkgJiZcbiAgICAgICAgICAgICEhdGhpcy5jb21wdXRlZEZpbGxlcigpICYmXG4gICAgICAgICAgICAoISF0aGlzLnZhbHVlKCkgfHwgIXRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQucGxhY2Vob2xkZXIpLFxuICAgICk7XG5cbiAgICBAVmlld0NoaWxkKCd2Y3InLCB7cmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlfSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmNyPzogVmlld0NvbnRhaW5lclJlZjtcblxuICAgIEBDb250ZW50Q2hpbGQoVFVJX1RFWFRGSUVMRF9BQ0NFU1NPUiwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgYWNjZXNzb3I/OiBUdWlUZXh0ZmllbGRBY2Nlc3NvcjxUPjtcblxuICAgIEBDb250ZW50Q2hpbGQoTmdDb250cm9sLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHB1YmxpYyByZWFkb25seSBjb250cm9sPzogTmdDb250cm9sO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlDb250cm9sLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHB1YmxpYyByZWFkb25seSBjdmE/OiBUdWlDb250cm9sPHVua25vd24+O1xuXG4gICAgLy8gVE9ETzogUmVwbGFjZSB3aXRoIHNpZ25hbCBxdWVyeSB3aGVuIEFuZ3VsYXIgaXMgdXBkYXRlZCB2NVxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBUdWlUZXh0ZmllbGRCYXNlKSwge1xuICAgICAgICByZWFkOiBFbGVtZW50UmVmLFxuICAgICAgICBzdGF0aWM6IHRydWUsXG4gICAgfSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5wdXQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0PFQ+PjtcblxuICAgIHB1YmxpYyByZWFkb25seSBmb2N1c2VkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5vcGVuKCkgfHwgdGhpcy5mb2N1c2VkSW4oKSk7XG4gICAgcHVibGljIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX1RFWFRGSUVMRF9PUFRJT05TKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZWwgPSB0dWlJbmplY3RFbGVtZW50KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlID0gdHVpVmFsdWUodGhpcy5pbnB1dFF1ZXJ5KTtcblxuICAgIC8vIFRPRE86IFJlZmFjdG9yIHRvIHNpZ25hbCBxdWVyaWVzIHdoZW4gQW5ndWxhciBpcyB1cGRhdGVkXG4gICAgcHVibGljIHJlYWRvbmx5IGF1eGlsaWFyaWVzID0gdG9TaWduYWw8cmVhZG9ubHkgb2JqZWN0W10+KFxuICAgICAgICB0aGlzLmNvbnRlbnRSZWFkeSQucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdHVpUXVlcnlMaXN0Q2hhbmdlcyh0aGlzLmF1eGlsaWFyeVF1ZXJ5KSksXG4gICAgICAgICAgICBzdGFydFdpdGgoW10pLFxuICAgICAgICApLFxuICAgICAgICB7cmVxdWlyZVN5bmM6IHRydWV9LFxuICAgICk7XG5cbiAgICBASW5wdXQoJ2ZpbGxlcicpXG4gICAgcHVibGljIHNldCBmaWxsZXJTZXR0ZXIoZmlsbGVyOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5maWxsZXIuc2V0KGZpbGxlcik7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5pZCB8fCB0aGlzLmF1dG9JZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuc2l6ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmN2YT8uZGlzYWJsZWQoKSA/P1xuICAgICAgICAgICAgdGhpcy5jb250cm9sPy5kaXNhYmxlZCA/P1xuICAgICAgICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudD8uZGlzYWJsZWQgPz9cbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZW50UmVhZHkkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuaW5wdXRRdWVyeS5zZXQodGhpcy5faW5wdXQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVPcHRpb24ob3B0aW9uOiBUKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWNjZXNzb3I/LnNldFZhbHVlKG9wdGlvbik7XG4gICAgICAgIHRoaXMub3Blbi5zZXQoZmFsc2UpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaW50ZXJhY3RpdmVJbnB1dCgpOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lucHV0ID8/IHRoaXMuaW5wdXQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5sYWJlbD8ubmF0aXZlRWxlbWVudD8uY2hpbGROb2Rlcy5sZW5ndGgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJlc2l6ZSh7Y29udGVudFJlY3R9OiBSZXNpemVPYnNlcnZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWwuc3R5bGUuc2V0UHJvcGVydHkoJy0tdC1zaWRlJywgdHVpUHgoY29udGVudFJlY3Qud2lkdGgpKTtcbiAgICB9XG5cbiAgICAvLyBDbGljayBvbiA6OmJlZm9yZSw6OmFmdGVyIHBzZXVkby1lbGVtZW50cyAoW2ljb25TdGFydF0gLyBbaWNvbkVuZF0pXG4gICAgcHJvdGVjdGVkIG9uSWNvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmludGVyYWN0aXZlSW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5kcm9wZG93bk9wZW4udHVpRHJvcGRvd25FbmFibGVkIHx8XG4gICAgICAgICAgICB0aGlzLmludGVyYWN0aXZlSW5wdXQ/Lm5hdGl2ZUVsZW1lbnQubWF0Y2hlcyhcbiAgICAgICAgICAgICAgICAnaW5wdXQ6cmVhZC1vbmx5LHRleHRhcmVhOnJlYWQtb25seScsXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuLnVwZGF0ZSgob3BlbikgPT4gIW9wZW4pO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmludGVyYWN0aXZlSW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuc2hvd1BpY2tlcj8uKCk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgLy8gRW1wdHkgY2F0Y2ggYmxvY2sgLSBzaWxlbnRseSBpZ25vcmUgc2hvd1BpY2tlciBlcnJvcnNcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudCA9PT0gZWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5naG9zdD8ubmF0aXZlRWxlbWVudC5zY3JvbGxUbyh7XG4gICAgICAgICAgICAgICAgbGVmdDogdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS10ZXh0ZmllbGQ6bm90KFttdWx0aV0pJyxcbiAgICBpbXBvcnRzOiBbQXN5bmNQaXBlLCBOZ0lmLCBQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUJ1dHRvbiwgV2FSZXNpemVPYnNlcnZlcl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHRmaWVsZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZXM6IFsnQGltcG9ydCBcIkB0YWlnYS11aS9jb3JlL3N0eWxlcy9jb21wb25lbnRzL3RleHRmaWVsZC5sZXNzXCI7J10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQnV0dG9uT3B0aW9uc1Byb3ZpZGVyKHtzaXplOiAneHMnLCBhcHBlYXJhbmNlOiAnaWNvbid9KSxcbiAgICAgICAgdHVpQXNEYXRhTGlzdEhvc3QoVHVpVGV4dGZpZWxkQ29tcG9uZW50KSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgICAgICBUdWlEcm9wZG93bkZpeGVkLFxuICAgICAgICBUdWlUcmFuc2l0aW9uZWQsXG4gICAgICAgIFR1aVdpdGhEcm9wZG93bk9wZW4sXG4gICAgICAgIFR1aVdpdGhJY29ucyxcbiAgICAgICAgVHVpV2l0aEl0ZW1zSGFuZGxlcnMsXG4gICAgICAgIFR1aVdpdGhPcHRpb25Db250ZW50LFxuICAgICAgICBUdWlXaXRoVGV4dGZpZWxkRHJvcGRvd24sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLXNpemVdJzogJ29wdGlvbnMuc2l6ZSgpJyxcbiAgICAgICAgJ1tjbGFzcy5fd2l0aC1sYWJlbF0nOiAnaGFzTGFiZWwnLFxuICAgICAgICAnW2NsYXNzLl93aXRoLXRlbXBsYXRlXSc6ICdjb250ZW50ICYmIGNvbnRyb2w/LnZhbHVlICE9IG51bGwnLFxuICAgICAgICAnW2NsYXNzLl9kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICAgICAnKGNsaWNrLnNlbGYucHJldmVudCknOiAnMCcsXG4gICAgICAgICcocG9pbnRlcmRvd24uc2VsZi5wcmV2ZW50KSc6ICdvbkljb25DbGljaygpJyxcbiAgICAgICAgJyhzY3JvbGwuY2FwdHVyZS56b25lbGVzcyknOiAnb25TY3JvbGwoJGV2ZW50LnRhcmdldCknLFxuICAgICAgICAnKHR1aUFjdGl2ZVpvbmVDaGFuZ2UpJzogJyEkZXZlbnQgJiYgY3ZhPy5vblRvdWNoZWQoKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQ29tcG9uZW50PFQ+IGV4dGVuZHMgVHVpVGV4dGZpZWxkQmFzZUNvbXBvbmVudDxUPiB7fVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2w/LmNvbnRyb2w/LnZhbHVlQ2hhbmdlcyB8IGFzeW5jXCIgLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cImlucHV0XCIgLz5cbjxuZy1jb250ZW50IHNlbGVjdD1cInNlbGVjdFwiIC8+XG48bmctY29udGVudCBzZWxlY3Q9XCJ0ZXh0YXJlYVwiIC8+XG48bmctY29udGVudCBzZWxlY3Q9XCJsYWJlbFwiIC8+XG48c3BhblxuICAgIGNsYXNzPVwidC1jb250ZW50XCJcbiAgICAoY2xpY2spPVwiaW50ZXJhY3RpdmVJbnB1dD8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKVwiXG4gICAgKHBvaW50ZXJkb3duLnpvbmVsZXNzLnByZXZlbnQpPVwiKDApXCJcbiAgICAod2FSZXNpemVPYnNlcnZlcik9XCIkZXZlbnRbMF0gJiYgb25SZXNpemUoJGV2ZW50WzBdKVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwib3B0aW9ucy5jbGVhbmVyKClcIlxuICAgICAgICBhcHBlYXJhbmNlPVwiaWNvblwiXG4gICAgICAgIHNpemU9XCJ4c1wiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cInQtY2xlYXJcIlxuICAgICAgICBbaWNvblN0YXJ0XT1cImljb25zLmNsb3NlXCJcbiAgICAgICAgKGNsaWNrKT1cImFjY2Vzc29yPy5zZXRWYWx1ZShudWxsKVwiXG4gICAgPlxuICAgICAgICB7eyBjbGVhcigpIH19XG4gICAgPC9idXR0b24+XG4gICAgPG5nLWNvbnRhaW5lciAjdmNyIC8+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLWljb25cIiAvPlxuPC9zcGFuPlxuPHNwYW5cbiAgICAqbmdJZj1cImNvbnRyb2w/LnZhbHVlICE9IG51bGxcIlxuICAgIGNsYXNzPVwidC10ZW1wbGF0ZVwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0OyBjb250ZXh0OiB7JGltcGxpY2l0OiBjb250cm9sPy52YWx1ZX1cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9zcGFuPlxuPGlucHV0XG4gICAgKm5nSWY9XCJzaG93RmlsbGVyKClcIlxuICAgICNnaG9zdFxuICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgZGlzYWJsZWRcbiAgICBjbGFzcz1cInQtZmlsbGVyXCJcbiAgICBbdmFsdWVdPVwiY29tcHV0ZWRGaWxsZXIoKVwiXG4vPlxuIl19
@@ -3,14 +3,16 @@ import { NgControl } from '@angular/forms';
3
3
  import { TuiNativeValidator } from '@taiga-ui/cdk/directives/native-validator';
4
4
  import { tuiInjectElement, tuiValue } from '@taiga-ui/cdk/utils/dom';
5
5
  import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
6
+ import { TuiDropdownA11y, TuiDropdownDirective } from '@taiga-ui/core/directives/dropdown';
6
7
  import { TuiAppearance, tuiAppearance, tuiAppearanceFocus, tuiAppearanceMode, tuiAppearanceState, } from '@taiga-ui/core/directives/appearance';
7
8
  import { TUI_ITEMS_HANDLERS, } from '@taiga-ui/core/directives/items-handlers';
8
9
  import { TuiTextfieldComponent } from './textfield.component';
9
10
  import { TUI_TEXTFIELD_OPTIONS } from './textfield.options';
10
11
  import { tuiAsTextfieldAccessor } from './textfield-accessor';
11
12
  import * as i0 from "@angular/core";
12
- import * as i1 from "@taiga-ui/cdk/directives/native-validator";
13
- import * as i2 from "@taiga-ui/core/directives/appearance";
13
+ import * as i1 from "@taiga-ui/core/directives/dropdown";
14
+ import * as i2 from "@taiga-ui/cdk/directives/native-validator";
15
+ import * as i3 from "@taiga-ui/core/directives/appearance";
14
16
  // TODO: Drop in v5 after updated Angular and hostDirectives inherit
15
17
  class TuiTextfieldBase {
16
18
  constructor() {
@@ -24,6 +26,7 @@ class TuiTextfieldBase {
24
26
  this.el = tuiInjectElement();
25
27
  this.handlers = inject(TUI_ITEMS_HANDLERS);
26
28
  this.textfield = inject(TuiTextfieldComponent);
29
+ this.dropdown = inject(TuiDropdownDirective);
27
30
  this.readOnly = false;
28
31
  this.invalid = null;
29
32
  this.value = tuiValue(this.el);
@@ -64,7 +67,7 @@ class TuiTextfieldBase {
64
67
  }
65
68
  }
66
69
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
67
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldBase, isStandalone: true, inputs: { readOnly: "readOnly", invalid: "invalid", focusedSetter: ["focused", "focusedSetter"], stateSetter: ["state", "stateSetter"] }, host: { attributes: { "tuiTextfield": "" }, listeners: { "input": "0", "focusin": "0", "focusout": "0" }, properties: { "id": "textfield.id", "readOnly": "readOnly", "class._empty": "value() === \"\"" } }, providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)], usesOnChanges: true, ngImport: i0 }); }
70
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldBase, isStandalone: true, inputs: { readOnly: "readOnly", invalid: "invalid", focusedSetter: ["focused", "focusedSetter"], stateSetter: ["state", "stateSetter"] }, host: { attributes: { "tuiTextfield": "" }, listeners: { "input": "0", "focusin": "0", "focusout": "0" }, properties: { "attr.role": "dropdown._content() && !el.matches(\"select\") ? \"combobox\" : null", "id": "textfield.id", "readOnly": "readOnly", "class._empty": "value() === \"\"" } }, providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)], usesOnChanges: true, hostDirectives: [{ directive: i1.TuiDropdownA11y }], ngImport: i0 }); }
68
71
  }
69
72
  export { TuiTextfieldBase };
70
73
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldBase, decorators: [{
@@ -72,8 +75,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
72
75
  args: [{
73
76
  standalone: true,
74
77
  providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)],
78
+ hostDirectives: [TuiDropdownA11y],
75
79
  host: {
76
80
  tuiTextfield: '',
81
+ '[attr.role]': 'dropdown._content() && !el.matches("select") ? "combobox" : null',
77
82
  '[id]': 'textfield.id',
78
83
  '[readOnly]': 'readOnly',
79
84
  '[class._empty]': 'value() === ""',
@@ -98,7 +103,7 @@ class TuiTextfieldDirective extends TuiTextfieldBase {
98
103
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextfieldDirective, isStandalone: true, selector: "input[tuiTextfield]:not([tuiInputCard]):not([tuiInputExpire]):not([tuiInputCVC])", providers: [
99
104
  tuiAsTextfieldAccessor(TuiTextfieldDirective),
100
105
  tuiProvide(TuiTextfieldBase, TuiTextfieldDirective),
101
- ], usesInheritance: true, hostDirectives: [{ directive: i1.TuiNativeValidator }, { directive: i2.TuiAppearance }], ngImport: i0 }); }
106
+ ], usesInheritance: true, hostDirectives: [{ directive: i2.TuiNativeValidator }, { directive: i3.TuiAppearance }], ngImport: i0 }); }
102
107
  }
103
108
  export { TuiTextfieldDirective };
104
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextfieldDirective, decorators: [{
@@ -131,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
131
136
  ],
132
137
  }]
133
138
  }] });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFrQixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDN0QsT0FBTyxFQUNILGFBQWEsRUFDYixhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixrQkFBa0IsR0FDckIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5QyxPQUFPLEVBQ0gsa0JBQWtCLEdBRXJCLE1BQU0sMENBQTBDLENBQUM7QUFHbEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFDLHNCQUFzQixFQUE0QixNQUFNLHNCQUFzQixDQUFDOzs7O0FBRXZGLG9FQUFvRTtBQUNwRSxNQWFhLGdCQUFnQjtJQWI3QjtRQWNJLHVEQUF1RDtRQUN0QyxZQUFPLEdBQUcsTUFBTSxDQUFpQixJQUFJLENBQUMsQ0FBQztRQUVyQyxZQUFPLEdBQUcsTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQzlDLE1BQUMsR0FBRyxhQUFhLENB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Q3BCO2lCQUNKOzhCQW9CVSxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQU1LLGFBQWE7c0JBRHZCLEtBQUs7dUJBQUMsU0FBUztnQkFNTCxXQUFXO3NCQURyQixLQUFLO3VCQUFDLE9BQU87O0FBOENsQixNQVdhLHFCQUF5QixTQUFRLGdCQUFtQjsrR0FBcEQscUJBQXFCO21HQUFyQixxQkFBcUIsK0hBTm5CO1lBQ1Asc0JBQXNCLENBQUMscUJBQXFCLENBQUM7WUFDN0MsVUFBVSxDQUFDLGdCQUFnQixFQUFFLHFCQUFxQixDQUFDO1NBQ3REOztTQUdRLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQVhqQyxTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQiwyQkFBMkI7b0JBQzNCLFFBQVEsRUFDSixrRkFBa0Y7b0JBQ3RGLFNBQVMsRUFBRTt3QkFDUCxzQkFBc0IsdUJBQXVCO3dCQUM3QyxVQUFVLENBQUMsZ0JBQWdCLHdCQUF3QjtxQkFDdEQ7b0JBQ0QsY0FBYyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsYUFBYSxDQUFDO2lCQUN0RDs7QUFHRCxNQVNhLGdCQUFnQjsrR0FBaEIsZ0JBQWdCO21HQUFoQixnQkFBZ0Isb0RBWGhCLHFCQUFxQjs7U0FXckIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBVDVCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGNBQWMsRUFBRTt3QkFDWjs0QkFDSSxTQUFTLEVBQUUscUJBQXFCOzRCQUNoQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUM7eUJBQ3REO3FCQUNKO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjb21wdXRlZCwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCB0eXBlIE9uQ2hhbmdlcywgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1R1aU5hdGl2ZVZhbGlkYXRvcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL25hdGl2ZS12YWxpZGF0b3InO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50LCB0dWlWYWx1ZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlQcm92aWRlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtcbiAgICBUdWlBcHBlYXJhbmNlLFxuICAgIHR1aUFwcGVhcmFuY2UsXG4gICAgdHVpQXBwZWFyYW5jZUZvY3VzLFxuICAgIHR1aUFwcGVhcmFuY2VNb2RlLFxuICAgIHR1aUFwcGVhcmFuY2VTdGF0ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9hcHBlYXJhbmNlJztcbmltcG9ydCB7XG4gICAgVFVJX0lURU1TX0hBTkRMRVJTLFxuICAgIHR5cGUgVHVpSXRlbXNIYW5kbGVycyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9pdGVtcy1oYW5kbGVycyc7XG5pbXBvcnQge3R5cGUgVHVpSW50ZXJhY3RpdmVTdGF0ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQge1R1aVRleHRmaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0ZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7VFVJX1RFWFRGSUVMRF9PUFRJT05TfSBmcm9tICcuL3RleHRmaWVsZC5vcHRpb25zJztcbmltcG9ydCB7dHVpQXNUZXh0ZmllbGRBY2Nlc3NvciwgdHlwZSBUdWlUZXh0ZmllbGRBY2Nlc3Nvcn0gZnJvbSAnLi90ZXh0ZmllbGQtYWNjZXNzb3InO1xuXG4vLyBUT0RPOiBEcm9wIGluIHY1IGFmdGVyIHVwZGF0ZWQgQW5ndWxhciBhbmQgaG9zdERpcmVjdGl2ZXMgaW5oZXJpdFxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFt0dWlBc1RleHRmaWVsZEFjY2Vzc29yKFR1aVRleHRmaWVsZEJhc2UpXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHR1aVRleHRmaWVsZDogJycsXG4gICAgICAgICdbaWRdJzogJ3RleHRmaWVsZC5pZCcsXG4gICAgICAgICdbcmVhZE9ubHldJzogJ3JlYWRPbmx5JyxcbiAgICAgICAgJ1tjbGFzcy5fZW1wdHldJzogJ3ZhbHVlKCkgPT09IFwiXCInLFxuICAgICAgICAnKGlucHV0KSc6ICcwJyxcbiAgICAgICAgJyhmb2N1c2luKSc6ICcwJyxcbiAgICAgICAgJyhmb2N1c291dCknOiAnMCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQmFzZTxUPiBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgVHVpVGV4dGZpZWxkQWNjZXNzb3I8VD4ge1xuICAgIC8vIFRPRE86IHJlZmFjdG9yIHRvIHNpZ25hbCBpbnB1dHMgYWZ0ZXIgQW5ndWxhciB1cGRhdGVcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvY3VzZWQgPSBzaWduYWw8Ym9vbGVhbiB8IG51bGw+KG51bGwpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnRyb2wgPSBpbmplY3QoTmdDb250cm9sLCB7b3B0aW9uYWw6IHRydWV9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYSA9IHR1aUFwcGVhcmFuY2UoaW5qZWN0KFRVSV9URVhURklFTERfT1BUSU9OUykuYXBwZWFyYW5jZSwge30pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzID0gdHVpQXBwZWFyYW5jZVN0YXRlKG51bGwsIHt9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbSA9IHR1aUFwcGVhcmFuY2VNb2RlKHRoaXMubW9kZSwge30pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBmID0gdHVpQXBwZWFyYW5jZUZvY3VzKFxuICAgICAgICBjb21wdXRlZCgoKSA9PiB0aGlzLmZvY3VzZWQoKSA/PyB0aGlzLnRleHRmaWVsZC5mb2N1c2VkKCkpLFxuICAgICAgICB7fSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudDxIVE1MSW5wdXRFbGVtZW50PigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoYW5kbGVyczogVHVpSXRlbXNIYW5kbGVyczxUPiA9IGluamVjdChUVUlfSVRFTVNfSEFORExFUlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0ZmllbGQ6IFR1aVRleHRmaWVsZENvbXBvbmVudDxUPiA9XG4gICAgICAgIGluamVjdChUdWlUZXh0ZmllbGRDb21wb25lbnQpO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcmVhZE9ubHkgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGludmFsaWQ6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcblxuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZSA9IHR1aVZhbHVlKHRoaXMuZWwpO1xuXG4gICAgQElucHV0KCdmb2N1c2VkJylcbiAgICBwdWJsaWMgc2V0IGZvY3VzZWRTZXR0ZXIoZm9jdXNlZDogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5mb2N1c2VkLnNldChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ3N0YXRlJylcbiAgICBwdWJsaWMgc2V0IHN0YXRlU2V0dGVyKHN0YXRlOiBUdWlJbnRlcmFjdGl2ZVN0YXRlIHwgbnVsbCkge1xuICAgICAgICB0aGlzLnMuc2V0KHN0YXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG1vZGUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICByZXR1cm4gJ3JlYWRvbmx5JztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmludmFsaWQgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3ZhbGlkJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmludmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiAnaW52YWxpZCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiByZWZhY3RvciB0byBzaWduYWwgaW5wdXRzIGFmdGVyIEFuZ3VsYXIgdXBkYXRlXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm0uc2V0KHRoaXMubW9kZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFZhbHVlKHZhbHVlOiBUIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsLmZvY3VzKCk7XG4gICAgICAgIHRoaXMuZWwuc2VsZWN0KCk7XG5cbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuZWwub3duZXJEb2N1bWVudC5leGVjQ29tbWFuZCgnZGVsZXRlJyk7XG5cbiAgICAgICAgICAgIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vdGFpZ2EtZmFtaWx5L3RhaWdhLXVpL2lzc3Vlcy8xMTYzNFxuICAgICAgICAgICAgLy8gZW5zdXJlIG5vbi1lcmFzYWJsZSBhZmZpeGVzIGFjdHVhbGx5IGRlbGV0ZWRcbiAgICAgICAgICAgIHRoaXMuZWwudmFsdWUgPSAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZWwub3duZXJEb2N1bWVudC5leGVjQ29tbWFuZChcbiAgICAgICAgICAgICAgICAnaW5zZXJ0VGV4dCcsXG4gICAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVycy5zdHJpbmdpZnkoKSh2YWx1ZSksXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIC8vIFRPRE86IFJlbW92ZSA6bm90IGluIHYuNVxuICAgIHNlbGVjdG9yOlxuICAgICAgICAnaW5wdXRbdHVpVGV4dGZpZWxkXTpub3QoW3R1aUlucHV0Q2FyZF0pOm5vdChbdHVpSW5wdXRFeHBpcmVdKTpub3QoW3R1aUlucHV0Q1ZDXSknLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc1RleHRmaWVsZEFjY2Vzc29yKFR1aVRleHRmaWVsZERpcmVjdGl2ZSksXG4gICAgICAgIHR1aVByb3ZpZGUoVHVpVGV4dGZpZWxkQmFzZSwgVHVpVGV4dGZpZWxkRGlyZWN0aXZlKSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpTmF0aXZlVmFsaWRhdG9yLCBUdWlBcHBlYXJhbmNlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkRGlyZWN0aXZlPFQ+IGV4dGVuZHMgVHVpVGV4dGZpZWxkQmFzZTxUPiB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogVHVpVGV4dGZpZWxkRGlyZWN0aXZlLFxuICAgICAgICAgICAgaW5wdXRzOiBbJ2ludmFsaWQnLCAnZm9jdXNlZCcsICdyZWFkT25seScsICdzdGF0ZSddLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVdpdGhUZXh0ZmllbGQge31cbiJdfQ==
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90ZXh0ZmllbGQvdGV4dGZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFrQixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDN0QsT0FBTyxFQUFDLGVBQWUsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pGLE9BQU8sRUFDSCxhQUFhLEVBQ2IsYUFBYSxFQUNiLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsa0JBQWtCLEdBQ3JCLE1BQU0sc0NBQXNDLENBQUM7QUFDOUMsT0FBTyxFQUNILGtCQUFrQixHQUVyQixNQUFNLDBDQUEwQyxDQUFDO0FBR2xELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBQyxzQkFBc0IsRUFBNEIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFFdkYsb0VBQW9FO0FBQ3BFLE1BZWEsZ0JBQWdCO0lBZjdCO1FBZ0JJLHVEQUF1RDtRQUN0QyxZQUFPLEdBQUcsTUFBTSxDQUFpQixJQUFJLENBQUMsQ0FBQztRQUVyQyxZQUFPLEdBQUcsTUFBTSxDQUFDLFNBQVMsRUFBRSxF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Q0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2NvbXB1dGVkLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXQsIHR5cGUgT25DaGFuZ2VzLCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7VHVpTmF0aXZlVmFsaWRhdG9yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvbmF0aXZlLXZhbGlkYXRvcic7XG5pbXBvcnQge3R1aUluamVjdEVsZW1lbnQsIHR1aVZhbHVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aVByb3ZpZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aURyb3Bkb3duQTExeSwgVHVpRHJvcGRvd25EaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHtcbiAgICBUdWlBcHBlYXJhbmNlLFxuICAgIHR1aUFwcGVhcmFuY2UsXG4gICAgdHVpQXBwZWFyYW5jZUZvY3VzLFxuICAgIHR1aUFwcGVhcmFuY2VNb2RlLFxuICAgIHR1aUFwcGVhcmFuY2VTdGF0ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9hcHBlYXJhbmNlJztcbmltcG9ydCB7XG4gICAgVFVJX0lURU1TX0hBTkRMRVJTLFxuICAgIHR5cGUgVHVpSXRlbXNIYW5kbGVycyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9pdGVtcy1oYW5kbGVycyc7XG5pbXBvcnQge3R5cGUgVHVpSW50ZXJhY3RpdmVTdGF0ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG5pbXBvcnQge1R1aVRleHRmaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0ZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7VFVJX1RFWFRGSUVMRF9PUFRJT05TfSBmcm9tICcuL3RleHRmaWVsZC5vcHRpb25zJztcbmltcG9ydCB7dHVpQXNUZXh0ZmllbGRBY2Nlc3NvciwgdHlwZSBUdWlUZXh0ZmllbGRBY2Nlc3Nvcn0gZnJvbSAnLi90ZXh0ZmllbGQtYWNjZXNzb3InO1xuXG4vLyBUT0RPOiBEcm9wIGluIHY1IGFmdGVyIHVwZGF0ZWQgQW5ndWxhciBhbmQgaG9zdERpcmVjdGl2ZXMgaW5oZXJpdFxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFt0dWlBc1RleHRmaWVsZEFjY2Vzc29yKFR1aVRleHRmaWVsZEJhc2UpXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1R1aURyb3Bkb3duQTExeV0sXG4gICAgaG9zdDoge1xuICAgICAgICB0dWlUZXh0ZmllbGQ6ICcnLFxuICAgICAgICAnW2F0dHIucm9sZV0nOiAnZHJvcGRvd24uX2NvbnRlbnQoKSAmJiAhZWwubWF0Y2hlcyhcInNlbGVjdFwiKSA/IFwiY29tYm9ib3hcIiA6IG51bGwnLFxuICAgICAgICAnW2lkXSc6ICd0ZXh0ZmllbGQuaWQnLFxuICAgICAgICAnW3JlYWRPbmx5XSc6ICdyZWFkT25seScsXG4gICAgICAgICdbY2xhc3MuX2VtcHR5XSc6ICd2YWx1ZSgpID09PSBcIlwiJyxcbiAgICAgICAgJyhpbnB1dCknOiAnMCcsXG4gICAgICAgICcoZm9jdXNpbiknOiAnMCcsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJzAnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVRleHRmaWVsZEJhc2U8VD4gaW1wbGVtZW50cyBPbkNoYW5nZXMsIFR1aVRleHRmaWVsZEFjY2Vzc29yPFQ+IHtcbiAgICAvLyBUT0RPOiByZWZhY3RvciB0byBzaWduYWwgaW5wdXRzIGFmdGVyIEFuZ3VsYXIgdXBkYXRlXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2VkID0gc2lnbmFsPGJvb2xlYW4gfCBudWxsPihudWxsKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250cm9sID0gaW5qZWN0KE5nQ29udHJvbCwge29wdGlvbmFsOiB0cnVlfSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGEgPSB0dWlBcHBlYXJhbmNlKGluamVjdChUVUlfVEVYVEZJRUxEX09QVElPTlMpLmFwcGVhcmFuY2UsIHt9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcyA9IHR1aUFwcGVhcmFuY2VTdGF0ZShudWxsLCB7fSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG0gPSB0dWlBcHBlYXJhbmNlTW9kZSh0aGlzLm1vZGUsIHt9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZiA9IHR1aUFwcGVhcmFuY2VGb2N1cyhcbiAgICAgICAgY29tcHV0ZWQoKCkgPT4gdGhpcy5mb2N1c2VkKCkgPz8gdGhpcy50ZXh0ZmllbGQuZm9jdXNlZCgpKSxcbiAgICAgICAge30sXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQ8SFRNTElucHV0RWxlbWVudD4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGFuZGxlcnM6IFR1aUl0ZW1zSGFuZGxlcnM8VD4gPSBpbmplY3QoVFVJX0lURU1TX0hBTkRMRVJTKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dGZpZWxkOiBUdWlUZXh0ZmllbGRDb21wb25lbnQ8VD4gPVxuICAgICAgICBpbmplY3QoVHVpVGV4dGZpZWxkQ29tcG9uZW50KTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93biA9IGluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaW52YWxpZDogYm9vbGVhbiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlID0gdHVpVmFsdWUodGhpcy5lbCk7XG5cbiAgICBASW5wdXQoJ2ZvY3VzZWQnKVxuICAgIHB1YmxpYyBzZXQgZm9jdXNlZFNldHRlcihmb2N1c2VkOiBib29sZWFuIHwgbnVsbCkge1xuICAgICAgICB0aGlzLmZvY3VzZWQuc2V0KGZvY3VzZWQpO1xuICAgIH1cblxuICAgIEBJbnB1dCgnc3RhdGUnKVxuICAgIHB1YmxpYyBzZXQgc3RhdGVTZXR0ZXIoc3RhdGU6IFR1aUludGVyYWN0aXZlU3RhdGUgfCBudWxsKSB7XG4gICAgICAgIHRoaXMucy5zZXQoc3RhdGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbW9kZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMucmVhZE9ubHkpIHtcbiAgICAgICAgICAgIHJldHVybiAncmVhZG9ubHknO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaW52YWxpZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHJldHVybiAndmFsaWQnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaW52YWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuICdpbnZhbGlkJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIFRPRE86IHJlZmFjdG9yIHRvIHNpZ25hbCBpbnB1dHMgYWZ0ZXIgQW5ndWxhciB1cGRhdGVcbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubS5zZXQodGhpcy5tb2RlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IFQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWwuZm9jdXMoKTtcbiAgICAgICAgdGhpcy5lbC5zZWxlY3QoKTtcblxuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5lbC5vd25lckRvY3VtZW50LmV4ZWNDb21tYW5kKCdkZWxldGUnKTtcblxuICAgICAgICAgICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlnYS1mYW1pbHkvdGFpZ2EtdWkvaXNzdWVzLzExNjM0XG4gICAgICAgICAgICAvLyBlbnN1cmUgbm9uLWVyYXNhYmxlIGFmZml4ZXMgYWN0dWFsbHkgZGVsZXRlZFxuICAgICAgICAgICAgdGhpcy5lbC52YWx1ZSA9ICcnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbC5vd25lckRvY3VtZW50LmV4ZWNDb21tYW5kKFxuICAgICAgICAgICAgICAgICdpbnNlcnRUZXh0JyxcbiAgICAgICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZXJzLnN0cmluZ2lmeSgpKHZhbHVlKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgLy8gVE9ETzogUmVtb3ZlIDpub3QgaW4gdi41XG4gICAgc2VsZWN0b3I6XG4gICAgICAgICdpbnB1dFt0dWlUZXh0ZmllbGRdOm5vdChbdHVpSW5wdXRDYXJkXSk6bm90KFt0dWlJbnB1dEV4cGlyZV0pOm5vdChbdHVpSW5wdXRDVkNdKScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzVGV4dGZpZWxkQWNjZXNzb3IoVHVpVGV4dGZpZWxkRGlyZWN0aXZlKSxcbiAgICAgICAgdHVpUHJvdmlkZShUdWlUZXh0ZmllbGRCYXNlLCBUdWlUZXh0ZmllbGREaXJlY3RpdmUpLFxuICAgIF0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtUdWlOYXRpdmVWYWxpZGF0b3IsIFR1aUFwcGVhcmFuY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlUZXh0ZmllbGREaXJlY3RpdmU8VD4gZXh0ZW5kcyBUdWlUZXh0ZmllbGRCYXNlPFQ+IHt9XG5cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgZGlyZWN0aXZlOiBUdWlUZXh0ZmllbGREaXJlY3RpdmUsXG4gICAgICAgICAgICBpbnB1dHM6IFsnaW52YWxpZCcsICdmb2N1c2VkJywgJ3JlYWRPbmx5JywgJ3N0YXRlJ10sXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpV2l0aFRleHRmaWVsZCB7fVxuIl19
@@ -0,0 +1,52 @@
1
+ import { Directive, effect, inject, Input, signal } from '@angular/core';
2
+ import { TuiIdService } from '@taiga-ui/cdk/services';
3
+ import { TuiDropdownDirective } from './dropdown.directive';
4
+ import { TUI_DROPDOWN_HOST } from './dropdown.providers';
5
+ import * as i0 from "@angular/core";
6
+ class TuiDropdownA11y {
7
+ constructor() {
8
+ this.id = inject(TuiIdService).generate();
9
+ this.host = inject(TUI_DROPDOWN_HOST);
10
+ this.dropdown = inject(TuiDropdownDirective);
11
+ this.sync = effect(() => {
12
+ const content = this.dropdown._content();
13
+ const dropdown = this.dropdown.ref();
14
+ const host = this.host.nativeElement;
15
+ host.setAttribute('aria-expanded', String(!!dropdown));
16
+ host.setAttribute('aria-controls', this.id);
17
+ host.setAttribute('aria-haspopup', this._tuiDropdownRole());
18
+ if (host.matches('input')) {
19
+ if (content) {
20
+ host.setAttribute('role', 'combobox');
21
+ }
22
+ else {
23
+ host.removeAttribute('role');
24
+ }
25
+ }
26
+ dropdown?.location.nativeElement.setAttribute('role', this._tuiDropdownRole());
27
+ dropdown?.location.nativeElement.setAttribute('id', this.id);
28
+ if (content) {
29
+ return;
30
+ }
31
+ host.removeAttribute('aria-expanded');
32
+ host.removeAttribute('aria-controls');
33
+ host.removeAttribute('aria-haspopup');
34
+ });
35
+ // TODO: refactor to signal inputs after Angular update
36
+ // eslint-disable-next-line @typescript-eslint/naming-convention
37
+ this._tuiDropdownRole = signal('listbox');
38
+ }
39
+ set tuiDropdownRole(role) {
40
+ this._tuiDropdownRole.set(role);
41
+ }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownA11y, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
43
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDropdownA11y, isStandalone: true, selector: "[tuiDropdownA11y]", inputs: { tuiDropdownRole: "tuiDropdownRole" }, ngImport: i0 }); }
44
+ }
45
+ export { TuiDropdownA11y };
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownA11y, decorators: [{
47
+ type: Directive,
48
+ args: [{ standalone: true, selector: '[tuiDropdownA11y]' }]
49
+ }], propDecorators: { tuiDropdownRole: [{
50
+ type: Input
51
+ }] } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYTExeS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24tYTExeS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRXBELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDOztBQUV2RCxNQUNhLGVBQWU7SUFENUI7UUFFcUIsT0FBRSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxTQUFJLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDakMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRXRDLFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2xDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUVyQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7WUFFNUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN2QixJQUFJLE9BQU8sRUFBRTtvQkFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztpQkFDekM7cUJBQU07b0JBQ0gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDaEM7YUFDSjtZQUVELFFBQVEsRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztZQUMvRSxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUU3RCxJQUFJLE9BQU8sRUFBRTtnQkFDVCxPQUFPO2FBQ1Y7WUFFRCxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztRQUVILHVEQUF1RDtRQUN2RCxnRUFBZ0U7UUFDaEQscUJBQWdCLEdBQUcsTUFBTSxDQUFTLFNBQVMsQ0FBQyxDQUFDO0tBTWhFO0lBSkcsSUFDVyxlQUFlLENBQUMsSUFBWTtRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7K0dBekNRLGVBQWU7bUdBQWYsZUFBZTs7U0FBZixlQUFlOzRGQUFmLGVBQWU7a0JBRDNCLFNBQVM7bUJBQUMsRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxtQkFBbUIsRUFBQzs4QkF3QzdDLGVBQWU7c0JBRHpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIElucHV0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlJZFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuXG5pbXBvcnQge1R1aURyb3Bkb3duRGlyZWN0aXZlfSBmcm9tICcuL2Ryb3Bkb3duLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1RVSV9EUk9QRE9XTl9IT1NUfSBmcm9tICcuL2Ryb3Bkb3duLnByb3ZpZGVycyc7XG5cbkBEaXJlY3RpdmUoe3N0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnW3R1aURyb3Bkb3duQTExeV0nfSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkExMXkge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaWQgPSBpbmplY3QoVHVpSWRTZXJ2aWNlKS5nZW5lcmF0ZSgpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaG9zdCA9IGluamVjdChUVUlfRFJPUERPV05fSE9TVCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93biA9IGluamVjdChUdWlEcm9wZG93bkRpcmVjdGl2ZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc3luYyA9IGVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLmRyb3Bkb3duLl9jb250ZW50KCk7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duID0gdGhpcy5kcm9wZG93bi5yZWYoKTtcbiAgICAgICAgY29uc3QgaG9zdCA9IHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGhvc3Quc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgU3RyaW5nKCEhZHJvcGRvd24pKTtcbiAgICAgICAgaG9zdC5zZXRBdHRyaWJ1dGUoJ2FyaWEtY29udHJvbHMnLCB0aGlzLmlkKTtcbiAgICAgICAgaG9zdC5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGFzcG9wdXAnLCB0aGlzLl90dWlEcm9wZG93blJvbGUoKSk7XG5cbiAgICAgICAgaWYgKGhvc3QubWF0Y2hlcygnaW5wdXQnKSkge1xuICAgICAgICAgICAgaWYgKGNvbnRlbnQpIHtcbiAgICAgICAgICAgICAgICBob3N0LnNldEF0dHJpYnV0ZSgncm9sZScsICdjb21ib2JveCcpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBob3N0LnJlbW92ZUF0dHJpYnV0ZSgncm9sZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZHJvcGRvd24/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdyb2xlJywgdGhpcy5fdHVpRHJvcGRvd25Sb2xlKCkpO1xuICAgICAgICBkcm9wZG93bj8ubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2lkJywgdGhpcy5pZCk7XG5cbiAgICAgICAgaWYgKGNvbnRlbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGhvc3QucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJyk7XG4gICAgICAgIGhvc3QucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWNvbnRyb2xzJyk7XG4gICAgICAgIGhvc3QucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWhhc3BvcHVwJyk7XG4gICAgfSk7XG5cbiAgICAvLyBUT0RPOiByZWZhY3RvciB0byBzaWduYWwgaW5wdXRzIGFmdGVyIEFuZ3VsYXIgdXBkYXRlXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgIHB1YmxpYyByZWFkb25seSBfdHVpRHJvcGRvd25Sb2xlID0gc2lnbmFsPHN0cmluZz4oJ2xpc3Rib3gnKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCB0dWlEcm9wZG93blJvbGUocm9sZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3R1aURyb3Bkb3duUm9sZS5zZXQocm9sZSk7XG4gICAgfVxufVxuIl19
@@ -1,6 +1,5 @@
1
- import { __decorate } from "tslib";
2
1
  import { DOCUMENT } from '@angular/common';
3
- import { computed, Directive, inject } from '@angular/core';
2
+ import { computed, Directive, inject, NgZone } from '@angular/core';
4
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
4
  import { EMPTY_CLIENT_RECT } from '@taiga-ui/cdk/constants';
6
5
  import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
@@ -8,17 +7,13 @@ import { tuiTypedFromEvent, tuiZonefree } from '@taiga-ui/cdk/observables';
8
7
  import { TUI_IS_TOUCH } from '@taiga-ui/cdk/tokens';
9
8
  import { tuiGetActualTarget, tuiPointToClientRect } from '@taiga-ui/cdk/utils/dom';
10
9
  import { tuiAsDriver, tuiAsRectAccessor, TuiRectAccessor } from '@taiga-ui/core/classes';
11
- import { shouldCall } from '@taiga-ui/event-plugins';
12
10
  import { merge } from 'rxjs';
13
11
  import { TuiDropdownDriver } from './dropdown.driver';
14
12
  import * as i0 from "@angular/core";
15
- function activeZoneFilter(event) {
16
- return (!event ||
17
- (this.driver.value && !this.activeZone.contains(tuiGetActualTarget(event))));
18
- }
19
13
  class TuiDropdownContext extends TuiRectAccessor {
20
14
  constructor() {
21
15
  super(...arguments);
16
+ this.zone = inject(NgZone);
22
17
  this.isTouch = inject(TUI_IS_TOUCH);
23
18
  this.currentRect = EMPTY_CLIENT_RECT;
24
19
  this.userSelect = computed(() => (this.isTouch() ? 'none' : null));
@@ -33,9 +28,14 @@ class TuiDropdownContext extends TuiRectAccessor {
33
28
  getClientRect() {
34
29
  return this.currentRect;
35
30
  }
36
- closeDropdown(_event) {
37
- this.driver.next(false);
38
- this.currentRect = EMPTY_CLIENT_RECT;
31
+ closeDropdown(event) {
32
+ if (!event ||
33
+ (this.driver.value && !this.activeZone.contains(tuiGetActualTarget(event)))) {
34
+ this.zone.run(() => {
35
+ this.driver.next(false);
36
+ this.currentRect = EMPTY_CLIENT_RECT;
37
+ });
38
+ }
39
39
  }
40
40
  onContextMenu(x, y) {
41
41
  this.currentRect = tuiPointToClientRect(x, y);
@@ -49,9 +49,6 @@ class TuiDropdownContext extends TuiRectAccessor {
49
49
  tuiAsRectAccessor(TuiDropdownContext),
50
50
  ], usesInheritance: true, ngImport: i0 }); }
51
51
  }
52
- __decorate([
53
- shouldCall(activeZoneFilter)
54
- ], TuiDropdownContext.prototype, "closeDropdown", null);
55
52
  export { TuiDropdownContext };
56
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDropdownContext, decorators: [{
57
54
  type: Directive,
@@ -72,5 +69,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
72
69
  '(longtap)': 'onContextMenu($event.detail.clientX, $event.detail.clientY)',
73
70
  },
74
71
  }]
75
- }], propDecorators: { closeDropdown: [] } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLG9CQUFvQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDakYsT0FBTyxFQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUUzQixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFcEQsU0FBUyxnQkFBZ0IsQ0FBMkIsS0FBYTtJQUM3RCxPQUFPLENBQ0gsQ0FBQyxLQUFLO1FBQ04sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDOUUsQ0FBQztBQUNOLENBQUM7QUFFRCxNQWlCYSxrQkFBbUIsU0FBUSxlQUFlO0lBakJ2RDs7UUFrQnFCLFlBQU8sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsZ0JBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUVyQixlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUQsZUFBVSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuQyxXQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbkMsUUFBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV2QixRQUFHLEdBQUcsS0FBSyxDQUMxQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxFQUMxQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUM5RDthQUNJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxDQUFDO2FBQ3pDLFNBQVMsQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRTVDLFNBQUksR0FBRyxVQUFVLENBQUM7S0FnQnJDO0lBZFUsYUFBYTtRQUNoQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUdTLGFBQWEsQ0FBQyxNQUFjO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDekMsQ0FBQztJQUVTLGFBQWEsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUN4QyxJQUFJLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDOytHQS9CUSxrQkFBa0I7bUdBQWxCLGtCQUFrQixrV0FkaEI7WUFDUCxhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5QixpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQztTQUN4Qzs7QUFnQ1M7SUFEVCxVQUFVLENBQUMsZ0JBQWdCLENBQUM7dURBSTVCO1NBMUJRLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQWpCOUIsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsU0FBUyxFQUFFO3dCQUNQLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixXQUFXLENBQUMsaUJBQWlCLENBQUM7d0JBQzlCLGlCQUFpQixvQkFBb0I7cUJBQ3hDO29CQUNELElBQUksRUFBRTt3QkFDRixxQkFBcUIsRUFBRSxjQUFjO3dCQUNyQyw2QkFBNkIsRUFBRSxjQUFjO3dCQUM3QywrQkFBK0IsRUFBRSxjQUFjO3dCQUMvQyx3QkFBd0IsRUFBRSxpQkFBaUI7d0JBQzNDLFdBQVcsRUFBRSw2REFBNkQ7cUJBQzdFO2lCQUNKOzhCQXdCYSxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Y29tcHV0ZWQsIERpcmVjdGl2ZSwgaW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge0VNUFRZX0NMSUVOVF9SRUNUfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aUFjdGl2ZVpvbmV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZSc7XG5pbXBvcnQge3R1aVR5cGVkRnJvbUV2ZW50LCB0dWlab25lZnJlZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9vYnNlcnZhYmxlcyc7XG5pbXBvcnQge1RVSV9JU19UT1VDSH0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlHZXRBY3R1YWxUYXJnZXQsIHR1aVBvaW50VG9DbGllbnRSZWN0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUFzRHJpdmVyLCB0dWlBc1JlY3RBY2Nlc3NvciwgVHVpUmVjdEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jbGFzc2VzJztcbmltcG9ydCB7c2hvdWxkQ2FsbH0gZnJvbSAnQHRhaWdhLXVpL2V2ZW50LXBsdWdpbnMnO1xuaW1wb3J0IHttZXJnZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpRHJvcGRvd25Ecml2ZXJ9IGZyb20gJy4vZHJvcGRvd24uZHJpdmVyJztcblxuZnVuY3Rpb24gYWN0aXZlWm9uZUZpbHRlcih0aGlzOiBUdWlEcm9wZG93bkNvbnRleHQsIGV2ZW50PzogRXZlbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgICAhZXZlbnQgfHxcbiAgICAgICAgKHRoaXMuZHJpdmVyLnZhbHVlICYmICF0aGlzLmFjdGl2ZVpvbmUuY29udGFpbnModHVpR2V0QWN0dWFsVGFyZ2V0KGV2ZW50KSkpXG4gICAgKTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1t0dWlEcm9wZG93bkNvbnRleHRdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVHVpQWN0aXZlWm9uZSxcbiAgICAgICAgVHVpRHJvcGRvd25Ecml2ZXIsXG4gICAgICAgIHR1aUFzRHJpdmVyKFR1aURyb3Bkb3duRHJpdmVyKSxcbiAgICAgICAgdHVpQXNSZWN0QWNjZXNzb3IoVHVpRHJvcGRvd25Db250ZXh0KSxcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS51c2VyLXNlbGVjdF0nOiAndXNlclNlbGVjdCgpJyxcbiAgICAgICAgJ1tzdHlsZS4td2Via2l0LXVzZXItc2VsZWN0XSc6ICd1c2VyU2VsZWN0KCknLFxuICAgICAgICAnW3N0eWxlLi13ZWJraXQtdG91Y2gtY2FsbG91dF0nOiAndXNlclNlbGVjdCgpJyxcbiAgICAgICAgJyhkb2N1bWVudDprZXlkb3duLmVzYyknOiAnY2xvc2VEcm9wZG93bigpJyxcbiAgICAgICAgJyhsb25ndGFwKSc6ICdvbkNvbnRleHRNZW51KCRldmVudC5kZXRhaWwuY2xpZW50WCwgJGV2ZW50LmRldGFpbC5jbGllbnRZKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Db250ZXh0IGV4dGVuZHMgVHVpUmVjdEFjY2Vzc29yIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzVG91Y2ggPSBpbmplY3QoVFVJX0lTX1RPVUNIKTtcbiAgICBwcml2YXRlIGN1cnJlbnRSZWN0ID0gRU1QVFlfQ0xJRU5UX1JFQ1Q7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdXNlclNlbGVjdCA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmlzVG91Y2goKSA/ICdub25lJyA6IG51bGwpKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWN0aXZlWm9uZSA9IGluamVjdChUdWlBY3RpdmVab25lKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJpdmVyID0gaW5qZWN0KFR1aURyb3Bkb3duRHJpdmVyKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZG9jID0gaW5qZWN0KERPQ1VNRU5UKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBzdWIgPSBtZXJnZShcbiAgICAgICAgdHVpVHlwZWRGcm9tRXZlbnQodGhpcy5kb2MsICdwb2ludGVyZG93bicpLFxuICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ2NvbnRleHRtZW51Jywge2NhcHR1cmU6IHRydWV9KSxcbiAgICApXG4gICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKCksIHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudDogRXZlbnQpID0+IHRoaXMuY2xvc2VEcm9wZG93bihldmVudCkpO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IHR5cGUgPSAnZHJvcGRvd24nO1xuXG4gICAgcHVibGljIGdldENsaWVudFJlY3QoKTogRE9NUmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRSZWN0O1xuICAgIH1cblxuICAgIEBzaG91bGRDYWxsKGFjdGl2ZVpvbmVGaWx0ZXIpXG4gICAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oX2V2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcml2ZXIubmV4dChmYWxzZSk7XG4gICAgICAgIHRoaXMuY3VycmVudFJlY3QgPSBFTVBUWV9DTElFTlRfUkVDVDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Db250ZXh0TWVudSh4OiBudW1iZXIsIHk6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRSZWN0ID0gdHVpUG9pbnRUb0NsaWVudFJlY3QoeCwgeSk7XG4gICAgICAgIHRoaXMuZHJpdmVyLm5leHQodHJ1ZSk7XG4gICAgfVxufVxuIl19
72
+ }] });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLG9CQUFvQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDakYsT0FBTyxFQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RixPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTNCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDOztBQUVwRCxNQWlCYSxrQkFBbUIsU0FBUSxlQUFlO0lBakJ2RDs7UUFrQnFCLFNBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLGlCQUFpQixDQUFDO1FBRXJCLGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM5RCxlQUFVLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ25DLFdBQU0sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNuQyxRQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXZCLFFBQUcsR0FBRyxLQUFLLENBQzFCLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDLEVBQzFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsYUFBYSxFQUFFLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDLENBQzlEO2FBQ0ksSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLGtCQUFrQixFQUFFLENBQUM7YUFDekMsU0FBUyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFNUMsU0FBSSxHQUFHLFVBQVUsQ0FBQztLQXNCckM7SUFwQlUsYUFBYTtRQUNoQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVTLGFBQWEsQ0FBQyxLQUFhO1FBQ2pDLElBQ0ksQ0FBQyxLQUFLO1lBQ04sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFDN0U7WUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsaUJBQWlCLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFUyxhQUFhLENBQUMsQ0FBUyxFQUFFLENBQVM7UUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQzsrR0F0Q1Esa0JBQWtCO21HQUFsQixrQkFBa0Isa1dBZGhCO1lBQ1AsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixXQUFXLENBQUMsaUJBQWlCLENBQUM7WUFDOUIsaUJBQWlCLENBQUMsa0JBQWtCLENBQUM7U0FDeEM7O1NBU1Esa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBakI5QixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxTQUFTLEVBQUU7d0JBQ1AsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQzt3QkFDOUIsaUJBQWlCLG9CQUFvQjtxQkFDeEM7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLHFCQUFxQixFQUFFLGNBQWM7d0JBQ3JDLDZCQUE2QixFQUFFLGNBQWM7d0JBQzdDLCtCQUErQixFQUFFLGNBQWM7d0JBQy9DLHdCQUF3QixFQUFFLGlCQUFpQjt3QkFDM0MsV0FBVyxFQUFFLDZEQUE2RDtxQkFDN0U7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtjb21wdXRlZCwgRGlyZWN0aXZlLCBpbmplY3QsIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtFTVBUWV9DTElFTlRfUkVDVH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlBY3RpdmVab25lfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYWN0aXZlLXpvbmUnO1xuaW1wb3J0IHt0dWlUeXBlZEZyb21FdmVudCwgdHVpWm9uZWZyZWV9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHtUVUlfSVNfVE9VQ0h9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7dHVpR2V0QWN0dWFsVGFyZ2V0LCB0dWlQb2ludFRvQ2xpZW50UmVjdH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlBc0RyaXZlciwgdHVpQXNSZWN0QWNjZXNzb3IsIFR1aVJlY3RBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY2xhc3Nlcyc7XG5pbXBvcnQge21lcmdlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlEcm9wZG93bkRyaXZlcn0gZnJvbSAnLi9kcm9wZG93bi5kcml2ZXInO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW3R1aURyb3Bkb3duQ29udGV4dF0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBUdWlBY3RpdmVab25lLFxuICAgICAgICBUdWlEcm9wZG93bkRyaXZlcixcbiAgICAgICAgdHVpQXNEcml2ZXIoVHVpRHJvcGRvd25Ecml2ZXIpLFxuICAgICAgICB0dWlBc1JlY3RBY2Nlc3NvcihUdWlEcm9wZG93bkNvbnRleHQpLFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW3N0eWxlLnVzZXItc2VsZWN0XSc6ICd1c2VyU2VsZWN0KCknLFxuICAgICAgICAnW3N0eWxlLi13ZWJraXQtdXNlci1zZWxlY3RdJzogJ3VzZXJTZWxlY3QoKScsXG4gICAgICAgICdbc3R5bGUuLXdlYmtpdC10b3VjaC1jYWxsb3V0XSc6ICd1c2VyU2VsZWN0KCknLFxuICAgICAgICAnKGRvY3VtZW50OmtleWRvd24uZXNjKSc6ICdjbG9zZURyb3Bkb3duKCknLFxuICAgICAgICAnKGxvbmd0YXApJzogJ29uQ29udGV4dE1lbnUoJGV2ZW50LmRldGFpbC5jbGllbnRYLCAkZXZlbnQuZGV0YWlsLmNsaWVudFkpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkNvbnRleHQgZXh0ZW5kcyBUdWlSZWN0QWNjZXNzb3Ige1xuICAgIHByaXZhdGUgcmVhZG9ubHkgem9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNUb3VjaCA9IGluamVjdChUVUlfSVNfVE9VQ0gpO1xuICAgIHByaXZhdGUgY3VycmVudFJlY3QgPSBFTVBUWV9DTElFTlRfUkVDVDtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSB1c2VyU2VsZWN0ID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuaXNUb3VjaCgpID8gJ25vbmUnIDogbnVsbCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBhY3RpdmVab25lID0gaW5qZWN0KFR1aUFjdGl2ZVpvbmUpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcml2ZXIgPSBpbmplY3QoVHVpRHJvcGRvd25Ecml2ZXIpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkb2MgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN1YiA9IG1lcmdlKFxuICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ3BvaW50ZXJkb3duJyksXG4gICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jLCAnY29udGV4dG1lbnUnLCB7Y2FwdHVyZTogdHJ1ZX0pLFxuICAgIClcbiAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUoKSwgdGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBFdmVudCkgPT4gdGhpcy5jbG9zZURyb3Bkb3duKGV2ZW50KSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgdHlwZSA9ICdkcm9wZG93bic7XG5cbiAgICBwdWJsaWMgZ2V0Q2xpZW50UmVjdCgpOiBET01SZWN0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFJlY3Q7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oZXZlbnQ/OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhZXZlbnQgfHxcbiAgICAgICAgICAgICh0aGlzLmRyaXZlci52YWx1ZSAmJiAhdGhpcy5hY3RpdmVab25lLmNvbnRhaW5zKHR1aUdldEFjdHVhbFRhcmdldChldmVudCkpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZHJpdmVyLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFJlY3QgPSBFTVBUWV9DTElFTlRfUkVDVDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ29udGV4dE1lbnUoeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50UmVjdCA9IHR1aVBvaW50VG9DbGllbnRSZWN0KHgsIHkpO1xuICAgICAgICB0aGlzLmRyaXZlci5uZXh0KHRydWUpO1xuICAgIH1cbn1cbiJdfQ==