@taiga-ui/core 3.8.0 → 3.9.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 (42) hide show
  1. package/bundles/taiga-ui-core-components-data-list.umd.js +2 -2
  2. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-dialog.umd.js +16 -3
  4. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +1 -1
  6. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-root.umd.js +1 -1
  8. package/bundles/taiga-ui-core-components-scrollbar.umd.js +12 -9
  9. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  10. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +1 -1
  11. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  12. package/components/dialog/dialog.service.d.ts +1 -1
  13. package/components/dialog/dialog.tokens.d.ts +7 -0
  14. package/components/dialog/index.d.ts +1 -0
  15. package/components/primitive-textfield/primitive-textfield.component.d.ts +1 -1
  16. package/esm2015/components/data-list/data-list.component.js +1 -1
  17. package/esm2015/components/data-list/option/option.component.js +1 -1
  18. package/esm2015/components/dialog/dialog.service.js +4 -11
  19. package/esm2015/components/dialog/dialog.tokens.js +19 -0
  20. package/esm2015/components/dialog/index.js +2 -1
  21. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +2 -2
  22. package/esm2015/components/root/root.component.js +1 -1
  23. package/esm2015/components/scrollbar/scrollbar.component.js +8 -5
  24. package/esm2015/types/size.js +2 -1
  25. package/esm2015/utils/miscellaneous/size-bigger.js +2 -2
  26. package/fesm2015/taiga-ui-core-components-data-list.js +2 -2
  27. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  28. package/fesm2015/taiga-ui-core-components-dialog.js +15 -5
  29. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  30. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +1 -1
  31. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  32. package/fesm2015/taiga-ui-core-components-root.js +1 -1
  33. package/fesm2015/taiga-ui-core-components-scrollbar.js +7 -4
  34. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  35. package/fesm2015/taiga-ui-core-types.js +1 -0
  36. package/fesm2015/taiga-ui-core-types.js.map +1 -1
  37. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +1 -1
  38. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  39. package/package.json +4 -4
  40. package/styles/theme/variables.less +2 -2
  41. package/types/size.d.ts +2 -0
  42. package/utils/miscellaneous/size-bigger.d.ts +2 -2
@@ -173,7 +173,7 @@ TuiPrimitiveTextfieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
173
173
  tuiAsFocusableItemAccessor(TuiPrimitiveTextfieldComponent),
174
174
  TEXTFIELD_CONTROLLER_PROVIDER,
175
175
  MODE_PROVIDER,
176
- ], queries: [{ propertyName: "content", predicate: PolymorpheusOutletDirective, descendants: true }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"content?.changes | async\"></ng-container>\n<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n tuiWrapper\n automation-id=\"tui-primitive-textfield__wrapper\"\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [style.--text-indent.px]=\"decor.pre$ | async\"\n (mousedown)=\"onMouseDown($event)\"\n (click.prevent.silent)=\"(0)\"\n (tuiAutofilledChange)=\"onAutofilled($event)\"\n>\n <ng-content select=\"input\"></ng-content>\n <input\n #focusableElement\n tuiMaskAccessor\n automation-id=\"tui-primitive-textfield__native-input\"\n class=\"t-input\"\n [attr.disabled]=\"computedDisabled || null\"\n [attr.name]=\"name\"\n [attr.aria-invalid]=\"computedInvalid\"\n [id]=\"id\"\n [readOnly]=\"readOnly || !editable\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <div\n *ngIf=\"inputHidden\"\n automation-id=\"tui-primitive-textfield__value\"\n class=\"t-input t-input_template\"\n >\n <ng-content select=\"tuiContent\"></ng-content>\n </div>\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <label\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-primitive-textfield__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n [for]=\"computedId\"\n >\n <ng-content></ng-content>\n </label>\n <div class=\"t-wrapper-value-decoration\">\n <tui-value-decoration\n #decor\n automation-id=\"tui-primitive-textfield__value-decoration\"\n aria-hidden=\"true\"\n class=\"t-value-decoration\"\n [class.t-has-value]=\"value\"\n [style.textIndent.px]=\"getIndent$(focusableElement) | async\"\n ></tui-value-decoration>\n </div>\n </div>\n <div\n *ngIf=\"hasCustomContent\"\n automation-id=\"tui-primitive-textfield__custom-content\"\n class=\"t-custom-content\"\n >\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n class=\"t-custom-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <span\n *ngIf=\"hasCleaner\"\n automation-id=\"tui-primitive-textfield__cleaner\"\n class=\"t-cleaner\"\n (click.stop)=\"clear()\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src\"\n [src]=\"src\"\n ></tui-svg>\n </span>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-primitive-textfield__tooltip\"\n [describeId]=\"computedId\"\n [content]=\"hintOptions.content\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n</div>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host._autofilled .t-value-decoration:not(.t-has-value){visibility:hidden}:host._autofilled[data-size=s]:not(._focused) .t-placeholder,:host._autofilled[data-size=m]:not(._focused) .t-placeholder{visibility:hidden}.t-custom-content{position:relative;display:flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;margin-right:.25rem;pointer-events:none}.t-custom-icon{width:2rem;height:100%}.t-icon{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);box-sizing:border-box;cursor:pointer;transition-property:color,transform;position:relative;pointer-events:none}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon:hover{color:var(--tui-text-02)}:host._readonly .t-icon,:host._disabled .t-icon{pointer-events:none}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-icon:hover{color:var(--tui-text-01-night)}:host:hover:not(._readonly) .t-icon{color:var(--tui-text-02)}:host[data-mode=onDark]:hover:not(._readonly) .t-icon{color:var(--tui-text-01-night)}:host[data-mode=onLight]:hover:not(._readonly) .t-icon{color:var(--tui-text-01)}input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}input::placeholder{color:var(--tui-text-03);opacity:0}:host-context(tui-primitive-textfield[data-mode=\"onDark\"]) input::-ms-input-placeholder,:host-context(tui-text-area[data-mode=\"onDark\"]) input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host-context(tui-primitive-textfield[data-mode=\"onDark\"]) input::placeholder,:host-context(tui-text-area[data-mode=\"onDark\"]) input::placeholder{color:var(--tui-text-03-night)}:host-context(tui-primitive-textfield._focused:not(._readonly)) input::-ms-input-placeholder,:host-context(tui-text-area._focused:not(._readonly)) input::-ms-input-placeholder{opacity:1}:host-context(tui-primitive-textfield._focused:not(._readonly)) input::placeholder,:host-context(tui-text-area._focused:not(._readonly)) input::placeholder{opacity:1}.t-input:not(:first-child){display:none}:host[data-size] .t-input_template{display:flex;width:calc(100% - 1rem);max-width:calc(100% - 1rem);align-items:center;pointer-events:none;-webkit-padding-end:0;padding-inline-end:0}.t-input::-webkit-caps-lock-indicator{margin-right:.375rem;align-self:center}:host[data-size=l]:not(._label-outside) .t-input::-webkit-caps-lock-indicator{margin-top:-1.25rem}.t-input::-webkit-credentials-auto-fill-button,.t-input::-webkit-contacts-auto-fill-button,.t-input::-webkit-credit-card-auto-fill-button{background-color:var(--tui-text-03)}:host[data-size=l]:not(._label-outside) .t-input::-webkit-credentials-auto-fill-button,:host[data-size=l]:not(._label-outside) .t-input::-webkit-contacts-auto-fill-button,:host[data-size=l]:not(._label-outside) .t-input::-webkit-credit-card-auto-fill-button{margin-top:-1.25rem}.t-input::-webkit-credentials-auto-fill-button:hover,.t-input::-webkit-contacts-auto-fill-button:hover,.t-input::-webkit-credit-card-auto-fill-button:hover{background-color:var(--tui-text-02)}.t-input:-webkit-autofill,.t-input:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-text-template{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-wrapper-value-decoration{position:relative;pointer-events:none}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiValueDecorationComponent, selector: "tui-value-decoration" }, { type: i3.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i6.TuiAutofilledDirective, selector: "[tuiAutofilledChange]", outputs: ["tuiAutofilledChange"] }, { type: i7.TuiMaskAccessorDirective, selector: "input[tuiMaskAccessor]" }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i9.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
176
+ ], queries: [{ propertyName: "content", predicate: PolymorpheusOutletDirective, descendants: true }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"content?.changes | async\"></ng-container>\n<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<div\n tuiWrapper\n automation-id=\"tui-primitive-textfield__wrapper\"\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [active]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [style.--text-indent.px]=\"decor.pre$ | async\"\n (mousedown)=\"onMouseDown($event)\"\n (click.prevent.silent)=\"(0)\"\n (tuiAutofilledChange)=\"onAutofilled($event)\"\n>\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"select\"></ng-content>\n <input\n #focusableElement\n tuiMaskAccessor\n automation-id=\"tui-primitive-textfield__native-input\"\n class=\"t-input\"\n [attr.disabled]=\"computedDisabled || null\"\n [attr.name]=\"name\"\n [attr.aria-invalid]=\"computedInvalid\"\n [id]=\"id\"\n [readOnly]=\"readOnly || !editable\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <div\n *ngIf=\"inputHidden\"\n automation-id=\"tui-primitive-textfield__value\"\n class=\"t-input t-input_template\"\n >\n <ng-content select=\"tuiContent\"></ng-content>\n </div>\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <label\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-primitive-textfield__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n [for]=\"computedId\"\n >\n <ng-content></ng-content>\n </label>\n <div class=\"t-wrapper-value-decoration\">\n <tui-value-decoration\n #decor\n automation-id=\"tui-primitive-textfield__value-decoration\"\n aria-hidden=\"true\"\n class=\"t-value-decoration\"\n [class.t-has-value]=\"value\"\n [style.textIndent.px]=\"getIndent$(focusableElement) | async\"\n ></tui-value-decoration>\n </div>\n </div>\n <div\n *ngIf=\"hasCustomContent\"\n automation-id=\"tui-primitive-textfield__custom-content\"\n class=\"t-custom-content\"\n >\n <tui-svg\n *polymorpheusOutlet=\"controller.customContent as src\"\n class=\"t-custom-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <span\n *ngIf=\"hasCleaner\"\n automation-id=\"tui-primitive-textfield__cleaner\"\n class=\"t-cleaner\"\n (click.stop)=\"clear()\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src\"\n [src]=\"src\"\n ></tui-svg>\n </span>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-primitive-textfield__tooltip\"\n [describeId]=\"computedId\"\n [content]=\"hintOptions.content\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n</div>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host._autofilled .t-value-decoration:not(.t-has-value){visibility:hidden}:host._autofilled[data-size=s]:not(._focused) .t-placeholder,:host._autofilled[data-size=m]:not(._focused) .t-placeholder{visibility:hidden}.t-custom-content{position:relative;display:flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;margin-right:.25rem;pointer-events:none}.t-custom-icon{width:2rem;height:100%}.t-icon{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);box-sizing:border-box;cursor:pointer;transition-property:color,transform;position:relative;pointer-events:none}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon:hover{color:var(--tui-text-02)}:host._readonly .t-icon,:host._disabled .t-icon{pointer-events:none}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-icon:hover{color:var(--tui-text-01-night)}:host:hover:not(._readonly) .t-icon{color:var(--tui-text-02)}:host[data-mode=onDark]:hover:not(._readonly) .t-icon{color:var(--tui-text-01-night)}:host[data-mode=onLight]:hover:not(._readonly) .t-icon{color:var(--tui-text-01)}input::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}input::placeholder{color:var(--tui-text-03);opacity:0}:host-context(tui-primitive-textfield[data-mode=\"onDark\"]) input::-ms-input-placeholder,:host-context(tui-text-area[data-mode=\"onDark\"]) input::-ms-input-placeholder{color:var(--tui-text-03-night)}:host-context(tui-primitive-textfield[data-mode=\"onDark\"]) input::placeholder,:host-context(tui-text-area[data-mode=\"onDark\"]) input::placeholder{color:var(--tui-text-03-night)}:host-context(tui-primitive-textfield._focused:not(._readonly)) input::-ms-input-placeholder,:host-context(tui-text-area._focused:not(._readonly)) input::-ms-input-placeholder{opacity:1}:host-context(tui-primitive-textfield._focused:not(._readonly)) input::placeholder,:host-context(tui-text-area._focused:not(._readonly)) input::placeholder{opacity:1}.t-input:not(:first-child){display:none}:host[data-size] .t-input_template{display:flex;width:calc(100% - 1rem);max-width:calc(100% - 1rem);align-items:center;pointer-events:none;-webkit-padding-end:0;padding-inline-end:0}.t-input::-webkit-caps-lock-indicator{margin-right:.375rem;align-self:center}:host[data-size=l]:not(._label-outside) .t-input::-webkit-caps-lock-indicator{margin-top:-1.25rem}.t-input::-webkit-credentials-auto-fill-button,.t-input::-webkit-contacts-auto-fill-button,.t-input::-webkit-credit-card-auto-fill-button{background-color:var(--tui-text-03)}:host[data-size=l]:not(._label-outside) .t-input::-webkit-credentials-auto-fill-button,:host[data-size=l]:not(._label-outside) .t-input::-webkit-contacts-auto-fill-button,:host[data-size=l]:not(._label-outside) .t-input::-webkit-credit-card-auto-fill-button{margin-top:-1.25rem}.t-input::-webkit-credentials-auto-fill-button:hover,.t-input::-webkit-contacts-auto-fill-button:hover,.t-input::-webkit-credit-card-auto-fill-button:hover{background-color:var(--tui-text-02)}.t-input:-webkit-autofill,.t-input:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-text-template{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-wrapper-value-decoration{position:relative;pointer-events:none}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiValueDecorationComponent, selector: "tui-value-decoration" }, { type: i3.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i6.TuiAutofilledDirective, selector: "[tuiAutofilledChange]", outputs: ["tuiAutofilledChange"] }, { type: i7.TuiMaskAccessorDirective, selector: "input[tuiMaskAccessor]" }, { type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i9.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
177
177
  __decorate([
178
178
  tuiDefaultProp()
179
179
  ], TuiPrimitiveTextfieldComponent.prototype, "editable", void 0);
@@ -293,4 +293,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
293
293
  type: HostListener,
294
294
  args: [`focusout`, [`false`]]
295
295
  }], getIndent$: [] } });
296
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3ByaW1pdGl2ZS10ZXh0ZmllbGQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBRU4sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsMEJBQTBCLEVBRTFCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IsZ0NBQWdDLEdBRW5DLE1BQU0sZ0RBQWdELENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFzQiwyQkFBMkIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBQyxTQUFTLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFDSCwrQkFBK0IsR0FFbEMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFHdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDO0FBQzFCLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztBQWtCM0IsTUFBTSxPQUFPLDhCQUNULFNBQVEsc0JBQXNCO0lBbUQ5QixZQUMrQixLQUF1QyxFQUN2QixVQUFrQixFQUVwRCxVQUFrQyxFQUdsQyxXQUEyQyxFQUUzQyxPQUFxQyxFQUNULFVBQW1DO1FBRXhFLEtBQUssRUFBRSxDQUFDO1FBWG1CLFVBQUssR0FBTCxLQUFLLENBQWtDO1FBQ3ZCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFFcEQsZUFBVSxHQUFWLFVBQVUsQ0FBd0I7UUFHbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWdDO1FBRTNDLFlBQU8sR0FBUCxPQUFPLENBQThCO1FBQ1QsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFyRDVFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFJaEIsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUlaLGdCQUFXLEdBQWdELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBS3BGLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJakIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUloQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBSWpCLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFJWixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBSWIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUdGLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUtsRCxlQUFVLEdBQUcsS0FBSyxDQUFDO0lBZW5CLENBQUM7SUFFRCxJQUFJLHNCQUFzQjtRQUN0QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNqRCxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsTUFBTSxFQUFDLGFBQWEsRUFBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUU5QyxPQUFPLENBQUMsYUFBYSxDQUFDLHNCQUFzQjtZQUN4QyxhQUFhLENBQTRCLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsSUFDSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFDSSxlQUFlO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQ0ksV0FBVzs7UUFDWCxPQUFPLENBQUMsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsTUFBTSxDQUFBLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNSLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sQ0FDSCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU87WUFDdkIsSUFBSSxDQUFDLFFBQVE7WUFDYixDQUFDLElBQUksQ0FBQyxnQkFBZ0I7WUFDdEIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUNqQixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksVUFBVTs7UUFDVixPQUFPLENBQUMsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsT0FBTyxDQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakUsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNuQixPQUFPLENBQ0gsSUFBSSxDQUFDLE9BQU87WUFDWixJQUFJLENBQUMsa0JBQWtCO1lBQ3ZCLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQzFFLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7O1FBQ2xCLE1BQU0sUUFBUSxHQUNWLENBQUEsTUFBQSxJQUFJLENBQUMsc0JBQXNCLDBDQUFFLFdBQVcsS0FBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUUsTUFBTSxTQUFTLEdBQUcsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBRXJFLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDZCxPQUFPLENBQ0gsQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3pCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUN4RCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sQ0FDSCxJQUFJLENBQUMsbUJBQW1CO1lBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUNqRixDQUFDO0lBQ04sQ0FBQztJQUVELElBQ0ksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUNJLFNBQVM7UUFDVCxPQUFPLFlBQVksQ0FDZixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyxnQkFBZ0IsQ0FDeEIsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFHZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFRCw2Q0FBNkM7SUFDN0MsSUFBSSxJQUFJOztRQUNKLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxzQkFBc0IsMENBQUUsWUFBWSxNQUFLLFFBQVE7WUFDekQsQ0FBQyxDQUFDLGNBQWM7WUFDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNmLENBQUM7SUFFRCxJQUFJLFVBQVU7O1FBQ1YsT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLHNCQUFzQiwwQ0FBRSxFQUFFLEtBQUksRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFJRCxTQUFTLENBQUMsT0FBZ0I7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBR0QsVUFBVSxDQUFDLE9BQW9CO1FBQzNCLE9BQU8sU0FBUyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7U0FDMUM7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBaUI7UUFDekIsTUFBTSxFQUFDLHNCQUFzQixFQUFDLEdBQUcsSUFBSSxDQUFDO1FBRXRDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLHNCQUFzQixFQUFFO1lBQ3BFLE9BQU87U0FDVjtRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsWUFBWSxDQUFDLFVBQW1CO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBWSxlQUFlO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFZLG1CQUFtQjtRQUMzQixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDOUQsQ0FBQztJQUVPLGdCQUFnQixDQUFDLFVBQW1CO1FBQ3hDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLEVBQUU7WUFDaEMsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDakMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OzRIQWpQUSw4QkFBOEIsa0JBcUQzQixRQUFRLGFBQ1Isd0JBQXdCLGFBQ3hCLGdDQUFnQyxhQUdoQyx1QkFBdUIsNkJBRXZCLCtCQUErQixhQUUvQixVQUFVO2dIQTlEYiw4QkFBOEIseXVCQVg1QjtRQUNQLDBCQUEwQixDQUFDLDhCQUE4QixDQUFDO1FBQzFELDZCQUE2QjtRQUM3QixhQUFhO0tBQ2hCLGtEQXNEZ0IsMkJBQTJCLDZMQzdHaEQsbWhJQWlIQTtBRDFDSTtJQURDLGNBQWMsRUFBRTtnRUFDRDtBQUloQjtJQURDLGNBQWMsRUFBRTs4REFDTDtBQUlaO0lBREMsY0FBYyxFQUFFO21FQUNtRTtBQUtwRjtJQURDLGNBQWMsRUFBRTtnRUFDQTtBQUlqQjtJQURDLGNBQWMsRUFBRTsrREFDRDtBQUloQjtJQURDLGNBQWMsRUFBRTtnRUFDQTtBQUlqQjtJQURDLGNBQWMsRUFBRTs4REFDTDtBQUlaO0lBREMsY0FBYyxFQUFFOytEQUNKO0FBSWI7SUFEQyxjQUFjLEVBQUU7NkRBQ047QUFxSlg7SUFEQyxPQUFPO2dFQUdQOzRGQWpNUSw4QkFBOEI7a0JBaEIxQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFdBQVcsRUFBRSxxQ0FBcUM7b0JBQ2xELFNBQVMsRUFBRSxDQUFDLGtDQUFrQyxDQUFDO29CQUMvQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNQLDBCQUEwQixnQ0FBZ0M7d0JBQzFELDZCQUE2Qjt3QkFDN0IsYUFBYTtxQkFDaEI7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLG9CQUFvQixFQUFFLE9BQU87d0JBQzdCLHFCQUFxQixFQUFFLFlBQVk7d0JBQ25DLHdCQUF3QixFQUFFLHlCQUF5QjtxQkFDdEQ7aUJBQ0o7OzBCQXNEUSxNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsd0JBQXdCOzswQkFDL0IsTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUV2QyxRQUFROzswQkFDUixNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBRTlCLE1BQU07MkJBQUMsK0JBQStCOzswQkFFdEMsTUFBTTsyQkFBQyxVQUFVOzRDQXpETCxnQkFBZ0I7c0JBRGhDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUs3QixRQUFRO3NCQUZQLEtBQUs7Z0JBTU4sTUFBTTtzQkFGTCxLQUFLO2dCQU1OLFdBQVc7c0JBRlYsS0FBSztnQkFPTixRQUFRO3NCQUhQLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsaUJBQWlCO2dCQU05QixPQUFPO3NCQUZOLEtBQUs7Z0JBTU4sUUFBUTtzQkFGUCxLQUFLO2dCQU1OLE1BQU07c0JBRkwsS0FBSztnQkFNTixPQUFPO3NCQUZOLEtBQUs7Z0JBTU4sS0FBSztzQkFGSixLQUFLO2dCQUtHLFdBQVc7c0JBRG5CLE1BQU07Z0JBSUUsT0FBTztzQkFEZixlQUFlO3VCQUFDLDJCQUEyQixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQztnQkFvQzdELElBQUk7c0JBRFAsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLGVBQWU7c0JBRGxCLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixXQUFXO3NCQURkLFdBQVc7dUJBQUMsZUFBZTtnQkF5RHhCLFdBQVc7c0JBRGQsV0FBVzt1QkFBQywwQkFBMEI7Z0JBTW5DLFNBQVM7c0JBRFosV0FBVzt1QkFBQyx3QkFBd0I7Z0JBaUNyQyxTQUFTO3NCQUZSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDOztzQkFDaEMsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBTW5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpSW50ZXJhY3RpdmUsXG4gICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWRJbixcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpSGludE9wdGlvbnNEaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaGludCc7XG5pbXBvcnQge1xuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvdGV4dGZpZWxkLWNvbnRyb2xsZXInO1xuaW1wb3J0IHtNT0RFX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfTU9ERSwgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlCcmlnaHRuZXNzLCBUdWlTaXplTCwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpR2V0Qm9yZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0RGlyZWN0aXZlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBUVUlfUFJJTUlUSVZFX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE9wdGlvbnMsXG59IGZyb20gJy4vcHJpbWl0aXZlLXRleHRmaWVsZC1vcHRpb25zJztcbmltcG9ydCB7VHVpUHJpbWl0aXZlVGV4dGZpZWxkfSBmcm9tICcuL3ByaW1pdGl2ZS10ZXh0ZmllbGQtdHlwZXMnO1xuXG5jb25zdCBJQ09OX1BBRERJTkcgPSAxLjc1O1xuY29uc3QgSUNPTl9QQURESU5HX1MgPSAxLjU7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9wcmltaXRpdmUtdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL3ByaW1pdGl2ZS10ZXh0ZmllbGQuc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpLFxuICAgICAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJygkLmRhdGEtbW9kZS5hdHRyKSc6IGBtb2RlJGAsXG4gICAgICAgICdbY2xhc3MuX2F1dG9maWxsZWRdJzogYGF1dG9maWxsZWRgLFxuICAgICAgICAnW2NsYXNzLl9sYWJlbC1vdXRzaWRlXSc6IGBjb250cm9sbGVyLmxhYmVsT3V0c2lkZWAsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aUludGVyYWN0aXZlXG4gICAgaW1wbGVtZW50cyBUdWlQcmltaXRpdmVUZXh0ZmllbGRcbntcbiAgICBAVmlld0NoaWxkKGBmb2N1c2FibGVFbGVtZW50YClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvY3VzYWJsZUVsZW1lbnQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGVkaXRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBmaWxsZXIgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpY29uQ2xlYW5lcjogVHVpUHJpbWl0aXZlVGV4dGZpZWxkT3B0aW9uc1snaWNvbkNsZWFuZXInXSA9IHRoaXMub3B0aW9ucy5pY29uQ2xlYW5lcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fcmVhZG9ubHlgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcmVhZE9ubHkgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpbnZhbGlkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwcmVmaXggPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwb3N0Zml4ID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWUgPSBgYDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFBvbHltb3JwaGV1c091dGxldERpcmVjdGl2ZSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICByZWFkb25seSBjb250ZW50PzogUXVlcnlMaXN0PHVua25vd24+O1xuXG4gICAgYXV0b2ZpbGxlZCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX01PREUpIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPFR1aUJyaWdodG5lc3MgfCBudWxsPixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfUFJJTUlUSVZFX1RFWFRGSUVMRF9PUFRJT05TKVxuICAgICAgICByZWFkb25seSBvcHRpb25zOiBUdWlQcmltaXRpdmVUZXh0ZmllbGRPcHRpb25zLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy5jb21wdXRlZERpc2FibGVkIHx8ICF0aGlzLmZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5mb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIHJldHVybiAobmF0aXZlRWxlbWVudC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nIHx8XG4gICAgICAgICAgICBuYXRpdmVFbGVtZW50KSBhcyBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzTmF0aXZlRm9jdXNlZEluKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplUyB8IFR1aVNpemVMIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2ludmFsaWRgKVxuICAgIGdldCBjb21wdXRlZEludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yZWFkT25seSAmJiAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLmludmFsaWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGlkZGVuYClcbiAgICBnZXQgaW5wdXRIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY29udGVudD8ubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBoYXNWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5jbGVhbmVyICYmXG4gICAgICAgICAgICB0aGlzLmhhc1ZhbHVlICYmXG4gICAgICAgICAgICAhdGhpcy5jb21wdXRlZERpc2FibGVkICYmXG4gICAgICAgICAgICAhdGhpcy5yZWFkT25seVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0N1c3RvbUNvbnRlbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY29udHJvbGxlci5jdXN0b21Db250ZW50O1xuICAgIH1cblxuICAgIGdldCBzaG93T25seVBsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5mb2N1c2VkICYmXG4gICAgICAgICAgICB0aGlzLnBsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgICAgICAgICAgKHRoaXMuc2l6ZSA9PT0gYHNgIHx8ICh0aGlzLnNpemUgPT09IGBtYCAmJiAhdGhpcy5wbGFjZWhvbGRlclJhaXNhYmxlKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNEZWNvciA9XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LnBsYWNlaG9sZGVyIHx8IHRoaXMucHJlZml4IHx8IHRoaXMucG9zdGZpeDtcbiAgICAgICAgY29uc3Qgc2hvd0RlY29yID0gaGFzRGVjb3IgJiYgIXRoaXMucmVhZE9ubHkgJiYgdGhpcy5jb21wdXRlZEZvY3VzZWQ7XG5cbiAgICAgICAgcmV0dXJuICF0aGlzLmhhc1ZhbHVlICYmICFzaG93RGVjb3I7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1BsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXRoaXMuc2hvd09ubHlQbGFjZWhvbGRlciAmJlxuICAgICAgICAgICAgKHRoaXMucGxhY2Vob2xkZXJSYWlzYWJsZSB8fCB0aGlzLnBsYWNlaG9sZGVyVmlzaWJsZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJSYWlzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnBsYWNlaG9sZGVyUmFpc2FibGUgJiZcbiAgICAgICAgICAgICgodGhpcy5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMucmVhZE9ubHkpIHx8IHRoaXMuaGFzVmFsdWUgfHwgdGhpcy5hdXRvZmlsbGVkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItc3RhcnQucmVtYClcbiAgICBnZXQgYm9yZGVyU3RhcnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaWNvbkxlZnRDb250ZW50ID8gdGhpcy5pY29uUGFkZGluZ0xlZnQgOiAwO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItZW5kLnJlbWApXG4gICAgZ2V0IGJvcmRlckVuZCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpR2V0Qm9yZGVyKFxuICAgICAgICAgICAgISF0aGlzLmljb25Db250ZW50LFxuICAgICAgICAgICAgdGhpcy5oYXNDbGVhbmVyLFxuICAgICAgICAgICAgdGhpcy5oYXNUb29sdGlwLFxuICAgICAgICAgICAgdGhpcy5oYXNDdXN0b21Db250ZW50LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpY29uQ29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pY29uO1xuICAgIH1cblxuICAgIGdldCBpY29uTGVmdENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxcbiAgICAgICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPlxuICAgID4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb25MZWZ0O1xuICAgIH1cblxuICAgIC8vIFNhZmFyaSBleHBpcmF0aW9uIGRhdGUgYXV0b2ZpbGwgd29ya2Fyb3VuZFxuICAgIGdldCBuYW1lKCk6ICdjY2V4cGlyeXllYXInIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LmF1dG9jb21wbGV0ZSA9PT0gYGNjLWV4cGBcbiAgICAgICAgICAgID8gYGNjZXhwaXJ5eWVhcmBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5pZCB8fCBgYDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBmb2N1c2luYCwgW2B0cnVlYF0pXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNvdXRgLCBbYGZhbHNlYF0pXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0SW5kZW50JChlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBmcm9tRXZlbnQoZWxlbWVudCwgYHNjcm9sbGApLnBpcGUobWFwKCgpID0+IC0xICogZWxlbWVudC5zY3JvbGxMZWZ0KSk7XG4gICAgfVxuXG4gICAgY2xlYXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA9IGBgO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShgYCk7XG4gICAgfVxuXG4gICAgb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge25hdGl2ZUZvY3VzYWJsZUVsZW1lbnR9ID0gdGhpcztcblxuICAgICAgICBpZiAoIW5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgZXZlbnQudGFyZ2V0ID09PSBuYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBuYXRpdmVGb2N1c2FibGVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25Nb2RlbENoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIG9uQXV0b2ZpbGxlZChhdXRvZmlsbGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQXV0b2ZpbGxlZChhdXRvZmlsbGVkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpY29uUGFkZGluZ0xlZnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gYHNgID8gSUNPTl9QQURESU5HX1MgOiBJQ09OX1BBRERJTkc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgcGxhY2Vob2xkZXJSYWlzYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSAhPT0gYHNgICYmICF0aGlzLmNvbnRyb2xsZXIubGFiZWxPdXRzaWRlO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQXV0b2ZpbGxlZChhdXRvZmlsbGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmF1dG9maWxsZWQgPT09IGF1dG9maWxsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYXV0b2ZpbGxlZCA9IGF1dG9maWxsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudD8uY2hhbmdlcyB8IGFzeW5jXCI+PC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaGludE9wdGlvbnM/LmNoYW5nZSQgfCBhc3luY1wiPjwvbmctY29udGFpbmVyPlxuPGRpdlxuICAgIHR1aVdyYXBwZXJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3dyYXBwZXJcIlxuICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZm9jdXNdPVwiY29tcHV0ZWRGb2N1c2VkXCJcbiAgICBbaG92ZXJdPVwicHNldWRvSG92ZXJcIlxuICAgIFthY3RpdmVdPVwicHNldWRvQWN0aXZlXCJcbiAgICBbaW52YWxpZF09XCJjb21wdXRlZEludmFsaWRcIlxuICAgIFtzdHlsZS4tLXRleHQtaW5kZW50LnB4XT1cImRlY29yLnByZSQgfCBhc3luY1wiXG4gICAgKG1vdXNlZG93bik9XCJvbk1vdXNlRG93bigkZXZlbnQpXCJcbiAgICAoY2xpY2sucHJldmVudC5zaWxlbnQpPVwiKDApXCJcbiAgICAodHVpQXV0b2ZpbGxlZENoYW5nZSk9XCJvbkF1dG9maWxsZWQoJGV2ZW50KVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiaW5wdXRcIj48L25nLWNvbnRlbnQ+XG4gICAgPGlucHV0XG4gICAgICAgICNmb2N1c2FibGVFbGVtZW50XG4gICAgICAgIHR1aU1hc2tBY2Nlc3NvclxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX25hdGl2ZS1pbnB1dFwiXG4gICAgICAgIGNsYXNzPVwidC1pbnB1dFwiXG4gICAgICAgIFthdHRyLmRpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWQgfHwgbnVsbFwiXG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJjb21wdXRlZEludmFsaWRcIlxuICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHkgfHwgIWVkaXRhYmxlXCJcbiAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Nb2RlbENoYW5nZSgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJpbnB1dEhpZGRlblwiXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fdmFsdWVcIlxuICAgICAgICBjbGFzcz1cInQtaW5wdXQgdC1pbnB1dF90ZW1wbGF0ZVwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWlDb250ZW50XCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0LWNvbnRlbnRcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJpY29uTGVmdENvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb24gdC1pY29uX2xlZnRcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpY29uTGVmdENvbnRlbnQgYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnQtcGxhY2Vob2xkZXJfcmFpc2VkXT1cInBsYWNlaG9sZGVyUmFpc2VkXCJcbiAgICAgICAgICAgICAgICBbZm9yXT1cImNvbXB1dGVkSWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyLXZhbHVlLWRlY29yYXRpb25cIj5cbiAgICAgICAgICAgICAgICA8dHVpLXZhbHVlLWRlY29yYXRpb25cbiAgICAgICAgICAgICAgICAgICAgI2RlY29yXG4gICAgICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fdmFsdWUtZGVjb3JhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC12YWx1ZS1kZWNvcmF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnQtaGFzLXZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLnRleHRJbmRlbnQucHhdPVwiZ2V0SW5kZW50JChmb2N1c2FibGVFbGVtZW50KSB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICA+PC90dWktdmFsdWUtZGVjb3JhdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJoYXNDdXN0b21Db250ZW50XCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fY3VzdG9tLWNvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWN1c3RvbS1jb250ZW50XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udHJvbGxlci5jdXN0b21Db250ZW50IGFzIHNyY1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWN1c3RvbS1pY29uXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICpuZ0lmPVwiaGFzQ2xlYW5lclwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX2NsZWFuZXJcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWNsZWFuZXJcIlxuICAgICAgICAgICAgKGNsaWNrLnN0b3ApPVwiY2xlYXIoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb25DbGVhbmVyIGFzIHNyY1wiXG4gICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8dHVpLXRvb2x0aXBcbiAgICAgICAgICAgICpuZ0lmPVwiaGludE9wdGlvbnMgJiYgaGludE9wdGlvbnMuY29udGVudCAmJiAhY29tcHV0ZWREaXNhYmxlZFwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3Rvb2x0aXBcIlxuICAgICAgICAgICAgW2Rlc2NyaWJlSWRdPVwiY29tcHV0ZWRJZFwiXG4gICAgICAgICAgICBbY29udGVudF09XCJoaW50T3B0aW9ucy5jb250ZW50XCJcbiAgICAgICAgICAgIFtkaXJlY3Rpb25dPVwiaGludE9wdGlvbnMuZGlyZWN0aW9uXCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImhpbnRPcHRpb25zLmFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW3Nob3dEZWxheV09XCJoaW50T3B0aW9ucy5zaG93RGVsYXlcIlxuICAgICAgICAgICAgW2hpZGVEZWxheV09XCJoaW50T3B0aW9ucy5oaWRlRGVsYXlcIlxuICAgICAgICA+PC90dWktdG9vbHRpcD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJpY29uQ29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb25Db250ZW50IGFzIHNyYzsgY29udGV4dDogeyRpbXBsaWNpdDogc2l6ZX1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
296
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3ByaW1pdGl2ZS10ZXh0ZmllbGQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBRU4sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsMEJBQTBCLEVBRTFCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IsZ0NBQWdDLEdBRW5DLE1BQU0sZ0RBQWdELENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxRQUFRLEVBQUUsd0JBQXdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUFzQiwyQkFBMkIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzFGLE9BQU8sRUFBQyxTQUFTLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFDLEdBQUcsRUFBQyxN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LFdBQVc7dUJBQUMsaUJBQWlCO2dCQU05QixPQUFPO3NCQUZOLEtBQUs7Z0JBTU4sUUFBUTtzQkFGUCxLQUFLO2dCQU1OLE1BQU07c0JBRkwsS0FBSztnQkFNTixPQUFPO3NCQUZOLEtBQUs7Z0JBTU4sS0FBSztzQkFGSixLQUFLO2dCQUtHLFdBQVc7c0JBRG5CLE1BQU07Z0JBSUUsT0FBTztzQkFEZixlQUFlO3VCQUFDLDJCQUEyQixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQztnQkFvQzdELElBQUk7c0JBRFAsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLGVBQWU7c0JBRGxCLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixXQUFXO3NCQURkLFdBQVc7dUJBQUMsZUFBZTtnQkF5RHhCLFdBQVc7c0JBRGQsV0FBVzt1QkFBQywwQkFBMEI7Z0JBTW5DLFNBQVM7c0JBRFosV0FBVzt1QkFBQyx3QkFBd0I7Z0JBaUNyQyxTQUFTO3NCQUZSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDOztzQkFDaEMsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUM7Z0JBTW5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpSW50ZXJhY3RpdmUsXG4gICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWRJbixcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpSGludE9wdGlvbnNEaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvaGludCc7XG5pbXBvcnQge1xuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvdGV4dGZpZWxkLWNvbnRyb2xsZXInO1xuaW1wb3J0IHtNT0RFX1BST1ZJREVSfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9wcm92aWRlcnMnO1xuaW1wb3J0IHtUVUlfTU9ERSwgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlCcmlnaHRuZXNzLCBUdWlTaXplTCwgVHVpU2l6ZVN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpR2V0Qm9yZGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9taXNjZWxsYW5lb3VzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0RGlyZWN0aXZlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgICBUVUlfUFJJTUlUSVZFX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE9wdGlvbnMsXG59IGZyb20gJy4vcHJpbWl0aXZlLXRleHRmaWVsZC1vcHRpb25zJztcbmltcG9ydCB7VHVpUHJpbWl0aXZlVGV4dGZpZWxkfSBmcm9tICcuL3ByaW1pdGl2ZS10ZXh0ZmllbGQtdHlwZXMnO1xuXG5jb25zdCBJQ09OX1BBRERJTkcgPSAxLjc1O1xuY29uc3QgSUNPTl9QQURESU5HX1MgPSAxLjU7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9wcmltaXRpdmUtdGV4dGZpZWxkLnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL3ByaW1pdGl2ZS10ZXh0ZmllbGQuc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcihUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpLFxuICAgICAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJygkLmRhdGEtbW9kZS5hdHRyKSc6IGBtb2RlJGAsXG4gICAgICAgICdbY2xhc3MuX2F1dG9maWxsZWRdJzogYGF1dG9maWxsZWRgLFxuICAgICAgICAnW2NsYXNzLl9sYWJlbC1vdXRzaWRlXSc6IGBjb250cm9sbGVyLmxhYmVsT3V0c2lkZWAsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBBYnN0cmFjdFR1aUludGVyYWN0aXZlXG4gICAgaW1wbGVtZW50cyBUdWlQcmltaXRpdmVUZXh0ZmllbGRcbntcbiAgICBAVmlld0NoaWxkKGBmb2N1c2FibGVFbGVtZW50YClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvY3VzYWJsZUVsZW1lbnQ/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGVkaXRhYmxlID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBmaWxsZXIgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpY29uQ2xlYW5lcjogVHVpUHJpbWl0aXZlVGV4dGZpZWxkT3B0aW9uc1snaWNvbkNsZWFuZXInXSA9IHRoaXMub3B0aW9ucy5pY29uQ2xlYW5lcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fcmVhZG9ubHlgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcmVhZE9ubHkgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpbnZhbGlkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwcmVmaXggPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwb3N0Zml4ID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdmFsdWUgPSBgYDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFBvbHltb3JwaGV1c091dGxldERpcmVjdGl2ZSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICByZWFkb25seSBjb250ZW50PzogUXVlcnlMaXN0PHVua25vd24+O1xuXG4gICAgYXV0b2ZpbGxlZCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX01PREUpIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPFR1aUJyaWdodG5lc3MgfCBudWxsPixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfUFJJTUlUSVZFX1RFWFRGSUVMRF9PUFRJT05TKVxuICAgICAgICByZWFkb25seSBvcHRpb25zOiBUdWlQcmltaXRpdmVUZXh0ZmllbGRPcHRpb25zLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy5jb21wdXRlZERpc2FibGVkIHx8ICF0aGlzLmZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge25hdGl2ZUVsZW1lbnR9ID0gdGhpcy5mb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIHJldHVybiAobmF0aXZlRWxlbWVudC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nIHx8XG4gICAgICAgICAgICBuYXRpdmVFbGVtZW50KSBhcyBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR1aUlzTmF0aXZlRm9jdXNlZEluKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplUyB8IFR1aVNpemVMIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2ludmFsaWRgKVxuICAgIGdldCBjb21wdXRlZEludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yZWFkT25seSAmJiAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLmludmFsaWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5faGlkZGVuYClcbiAgICBnZXQgaW5wdXRIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY29udGVudD8ubGVuZ3RoO1xuICAgIH1cblxuICAgIGdldCBoYXNWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuY29udHJvbGxlci5jbGVhbmVyICYmXG4gICAgICAgICAgICB0aGlzLmhhc1ZhbHVlICYmXG4gICAgICAgICAgICAhdGhpcy5jb21wdXRlZERpc2FibGVkICYmXG4gICAgICAgICAgICAhdGhpcy5yZWFkT25seVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBoYXNUb29sdGlwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0N1c3RvbUNvbnRlbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY29udHJvbGxlci5jdXN0b21Db250ZW50O1xuICAgIH1cblxuICAgIGdldCBzaG93T25seVBsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5mb2N1c2VkICYmXG4gICAgICAgICAgICB0aGlzLnBsYWNlaG9sZGVyVmlzaWJsZSAmJlxuICAgICAgICAgICAgKHRoaXMuc2l6ZSA9PT0gYHNgIHx8ICh0aGlzLnNpemUgPT09IGBtYCAmJiAhdGhpcy5wbGFjZWhvbGRlclJhaXNhYmxlKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNEZWNvciA9XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LnBsYWNlaG9sZGVyIHx8IHRoaXMucHJlZml4IHx8IHRoaXMucG9zdGZpeDtcbiAgICAgICAgY29uc3Qgc2hvd0RlY29yID0gaGFzRGVjb3IgJiYgIXRoaXMucmVhZE9ubHkgJiYgdGhpcy5jb21wdXRlZEZvY3VzZWQ7XG5cbiAgICAgICAgcmV0dXJuICF0aGlzLmhhc1ZhbHVlICYmICFzaG93RGVjb3I7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1BsYWNlaG9sZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIXRoaXMuc2hvd09ubHlQbGFjZWhvbGRlciAmJlxuICAgICAgICAgICAgKHRoaXMucGxhY2Vob2xkZXJSYWlzYWJsZSB8fCB0aGlzLnBsYWNlaG9sZGVyVmlzaWJsZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJSYWlzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnBsYWNlaG9sZGVyUmFpc2FibGUgJiZcbiAgICAgICAgICAgICgodGhpcy5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMucmVhZE9ubHkpIHx8IHRoaXMuaGFzVmFsdWUgfHwgdGhpcy5hdXRvZmlsbGVkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItc3RhcnQucmVtYClcbiAgICBnZXQgYm9yZGVyU3RhcnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaWNvbkxlZnRDb250ZW50ID8gdGhpcy5pY29uUGFkZGluZ0xlZnQgOiAwO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgc3R5bGUuLS1ib3JkZXItZW5kLnJlbWApXG4gICAgZ2V0IGJvcmRlckVuZCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpR2V0Qm9yZGVyKFxuICAgICAgICAgICAgISF0aGlzLmljb25Db250ZW50LFxuICAgICAgICAgICAgdGhpcy5oYXNDbGVhbmVyLFxuICAgICAgICAgICAgdGhpcy5oYXNUb29sdGlwLFxuICAgICAgICAgICAgdGhpcy5oYXNDdXN0b21Db250ZW50LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpY29uQ29udGVudCgpOiBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pY29uO1xuICAgIH1cblxuICAgIGdldCBpY29uTGVmdENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxcbiAgICAgICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPlxuICAgID4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb25MZWZ0O1xuICAgIH1cblxuICAgIC8vIFNhZmFyaSBleHBpcmF0aW9uIGRhdGUgYXV0b2ZpbGwgd29ya2Fyb3VuZFxuICAgIGdldCBuYW1lKCk6ICdjY2V4cGlyeXllYXInIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LmF1dG9jb21wbGV0ZSA9PT0gYGNjLWV4cGBcbiAgICAgICAgICAgID8gYGNjZXhwaXJ5eWVhcmBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5pZCB8fCBgYDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBmb2N1c2luYCwgW2B0cnVlYF0pXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNvdXRgLCBbYGZhbHNlYF0pXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0SW5kZW50JChlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBmcm9tRXZlbnQoZWxlbWVudCwgYHNjcm9sbGApLnBpcGUobWFwKCgpID0+IC0xICogZWxlbWVudC5zY3JvbGxMZWZ0KSk7XG4gICAgfVxuXG4gICAgY2xlYXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA9IGBgO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShgYCk7XG4gICAgfVxuXG4gICAgb25Nb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge25hdGl2ZUZvY3VzYWJsZUVsZW1lbnR9ID0gdGhpcztcblxuICAgICAgICBpZiAoIW5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgfHwgZXZlbnQudGFyZ2V0ID09PSBuYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBuYXRpdmVGb2N1c2FibGVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25Nb2RlbENoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodmFsdWUpO1xuICAgIH1cblxuICAgIG9uQXV0b2ZpbGxlZChhdXRvZmlsbGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlQXV0b2ZpbGxlZChhdXRvZmlsbGVkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpY29uUGFkZGluZ0xlZnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gYHNgID8gSUNPTl9QQURESU5HX1MgOiBJQ09OX1BBRERJTkc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgcGxhY2Vob2xkZXJSYWlzYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSAhPT0gYHNgICYmICF0aGlzLmNvbnRyb2xsZXIubGFiZWxPdXRzaWRlO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQXV0b2ZpbGxlZChhdXRvZmlsbGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmF1dG9maWxsZWQgPT09IGF1dG9maWxsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYXV0b2ZpbGxlZCA9IGF1dG9maWxsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudD8uY2hhbmdlcyB8IGFzeW5jXCI+PC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaGludE9wdGlvbnM/LmNoYW5nZSQgfCBhc3luY1wiPjwvbmctY29udGFpbmVyPlxuPGRpdlxuICAgIHR1aVdyYXBwZXJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3dyYXBwZXJcIlxuICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZm9jdXNdPVwiY29tcHV0ZWRGb2N1c2VkXCJcbiAgICBbaG92ZXJdPVwicHNldWRvSG92ZXJcIlxuICAgIFthY3RpdmVdPVwicHNldWRvQWN0aXZlXCJcbiAgICBbaW52YWxpZF09XCJjb21wdXRlZEludmFsaWRcIlxuICAgIFtzdHlsZS4tLXRleHQtaW5kZW50LnB4XT1cImRlY29yLnByZSQgfCBhc3luY1wiXG4gICAgKG1vdXNlZG93bik9XCJvbk1vdXNlRG93bigkZXZlbnQpXCJcbiAgICAoY2xpY2sucHJldmVudC5zaWxlbnQpPVwiKDApXCJcbiAgICAodHVpQXV0b2ZpbGxlZENoYW5nZSk9XCJvbkF1dG9maWxsZWQoJGV2ZW50KVwiXG4+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiaW5wdXRcIj48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2VsZWN0XCI+PC9uZy1jb250ZW50PlxuICAgIDxpbnB1dFxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxuICAgICAgICB0dWlNYXNrQWNjZXNzb3JcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19uYXRpdmUtaW5wdXRcIlxuICAgICAgICBjbGFzcz1cInQtaW5wdXRcIlxuICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJjb21wdXRlZERpc2FibGVkIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5IHx8ICFlZGl0YWJsZVwiXG4gICAgICAgIFt0dWlGb2N1c2FibGVdPVwiY29tcHV0ZWRGb2N1c2FibGVcIlxuICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTW9kZWxDaGFuZ2UoJGV2ZW50KVwiXG4gICAgLz5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiaW5wdXRIaWRkZW5cIlxuICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3ZhbHVlXCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0IHQtaW5wdXRfdGVtcGxhdGVcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpQ29udGVudFwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiaWNvbkxlZnRDb250ZW50XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1pY29uIHQtaWNvbl9sZWZ0XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbkxlZnRDb250ZW50IGFzIHNyYzsgY29udGV4dDogeyRpbXBsaWNpdDogc2l6ZX1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidC13cmFwcGVyXCI+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAqbmdJZj1cImhhc1BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy50LXBsYWNlaG9sZGVyX3JhaXNlZF09XCJwbGFjZWhvbGRlclJhaXNlZFwiXG4gICAgICAgICAgICAgICAgW2Zvcl09XCJjb21wdXRlZElkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInQtd3JhcHBlci12YWx1ZS1kZWNvcmF0aW9uXCI+XG4gICAgICAgICAgICAgICAgPHR1aS12YWx1ZS1kZWNvcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICNkZWNvclxuICAgICAgICAgICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX3ZhbHVlLWRlY29yYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdmFsdWUtZGVjb3JhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy50LWhhcy12YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS50ZXh0SW5kZW50LnB4XT1cImdldEluZGVudCQoZm9jdXNhYmxlRWxlbWVudCkgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgPjwvdHVpLXZhbHVlLWRlY29yYXRpb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiaGFzQ3VzdG9tQ29udGVudFwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRfX2N1c3RvbS1jb250ZW50XCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1jdXN0b20tY29udGVudFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImNvbnRyb2xsZXIuY3VzdG9tQ29udGVudCBhcyBzcmNcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jdXN0b20taWNvblwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICAqbmdJZj1cImhhc0NsZWFuZXJcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19jbGVhbmVyXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1jbGVhbmVyXCJcbiAgICAgICAgICAgIChjbGljay5zdG9wKT1cImNsZWFyKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpY29uQ2xlYW5lciBhcyBzcmNcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAqbmdJZj1cImhpbnRPcHRpb25zICYmIGhpbnRPcHRpb25zLmNvbnRlbnQgJiYgIWNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX190b29sdGlwXCJcbiAgICAgICAgICAgIFtkZXNjcmliZUlkXT1cImNvbXB1dGVkSWRcIlxuICAgICAgICAgICAgW2NvbnRlbnRdPVwiaGludE9wdGlvbnMuY29udGVudFwiXG4gICAgICAgICAgICBbZGlyZWN0aW9uXT1cImhpbnRPcHRpb25zLmRpcmVjdGlvblwiXG4gICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJoaW50T3B0aW9ucy5hcHBlYXJhbmNlXCJcbiAgICAgICAgICAgIFtzaG93RGVsYXldPVwiaGludE9wdGlvbnMuc2hvd0RlbGF5XCJcbiAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgPjwvdHVpLXRvb2x0aXA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiaWNvbkNvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpY29uQ29udGVudCBhcyBzcmM7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHNpemV9XCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -27,7 +27,7 @@ export class TuiRootComponent {
27
27
  }
28
28
  }
29
29
  TuiRootComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiRootComponent, deps: [{ token: TUI_ANIMATIONS_DURATION }, { token: ElementRef }, { token: TUI_DIALOGS }, { token: TUI_IS_MOBILE }, { token: TUI_ASSERT_ENABLED }, { token: TUI_IS_MOBILE_RES }, { token: DOCUMENT }, { token: TUI_THEME }], target: i0.ɵɵFactoryTarget.Component });
30
- TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.8.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration" } }, providers: [TUI_IS_MOBILE_RES_PROVIDER], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{position:relative;z-index:0;height:100%}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i3.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i3.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i3.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i4.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
30
+ TuiRootComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiRootComponent, selector: "tui-root", host: { attributes: { "data-tui-version": "3.9.0" }, listeners: { "$.class._mobile": "isMobileRes$" }, properties: { "style.--tui-duration.ms": "duration" } }, providers: [TUI_IS_MOBILE_RES_PROVIDER], ngImport: i0, template: "<tui-scroll-controls\n *ngIf=\"scrollbars$ | async\"\n class=\"t-root-scrollbar\"\n></tui-scroll-controls>\n<tui-svg-defs-host></tui-svg-defs-host>\n<tui-dropdown-host>\n <div class=\"t-root-content\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"tuiOverContent\"></ng-content>\n <tui-dialog-host></tui-dialog-host>\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n <tui-alert-host></tui-alert-host>\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n</tui-dropdown-host>\n<ng-content select=\"tuiOverPortals\"></ng-content>\n<tui-hints-host></tui-hints-host>\n<ng-content select=\"tuiOverHints\"></ng-content>\n", styles: ["@keyframes tuiPresent{to{content:\"1\"}}html,.tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar,html::-webkit-scrollbar-thumb,.tui-zero-scrollbar::-webkit-scrollbar-thumb{background:transparent;width:0;height:0}body{font:var(--tui-font-text-s);color:var(--tui-text-01);margin:0}tui-root{position:relative;display:block;flex:1;-webkit-tap-highlight-color:transparent}tui-root>.t-root-scrollbar{position:fixed;top:0;left:0;bottom:0;right:0;margin:0}.t-root-content{position:relative;z-index:0;height:100%}\n"], components: [{ type: i1.TuiScrollControlsComponent, selector: "tui-scroll-controls" }, { type: i2.TuiSvgDefsHostComponent, selector: "tui-svg-defs-host" }, { type: i3.TuiDropdownHostComponent, selector: "tui-dropdown-host" }, { type: i3.TuiDialogHostComponent, selector: "tui-dialog-host" }, { type: i3.TuiAlertHostComponent, selector: "tui-alert-host" }, { type: i4.TuiHintsHostComponent, selector: "tui-hints-host" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiRootComponent, decorators: [{
32
32
  type: Component,
33
33
  args: [{
@@ -31,15 +31,18 @@ export class TuiScrollbarComponent {
31
31
  this.browserScrollRef.nativeElement = element;
32
32
  }
33
33
  scrollIntoView(detail) {
34
+ var _a;
34
35
  if (this.delegated) {
35
36
  return;
36
37
  }
37
38
  const { nativeElement } = this.browserScrollRef;
38
39
  const { offsetTop, offsetLeft } = tuiGetElementOffset(nativeElement, detail);
39
- nativeElement.scrollTop =
40
- offsetTop + detail.offsetHeight / 2 - nativeElement.clientHeight / 2;
41
- nativeElement.scrollLeft =
42
- offsetLeft + detail.offsetWidth / 2 - nativeElement.clientWidth / 2;
40
+ const { clientHeight, clientWidth } = nativeElement;
41
+ const { offsetHeight, offsetWidth } = detail;
42
+ const scrollTop = offsetTop + offsetHeight / 2 - clientHeight / 2;
43
+ const scrollLeft = offsetLeft + offsetWidth / 2 - clientWidth / 2;
44
+ // ?. for our clients on Windows XP and Chrome 49
45
+ (_a = nativeElement.scrollTo) === null || _a === void 0 ? void 0 : _a.call(nativeElement, scrollLeft, scrollTop);
43
46
  }
44
47
  }
45
48
  TuiScrollbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiScrollbarComponent, deps: [{ token: CSS_TOKEN }, { token: ElementRef }, { token: USER_AGENT }, { token: TUI_IS_IOS }], target: i0.ɵɵFactoryTarget.Component });
@@ -92,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
92
95
  type: HostListener,
93
96
  args: [`${TUI_SCROLL_INTO_VIEW}.stop`, [`$event.detail`]]
94
97
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLEdBQUcsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILFVBQVUsRUFDVixjQUFjLEVBQ2QsbUJBQW1CLEVBRW5CLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7O0FBaUJyRCxNQUFNLE9BQU8scUJBQXFCO0lBYzlCLFlBRXFCLE1BQStDLEVBQzNCLFVBQW1DLEVBQ25DLFNBQWlCLEVBQ2pCLEtBQWM7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBeUM7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFTO1FBbEIvQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRVQsYUFBUSxHQUNyQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7WUFDM0MsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFD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bXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDU1MgYXMgQ1NTX1RPS0VOLCBVU0VSX0FHRU5UfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgVFVJX0lTX0lPUyxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlHZXRFbGVtZW50T2Zmc2V0LFxuICAgIFR1aUluamVjdGlvblRva2VuVHlwZSxcbiAgICB0dWlJc0ZpcmVmb3gsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfU0NST0xMX0lOVE9fVklFVywgVFVJX1NDUk9MTEFCTEV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1zY3JvbGxiYXJgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9zY3JvbGxiYXIudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vc2Nyb2xsYmFyLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1NDUk9MTF9SRUYsXG4gICAgICAgICAgICBkZXBzOiBbVHVpU2Nyb2xsYmFyQ29tcG9uZW50XSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6ICh7XG4gICAgICAgICAgICAgICAgYnJvd3NlclNjcm9sbFJlZixcbiAgICAgICAgICAgIH06IFR1aVNjcm9sbGJhckNvbXBvbmVudCk6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0+IGJyb3dzZXJTY3JvbGxSZWYsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGRlbGVnYXRlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0xlZ2FjeTogYm9vbGVhbiA9XG4gICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cyhgcG9zaXRpb25gLCBgc3RpY2t5YCkgfHxcbiAgICAgICAgKHR1aUlzRmlyZWZveCh0aGlzLnVzZXJBZ2VudCkgJiZcbiAgICAgICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cyhgc2Nyb2xsYmFyLXdpZHRoYCwgYG5vbmVgKSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGlkZGVuID0gZmFsc2U7XG5cbiAgICByZWFkb25seSBicm93c2VyU2Nyb2xsUmVmID0gbmV3IEVsZW1lbnRSZWYodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQ1NTX1RPS0VOKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNzc1JlZjogVHVpSW5qZWN0aW9uVG9rZW5UeXBlPHR5cGVvZiBDU1NfVE9LRU4+LFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVVNFUl9BR0VOVCkgcHJpdmF0ZSByZWFkb25seSB1c2VyQWdlbnQ6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChUVUlfSVNfSU9TKSBwcml2YXRlIHJlYWRvbmx5IGlzSW9zOiBib29sZWFuLFxuICAgICkge31cblxuICAgIGdldCBzaG93U2Nyb2xsYmFycygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmhpZGRlbiAmJiAhdGhpcy5pc0lvcyAmJiAoIXRoaXMuaXNMZWdhY3kgfHwgdGhpcy5kZWxlZ2F0ZWQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2xlZ2FjeWApXG4gICAgZ2V0IHNob3dOYXRpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzTGVnYWN5ICYmICF0aGlzLmhpZGRlbiAmJiAhdGhpcy5kZWxlZ2F0ZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgJHtUVUlfU0NST0xMQUJMRX0uc3RvcGAsIFtgJGV2ZW50LmRldGFpbGBdKVxuICAgIG9uU2Nyb2xsYWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlbGVnYXRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuYnJvd3NlclNjcm9sbFJlZi5uYXRpdmVFbGVtZW50ID0gZWxlbWVudDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGAke1RVSV9TQ1JPTExfSU5UT19WSUVXfS5zdG9wYCwgW2AkZXZlbnQuZGV0YWlsYF0pXG4gICAgc2Nyb2xsSW50b1ZpZXcoZGV0YWlsOiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kZWxlZ2F0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuYnJvd3NlclNjcm9sbFJlZjtcbiAgICAgICAgY29uc3Qge29mZnNldFRvcCwgb2Zmc2V0TGVmdH0gPSB0dWlHZXRFbGVtZW50T2Zmc2V0KG5hdGl2ZUVsZW1lbnQsIGRldGFpbCk7XG5cbiAgICAgICAgbmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPVxuICAgICAgICAgICAgb2Zmc2V0VG9wICsgZGV0YWlsLm9mZnNldEhlaWdodCAvIDIgLSBuYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCAvIDI7XG4gICAgICAgIG5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9XG4gICAgICAgICAgICBvZmZzZXRMZWZ0ICsgZGV0YWlsLm9mZnNldFdpZHRoIC8gMiAtIG5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggLyAyO1xuICAgIH1cbn1cbiIsIjx0dWktc2Nyb2xsLWNvbnRyb2xzICpuZ0lmPVwic2hvd1Njcm9sbGJhcnNcIj48L3R1aS1zY3JvbGwtY29udHJvbHM+XG48ZGl2IGNsYXNzPVwidC1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zY3JvbGxiYXIvc2Nyb2xsYmFyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEdBQ1IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLEdBQUcsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILFVBQVUsRUFDVixjQUFjLEVBQ2QsbUJBQW1CLEVBRW5CLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7O0FBaUJyRCxNQUFNLE9BQU8scUJBQXFCO0lBYzlCLFlBRXFCLE1BQStDLEVBQzNCLFVBQW1DLEVBQ25DLFNBQWlCLEVBQ2pCLEtBQWM7UUFIbEMsV0FBTSxHQUFOLE1BQU0sQ0FBeUM7UUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFTO1FBbEIvQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRVQsYUFBUSxHQUNyQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7WUFDM0MsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFD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QUFZO3VCQUFDLEdBQUcsY0FBYyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBT3pELGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxHQUFHLG9CQUFvQixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDU1MgYXMgQ1NTX1RPS0VOLCBVU0VSX0FHRU5UfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgVFVJX0lTX0lPUyxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlHZXRFbGVtZW50T2Zmc2V0LFxuICAgIFR1aUluamVjdGlvblRva2VuVHlwZSxcbiAgICB0dWlJc0ZpcmVmb3gsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfU0NST0xMX0lOVE9fVklFVywgVFVJX1NDUk9MTEFCTEV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1zY3JvbGxiYXJgLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9zY3JvbGxiYXIudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vc2Nyb2xsYmFyLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1NDUk9MTF9SRUYsXG4gICAgICAgICAgICBkZXBzOiBbVHVpU2Nyb2xsYmFyQ29tcG9uZW50XSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6ICh7XG4gICAgICAgICAgICAgICAgYnJvd3NlclNjcm9sbFJlZixcbiAgICAgICAgICAgIH06IFR1aVNjcm9sbGJhckNvbXBvbmVudCk6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0+IGJyb3dzZXJTY3JvbGxSZWYsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGRlbGVnYXRlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0xlZ2FjeTogYm9vbGVhbiA9XG4gICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cyhgcG9zaXRpb25gLCBgc3RpY2t5YCkgfHxcbiAgICAgICAgKHR1aUlzRmlyZWZveCh0aGlzLnVzZXJBZ2VudCkgJiZcbiAgICAgICAgICAgICF0aGlzLmNzc1JlZi5zdXBwb3J0cyhgc2Nyb2xsYmFyLXdpZHRoYCwgYG5vbmVgKSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGlkZGVuID0gZmFsc2U7XG5cbiAgICByZWFkb25seSBicm93c2VyU2Nyb2xsUmVmID0gbmV3IEVsZW1lbnRSZWYodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQ1NTX1RPS0VOKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNzc1JlZjogVHVpSW5qZWN0aW9uVG9rZW5UeXBlPHR5cGVvZiBDU1NfVE9LRU4+LFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVVNFUl9BR0VOVCkgcHJpdmF0ZSByZWFkb25seSB1c2VyQWdlbnQ6IHN0cmluZyxcbiAgICAgICAgQEluamVjdChUVUlfSVNfSU9TKSBwcml2YXRlIHJlYWRvbmx5IGlzSW9zOiBib29sZWFuLFxuICAgICkge31cblxuICAgIGdldCBzaG93U2Nyb2xsYmFycygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmhpZGRlbiAmJiAhdGhpcy5pc0lvcyAmJiAoIXRoaXMuaXNMZWdhY3kgfHwgdGhpcy5kZWxlZ2F0ZWQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2xlZ2FjeWApXG4gICAgZ2V0IHNob3dOYXRpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzTGVnYWN5ICYmICF0aGlzLmhpZGRlbiAmJiAhdGhpcy5kZWxlZ2F0ZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgJHtUVUlfU0NST0xMQUJMRX0uc3RvcGAsIFtgJGV2ZW50LmRldGFpbGBdKVxuICAgIG9uU2Nyb2xsYWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlbGVnYXRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuYnJvd3NlclNjcm9sbFJlZi5uYXRpdmVFbGVtZW50ID0gZWxlbWVudDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGAke1RVSV9TQ1JPTExfSU5UT19WSUVXfS5zdG9wYCwgW2AkZXZlbnQuZGV0YWlsYF0pXG4gICAgc2Nyb2xsSW50b1ZpZXcoZGV0YWlsOiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kZWxlZ2F0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuYnJvd3NlclNjcm9sbFJlZjtcbiAgICAgICAgY29uc3Qge29mZnNldFRvcCwgb2Zmc2V0TGVmdH0gPSB0dWlHZXRFbGVtZW50T2Zmc2V0KG5hdGl2ZUVsZW1lbnQsIGRldGFpbCk7XG4gICAgICAgIGNvbnN0IHtjbGllbnRIZWlnaHQsIGNsaWVudFdpZHRofSA9IG5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtvZmZzZXRIZWlnaHQsIG9mZnNldFdpZHRofSA9IGRldGFpbDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsVG9wID0gb2Zmc2V0VG9wICsgb2Zmc2V0SGVpZ2h0IC8gMiAtIGNsaWVudEhlaWdodCAvIDI7XG4gICAgICAgIGNvbnN0IHNjcm9sbExlZnQgPSBvZmZzZXRMZWZ0ICsgb2Zmc2V0V2lkdGggLyAyIC0gY2xpZW50V2lkdGggLyAyO1xuXG4gICAgICAgIC8vID8uIGZvciBvdXIgY2xpZW50cyBvbiBXaW5kb3dzIFhQIGFuZCBDaHJvbWUgNDlcbiAgICAgICAgbmF0aXZlRWxlbWVudC5zY3JvbGxUbz8uKHNjcm9sbExlZnQsIHNjcm9sbFRvcCk7XG4gICAgfVxufVxuIiwiPHR1aS1zY3JvbGwtY29udHJvbHMgKm5nSWY9XCJzaG93U2Nyb2xsYmFyc1wiPjwvdHVpLXNjcm9sbC1jb250cm9scz5cbjxkaXYgY2xhc3M9XCJ0LWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Various sizes for components
3
3
  *
4
+ * 'xxs' - extra extra small
4
5
  * 'xs' - extra small
5
6
  * 's' - small
6
7
  * 'm' - medium (typically default)
@@ -9,4 +10,4 @@
9
10
  * 'xxl' - extra extra large
10
11
  */
11
12
  export {};
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvc2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O0dBU0ciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlvdXMgc2l6ZXMgZm9yIGNvbXBvbmVudHNcbiAqXG4gKiAneHMnIC0gZXh0cmEgc21hbGxcbiAqICdzJyAtIHNtYWxsXG4gKiAnbScgLSBtZWRpdW0gKHR5cGljYWxseSBkZWZhdWx0KVxuICogJ2wnIC0gbGFyZ2VcbiAqICd4bCcgLSBleHRyYSBsYXJnZVxuICogJ3h4bCcgLSBleHRyYSBleHRyYSBsYXJnZVxuICovXG5cbmV4cG9ydCB0eXBlIFR1aVNpemVNID0gJ20nO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplUyA9ICdzJyB8IFR1aVNpemVNO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplTCA9IFR1aVNpemVNIHwgJ2wnO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplWFMgPSAneHMnIHwgVHVpU2l6ZVM7XG5cbmV4cG9ydCB0eXBlIFR1aVNpemVYTCA9IFR1aVNpemVMIHwgJ3hsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhYTCA9IFR1aVNpemVYTCB8ICd4eGwnO1xuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvc2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWYXJpb3VzIHNpemVzIGZvciBjb21wb25lbnRzXG4gKlxuICogJ3h4cycgLSBleHRyYSBleHRyYSBzbWFsbFxuICogJ3hzJyAtIGV4dHJhIHNtYWxsXG4gKiAncycgLSBzbWFsbFxuICogJ20nIC0gbWVkaXVtICh0eXBpY2FsbHkgZGVmYXVsdClcbiAqICdsJyAtIGxhcmdlXG4gKiAneGwnIC0gZXh0cmEgbGFyZ2VcbiAqICd4eGwnIC0gZXh0cmEgZXh0cmEgbGFyZ2VcbiAqL1xuXG5leHBvcnQgdHlwZSBUdWlTaXplTSA9ICdtJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVMgPSAncycgfCBUdWlTaXplTTtcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZUwgPSBUdWlTaXplTSB8ICdsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhTID0gJ3hzJyB8IFR1aVNpemVTO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplWFhTID0gJ3h4cycgfCBUdWlTaXplWFM7XG5cbmV4cG9ydCB0eXBlIFR1aVNpemVYTCA9IFR1aVNpemVMIHwgJ3hsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhYTCA9IFR1aVNpemVYTCB8ICd4eGwnO1xuIl19
@@ -1,4 +1,4 @@
1
- const SIZES = [`xs`, `s`, `m`, `l`, `xl`, `xxl`];
1
+ const SIZES = [`xxs`, `xs`, `s`, `m`, `l`, `xl`, `xxl`];
2
2
  /**
3
3
  * Compares size constants to determine if first size is bigger than the second
4
4
  *
@@ -8,4 +8,4 @@ const SIZES = [`xs`, `s`, `m`, `l`, `xl`, `xxl`];
8
8
  export function tuiSizeBigger(size, biggerThanSize = `s`) {
9
9
  return SIZES.indexOf(size) > SIZES.indexOf(biggerThanSize);
10
10
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS1iaWdnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMvc2l6ZS1iaWdnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxLQUFLLEdBQTBDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztBQUV4Rjs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQ3pCLElBQTRCLEVBQzVCLGlCQUF5QyxHQUFHO0lBRTVDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQy9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R1aVNpemVYUywgVHVpU2l6ZVhYTH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG5jb25zdCBTSVpFUzogUmVhZG9ubHlBcnJheTxUdWlTaXplWFMgfCBUdWlTaXplWFhMPiA9IFtgeHNgLCBgc2AsIGBtYCwgYGxgLCBgeGxgLCBgeHhsYF07XG5cbi8qKlxuICogQ29tcGFyZXMgc2l6ZSBjb25zdGFudHMgdG8gZGV0ZXJtaW5lIGlmIGZpcnN0IHNpemUgaXMgYmlnZ2VyIHRoYW4gdGhlIHNlY29uZFxuICpcbiAqIEBwYXJhbSBzaXplIHNpemUgdGhhdCB3ZSBuZWVkIHRvIGNvbXBhcmVcbiAqIEBwYXJhbSBiaWdnZXJUaGFuU2l6ZSBzaXplIHRvIGNvbXBhcmUgd2l0aCwgJ3MnIGJ5IGRlZmF1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR1aVNpemVCaWdnZXIoXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhYTCxcbiAgICBiaWdnZXJUaGFuU2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZVhYTCA9IGBzYCxcbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBTSVpFUy5pbmRleE9mKHNpemUpID4gU0laRVMuaW5kZXhPZihiaWdnZXJUaGFuU2l6ZSk7XG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS1iaWdnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMvc2l6ZS1iaWdnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxLQUFLLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQVUsQ0FBQztBQUVqRTs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQ3pCLElBQTZCLEVBQzdCLGlCQUEwQyxHQUFHO0lBRTdDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQy9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R1aVNpemVYWEwsIFR1aVNpemVYWFN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcblxuY29uc3QgU0laRVMgPSBbYHh4c2AsIGB4c2AsIGBzYCwgYG1gLCBgbGAsIGB4bGAsIGB4eGxgXSBhcyBjb25zdDtcblxuLyoqXG4gKiBDb21wYXJlcyBzaXplIGNvbnN0YW50cyB0byBkZXRlcm1pbmUgaWYgZmlyc3Qgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgc2Vjb25kXG4gKlxuICogQHBhcmFtIHNpemUgc2l6ZSB0aGF0IHdlIG5lZWQgdG8gY29tcGFyZVxuICogQHBhcmFtIGJpZ2dlclRoYW5TaXplIHNpemUgdG8gY29tcGFyZSB3aXRoLCAncycgYnkgZGVmYXVsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpU2l6ZUJpZ2dlcihcbiAgICBzaXplOiBUdWlTaXplWFhTIHwgVHVpU2l6ZVhYTCxcbiAgICBiaWdnZXJUaGFuU2l6ZTogVHVpU2l6ZVhYUyB8IFR1aVNpemVYWEwgPSBgc2AsXG4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gU0laRVMuaW5kZXhPZihzaXplKSA+IFNJWkVTLmluZGV4T2YoYmlnZ2VyVGhhblNpemUpO1xufVxuIl19
@@ -48,7 +48,7 @@ class TuiOptionComponent {
48
48
  }
49
49
  }
50
50
  TuiOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiOptionComponent, deps: [{ token: TUI_OPTION_CONTENT, optional: true }, { token: forwardRef(() => TuiDataListComponent) }, { token: ElementRef }, { token: TUI_DATA_LIST_HOST, optional: true }, { token: TuiDropdownDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
51
- TuiOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: { size: "size", role: "role", disabled: "disabled", value: "value" }, host: { attributes: { "tabIndex": "-1", "type": "button" }, listeners: { "click": "onClick()", "mousemove.init": "onMouseMove($event)", "mousemove.silent": "onMouseMove($event)" }, properties: { "attr.disabled": "disabled || null", "attr.data-size": "this.size", "attr.role": "this.role", "class._with-dropdown": "this.active" } }, ngImport: i0, template: "<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;font:var(--tui-font-text-m);width:100%;align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box;color:var(--tui-text-01);outline:none;text-decoration:none;cursor:pointer;background-clip:padding-box}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host:focus,:host._with-dropdown{background-color:var(--tui-clear-disabled)}:host[data-size=xs]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .75rem}:host[data-size=s]{min-height:2rem;padding:.3125rem .75rem}:host[data-size=m]{min-height:2.75rem;padding:.375rem 1rem}:host[data-size=l]{min-height:3.5rem;padding:.75rem 1rem}.t-arrow{margin:0 -.5rem 0 .75rem}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
51
+ TuiOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: { size: "size", role: "role", disabled: "disabled", value: "value" }, host: { attributes: { "tabIndex": "-1", "type": "button" }, listeners: { "click": "onClick()", "mousemove.init": "onMouseMove($event)", "mousemove.silent": "onMouseMove($event)" }, properties: { "attr.disabled": "disabled || null", "attr.data-size": "this.size", "attr.role": "this.role", "class._with-dropdown": "this.active" } }, ngImport: i0, template: "<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n", styles: [":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;font:var(--tui-font-text-m);align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box;color:var(--tui-text-01);border-radius:var(--tui-radius-s);outline:none;text-decoration:none;cursor:pointer;background-clip:padding-box}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host:focus,:host._with-dropdown{background-color:var(--tui-clear-disabled)}:host[data-size=xs]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .375rem;margin:.0625rem .375rem}:host[data-size=s]{min-height:2rem;padding:.3125rem .375rem;margin:.0625rem .375rem}:host[data-size=m]{min-height:2.75rem;padding:.375rem .5rem;margin:.125rem .5rem}:host[data-size=l]{min-height:3.5rem;padding:.375rem .5rem;margin:.125rem .5rem}.t-arrow{margin:0 -.5rem 0 .75rem}\n"], components: [{ type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], directives: [{ type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
52
  __decorate([
53
53
  tuiDefaultProp()
54
54
  ], TuiOptionComponent.prototype, "size", void 0);
@@ -172,7 +172,7 @@ class TuiDataListComponent {
172
172
  }
173
173
  }
174
174
  TuiDataListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDataListComponent, deps: [{ token: ElementRef }, { token: TUI_NOTHING_FOUND_MESSAGE }], target: i0.ɵɵFactoryTarget.Component });
175
- TuiDataListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDataListComponent, selector: "tui-data-list", inputs: { role: "role", emptyContent: "emptyContent" }, host: { listeners: { "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()", "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)" }, properties: { "attr.role": "this.role" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOptionComponent; }), descendants: true }], ngImport: i0, template: "<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n", styles: ["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.5rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;font:var(--tui-font-text-xs);flex-direction:column;line-height:2rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:.5rem 1rem;color:var(--tui-text-02);line-height:1rem;white-space:normal}tui-opt-group:not(:empty)~tui-opt-group:before{padding:1.5rem 1rem .5rem}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before{padding:1rem 0 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\";position:absolute;left:0;right:0;top:.5rem;height:1px;background:var(--tui-base-03)}tui-opt-group[data-label=\"\"]:before{padding:0 1rem}\n"], directives: [{ type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i1$1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
175
+ TuiDataListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDataListComponent, selector: "tui-data-list", inputs: { role: "role", emptyContent: "emptyContent" }, host: { listeners: { "focusin": "onFocusIn($event.relatedTarget,$event.currentTarget)", "mousedown.prevent": "noop()", "keydown.arrowDown.prevent": "onKeyDownArrow($event.target,1)", "keydown.arrowUp.prevent": "onKeyDownArrow($event.target,-1)", "wheel.silent.passive": "handleFocusLossIfNecessary()", "mouseleave": "handleFocusLossIfNecessary($event.target)" }, properties: { "attr.role": "this.role" } }, providers: [tuiAsDataListAccessor(TuiDataListComponent)], queries: [{ propertyName: "options", predicate: i0.forwardRef(function () { return TuiOptionComponent; }), descendants: true }], ngImport: i0, template: "<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n", styles: ["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.375rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{position:relative;display:flex;font:var(--tui-font-text-s);color:var(--tui-text-02);flex-direction:column;line-height:1rem}tui-opt-group:empty:before,tui-opt-group:empty:after{display:none}tui-opt-group:before{content:attr(data-label);padding:.375rem 1rem .75rem;line-height:1rem;white-space:normal}tui-opt-group:not(:empty)~tui-opt-group:before{padding:.875rem 1rem .75rem}tui-opt-group:not(:empty)~tui-opt-group[data-label=\"\"]:before{padding:.5rem 0 0}tui-opt-group:not(:empty)~tui-opt-group:after{content:\"\";position:absolute;left:1rem;right:1rem;top:.25rem;height:1px;background:var(--tui-base-03)}tui-opt-group[data-label=\"\"]:before{padding:0 1rem}\n"], directives: [{ type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i1$1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
176
176
  __decorate([
177
177
  tuiDefaultProp()
178
178
  ], TuiDataListComponent.prototype, "role", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-data-list.js","sources":["../../../projects/core/components/data-list/option/option.component.ts","../../../projects/core/components/data-list/option/option.template.html","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.module.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiDataListComponent} from '../data-list.component';\n\nfunction shouldFocus({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !tuiIsNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: `./option.template.html`,\n styleUrls: [`./option.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: `-1`,\n type: `button`,\n '[attr.disabled]': `disabled || null`,\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = `m`;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiOptionRole = `option`;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding(`class._with-dropdown`)\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener(`click`)\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener(`mousemove.init`, [`$event`])\n @HostListener(`mousemove.silent`, [`$event`])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n currentTarget.focus({preventScroll: true});\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsElement,\n tuiIsNativeFocusedIn,\n tuiIsPresent,\n tuiItemsQueryListObservable,\n tuiMoveFocus,\n tuiPure,\n tuiSetNativeMouseFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_NOTHING_FOUND_MESSAGE, tuiAsDataListAccessor} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n selector: `tui-data-list`,\n templateUrl: `./data-list.template.html`,\n styleUrls: [`./data-list.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [tuiAsDataListAccessor(TuiDataListComponent)],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiDataListRole = `listbox`;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return tuiItemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener(`focusin`, [`$event.relatedTarget`, `$event.currentTarget`])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener(`mousedown.prevent`)\n noop(): void {}\n\n @HostListener(`keydown.arrowDown.prevent`, [`$event.target`, `1`])\n @HostListener(`keydown.arrowUp.prevent`, [`$event.target`, `-1`])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener(`wheel.silent.passive`)\n @HostListener(`mouseleave`, [`$event.target`])\n handleFocusLossIfNecessary(element: Element = this.elementRef.nativeElement): void {\n if (this.origin && tuiIsNativeFocusedIn(element)) {\n tuiSetNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n if (!tuiIsElement(target)) {\n return;\n }\n\n const {elements} = this;\n\n tuiMoveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll(`[tuiOption]`));\n }\n}\n","<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiDataList]`,\n})\nexport class TuiDataListDirective {}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: `tui-opt-group`,\n host: {\n role: `group`,\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding(`attr.data-label`)\n @tuiDefaultProp()\n label = ``;\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-components-data-list.js","sources":["../../../projects/core/components/data-list/option/option.component.ts","../../../projects/core/components/data-list/option/option.template.html","../../../projects/core/components/data-list/data-list.component.ts","../../../projects/core/components/data-list/data-list.template.html","../../../projects/core/components/data-list/data-list.directive.ts","../../../projects/core/components/data-list/opt-group.directive.ts","../../../projects/core/components/data-list/data-list.module.ts","../../../projects/core/components/data-list/taiga-ui-core-components-data-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiDataListComponent} from '../data-list.component';\n\nfunction shouldFocus({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !tuiIsNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: `./option.template.html`,\n styleUrls: [`./option.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: `-1`,\n type: `button`,\n '[attr.disabled]': `disabled || null`,\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding(`attr.data-size`)\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = `m`;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiOptionRole = `option`;\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: TuiDataListComponent<T>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding(`class._with-dropdown`)\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener(`click`)\n onClick(): void {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener(`mousemove.init`, [`$event`])\n @HostListener(`mousemove.silent`, [`$event`])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>): void {\n currentTarget.focus({preventScroll: true});\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy(): void {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","<ng-container *polymorpheusOutlet=\"content || base as text; context: {$implicit: base}\">\n {{ text }}\n</ng-container>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n tuiDefaultProp,\n tuiIsElement,\n tuiIsNativeFocusedIn,\n tuiIsPresent,\n tuiItemsQueryListObservable,\n tuiMoveFocus,\n tuiPure,\n tuiSetNativeMouseFocused,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_NOTHING_FOUND_MESSAGE, tuiAsDataListAccessor} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// TODO: find the best way for prevent cycle\n// eslint-disable-next-line import/no-cycle\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n@Component({\n selector: `tui-data-list`,\n templateUrl: `./data-list.template.html`,\n styleUrls: [`./data-list.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [tuiAsDataListAccessor(TuiDataListComponent)],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding(`attr.role`)\n @tuiDefaultProp()\n role: TuiDataListRole = `listbox`;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = ``;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return tuiItemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener(`focusin`, [`$event.relatedTarget`, `$event.currentTarget`])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement): void {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener(`mousedown.prevent`)\n noop(): void {}\n\n @HostListener(`keydown.arrowDown.prevent`, [`$event.target`, `1`])\n @HostListener(`keydown.arrowUp.prevent`, [`$event.target`, `-1`])\n onKeyDownArrow(current: HTMLElement, step: number): void {\n const {elements} = this;\n\n tuiMoveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener(`wheel.silent.passive`)\n @HostListener(`mouseleave`, [`$event.target`])\n handleFocusLossIfNecessary(element: Element = this.elementRef.nativeElement): void {\n if (this.origin && tuiIsNativeFocusedIn(element)) {\n tuiSetNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(tuiIsPresent);\n }\n\n onFocus({target}: Event, top: boolean): void {\n if (!tuiIsElement(target)) {\n return;\n }\n\n const {elements} = this;\n\n tuiMoveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll(`[tuiOption]`));\n }\n}\n","<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n class=\"t-empty\"\n>\n <ng-container *polymorpheusOutlet=\"emptyContent || (defaultEmptyContent$ | async) as text\">\n {{ text }}\n </ng-container>\n</div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiDataList]`,\n})\nexport class TuiDataListDirective {}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: `tui-opt-group`,\n host: {\n role: `group`,\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding(`attr.data-label`)\n @tuiDefaultProp()\n label = ``;\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, ElementRef, Component, ChangeDetectionStrategy, Inject, HostBinding, Injectable, Directive, NgModule } from '@angular/core';
2
+ import { InjectionToken, ElementRef, Component, ChangeDetectionStrategy, Inject, HostBinding, inject, Injectable, Directive, NgModule } from '@angular/core';
3
3
  import * as i4 from '@taiga-ui/cdk';
4
4
  import { TuiDestroyService, tuiTypedFromEvent, tuiIsCurrentTarget, tuiIsElement, tuiContainsOrAfter, TUI_IS_MOBILE, AbstractTuiDialogService, AbstractTuiDialogDirective, TuiPreventDefaultModule, tuiAsDialog } from '@taiga-ui/cdk';
5
5
  import { tuiSlideInTop, tuiFadeIn } from '@taiga-ui/core/animations';
@@ -135,8 +135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
135
135
  args: [`@tuiFadeIn`]
136
136
  }] } });
137
137
 
138
- const DIALOG = new PolymorpheusComponent(TuiDialogComponent);
139
- const DEFAULT_OPTIONS = {
138
+ const TUI_DIALOG_DEFAULT_OPTIONS = {
140
139
  size: `m`,
141
140
  required: false,
142
141
  closeable: true,
@@ -144,11 +143,22 @@ const DEFAULT_OPTIONS = {
144
143
  label: ``,
145
144
  header: ``,
146
145
  };
146
+ const TUI_DIALOG_OPTIONS = new InjectionToken(`[TUI_DIALOG_OPTIONS]: Default parameters for dialog component`, {
147
+ factory: () => TUI_DIALOG_DEFAULT_OPTIONS,
148
+ });
149
+ function tuiDialogOptionsProvider(options) {
150
+ return {
151
+ provide: TUI_DIALOG_OPTIONS,
152
+ useValue: Object.assign(Object.assign({}, TUI_DIALOG_DEFAULT_OPTIONS), options),
153
+ };
154
+ }
155
+
156
+ const DIALOG = new PolymorpheusComponent(TuiDialogComponent);
147
157
  class TuiDialogService extends AbstractTuiDialogService {
148
158
  constructor() {
149
159
  super(...arguments);
150
160
  this.component = DIALOG;
151
- this.defaultOptions = DEFAULT_OPTIONS;
161
+ this.defaultOptions = Object.assign(Object.assign({}, inject(TUI_DIALOG_OPTIONS)), { data: undefined });
152
162
  }
153
163
  }
154
164
  TuiDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDialogService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
@@ -203,5 +213,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
203
213
  * Generated bundle index. Do not edit.
204
214
  */
205
215
 
206
- export { TUI_DIALOGS_CLOSE, TUI_DIALOG_CLOSE_STREAM, TUI_DIALOG_PROVIDERS, TuiDialogComponent, TuiDialogDirective, TuiDialogModule, TuiDialogService };
216
+ export { TUI_DIALOGS_CLOSE, TUI_DIALOG_CLOSE_STREAM, TUI_DIALOG_DEFAULT_OPTIONS, TUI_DIALOG_OPTIONS, TUI_DIALOG_PROVIDERS, TuiDialogComponent, TuiDialogDirective, TuiDialogModule, TuiDialogService, tuiDialogOptionsProvider };
207
217
  //# sourceMappingURL=taiga-ui-core-components-dialog.js.map