@koobiq/components 18.31.0 → 18.32.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 (215) hide show
  1. package/actions-panel/actions-panel-config.d.ts +2 -0
  2. package/actions-panel/actions-panel.d.ts +3 -57
  3. package/autocomplete/autocomplete-trigger.directive.d.ts +3 -4
  4. package/autocomplete/autocomplete.component.d.ts +1 -0
  5. package/autocomplete/autocomplete.module.d.ts +1 -1
  6. package/button-toggle/button-toggle.module.d.ts +3 -4
  7. package/code-block/code-block-highlight.d.ts +1 -2
  8. package/code-block/code-block.d.ts +57 -10
  9. package/core/common-behaviors/color.d.ts +3 -0
  10. package/core/common-behaviors/common-module.d.ts +16 -3
  11. package/core/form-field/form-field-ref.d.ts +5 -3
  12. package/core/option/option.d.ts +2 -2
  13. package/core/public-api.d.ts +1 -0
  14. package/core/styles/common/_select.scss +10 -24
  15. package/core/styles/theming/_theming.scss +0 -4
  16. package/core/tokens/index.d.ts +1 -0
  17. package/core/tokens/window.d.ts +5 -0
  18. package/core/validation/validation.d.ts +23 -2
  19. package/datepicker/datepicker-input.scss +1 -5
  20. package/dropdown/dropdown-trigger.directive.d.ts +1 -0
  21. package/ellipsis-center/ellipsis-center.directive.d.ts +7 -1
  22. package/esm2022/actions-panel/actions-panel-config.mjs +1 -1
  23. package/esm2022/actions-panel/actions-panel.mjs +16 -113
  24. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +9 -13
  25. package/esm2022/autocomplete/autocomplete.component.mjs +10 -2
  26. package/esm2022/autocomplete/autocomplete.module.mjs +5 -11
  27. package/esm2022/breadcrumbs/breadcrumbs.mjs +1 -1
  28. package/esm2022/button-toggle/button-toggle.module.mjs +5 -6
  29. package/esm2022/code-block/code-block-highlight.mjs +8 -12
  30. package/esm2022/code-block/code-block.mjs +60 -18
  31. package/esm2022/core/common-behaviors/color.mjs +4 -1
  32. package/esm2022/core/common-behaviors/common-module.mjs +19 -26
  33. package/esm2022/core/form-field/form-field-ref.mjs +3 -4
  34. package/esm2022/core/option/option.mjs +7 -5
  35. package/esm2022/core/public-api.mjs +2 -1
  36. package/esm2022/core/tokens/index.mjs +2 -0
  37. package/esm2022/core/tokens/window.mjs +19 -0
  38. package/esm2022/core/utils/utils.mjs +2 -1
  39. package/esm2022/core/validation/validation.mjs +21 -2
  40. package/esm2022/core/version.mjs +2 -2
  41. package/esm2022/datepicker/calendar-body.component.mjs +3 -3
  42. package/esm2022/datepicker/calendar-header.component.mjs +3 -3
  43. package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -3
  44. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +8 -1
  45. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  46. package/esm2022/filter-bar/filter-bar.mjs +17 -3
  47. package/esm2022/filter-bar/filter-search.mjs +2 -2
  48. package/esm2022/filter-bar/filters.mjs +3 -3
  49. package/esm2022/filter-bar/pipes/pipe-date.mjs +5 -11
  50. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +5 -11
  51. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +2 -2
  52. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +2 -2
  53. package/esm2022/filter-bar/pipes/pipe-select.mjs +2 -2
  54. package/esm2022/filter-bar/pipes/pipe-text.mjs +2 -2
  55. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +2 -2
  56. package/esm2022/form-field/cleaner.mjs +11 -6
  57. package/esm2022/form-field/error.mjs +20 -0
  58. package/esm2022/form-field/fieldset.mjs +84 -0
  59. package/esm2022/form-field/form-field-control.mjs +2 -2
  60. package/esm2022/form-field/form-field.mjs +247 -74
  61. package/esm2022/form-field/form-field.module.mjs +59 -47
  62. package/esm2022/form-field/hint.mjs +10 -18
  63. package/esm2022/form-field/label.mjs +19 -0
  64. package/esm2022/form-field/password-hint.mjs +6 -5
  65. package/esm2022/form-field/password-toggle.mjs +52 -27
  66. package/esm2022/form-field/prefix.mjs +9 -3
  67. package/esm2022/form-field/public-api.mjs +5 -2
  68. package/esm2022/form-field/reactive-password-hint.mjs +65 -0
  69. package/esm2022/form-field/stepper.mjs +34 -16
  70. package/esm2022/form-field/suffix.mjs +8 -3
  71. package/esm2022/form-field/validate.directive.mjs +16 -19
  72. package/esm2022/input/input-number.mjs +7 -2
  73. package/esm2022/input/input.module.mjs +1 -5
  74. package/esm2022/modal/modal-util.mjs +2 -1
  75. package/esm2022/navbar/navbar-item.component.mjs +10 -11
  76. package/esm2022/overflow-items/overflow-items.mjs +27 -10
  77. package/esm2022/radio/radio.module.mjs +4 -5
  78. package/esm2022/scrollbar/scrollbar.component.mjs +14 -11
  79. package/esm2022/scrollbar/scrollbar.directive.mjs +2 -1
  80. package/esm2022/select/select.component.mjs +11 -8
  81. package/esm2022/sidepanel/sidepanel.module.mjs +1 -5
  82. package/esm2022/splitter/splitter.component.mjs +5 -3
  83. package/esm2022/tabs/paginated-tab-header.mjs +6 -2
  84. package/esm2022/tabs/tabs.module.mjs +1 -5
  85. package/esm2022/tags/tag-list.component.mjs +2 -2
  86. package/esm2022/textarea/textarea.component.mjs +7 -6
  87. package/esm2022/textarea/textarea.module.mjs +4 -5
  88. package/esm2022/timezone/timezone-select.component.mjs +6 -4
  89. package/esm2022/toast/toast-animations.mjs +2 -2
  90. package/esm2022/toast/toast.component.mjs +3 -3
  91. package/esm2022/toggle/toggle.component.mjs +3 -3
  92. package/esm2022/toggle/toggle.module.mjs +4 -5
  93. package/esm2022/top-bar/top-bar.mjs +2 -2
  94. package/esm2022/tree/padding.directive.mjs +8 -6
  95. package/esm2022/tree-select/tree-select.component.mjs +18 -13
  96. package/fesm2022/koobiq-components-actions-panel.mjs +16 -112
  97. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  98. package/fesm2022/koobiq-components-autocomplete.mjs +21 -24
  99. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-breadcrumbs.mjs +1 -1
  101. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-button-toggle.mjs +5 -5
  103. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-code-block.mjs +65 -28
  105. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-core.mjs +68 -35
  107. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-datepicker.mjs +4 -4
  109. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-dropdown.mjs +3 -2
  111. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-ellipsis-center.mjs +7 -0
  113. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-file-upload.mjs +1 -1
  115. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-filter-bar.mjs +30 -29
  117. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-form-field.mjs +610 -219
  119. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  120. package/fesm2022/koobiq-components-input.mjs +7 -5
  121. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-modal.mjs +1 -0
  123. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  124. package/fesm2022/koobiq-components-navbar.mjs +9 -10
  125. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  126. package/fesm2022/koobiq-components-overflow-items.mjs +26 -9
  127. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  128. package/fesm2022/koobiq-components-radio.mjs +4 -4
  129. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  130. package/fesm2022/koobiq-components-scrollbar.mjs +14 -10
  131. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  132. package/fesm2022/koobiq-components-select.mjs +11 -8
  133. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  134. package/fesm2022/koobiq-components-sidepanel.mjs +1 -4
  135. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-splitter.mjs +4 -2
  137. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  138. package/fesm2022/koobiq-components-tabs.mjs +5 -5
  139. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  140. package/fesm2022/koobiq-components-tags.mjs +2 -2
  141. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  142. package/fesm2022/koobiq-components-textarea.mjs +9 -8
  143. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  144. package/fesm2022/koobiq-components-timezone.mjs +5 -3
  145. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  146. package/fesm2022/koobiq-components-toast.mjs +3 -3
  147. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  148. package/fesm2022/koobiq-components-toggle.mjs +6 -6
  149. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  150. package/fesm2022/koobiq-components-top-bar.mjs +2 -2
  151. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  152. package/fesm2022/koobiq-components-tree-select.mjs +18 -13
  153. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  154. package/fesm2022/koobiq-components-tree.mjs +7 -5
  155. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  156. package/file-upload/multiple-file-upload.component.d.ts +1 -1
  157. package/form-field/_fiedset-theme.scss +13 -0
  158. package/form-field/_form-field-theme.scss +29 -13
  159. package/form-field/_hint-theme.scss +21 -22
  160. package/form-field/cleaner.d.ts +5 -1
  161. package/form-field/cleaner.scss +1 -4
  162. package/form-field/error.d.ts +8 -0
  163. package/form-field/fieldset-tokens.scss +5 -0
  164. package/form-field/fieldset.d.ts +27 -0
  165. package/form-field/fieldset.scss +93 -0
  166. package/form-field/form-field-control.d.ts +1 -1
  167. package/form-field/form-field-tokens.scss +13 -3
  168. package/form-field/form-field.d.ts +210 -22
  169. package/form-field/form-field.module.d.ts +14 -12
  170. package/form-field/form-field.scss +58 -78
  171. package/form-field/hint.d.ts +5 -1
  172. package/form-field/hint.scss +3 -5
  173. package/form-field/label.d.ts +6 -0
  174. package/form-field/password-hint.d.ts +1 -1
  175. package/form-field/password-toggle.d.ts +25 -11
  176. package/form-field/password-toggle.scss +1 -2
  177. package/form-field/prefix.d.ts +2 -1
  178. package/form-field/public-api.d.ts +4 -1
  179. package/form-field/reactive-password-hint.d.ts +19 -0
  180. package/form-field/stepper.d.ts +20 -8
  181. package/form-field/stepper.scss +12 -11
  182. package/form-field/suffix.d.ts +2 -1
  183. package/form-field/validate.directive.d.ts +10 -12
  184. package/input/input-tokens.scss +2 -2
  185. package/input/input.module.d.ts +3 -4
  186. package/input/input.scss +1 -2
  187. package/navbar/navbar-item.component.d.ts +3 -1
  188. package/overflow-items/overflow-items.d.ts +12 -5
  189. package/package.json +4 -4
  190. package/prebuilt-themes/dark-theme.css +1 -1
  191. package/prebuilt-themes/light-theme.css +1 -1
  192. package/prebuilt-themes/theme.css +1 -1
  193. package/radio/radio.module.d.ts +1 -2
  194. package/schematics/ng-add/index.js +2 -2
  195. package/scrollbar/scrollbar.component.d.ts +1 -0
  196. package/select/select-tokens.scss +5 -4
  197. package/select/select.component.d.ts +4 -2
  198. package/sidepanel/sidepanel.module.d.ts +5 -6
  199. package/splitter/splitter.component.d.ts +1 -0
  200. package/tabs/paginated-tab-header.d.ts +1 -0
  201. package/tabs/tabs.module.d.ts +5 -6
  202. package/tags/tag-list.scss +8 -4
  203. package/textarea/textarea.component.d.ts +1 -0
  204. package/textarea/textarea.module.d.ts +2 -3
  205. package/timepicker/timepicker.scss +1 -1
  206. package/toast/toast.component.scss +2 -0
  207. package/toggle/_toggle-theme.scss +10 -2
  208. package/toggle/toggle-tokens.scss +7 -1
  209. package/toggle/toggle.module.d.ts +1 -2
  210. package/toggle/toggle.scss +6 -6
  211. package/top-bar/top-bar.scss +48 -32
  212. package/tree/padding.directive.d.ts +1 -1
  213. package/tree-select/tree-select.component.d.ts +2 -0
  214. package/esm2022/form-field/form-field-errors.mjs +0 -7
  215. package/form-field/form-field-errors.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-toggle.mjs","sources":["../../../packages/components/toggle/toggle.component.ts","../../../packages/components/toggle/toggle.component.html","../../../packages/components/toggle/toggle.module.ts","../../../packages/components/toggle/koobiq-components-toggle.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n AfterViewInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n inject,\n Input,\n numberAttribute,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { KBQ_CHECKBOX_CLICK_ACTION, TransitionCheckState } from '@koobiq/components/checkbox';\nimport { KbqAnimationCurves, KbqAnimationDurations, KbqCheckedState, KbqColorDirective } from '@koobiq/components/core';\n\nlet nextUniqueId = 0;\n\ntype ToggleLabelPositionType = 'left' | 'right';\n\nexport class KbqToggleChange {\n source: KbqToggleComponent;\n checked: boolean;\n}\n\n@Component({\n selector: 'kbq-toggle',\n exportAs: 'kbqToggle',\n templateUrl: './toggle.component.html',\n styleUrls: ['./toggle.scss', './toggle-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-toggle',\n '[class.kbq-toggle_big]': 'big',\n '[id]': 'id',\n '[attr.id]': 'id',\n '[class.kbq-disabled]': 'disabled || loading',\n '[class.kbq-active]': 'checked',\n '[class.kbq-indeterminate]': 'indeterminate'\n },\n animations: [\n trigger('switch', [\n state(TransitionCheckState.Init, style({ left: '3px' })),\n state(TransitionCheckState.Unchecked, style({ left: '3px' })),\n state(TransitionCheckState.Indeterminate, style({ left: '10px', visibility: 'hidden' })),\n state(TransitionCheckState.Checked, style({ left: 'calc(100% - 11px)' })),\n transition(\n `${TransitionCheckState.Init} => ${TransitionCheckState.Checked}`,\n animate(KbqAnimationDurations.Entering)\n ),\n transition(\n `${TransitionCheckState.Checked} <=> ${TransitionCheckState.Unchecked}`,\n animate(KbqAnimationDurations.Rapid)\n ),\n transition(\n `${TransitionCheckState.Indeterminate} => *`,\n animate(`${KbqAnimationDurations.Instant} ${KbqAnimationCurves.EaseInOut}`)\n )])\n\n ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => KbqToggleComponent),\n multi: true\n }\n ]\n})\nexport class KbqToggleComponent extends KbqColorDirective implements AfterViewInit, ControlValueAccessor, OnDestroy {\n @Input() big: boolean = false;\n\n @ViewChild('input', { static: false }) inputElement: ElementRef<HTMLInputElement>;\n\n @Input() labelPosition: ToggleLabelPositionType = 'right';\n\n @Input('aria-label') ariaLabel: string = '';\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n @Input() id: string;\n\n get inputId(): string {\n return `${this.id || this.uniqueId}-input`;\n }\n\n @Input() name: string | null = null;\n\n @Input() value: string;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n\n set disabled(value: any) {\n if (value !== this._disabled) {\n this._disabled = value;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n private _disabled: boolean = false;\n\n @Input({ transform: numberAttribute })\n get tabIndex(): number {\n return this.disabled ? -1 : this._tabIndex;\n }\n\n set tabIndex(value: number) {\n this._tabIndex = value;\n }\n\n private _tabIndex = 0;\n\n get checked() {\n return this._checked;\n }\n\n @Input()\n set checked(value: boolean) {\n if (value !== this._checked) {\n this._checked = value;\n this.setTransitionCheckState();\n this.changeDetectorRef.markForCheck();\n }\n }\n\n private _checked: boolean = false;\n\n /**\n * Whether the toggle is indeterminate. This is also known as \"mixed\" mode and can be used to\n * represent a checkbox with three states, e.g. a checkbox that represents a nested list of\n * checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately\n * set to false.\n */\n @Input({ transform: booleanAttribute })\n get indeterminate(): boolean {\n return this._indeterminate;\n }\n\n set indeterminate(value: boolean) {\n const changed = value !== this._indeterminate;\n\n this._indeterminate = value;\n\n if (changed) {\n this.setTransitionCheckState();\n this.indeterminateChange.emit(this._indeterminate);\n }\n }\n\n private _indeterminate: boolean = false;\n /**\n * Property for manually set loading state.\n */\n @Input({ transform: booleanAttribute }) loading: boolean = false;\n\n @Output() readonly change: EventEmitter<KbqToggleChange> = new EventEmitter<KbqToggleChange>();\n\n /** Event emitted when the toggle's `indeterminate` value changes. */\n @Output() readonly indeterminateChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @docs-private */\n protected currentCheckState: TransitionCheckState = TransitionCheckState.Init;\n\n protected clickAction = inject(KBQ_CHECKBOX_CLICK_ACTION, { optional: true });\n\n private uniqueId: string = `kbq-toggle-${++nextUniqueId}`;\n\n constructor(\n private focusMonitor: FocusMonitor,\n private changeDetectorRef: ChangeDetectorRef\n ) {\n super();\n\n this.id = this.uniqueId;\n }\n\n ngAfterViewInit(): void {\n this.focusMonitor.monitor(this.elementRef.nativeElement, true);\n }\n\n ngOnDestroy() {\n this.focusMonitor.stopMonitoring(this.elementRef.nativeElement);\n }\n\n focus(): void {\n this.focusMonitor.focusVia(this.inputElement.nativeElement, 'keyboard');\n }\n\n getAriaChecked(): KbqCheckedState {\n return this.checked ? 'true' : this.indeterminate ? 'mixed' : 'false';\n }\n\n onChangeEvent(event: Event) {\n event.stopPropagation();\n }\n\n onLabelTextChange() {\n this.changeDetectorRef.markForCheck();\n }\n\n onInputClick(event: MouseEvent) {\n if (this.loading) return;\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `toggle` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n\n if (!this.disabled && this.clickAction !== 'noop') {\n // When user manually click on the toggle, `indeterminate` is set to false.\n if (this.indeterminate && this.clickAction !== 'check') {\n Promise.resolve().then(() => {\n this._indeterminate = false;\n this.indeterminateChange.emit(this._indeterminate);\n });\n }\n\n this._checked = !this.checked;\n this.onTouchedCallback();\n this.transitionCheckState(this._checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked);\n // Emit our custom change event if the native input emitted one.\n // It is important to only emit it, if the native input triggered one, because\n // we don't want to trigger a change event, when the `checked` variable changes for example.\n this.emitChangeEvent();\n } else if (!this.disabled && this.clickAction === 'noop') {\n // Reset native input when clicked with noop. The native checkbox becomes checked after\n // click, reset it to be align with `checked` value of `kbq-toggle`.\n this.inputElement.nativeElement.checked = this.checked;\n this.inputElement.nativeElement.indeterminate = this.indeterminate;\n }\n }\n\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n private setTransitionCheckState() {\n if (this.indeterminate) {\n this.transitionCheckState(TransitionCheckState.Indeterminate);\n } else {\n this.transitionCheckState(this.checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked);\n }\n }\n\n private onTouchedCallback = () => {};\n\n private onChangeCallback = (_: any) => {};\n\n private transitionCheckState(newState: TransitionCheckState) {\n const oldState = this.currentCheckState;\n\n if (oldState === newState) return;\n\n this.currentCheckState = newState;\n }\n\n private emitChangeEvent() {\n const event = new KbqToggleChange();\n\n event.source = this;\n event.checked = this.checked;\n\n this.onChangeCallback(this.checked);\n this.change.emit(event);\n }\n}\n","<label class=\"kbq-toggle-layout\" [attr.for]=\"inputId\" [class.left]=\"labelPosition === 'left'\">\n <input\n #input\n role=\"switch\"\n type=\"checkbox\"\n class=\"kbq-toggle-input cdk-visually-hidden\"\n [attr.aria-checked]=\"getAriaChecked()\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [id]=\"inputId\"\n [indeterminate]=\"indeterminate\"\n [tabIndex]=\"tabIndex\"\n (change)=\"onChangeEvent($event)\"\n (click)=\"onInputClick($event)\"\n (keydown.enter)=\"input.click()\"\n />\n <div class=\"kbq-toggle-bar-container\">\n <div class=\"kbq-toggle-bar\" [class.kbq-progress]=\"loading\">\n <div class=\"kbq-toggle__circle\" [@switch]=\"currentCheckState\"></div>\n <div class=\"kbq-toggle__thumb\"></div>\n </div>\n </div>\n\n <div class=\"kbq-toggle__content\" [class.left]=\"labelPosition === 'left'\" [class.right]=\"labelPosition === 'right'\">\n <span class=\"kbq-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content />\n </span>\n\n <ng-content select=\"kbq-hint\" />\n </div>\n</label>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { NgModule } from '@angular/core';\nimport { KbqCommonModule } from '@koobiq/components/core';\nimport { KbqToggleComponent } from './toggle.component';\n\n@NgModule({\n imports: [A11yModule, KbqCommonModule],\n exports: [KbqToggleComponent],\n declarations: [KbqToggleComponent]\n})\nexport class KbqToggleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-toggle.mjs","sources":["../../../packages/components/toggle/toggle.component.ts","../../../packages/components/toggle/toggle.component.html","../../../packages/components/toggle/toggle.module.ts","../../../packages/components/toggle/koobiq-components-toggle.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport {\n AfterViewInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n inject,\n Input,\n numberAttribute,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { KBQ_CHECKBOX_CLICK_ACTION, TransitionCheckState } from '@koobiq/components/checkbox';\nimport { KbqAnimationCurves, KbqAnimationDurations, KbqCheckedState, KbqColorDirective } from '@koobiq/components/core';\n\nlet nextUniqueId = 0;\n\ntype ToggleLabelPositionType = 'left' | 'right';\n\nexport class KbqToggleChange {\n source: KbqToggleComponent;\n checked: boolean;\n}\n\n@Component({\n selector: 'kbq-toggle',\n exportAs: 'kbqToggle',\n templateUrl: './toggle.component.html',\n styleUrls: ['./toggle.scss', './toggle-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-toggle',\n '[class.kbq-toggle_big]': 'big',\n '[id]': 'id',\n '[attr.id]': 'id',\n '[class.kbq-disabled]': 'disabled || loading',\n '[class.kbq-active]': 'checked',\n '[class.kbq-indeterminate]': 'indeterminate'\n },\n animations: [\n trigger('switch', [\n state(TransitionCheckState.Init, style({ left: '3px' })),\n state(TransitionCheckState.Unchecked, style({ left: '3px' })),\n state(TransitionCheckState.Indeterminate, style({ left: '10px', visibility: 'hidden' })),\n state(TransitionCheckState.Checked, style({ left: 'calc(100% - 11px)' })),\n transition(\n `${TransitionCheckState.Init} => ${TransitionCheckState.Checked}`,\n animate(KbqAnimationDurations.Entering)\n ),\n transition(\n `${TransitionCheckState.Checked} <=> ${TransitionCheckState.Unchecked}`,\n animate(KbqAnimationDurations.Rapid)\n ),\n transition(\n `${TransitionCheckState.Indeterminate} => *`,\n animate(`${KbqAnimationDurations.Instant} ${KbqAnimationCurves.EaseInOut}`)\n )])\n\n ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => KbqToggleComponent),\n multi: true\n }\n ]\n})\nexport class KbqToggleComponent extends KbqColorDirective implements AfterViewInit, ControlValueAccessor, OnDestroy {\n @Input() big: boolean = false;\n\n @ViewChild('input', { static: false }) inputElement: ElementRef<HTMLInputElement>;\n\n @Input() labelPosition: ToggleLabelPositionType = 'right';\n\n @Input('aria-label') ariaLabel: string = '';\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n @Input() id: string;\n\n get inputId(): string {\n return `${this.id || this.uniqueId}-input`;\n }\n\n @Input() name: string | null = null;\n\n @Input() value: string;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n\n set disabled(value: any) {\n if (value !== this._disabled) {\n this._disabled = value;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n private _disabled: boolean = false;\n\n @Input({ transform: numberAttribute })\n get tabIndex(): number {\n return this.disabled ? -1 : this._tabIndex;\n }\n\n set tabIndex(value: number) {\n this._tabIndex = value;\n }\n\n private _tabIndex = 0;\n\n get checked() {\n return this._checked;\n }\n\n @Input()\n set checked(value: boolean) {\n if (value !== this._checked) {\n this._checked = value;\n this.setTransitionCheckState();\n this.changeDetectorRef.markForCheck();\n }\n }\n\n private _checked: boolean = false;\n\n /**\n * Whether the toggle is indeterminate. This is also known as \"mixed\" mode and can be used to\n * represent a checkbox with three states, e.g. a checkbox that represents a nested list of\n * checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately\n * set to false.\n */\n @Input({ transform: booleanAttribute })\n get indeterminate(): boolean {\n return this._indeterminate;\n }\n\n set indeterminate(value: boolean) {\n const changed = value !== this._indeterminate;\n\n this._indeterminate = value;\n\n if (changed) {\n this.setTransitionCheckState();\n this.indeterminateChange.emit(this._indeterminate);\n }\n }\n\n private _indeterminate: boolean = false;\n /**\n * Property for manually set loading state.\n */\n @Input({ transform: booleanAttribute }) loading: boolean = false;\n\n @Output() readonly change: EventEmitter<KbqToggleChange> = new EventEmitter<KbqToggleChange>();\n\n /** Event emitted when the toggle's `indeterminate` value changes. */\n @Output() readonly indeterminateChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @docs-private */\n protected currentCheckState: TransitionCheckState = TransitionCheckState.Init;\n\n protected clickAction = inject(KBQ_CHECKBOX_CLICK_ACTION, { optional: true });\n\n private uniqueId: string = `kbq-toggle-${++nextUniqueId}`;\n\n constructor(\n private focusMonitor: FocusMonitor,\n private changeDetectorRef: ChangeDetectorRef\n ) {\n super();\n\n this.id = this.uniqueId;\n }\n\n ngAfterViewInit(): void {\n this.focusMonitor.monitor(this.elementRef.nativeElement, true);\n }\n\n ngOnDestroy() {\n this.focusMonitor.stopMonitoring(this.elementRef.nativeElement);\n }\n\n focus(): void {\n this.focusMonitor.focusVia(this.inputElement.nativeElement, 'keyboard');\n }\n\n getAriaChecked(): KbqCheckedState {\n return this.checked ? 'true' : this.indeterminate ? 'mixed' : 'false';\n }\n\n onChangeEvent(event: Event) {\n event.stopPropagation();\n }\n\n onLabelTextChange() {\n this.changeDetectorRef.markForCheck();\n }\n\n onInputClick(event: MouseEvent) {\n if (this.loading) return;\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `toggle` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n\n if (!this.disabled && this.clickAction !== 'noop') {\n // When user manually click on the toggle, `indeterminate` is set to false.\n if (this.indeterminate && this.clickAction !== 'check') {\n Promise.resolve().then(() => {\n this._indeterminate = false;\n this.indeterminateChange.emit(this._indeterminate);\n });\n }\n\n this._checked = !this.checked;\n this.onTouchedCallback();\n this.transitionCheckState(this._checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked);\n // Emit our custom change event if the native input emitted one.\n // It is important to only emit it, if the native input triggered one, because\n // we don't want to trigger a change event, when the `checked` variable changes for example.\n this.emitChangeEvent();\n } else if (!this.disabled && this.clickAction === 'noop') {\n // Reset native input when clicked with noop. The native checkbox becomes checked after\n // click, reset it to be align with `checked` value of `kbq-toggle`.\n this.inputElement.nativeElement.checked = this.checked;\n this.inputElement.nativeElement.indeterminate = this.indeterminate;\n }\n }\n\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n }\n\n private setTransitionCheckState() {\n if (this.indeterminate) {\n this.transitionCheckState(TransitionCheckState.Indeterminate);\n } else {\n this.transitionCheckState(this.checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked);\n }\n }\n\n private onTouchedCallback = () => {};\n\n private onChangeCallback = (_: any) => {};\n\n private transitionCheckState(newState: TransitionCheckState) {\n const oldState = this.currentCheckState;\n\n if (oldState === newState) return;\n\n this.currentCheckState = newState;\n }\n\n private emitChangeEvent() {\n const event = new KbqToggleChange();\n\n event.source = this;\n event.checked = this.checked;\n\n this.onChangeCallback(this.checked);\n this.change.emit(event);\n }\n}\n","<label class=\"kbq-toggle-layout\" [attr.for]=\"inputId\" [class.left]=\"labelPosition === 'left'\">\n <input\n #input\n role=\"switch\"\n type=\"checkbox\"\n class=\"kbq-toggle-input cdk-visually-hidden\"\n [attr.aria-checked]=\"getAriaChecked()\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [id]=\"inputId\"\n [indeterminate]=\"indeterminate\"\n [tabIndex]=\"tabIndex\"\n (change)=\"onChangeEvent($event)\"\n (click)=\"onInputClick($event)\"\n (keydown.enter)=\"input.click()\"\n />\n <div class=\"kbq-toggle-bar-container\">\n <div class=\"kbq-toggle-bar\" [class.kbq-progress]=\"loading\">\n <div class=\"kbq-toggle__circle\" [@switch]=\"currentCheckState\"></div>\n <div class=\"kbq-toggle__thumb\"></div>\n </div>\n </div>\n\n <div class=\"kbq-toggle__content\" [class.left]=\"labelPosition === 'left'\" [class.right]=\"labelPosition === 'right'\">\n <span class=\"kbq-toggle-label\" (cdkObserveContent)=\"onLabelTextChange()\">\n <ng-content />\n </span>\n\n <ng-content select=\"kbq-hint\" />\n </div>\n</label>\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { NgModule } from '@angular/core';\nimport { KbqToggleComponent } from './toggle.component';\n\n@NgModule({\n imports: [A11yModule],\n exports: [KbqToggleComponent],\n declarations: [KbqToggleComponent]\n})\nexport class KbqToggleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAuBA,IAAI,YAAY,GAAG,CAAC,CAAC;MAIR,eAAe,CAAA;AAG3B,CAAA;AA8CK,MAAO,kBAAmB,SAAQ,iBAAiB,CAAA;AAYrD,IAAA,IAAI,OAAO,GAAA;QACP,OAAO,CAAA,EAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAA,MAAA,CAAQ,CAAC;KAC9C;AAMD,IAAA,IACI,QAAQ,GAAA;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;KACzB;IAED,IAAI,QAAQ,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACvB,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;SACzC;KACJ;AAID,IAAA,IACI,QAAQ,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;KAC9C;IAED,IAAI,QAAQ,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KAC1B;AAID,IAAA,IAAI,OAAO,GAAA;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;KACxB;IAED,IACI,OAAO,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,QAAQ,EAAE;AACzB,YAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,uBAAuB,EAAE,CAAC;AAC/B,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;SACzC;KACJ;AAID;;;;;AAKG;AACH,IAAA,IACI,aAAa,GAAA;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;KAC9B;IAED,IAAI,aAAa,CAAC,KAAc,EAAA;AAC5B,QAAA,MAAM,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC,cAAc,CAAC;AAE9C,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAE5B,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACtD;KACJ;IAoBD,WACY,CAAA,YAA0B,EAC1B,iBAAoC,EAAA;AAE5C,QAAA,KAAK,EAAE,CAAC;QAHA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAc;QAC1B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QArGvC,IAAG,CAAA,GAAA,GAAY,KAAK,CAAC;QAIrB,IAAa,CAAA,aAAA,GAA4B,OAAO,CAAC;QAErC,IAAS,CAAA,SAAA,GAAW,EAAE,CAAC;QAClB,IAAc,CAAA,cAAA,GAAkB,IAAI,CAAC;QAQtD,IAAI,CAAA,IAAA,GAAkB,IAAI,CAAC;QAgB5B,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;QAW3B,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;QAed,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;QAwB1B,IAAc,CAAA,cAAA,GAAY,KAAK,CAAC;AACxC;;AAEG;QACqC,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;AAE9C,QAAA,IAAA,CAAA,MAAM,GAAkC,IAAI,YAAY,EAAmB,CAAC;;AAG5E,QAAA,IAAA,CAAA,mBAAmB,GAA0B,IAAI,YAAY,EAAW,CAAC;;AAGlF,QAAA,IAAA,CAAA,iBAAiB,GAAyB,oBAAoB,CAAC,IAAI,CAAC;QAEpE,IAAW,CAAA,WAAA,GAAG,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAEtE,QAAA,IAAA,CAAA,QAAQ,GAAW,CAAA,WAAA,EAAc,EAAE,YAAY,EAAE,CAAC;AA8FlD,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAK,GAAG,CAAC;AAE7B,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAxFtC,QAAA,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;KAC3B;IAED,eAAe,GAAA;AACX,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;KAClE;IAED,WAAW,GAAA;QACP,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;KACnE;IAED,KAAK,GAAA;AACD,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;KAC3E;IAED,cAAc,GAAA;QACV,OAAO,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;KACzE;AAED,IAAA,aAAa,CAAC,KAAY,EAAA;QACtB,KAAK,CAAC,eAAe,EAAE,CAAC;KAC3B;IAED,iBAAiB,GAAA;AACb,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACzC;AAED,IAAA,YAAY,CAAC,KAAiB,EAAA;QAC1B,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;;;;;;;;QAQzB,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,EAAE;;YAE/C,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,EAAE;AACpD,gBAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB,oBAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;oBAC5B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACvD,iBAAC,CAAC,CAAC;aACN;AAED,YAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,OAAO,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;;;;YAIzG,IAAI,CAAC,eAAe,EAAE,CAAC;SAC1B;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,EAAE;;;YAGtD,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;SACtE;KACJ;AAED,IAAA,UAAU,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;KAC1B;AAED,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACpB,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC9B;AAED,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACrB,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;KAC/B;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC9B;IAEO,uBAAuB,GAAA;AAC3B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;SACjE;aAAM;AACH,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;SAC3G;KACJ;AAMO,IAAA,oBAAoB,CAAC,QAA8B,EAAA;AACvD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAExC,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;AAElC,QAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;KACrC;IAEO,eAAe,GAAA;AACnB,QAAA,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;AAEpC,QAAA,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;AACpB,QAAA,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAE7B,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACpC,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;kIApNQ,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,gRAkCP,eAAe,CAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAgCf,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAoBhB,gBAAgB,CA9FzB,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,IAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,SAAA,EAAA,yBAAA,EAAA,eAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,EAAC,MAAM,kBAAkB,EAAC;AACjD,gBAAA,KAAK,EAAE,IAAI;AACd,aAAA;AACJ,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1EL,01CAmCA,EDagB,MAAA,EAAA,CAAA,+mXAAA,EAAA,q1IAAA,CAAA,EAAA,UAAA,EAAA;YACR,OAAO,CAAC,QAAQ,EAAE;AACd,gBAAA,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,gBAAA,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7D,gBAAA,KAAK,CAAC,oBAAoB,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;AACxF,gBAAA,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;AACzE,gBAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,IAAI,OAAO,oBAAoB,CAAC,OAAO,CAAA,CAAE,EACjE,OAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAC1C;AACD,gBAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,OAAO,QAAQ,oBAAoB,CAAC,SAAS,CAAA,CAAE,EACvE,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CACvC;AACD,gBAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,aAAa,CAAA,KAAA,CAAO,EAC5C,OAAO,CAAC,GAAG,qBAAqB,CAAC,OAAO,CAAI,CAAA,EAAA,kBAAkB,CAAC,SAAS,CAAA,CAAE,CAAC,CAC9E;aAAC,CAAC;AAEV,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;4FASQ,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBA5C9B,SAAS;+BACI,YAAY,EAAA,QAAA,EACZ,WAAW,EAAA,eAAA,EAGJ,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAC/B,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,wBAAwB,EAAE,KAAK;AAC/B,wBAAA,MAAM,EAAE,IAAI;AACZ,wBAAA,WAAW,EAAE,IAAI;AACjB,wBAAA,sBAAsB,EAAE,qBAAqB;AAC7C,wBAAA,oBAAoB,EAAE,SAAS;AAC/B,wBAAA,2BAA2B,EAAE,eAAe;qBAC/C,EACW,UAAA,EAAA;wBACR,OAAO,CAAC,QAAQ,EAAE;AACd,4BAAA,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,4BAAA,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7D,4BAAA,KAAK,CAAC,oBAAoB,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;AACxF,4BAAA,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;AACzE,4BAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,IAAI,OAAO,oBAAoB,CAAC,OAAO,CAAA,CAAE,EACjE,OAAO,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAC1C;AACD,4BAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,OAAO,QAAQ,oBAAoB,CAAC,SAAS,CAAA,CAAE,EACvE,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CACvC;AACD,4BAAA,UAAU,CACN,CAAG,EAAA,oBAAoB,CAAC,aAAa,CAAA,KAAA,CAAO,EAC5C,OAAO,CAAC,GAAG,qBAAqB,CAAC,OAAO,CAAI,CAAA,EAAA,kBAAkB,CAAC,SAAS,CAAA,CAAE,CAAC,CAC9E;yBAAC,CAAC;qBAEV,EACU,SAAA,EAAA;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,EAAC,wBAAwB,EAAC;AACjD,4BAAA,KAAK,EAAE,IAAI;AACd,yBAAA;AACJ,qBAAA,EAAA,QAAA,EAAA,01CAAA,EAAA,MAAA,EAAA,CAAA,+mXAAA,EAAA,q1IAAA,CAAA,EAAA,CAAA;iHAGQ,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAEiC,YAAY,EAAA,CAAA;sBAAlD,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;gBAE5B,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEe,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACO,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBAEf,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAMG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAGF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAeF,QAAQ,EAAA,CAAA;sBADX,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAA;gBAgBjC,OAAO,EAAA,CAAA;sBADV,KAAK;gBAkBF,aAAa,EAAA,CAAA;sBADhB,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;gBAoBE,OAAO,EAAA,CAAA;sBAA9C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;gBAEnB,MAAM,EAAA,CAAA;sBAAxB,MAAM;gBAGY,mBAAmB,EAAA,CAAA;sBAArC,MAAM;;;ME9JE,eAAe,CAAA;kIAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAFT,YAAA,EAAA,CAAA,kBAAkB,CAFvB,EAAA,OAAA,EAAA,CAAA,UAAU,aACV,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA;AAGnB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAJd,UAAU,CAAA,EAAA,CAAA,CAAA,EAAA;;4FAIX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,UAAU,CAAC;oBACrB,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,YAAY,EAAE,CAAC,kBAAkB,CAAC;AACrC,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
@@ -58,7 +58,7 @@ class KbqTopBar {
58
58
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqTopBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
59
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: KbqTopBar, isStandalone: true, selector: "kbq-top-bar", inputs: { withShadow: ["withShadow", "withShadow", booleanAttribute] }, host: { properties: { "class.kbq-top-bar_with-shadow": "withShadow" }, classAttribute: "kbq-top-bar" }, ngImport: i0, template: `
60
60
  <ng-content />
61
- `, isInline: true, styles: [".kbq-top-bar{display:flex;align-items:center;justify-content:space-between;flex-direction:row;box-sizing:border-box;position:var(--kbq-top-bar-position);background-color:var(--kbq-top-bar-background);padding:var(--kbq-top-bar-padding-vertical) var(--kbq-top-bar-padding-horizontal);border-radius:var(--kbq-top-bar-border-radius);font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-top-bar .kbq-top-bar-spacer{height:100%;flex:0 0 var(--kbq-top-bar-spacer-min-width)}.kbq-top-bar .kbq-top-bar-container__start{display:flex;gap:var(--kbq-top-bar-container-start-gap);flex:1 0 var(--kbq-top-bar-container-start-basis);justify-content:flex-start;min-width:0}.kbq-top-bar .kbq-top-bar-container__end{display:flex;gap:var(--kbq-top-bar-container-end-gap);justify-content:end}.kbq-top-bar .kbq-top-bar-container__with-overflow-items{gap:unset;justify-content:unset;padding:1px}.kbq-top-bar .kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:last-of-type:is([aria-hidden=false])+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container__with-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar.kbq-top-bar_with-shadow{box-shadow:var(--kbq-top-bar-shadow-bottom);transition:box-shadow var(--kbq-top-bar-shadow-transition)}\n", ":where(.kbq-top-bar){--kbq-top-bar-position: sticky;--kbq-top-bar-background: var(--kbq-background-bg);--kbq-top-bar-spacer-min-width: 80px;--kbq-top-bar-padding-vertical: var(--kbq-size-xl);--kbq-top-bar-padding-horizontal: var(--kbq-size-xxl);--kbq-top-bar-border-radius: 0;--kbq-top-bar-container-start-gap: 0;--kbq-top-bar-container-start-basis: 0;--kbq-top-bar-container-end-gap: var(--kbq-size-s);--kbq-top-bar-shadow-bottom: var(--kbq-shadow-overflow-normal-bottom);--kbq-top-bar-shadow-transition: ease-out .3s}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
+ `, isInline: true, styles: [".kbq-top-bar{display:flex;align-items:center;justify-content:space-between;flex-direction:row;box-sizing:border-box;position:var(--kbq-top-bar-position);background-color:var(--kbq-top-bar-background);padding:var(--kbq-top-bar-padding-vertical) var(--kbq-top-bar-padding-horizontal);border-radius:var(--kbq-top-bar-border-radius);font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-top-bar.kbq-top-bar_with-shadow{box-shadow:var(--kbq-top-bar-shadow-bottom);transition:box-shadow var(--kbq-top-bar-shadow-transition)}.kbq-top-bar .kbq-top-bar-spacer{height:100%;flex:0 0 var(--kbq-top-bar-spacer-min-width)}.kbq-top-bar .kbq-top-bar-container:has(>.kbq-overflow-items){gap:unset;overflow:hidden}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items{padding:var(--kbq-size-border-width)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items>.kbq-overflow-item:last-of-type:is(.kbq-overflow-item_always-visible)+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__start{display:flex;gap:var(--kbq-top-bar-container-start-gap);flex:1 0 var(--kbq-top-bar-container-start-basis);justify-content:flex-start;min-width:0}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__end{display:flex;gap:var(--kbq-top-bar-container-end-gap);justify-content:end}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items{gap:unset;justify-content:unset;padding:var(--kbq-size-border-width)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:last-of-type:is(.kbq-overflow-item_always-visible)+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}\n", ":where(.kbq-top-bar){--kbq-top-bar-position: sticky;--kbq-top-bar-background: var(--kbq-background-bg);--kbq-top-bar-spacer-min-width: 80px;--kbq-top-bar-padding-vertical: var(--kbq-size-xl);--kbq-top-bar-padding-horizontal: var(--kbq-size-xxl);--kbq-top-bar-border-radius: 0;--kbq-top-bar-container-start-gap: 0;--kbq-top-bar-container-start-basis: 0;--kbq-top-bar-container-end-gap: var(--kbq-size-s);--kbq-top-bar-shadow-bottom: var(--kbq-shadow-overflow-normal-bottom);--kbq-top-bar-shadow-transition: ease-out .3s}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqTopBar, decorators: [{
64
64
  type: Component,
@@ -67,7 +67,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
67
67
  `, host: {
68
68
  class: 'kbq-top-bar',
69
69
  '[class.kbq-top-bar_with-shadow]': 'withShadow'
70
- }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".kbq-top-bar{display:flex;align-items:center;justify-content:space-between;flex-direction:row;box-sizing:border-box;position:var(--kbq-top-bar-position);background-color:var(--kbq-top-bar-background);padding:var(--kbq-top-bar-padding-vertical) var(--kbq-top-bar-padding-horizontal);border-radius:var(--kbq-top-bar-border-radius);font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-top-bar .kbq-top-bar-spacer{height:100%;flex:0 0 var(--kbq-top-bar-spacer-min-width)}.kbq-top-bar .kbq-top-bar-container__start{display:flex;gap:var(--kbq-top-bar-container-start-gap);flex:1 0 var(--kbq-top-bar-container-start-basis);justify-content:flex-start;min-width:0}.kbq-top-bar .kbq-top-bar-container__end{display:flex;gap:var(--kbq-top-bar-container-end-gap);justify-content:end}.kbq-top-bar .kbq-top-bar-container__with-overflow-items{gap:unset;justify-content:unset;padding:1px}.kbq-top-bar .kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:last-of-type:is([aria-hidden=false])+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container__with-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar.kbq-top-bar_with-shadow{box-shadow:var(--kbq-top-bar-shadow-bottom);transition:box-shadow var(--kbq-top-bar-shadow-transition)}\n", ":where(.kbq-top-bar){--kbq-top-bar-position: sticky;--kbq-top-bar-background: var(--kbq-background-bg);--kbq-top-bar-spacer-min-width: 80px;--kbq-top-bar-padding-vertical: var(--kbq-size-xl);--kbq-top-bar-padding-horizontal: var(--kbq-size-xxl);--kbq-top-bar-border-radius: 0;--kbq-top-bar-container-start-gap: 0;--kbq-top-bar-container-start-basis: 0;--kbq-top-bar-container-end-gap: var(--kbq-size-s);--kbq-top-bar-shadow-bottom: var(--kbq-shadow-overflow-normal-bottom);--kbq-top-bar-shadow-transition: ease-out .3s}\n"] }]
70
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".kbq-top-bar{display:flex;align-items:center;justify-content:space-between;flex-direction:row;box-sizing:border-box;position:var(--kbq-top-bar-position);background-color:var(--kbq-top-bar-background);padding:var(--kbq-top-bar-padding-vertical) var(--kbq-top-bar-padding-horizontal);border-radius:var(--kbq-top-bar-border-radius);font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-top-bar.kbq-top-bar_with-shadow{box-shadow:var(--kbq-top-bar-shadow-bottom);transition:box-shadow var(--kbq-top-bar-shadow-transition)}.kbq-top-bar .kbq-top-bar-spacer{height:100%;flex:0 0 var(--kbq-top-bar-spacer-min-width)}.kbq-top-bar .kbq-top-bar-container:has(>.kbq-overflow-items){gap:unset;overflow:hidden}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items{padding:var(--kbq-size-border-width)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items>.kbq-overflow-item:last-of-type:is(.kbq-overflow-item_always-visible)+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container .kbq-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__start{display:flex;gap:var(--kbq-top-bar-container-start-gap);flex:1 0 var(--kbq-top-bar-container-start-basis);justify-content:flex-start;min-width:0}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__end{display:flex;gap:var(--kbq-top-bar-container-end-gap);justify-content:end}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items{gap:unset;justify-content:unset;padding:var(--kbq-size-border-width)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:not(:last-of-type){margin-right:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items>.kbq-overflow-item:last-of-type:is(.kbq-overflow-item_always-visible)+.kbq-overflow-items-result{margin-left:var(--kbq-top-bar-container-end-gap)}.kbq-top-bar .kbq-top-bar-container.kbq-top-bar-container__with-overflow-items .kbq-overflow-items-result:first-child{margin-right:var(--kbq-top-bar-container-end-gap)}\n", ":where(.kbq-top-bar){--kbq-top-bar-position: sticky;--kbq-top-bar-background: var(--kbq-background-bg);--kbq-top-bar-spacer-min-width: 80px;--kbq-top-bar-padding-vertical: var(--kbq-size-xl);--kbq-top-bar-padding-horizontal: var(--kbq-size-xxl);--kbq-top-bar-border-radius: 0;--kbq-top-bar-container-start-gap: 0;--kbq-top-bar-container-start-basis: 0;--kbq-top-bar-container-end-gap: var(--kbq-size-s);--kbq-top-bar-shadow-bottom: var(--kbq-shadow-overflow-normal-bottom);--kbq-top-bar-shadow-transition: ease-out .3s}\n"] }]
71
71
  }], propDecorators: { withShadow: [{
72
72
  type: Input,
73
73
  args: [{ transform: booleanAttribute }]
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-top-bar.mjs","sources":["../../../packages/components/top-bar/top-bar.ts","../../../packages/components/top-bar/module.ts","../../../packages/components/top-bar/koobiq-components-top-bar.ts"],"sourcesContent":["import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n Input,\n ViewEncapsulation\n} from '@angular/core';\nimport { KbqOverflowItems } from '@koobiq/components/overflow-items';\n\n@Directive({\n standalone: true,\n selector: '[kbqTopBarSpacer]',\n host: {\n class: 'kbq-top-bar-spacer'\n }\n})\nexport class KbqTopBarSpacer {}\n\n/**\n * Directive that dynamically applying CSS classes based on a placement value (left or right).\n */\n@Directive({\n standalone: true,\n selector: '[kbqTopBarContainer]',\n host: {\n class: 'kbq-top-bar-container',\n '[class.kbq-top-bar-container__start]': 'placement() === \"start\"',\n '[class.kbq-top-bar-container__end]': 'placement() === \"end\"',\n '[class.kbq-top-bar-container__with-overflow-items]': 'overflowItems'\n }\n})\nexport class KbqTopBarContainer {\n /**\n * Conditionally applies a CSS class based on the value\n */\n placement = input.required<'start' | 'end'>();\n /**\n * Track if container has `KbqOverflowItems` directive assigned.\n * Used to replace `gap` with `margin` so `KbqOverflowItems` will calculate correct width on resize.\n * @docs-private\n */\n protected readonly overflowItems = inject(KbqOverflowItems, { optional: true, self: true });\n}\n\n@Component({\n standalone: true,\n selector: 'kbq-top-bar',\n template: `\n <ng-content />\n `,\n styleUrls: [\n './top-bar.scss',\n './top-bar-tokens.scss'\n ],\n host: {\n class: 'kbq-top-bar',\n '[class.kbq-top-bar_with-shadow]': 'withShadow'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class KbqTopBar {\n /**\n * Enables overflow behavior, applying `kbq-top-bar-overflow` to show a bottom shadow.\n */\n @Input({ transform: booleanAttribute }) withShadow: boolean = false;\n}\n","import { NgModule } from '@angular/core';\nimport { KbqTopBar, KbqTopBarContainer, KbqTopBarSpacer } from './top-bar';\n\nconst COMPONENTS = [\n KbqTopBar,\n KbqTopBarContainer,\n KbqTopBarSpacer\n];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class KbqTopBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAmBa,eAAe,CAAA;kIAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;sHAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,oBAAoB;AAC9B,qBAAA;AACJ,iBAAA,CAAA;;AAGD;;AAEG;MAWU,kBAAkB,CAAA;AAV/B,IAAA,WAAA,GAAA;AAWI;;AAEG;AACH,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAmB,CAAC;AAC9C;;;;AAIG;AACgB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/F,KAAA;kIAXY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;sHAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oCAAA,EAAA,2BAAA,EAAA,kCAAA,EAAA,yBAAA,EAAA,kDAAA,EAAA,eAAA,EAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAV9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,uBAAuB;AAC9B,wBAAA,sCAAsC,EAAE,yBAAyB;AACjE,wBAAA,oCAAoC,EAAE,uBAAuB;AAC7D,wBAAA,oDAAoD,EAAE,eAAe;AACxE,qBAAA;AACJ,iBAAA,CAAA;;MA+BY,SAAS,CAAA;AAjBtB,IAAA,WAAA,GAAA;AAkBI;;AAEG;QACqC,IAAU,CAAA,UAAA,GAAY,KAAK,CAAC;AACvE,KAAA;kIALY,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;sHAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAIE,gBAAgB,CAlB1B,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,+BAAA,EAAA,YAAA,EAAA,EAAA,cAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;AAET,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,y1DAAA,EAAA,2gBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;4FAYQ,SAAS,EAAA,UAAA,EAAA,CAAA;kBAjBrB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,aAAa,EACb,QAAA,EAAA,CAAA;;KAET,EAKK,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,aAAa;AACpB,wBAAA,iCAAiC,EAAE,YAAY;AAClD,qBAAA,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,MAAA,EAAA,CAAA,y1DAAA,EAAA,2gBAAA,CAAA,EAAA,CAAA;8BAMG,UAAU,EAAA,CAAA;sBAAjD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA;;;ACjE1C,MAAM,UAAU,GAAG;IACf,SAAS;IACT,kBAAkB;IAClB,eAAe;CAClB,CAAC;MAMW,eAAe,CAAA;kIAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YATxB,SAAS;YACT,kBAAkB;AAClB,YAAA,eAAe,aAFf,SAAS;YACT,kBAAkB;YAClB,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA;mIAON,eAAe,EAAA,CAAA,CAAA,EAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,UAAU;AACnB,oBAAA,OAAO,EAAE,UAAU;AACtB,iBAAA,CAAA;;;ACZD;;AAEG;;;;"}
1
+ {"version":3,"file":"koobiq-components-top-bar.mjs","sources":["../../../packages/components/top-bar/top-bar.ts","../../../packages/components/top-bar/module.ts","../../../packages/components/top-bar/koobiq-components-top-bar.ts"],"sourcesContent":["import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n Input,\n ViewEncapsulation\n} from '@angular/core';\nimport { KbqOverflowItems } from '@koobiq/components/overflow-items';\n\n@Directive({\n standalone: true,\n selector: '[kbqTopBarSpacer]',\n host: {\n class: 'kbq-top-bar-spacer'\n }\n})\nexport class KbqTopBarSpacer {}\n\n/**\n * Directive that dynamically applying CSS classes based on a placement value (left or right).\n */\n@Directive({\n standalone: true,\n selector: '[kbqTopBarContainer]',\n host: {\n class: 'kbq-top-bar-container',\n '[class.kbq-top-bar-container__start]': 'placement() === \"start\"',\n '[class.kbq-top-bar-container__end]': 'placement() === \"end\"',\n '[class.kbq-top-bar-container__with-overflow-items]': 'overflowItems'\n }\n})\nexport class KbqTopBarContainer {\n /**\n * Conditionally applies a CSS class based on the value\n */\n placement = input.required<'start' | 'end'>();\n /**\n * Track if container has `KbqOverflowItems` directive assigned.\n * Used to replace `gap` with `margin` so `KbqOverflowItems` will calculate correct width on resize.\n * @docs-private\n */\n protected readonly overflowItems = inject(KbqOverflowItems, { optional: true, self: true });\n}\n\n@Component({\n standalone: true,\n selector: 'kbq-top-bar',\n template: `\n <ng-content />\n `,\n styleUrls: [\n './top-bar.scss',\n './top-bar-tokens.scss'\n ],\n host: {\n class: 'kbq-top-bar',\n '[class.kbq-top-bar_with-shadow]': 'withShadow'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class KbqTopBar {\n /**\n * Enables overflow behavior, applying `kbq-top-bar-overflow` to show a bottom shadow.\n */\n @Input({ transform: booleanAttribute }) withShadow: boolean = false;\n}\n","import { NgModule } from '@angular/core';\nimport { KbqTopBar, KbqTopBarContainer, KbqTopBarSpacer } from './top-bar';\n\nconst COMPONENTS = [\n KbqTopBar,\n KbqTopBarContainer,\n KbqTopBarSpacer\n];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class KbqTopBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -5,20 +5,20 @@ import * as i5 from '@angular/cdk/overlay';
5
5
  import { CdkOverlayOrigin, CdkConnectedOverlay, OverlayModule } from '@angular/cdk/overlay';
6
6
  import { Platform, _getEventTarget } from '@angular/cdk/platform';
7
7
  import * as i0 from '@angular/core';
8
- import { InjectionToken, inject, EventEmitter, DestroyRef, numberAttribute, booleanAttribute, TemplateRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, Optional, Host, Self, ViewChild, ViewChildren, ContentChild, Input, Output, NgModule } from '@angular/core';
8
+ import { InjectionToken, inject, EventEmitter, DestroyRef, booleanAttribute, numberAttribute, TemplateRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, Optional, Host, Self, ViewChild, ViewChildren, ContentChild, Input, Output, NgModule } from '@angular/core';
9
9
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
10
10
  import * as i3 from '@angular/forms';
11
11
  import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, SPACE, ESCAPE, TAB, HOME, END, PAGE_UP, PAGE_DOWN, isSelectAll, hasModifierKey } from '@koobiq/cdk/keycodes';
12
12
  import * as i1 from '@koobiq/components/core';
13
- import { KbqAbstractSelect, getKbqSelectDynamicMultipleError, KbqComponentColors, defaultOffsetY, MultipleMode, getKbqSelectNonArrayValueError, KBQ_SELECT_SCROLL_STRATEGY, KBQ_LOCALE_SERVICE, KBQ_PARENT_POPUP, KbqSelectTrigger, KbqSelectMatcher, KbqSelectSearch, kbqSelectAnimations, KbqPseudoCheckboxModule, KbqSelectFooter, KbqSelectSearchEmptyResult, KBQ_SELECT_SCROLL_STRATEGY_PROVIDER } from '@koobiq/components/core';
13
+ import { KbqAbstractSelect, getKbqSelectDynamicMultipleError, KbqComponentColors, defaultOffsetY, KBQ_WINDOW, MultipleMode, getKbqSelectNonArrayValueError, KBQ_SELECT_SCROLL_STRATEGY, KBQ_LOCALE_SERVICE, KBQ_PARENT_POPUP, KbqSelectTrigger, KbqSelectMatcher, KbqSelectSearch, kbqSelectAnimations, KbqPseudoCheckboxModule, KbqSelectFooter, KbqSelectSearchEmptyResult, KBQ_SELECT_SCROLL_STRATEGY_PROVIDER } from '@koobiq/components/core';
14
14
  import * as i4 from '@koobiq/components/form-field';
15
15
  import { KbqFormFieldControl } from '@koobiq/components/form-field';
16
16
  import * as i7 from '@koobiq/components/tags';
17
17
  import { KbqTag, KbqTagsModule } from '@koobiq/components/tags';
18
18
  import { KbqTree, KbqTreeSelection, KbqTreeModule } from '@koobiq/components/tree';
19
19
  import { SizeXxs } from '@koobiq/design-tokens';
20
- import { Subject, defer, merge, Subscription } from 'rxjs';
21
- import { filter, map, startWith, switchMap, take, distinctUntilChanged, delay } from 'rxjs/operators';
20
+ import { Subject, defer, merge, Subscription, audit } from 'rxjs';
21
+ import { filter, map, startWith, switchMap, take, distinctUntilChanged } from 'rxjs/operators';
22
22
  import * as i6 from '@koobiq/components/icon';
23
23
  import { KbqIconModule } from '@koobiq/components/icon';
24
24
  import * as i8 from '@angular/common';
@@ -270,6 +270,7 @@ class KbqTreeSelect extends KbqAbstractSelect {
270
270
  /** Unique id for this input. */
271
271
  this.uid = `kbq-tree-select-${nextUniqueId++}`;
272
272
  this.destroyRef = inject(DestroyRef);
273
+ this.window = inject(KBQ_WINDOW);
273
274
  /** `View -> model callback called when value changes` */
274
275
  this.onChange = () => { };
275
276
  /** `View -> model callback called when select has been touched` */
@@ -367,6 +368,9 @@ class KbqTreeSelect extends KbqAbstractSelect {
367
368
  this.tags.changes.pipe(startWith(null)).subscribe(() => {
368
369
  this.calculateHiddenItems();
369
370
  });
371
+ this.tree.treeControl.expansionModel.changed
372
+ .pipe(takeUntilDestroyed(this.destroyRef))
373
+ .subscribe(() => this.setOverlayPosition());
370
374
  }
371
375
  ngDoCheck() {
372
376
  if (this.ngControl) {
@@ -418,7 +422,7 @@ class KbqTreeSelect extends KbqAbstractSelect {
418
422
  this.triggerRect = this.trigger.nativeElement.getBoundingClientRect();
419
423
  // Note: The computed font-size will be a string pixel value (e.g. "16px").
420
424
  // `parseInt` ignores the trailing 'px' and converts this to a number.
421
- this.triggerFontSize = parseInt(getComputedStyle(this.trigger.nativeElement)['font-size']);
425
+ this.triggerFontSize = parseInt(this.window.getComputedStyle(this.trigger.nativeElement)['font-size']);
422
426
  // It's important that we read this as late as possible, because doing so earlier will
423
427
  // return a different element since it's based on queries in the form field which may
424
428
  // not have run yet. Also this needs to be assigned before we measure the overlay width.
@@ -660,7 +664,7 @@ class KbqTreeSelect extends KbqAbstractSelect {
660
664
  return triggerClone;
661
665
  }
662
666
  getItemWidth(element) {
663
- const computedStyle = getComputedStyle(element);
667
+ const computedStyle = this.window.getComputedStyle(element);
664
668
  const width = parseInt(computedStyle.width);
665
669
  const marginLeft = parseInt(computedStyle.marginLeft);
666
670
  const marginRight = parseInt(computedStyle.marginRight);
@@ -816,20 +820,19 @@ class KbqTreeSelect extends KbqAbstractSelect {
816
820
  this.tree.keyManager.activeItem?.focus();
817
821
  }
818
822
  subscribeOnSearchChanges() {
819
- if (!this.search?.ngControl.valueChanges) {
823
+ if (!this.search?.ngControl.valueChanges)
820
824
  return;
821
- }
822
- this.search.ngControl.valueChanges.pipe(delay(0)).subscribe((value) => {
825
+ this.search.ngControl.valueChanges.pipe(audit(() => this.tree.unorderedOptions.changes)).subscribe((value) => {
823
826
  this.isEmptySearchResult = !!value && this.tree.isEmpty;
824
827
  this.changeDetectorRef.markForCheck();
825
828
  });
826
829
  }
827
830
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqTreeSelect, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.ErrorStateMatcher }, { token: KBQ_SELECT_SCROLL_STRATEGY }, { token: i2.Directionality, optional: true }, { token: i3.NgForm, optional: true }, { token: i3.FormGroupDirective, optional: true }, { token: i4.KbqFormField, host: true, optional: true }, { token: i3.NgControl, optional: true, self: true }, { token: KBQ_LOCALE_SERVICE, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
828
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqTreeSelect, selector: "kbq-tree-select", inputs: { hiddenItemsText: "hiddenItemsText", panelClass: "panelClass", backdropClass: "backdropClass", errorStateMatcher: "errorStateMatcher", sortComparator: "sortComparator", placeholder: "placeholder", required: "required", multiple: "multiple", autoSelect: "autoSelect", id: "id", hasBackdrop: "hasBackdrop", tabIndex: ["tabIndex", "tabIndex", numberAttribute], disabled: ["disabled", "disabled", booleanAttribute], selectAllHandler: "selectAllHandler", panelWidth: "panelWidth", hiddenItemsTextFormatter: "hiddenItemsTextFormatter" }, outputs: { openedChange: "openedChange", openedStream: "opened", closedStream: "closed", selectionChange: "selectionChange", valueChange: "valueChange" }, host: { listeners: { "click": "toggle()", "keydown": "handleKeydown($event)", "focus": "onFocus()", "blur": "onBlur()", "window:resize": "calculateHiddenItems()" }, properties: { "class.kbq-disabled": "disabled", "class.kbq-invalid": "errorState", "attr.tabindex": "tabIndex", "attr.disabled": "disabled || null" }, classAttribute: "kbq-tree-select" }, providers: [
831
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqTreeSelect, selector: "kbq-tree-select", inputs: { hiddenItemsText: "hiddenItemsText", panelClass: "panelClass", backdropClass: "backdropClass", errorStateMatcher: "errorStateMatcher", sortComparator: "sortComparator", placeholder: "placeholder", required: "required", multiple: ["multiple", "multiple", booleanAttribute], autoSelect: "autoSelect", id: "id", hasBackdrop: "hasBackdrop", tabIndex: ["tabIndex", "tabIndex", numberAttribute], disabled: ["disabled", "disabled", booleanAttribute], selectAllHandler: "selectAllHandler", panelWidth: "panelWidth", hiddenItemsTextFormatter: "hiddenItemsTextFormatter" }, outputs: { openedChange: "openedChange", openedStream: "opened", closedStream: "closed", selectionChange: "selectionChange", valueChange: "valueChange" }, host: { listeners: { "click": "toggle()", "keydown": "handleKeydown($event)", "focus": "onFocus()", "blur": "onBlur()", "window:resize": "calculateHiddenItems()" }, properties: { "class.kbq-select_multiple": "multiple", "class.kbq-disabled": "disabled", "class.kbq-invalid": "errorState", "attr.tabindex": "tabIndex", "attr.disabled": "disabled || null" }, classAttribute: "kbq-tree-select" }, providers: [
829
832
  { provide: KbqFormFieldControl, useExisting: KbqTreeSelect },
830
833
  { provide: KbqTree, useExisting: KbqTreeSelect },
831
834
  { provide: KBQ_PARENT_POPUP, useExisting: KbqTreeSelect }
832
- ], queries: [{ propertyName: "cleaner", first: true, predicate: ["kbqSelectCleaner"], descendants: true, static: true }, { propertyName: "customTrigger", first: true, predicate: KbqSelectTrigger, descendants: true }, { propertyName: "customMatcher", first: true, predicate: KbqSelectMatcher, descendants: true }, { propertyName: "customTagTemplateRef", first: true, predicate: ["kbqSelectTagContent"], descendants: true, read: TemplateRef }, { propertyName: "tree", first: true, predicate: KbqTreeSelection, descendants: true }, { propertyName: "search", first: true, predicate: KbqSelectSearch, descendants: true }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }, { propertyName: "tags", predicate: KbqTag, descendants: true }], exportAs: ["kbqTreeSelect"], usesInheritance: true, ngImport: i0, template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger\n cdkOverlayOrigin\n class=\"kbq-select__trigger\"\n [class.kbq-select__trigger_empty]=\"empty\"\n [class.kbq-select__trigger_multiple]=\"multiple\"\n [class.kbq-select__trigger_single]=\"!multiple\"\n>\n @if (!!customMatcher) {\n <ng-content select=\"kbq-select-matcher, [kbq-select-matcher]\" />\n } @else {\n <div class=\"kbq-select__matcher\">\n @if (empty) {\n <span class=\"kbq-select__placeholder\">\n {{ placeholder || '\\u00A0' }}\n </span>\n }\n @if (!empty) {\n <span>\n @if (!!customTrigger) {\n <ng-content select=\"kbq-select-trigger, [kbq-select-trigger]\" />\n } @else {\n <div class=\"kbq-select__match-container\">\n @if (multiple) {\n <div class=\"kbq-select__match-list\">\n @if (!customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <kbq-tag\n [color]=\"colorForState\"\n [disabled]=\"option.disabled || disabled\"\n [selectable]=\"false\"\n >\n {{ option.viewValue }}\n @if (!option.disabled && !disabled) {\n <i\n kbq-icon=\"kbq-xmark-s_16\"\n kbqTagRemove\n (click)=\"onRemoveSelectedOption(option, $event)\"\n ></i>\n }\n </kbq-tag>\n }\n }\n @if (customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <ng-container\n [ngTemplateOutlet]=\"customTagTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, select: this }\"\n />\n }\n }\n </div>\n } @else {\n <span class=\"kbq-select__matcher-text\">\n {{ triggerValue }}\n </span>\n }\n <div\n class=\"kbq-select__match-hidden-text\"\n [style.display]=\"hiddenItems > 0 ? 'block' : 'none'\"\n >\n {{ hiddenItemsTextFormatter(hiddenItemsText, hiddenItems) }}\n </div>\n </div>\n }\n </span>\n }\n\n @if (canShowCleaner) {\n <div\n class=\"kbq-select__cleaner\"\n (click)=\"clearValue($event)\"\n (keydown.enter)=\"clearValue($event)\"\n (keydown.space)=\"clearValue($event)\"\n >\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <div class=\"kbq-select__arrow-wrapper\">\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"kbq-select__arrow\" [color]=\"colorForState\"></i>\n </div>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayMinWidth]=\"overlayMinWidth\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayOrigin]=\"overlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayPanelClass]=\"overlayPanelClass\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayWidth]=\"overlayWidth\"\n (attach)=\"onAttached()\"\n (backdropClick)=\"close()\"\n>\n <div\n #panel\n cdkMonitorSubtreeFocus\n class=\"kbq-tree-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.font-size.px]=\"triggerFontSize\"\n [style.transformOrigin]=\"transformOrigin\"\n (keydown)=\"handleKeydown($event)\"\n >\n @if (search) {\n <div class=\"kbq-select__search-container\">\n <ng-content select=\"[kbqSelectSearch]\" />\n </div>\n }\n\n <div\n #optionsContainer\n class=\"kbq-tree-select__content kbq-scrollbar\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\"\n [@fadeInContent]=\"'showing'\"\n >\n @if (isEmptySearchResult) {\n <div class=\"kbq-select__no-options-message\">\n <ng-content select=\"[kbq-select-search-empty-result]\" />\n </div>\n }\n\n <ng-content select=\"kbq-tree-selection\" />\n </div>\n\n <ng-content select=\"kbq-select-footer,[kbq-tree-select-footer]\" />\n </div>\n</ng-template>\n", styles: [".kbq-tree-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.kbq-tree-select .kbq-select__matcher{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.kbq-tree-select .kbq-select__matcher>span{flex:1;overflow:hidden}.kbq-tree-select .kbq-select__trigger{display:flex;box-sizing:border-box;position:relative;cursor:pointer;height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-size-border-width) * 2)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_single .kbq-select__matcher,.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple.kbq-select__trigger_empty .kbq-select__matcher{padding:calc(var(--kbq-select-size-single-padding-vertical, var(--kbq-size-xs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-right, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-vertical, var(--kbq-size-xs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-left, var(--kbq-size-m)) - var(--kbq-size-border-width))}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher{padding:calc(var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-right, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-left, var(--kbq-size-xxs)) - var(--kbq-size-border-width))}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-container{display:flex}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) * 2);max-height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) * 2);gap:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));margin-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs))}.kbq-tree-select .kbq-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.kbq-tree-select .kbq-select__match-container .kbq-select__match-hidden-text{flex:0 0 70px;align-self:center;padding-left:4px;padding-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));text-align:right}.kbq-tree-select .kbq-select__arrow-wrapper{display:flex;align-self:center;padding:4px}.kbq-form-field-appearance-fill .kbq-tree-select .kbq-select__arrow-wrapper,.kbq-form-field-appearance-standard .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-50%)}.kbq-form-field-appearance-outline .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-25%)}.kbq-disabled.kbq-tree-select .kbq-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.kbq-tree-select__panel{min-width:100%;overflow:hidden;border-radius:var(--kbq-select-panel-size-border-radius, var(--kbq-size-border-radius))}.kbq-tree-select__panel .kbq-option{font-size:inherit}.kbq-tree-select__panel .kbq-select__no-options-message{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--kbq-option-size-height, var(--kbq-size-3xl));cursor:default;outline:none;padding-left:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));padding-right:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));border:var(--kbq-option-size-border-width, var(--kbq-size-3xs)) solid transparent}.kbq-tree-select__panel .kbq-select__search-container{padding:var(--kbq-size-xxs);border-bottom-width:1px;border-bottom-style:solid}.kbq-tree-select__content{max-height:var(--kbq-select-panel-size-max-height, 256px);padding:var(--kbq-size-xxs);overflow:hidden auto}.kbq-tree-select__panel .kbq-select__footer{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;box-sizing:border-box;min-height:40px;border-top-width:1px;border-top-style:solid;padding:var(--kbq-size-xxs) var(--kbq-size-l)}.kbq-tree-select__content .kbq-tree-selection{height:100%}.kbq-form-field-type-select:not(.kbq-disabled) .kbq-form-field-flex{cursor:pointer}.kbq-tree-select{color:var(--kbq-foreground-contrast)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid,.kbq-tree-select.kbq-invalid{color:var(--kbq-error-default)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid .kbq-select__placeholder,.kbq-tree-select.kbq-invalid .kbq-select__placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-tree-select.kbq-disabled{color:var(--kbq-states-foreground-disabled)}.kbq-tree-select.kbq-disabled .kbq-select__placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-select__placeholder{text-overflow:ellipsis;color:var(--kbq-form-field-default-placeholder)}.kbq-tree-select__panel{box-shadow:var(--kbq-select-panel-dropdown-shadow);background:var(--kbq-select-panel-dropdown-background)}.kbq-tree-select__panel .kbq-select__footer{border-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__search-container{border-bottom-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__no-options-message{color:var(--kbq-foreground-contrast-secondary)}.kbq-tree-select,.kbq-tree-select__panel{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-tree-select__panel{--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}.kbq-tree-select__panel .kbq-tree-selection{--kbq-tree-option-border-radius: var(--kbq-size-xs)}\n"], dependencies: [{ kind: "directive", type: i5.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i5.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: i6.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "component", type: i7.KbqTag, selector: "kbq-tag, [kbq-tag], kbq-basic-tag, [kbq-basic-tag]", inputs: ["selected", "value", "selectable", "removable", "tabindex", "disabled"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["kbqTag"] }, { kind: "directive", type: i7.KbqTagRemove, selector: "[kbqTagRemove]" }, { kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i9.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }], animations: [
835
+ ], queries: [{ propertyName: "cleaner", first: true, predicate: ["kbqSelectCleaner"], descendants: true, static: true }, { propertyName: "customTrigger", first: true, predicate: KbqSelectTrigger, descendants: true }, { propertyName: "customMatcher", first: true, predicate: KbqSelectMatcher, descendants: true }, { propertyName: "customTagTemplateRef", first: true, predicate: ["kbqSelectTagContent"], descendants: true, read: TemplateRef }, { propertyName: "tree", first: true, predicate: KbqTreeSelection, descendants: true }, { propertyName: "search", first: true, predicate: KbqSelectSearch, descendants: true }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }, { propertyName: "tags", predicate: KbqTag, descendants: true }], exportAs: ["kbqTreeSelect"], usesInheritance: true, ngImport: i0, template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger\n cdkOverlayOrigin\n class=\"kbq-select__trigger\"\n [class.kbq-select__trigger_empty]=\"empty\"\n [class.kbq-select__trigger_multiple]=\"multiple\"\n [class.kbq-select__trigger_single]=\"!multiple\"\n>\n @if (!!customMatcher) {\n <ng-content select=\"kbq-select-matcher, [kbq-select-matcher]\" />\n } @else {\n <div class=\"kbq-select__matcher\">\n @if (empty) {\n <span class=\"kbq-select__placeholder\">\n {{ placeholder || '\\u00A0' }}\n </span>\n }\n @if (!empty) {\n <span>\n @if (!!customTrigger) {\n <ng-content select=\"kbq-select-trigger, [kbq-select-trigger]\" />\n } @else {\n <div class=\"kbq-select__match-container\">\n @if (multiple) {\n <div class=\"kbq-select__match-list\">\n @if (!customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <kbq-tag\n [color]=\"colorForState\"\n [disabled]=\"option.disabled || disabled\"\n [selectable]=\"false\"\n >\n {{ option.viewValue }}\n @if (!option.disabled && !disabled) {\n <i\n kbq-icon=\"kbq-xmark-s_16\"\n kbqTagRemove\n (click)=\"onRemoveSelectedOption(option, $event)\"\n ></i>\n }\n </kbq-tag>\n }\n }\n @if (customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <ng-container\n [ngTemplateOutlet]=\"customTagTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, select: this }\"\n />\n }\n }\n </div>\n } @else {\n <span class=\"kbq-select__matcher-text\">\n {{ triggerValue }}\n </span>\n }\n <div\n class=\"kbq-select__match-hidden-text\"\n [style.display]=\"hiddenItems > 0 ? 'block' : 'none'\"\n >\n {{ hiddenItemsTextFormatter(hiddenItemsText, hiddenItems) }}\n </div>\n </div>\n }\n </span>\n }\n\n @if (canShowCleaner) {\n <div\n class=\"kbq-select__cleaner\"\n (click)=\"clearValue($event)\"\n (keydown.enter)=\"clearValue($event)\"\n (keydown.space)=\"clearValue($event)\"\n >\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <div class=\"kbq-select__arrow-wrapper\">\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"kbq-select__arrow\" [color]=\"colorForState\"></i>\n </div>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayMinWidth]=\"overlayMinWidth\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayOrigin]=\"overlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayPanelClass]=\"overlayPanelClass\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayWidth]=\"overlayWidth\"\n (attach)=\"onAttached()\"\n (backdropClick)=\"close()\"\n>\n <div\n #panel\n cdkMonitorSubtreeFocus\n class=\"kbq-tree-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.font-size.px]=\"triggerFontSize\"\n [style.transformOrigin]=\"transformOrigin\"\n (keydown)=\"handleKeydown($event)\"\n >\n @if (search) {\n <div class=\"kbq-select__search-container\">\n <ng-content select=\"[kbqSelectSearch]\" />\n </div>\n }\n\n <div\n #optionsContainer\n class=\"kbq-tree-select__content kbq-scrollbar\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\"\n [@fadeInContent]=\"'showing'\"\n >\n @if (isEmptySearchResult) {\n <div class=\"kbq-select__no-options-message\">\n <ng-content select=\"[kbq-select-search-empty-result]\" />\n </div>\n }\n\n <ng-content select=\"kbq-tree-selection\" />\n </div>\n\n <ng-content select=\"kbq-select-footer,[kbq-tree-select-footer]\" />\n </div>\n</ng-template>\n", styles: [".kbq-tree-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.kbq-tree-select .kbq-select__matcher{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-grow:1;align-items:center;overflow:hidden;white-space:nowrap}.kbq-tree-select .kbq-select__matcher>span{flex:1;overflow:hidden}.kbq-tree-select .kbq-select__trigger{display:flex;box-sizing:border-box;position:relative;cursor:pointer;height:calc(var(--kbq-form-field-size-height) - var(--kbq-size-border-width) * 2)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_single .kbq-select__matcher,.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple.kbq-select__trigger_empty .kbq-select__matcher{padding:var(--kbq-select-size-single-padding-vertical) var(--kbq-select-size-single-padding-right) var(--kbq-select-size-single-padding-vertical) var(--kbq-select-size-single-padding-left)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher{padding:var(--kbq-select-size-multiple-padding-vertical) var(--kbq-select-size-multiple-padding-right) var(--kbq-select-size-multiple-padding-vertical) var(--kbq-select-size-multiple-padding-left)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-container{display:flex}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;height:calc(var(--kbq-form-field-size-height) - var(--kbq-select-size-multiple-padding-vertical) * 2);max-height:calc(var(--kbq-form-field-size-height) - var(--kbq-select-size-multiple-padding-vertical) * 2);gap:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));margin-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs))}.kbq-tree-select .kbq-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.kbq-tree-select .kbq-select__match-container .kbq-select__match-hidden-text{flex:0 0 70px;align-self:center;padding-left:4px;padding-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));text-align:right}.kbq-tree-select .kbq-select__arrow-wrapper{display:flex;align-self:center;justify-content:center;width:var(--kbq-form-field-size-addon-width)}.kbq-form-field-appearance-fill .kbq-tree-select .kbq-select__arrow-wrapper,.kbq-form-field-appearance-standard .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-50%)}.kbq-form-field-appearance-outline .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-25%)}.kbq-disabled.kbq-tree-select .kbq-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.kbq-tree-select__panel{min-width:100%;overflow:hidden;border-radius:var(--kbq-select-panel-size-border-radius, var(--kbq-size-border-radius))}.kbq-tree-select__panel .kbq-option{font-size:inherit}.kbq-tree-select__panel .kbq-select__no-options-message{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--kbq-option-size-height, var(--kbq-size-3xl));cursor:default;outline:none;padding-left:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));padding-right:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));border:var(--kbq-option-size-border-width, var(--kbq-size-3xs)) solid transparent}.kbq-tree-select__panel .kbq-select__search-container{padding:var(--kbq-size-xxs);border-bottom-width:1px;border-bottom-style:solid}.kbq-tree-select__content{max-height:var(--kbq-select-panel-size-max-height, 256px);padding:var(--kbq-size-xxs);overflow:hidden auto}.kbq-tree-select__panel .kbq-select__footer{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;box-sizing:border-box;min-height:40px;border-top-width:1px;border-top-style:solid;padding:var(--kbq-size-xxs) var(--kbq-size-l)}.kbq-tree-select__content .kbq-tree-selection{height:100%}.kbq-form-field-type-select:not(.kbq-disabled) .kbq-form-field-flex{cursor:pointer}.kbq-tree-select{color:var(--kbq-foreground-contrast)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid,.kbq-tree-select.kbq-invalid{color:var(--kbq-error-default)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid .kbq-select__placeholder,.kbq-tree-select.kbq-invalid .kbq-select__placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-tree-select.kbq-disabled{color:var(--kbq-states-foreground-disabled)}.kbq-tree-select.kbq-disabled .kbq-select__placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-select__placeholder{text-overflow:ellipsis;color:var(--kbq-form-field-default-placeholder)}.kbq-tree-select__panel{box-shadow:var(--kbq-select-panel-dropdown-shadow);background:var(--kbq-select-panel-dropdown-background)}.kbq-tree-select__panel .kbq-select__footer{border-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__search-container{border-bottom-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__no-options-message{color:var(--kbq-foreground-contrast-secondary)}.kbq-tree-select,.kbq-tree-select__panel{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-tree-select__panel{--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}.kbq-tree-select__panel .kbq-tree-selection{--kbq-tree-option-border-radius: var(--kbq-size-xs)}\n", ".kbq-select,.kbq-tree-select,.kbq-select__panel{--kbq-select-size-single-padding-left: var(--kbq-form-field-size-infix-padding);--kbq-select-size-single-padding-right: var(--kbq-form-field-size-suffix-padding);--kbq-select-size-single-padding-vertical: var(--kbq-size-xs);--kbq-select-size-single-content-gap: var(--kbq-size-xxs);--kbq-select-size-multiple-padding-left: 0;--kbq-select-size-multiple-padding-right: 0;--kbq-select-size-multiple-padding-vertical: var(--kbq-size-xxs);--kbq-select-size-multiple-content-gap: var(--kbq-size-xxs);--kbq-select-panel-size-border-radius: var(--kbq-size-border-radius);--kbq-select-panel-size-max-height: 256px;--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}\n"], dependencies: [{ kind: "directive", type: i5.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i5.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: i6.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "component", type: i7.KbqTag, selector: "kbq-tag, [kbq-tag], kbq-basic-tag, [kbq-basic-tag]", inputs: ["selected", "value", "selectable", "removable", "tabindex", "disabled"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["kbqTag"] }, { kind: "directive", type: i7.KbqTagRemove, selector: "[kbqTagRemove]" }, { kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i9.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }], animations: [
833
836
  kbqSelectAnimations.transformPanel,
834
837
  kbqSelectAnimations.fadeInContent
835
838
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
@@ -838,6 +841,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
838
841
  type: Component,
839
842
  args: [{ selector: 'kbq-tree-select', exportAs: 'kbqTreeSelect', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
840
843
  class: 'kbq-tree-select',
844
+ '[class.kbq-select_multiple]': 'multiple',
841
845
  '[class.kbq-disabled]': 'disabled',
842
846
  '[class.kbq-invalid]': 'errorState',
843
847
  '[attr.tabindex]': 'tabIndex',
@@ -854,7 +858,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
854
858
  { provide: KbqFormFieldControl, useExisting: KbqTreeSelect },
855
859
  { provide: KbqTree, useExisting: KbqTreeSelect },
856
860
  { provide: KBQ_PARENT_POPUP, useExisting: KbqTreeSelect }
857
- ], template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger\n cdkOverlayOrigin\n class=\"kbq-select__trigger\"\n [class.kbq-select__trigger_empty]=\"empty\"\n [class.kbq-select__trigger_multiple]=\"multiple\"\n [class.kbq-select__trigger_single]=\"!multiple\"\n>\n @if (!!customMatcher) {\n <ng-content select=\"kbq-select-matcher, [kbq-select-matcher]\" />\n } @else {\n <div class=\"kbq-select__matcher\">\n @if (empty) {\n <span class=\"kbq-select__placeholder\">\n {{ placeholder || '\\u00A0' }}\n </span>\n }\n @if (!empty) {\n <span>\n @if (!!customTrigger) {\n <ng-content select=\"kbq-select-trigger, [kbq-select-trigger]\" />\n } @else {\n <div class=\"kbq-select__match-container\">\n @if (multiple) {\n <div class=\"kbq-select__match-list\">\n @if (!customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <kbq-tag\n [color]=\"colorForState\"\n [disabled]=\"option.disabled || disabled\"\n [selectable]=\"false\"\n >\n {{ option.viewValue }}\n @if (!option.disabled && !disabled) {\n <i\n kbq-icon=\"kbq-xmark-s_16\"\n kbqTagRemove\n (click)=\"onRemoveSelectedOption(option, $event)\"\n ></i>\n }\n </kbq-tag>\n }\n }\n @if (customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <ng-container\n [ngTemplateOutlet]=\"customTagTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, select: this }\"\n />\n }\n }\n </div>\n } @else {\n <span class=\"kbq-select__matcher-text\">\n {{ triggerValue }}\n </span>\n }\n <div\n class=\"kbq-select__match-hidden-text\"\n [style.display]=\"hiddenItems > 0 ? 'block' : 'none'\"\n >\n {{ hiddenItemsTextFormatter(hiddenItemsText, hiddenItems) }}\n </div>\n </div>\n }\n </span>\n }\n\n @if (canShowCleaner) {\n <div\n class=\"kbq-select__cleaner\"\n (click)=\"clearValue($event)\"\n (keydown.enter)=\"clearValue($event)\"\n (keydown.space)=\"clearValue($event)\"\n >\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <div class=\"kbq-select__arrow-wrapper\">\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"kbq-select__arrow\" [color]=\"colorForState\"></i>\n </div>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayMinWidth]=\"overlayMinWidth\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayOrigin]=\"overlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayPanelClass]=\"overlayPanelClass\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayWidth]=\"overlayWidth\"\n (attach)=\"onAttached()\"\n (backdropClick)=\"close()\"\n>\n <div\n #panel\n cdkMonitorSubtreeFocus\n class=\"kbq-tree-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.font-size.px]=\"triggerFontSize\"\n [style.transformOrigin]=\"transformOrigin\"\n (keydown)=\"handleKeydown($event)\"\n >\n @if (search) {\n <div class=\"kbq-select__search-container\">\n <ng-content select=\"[kbqSelectSearch]\" />\n </div>\n }\n\n <div\n #optionsContainer\n class=\"kbq-tree-select__content kbq-scrollbar\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\"\n [@fadeInContent]=\"'showing'\"\n >\n @if (isEmptySearchResult) {\n <div class=\"kbq-select__no-options-message\">\n <ng-content select=\"[kbq-select-search-empty-result]\" />\n </div>\n }\n\n <ng-content select=\"kbq-tree-selection\" />\n </div>\n\n <ng-content select=\"kbq-select-footer,[kbq-tree-select-footer]\" />\n </div>\n</ng-template>\n", styles: [".kbq-tree-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.kbq-tree-select .kbq-select__matcher{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.kbq-tree-select .kbq-select__matcher>span{flex:1;overflow:hidden}.kbq-tree-select .kbq-select__trigger{display:flex;box-sizing:border-box;position:relative;cursor:pointer;height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-size-border-width) * 2)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_single .kbq-select__matcher,.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple.kbq-select__trigger_empty .kbq-select__matcher{padding:calc(var(--kbq-select-size-single-padding-vertical, var(--kbq-size-xs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-right, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-vertical, var(--kbq-size-xs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-single-padding-left, var(--kbq-size-m)) - var(--kbq-size-border-width))}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher{padding:calc(var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-right, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) - var(--kbq-size-border-width)) calc(var(--kbq-select-size-multiple-padding-left, var(--kbq-size-xxs)) - var(--kbq-size-border-width))}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-container{display:flex}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) * 2);max-height:calc(var(--kbq-form-field-size-height, var(--kbq-size-3xl)) - var(--kbq-select-size-multiple-padding-vertical, var(--kbq-size-xxs)) * 2);gap:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));margin-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs))}.kbq-tree-select .kbq-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.kbq-tree-select .kbq-select__match-container .kbq-select__match-hidden-text{flex:0 0 70px;align-self:center;padding-left:4px;padding-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));text-align:right}.kbq-tree-select .kbq-select__arrow-wrapper{display:flex;align-self:center;padding:4px}.kbq-form-field-appearance-fill .kbq-tree-select .kbq-select__arrow-wrapper,.kbq-form-field-appearance-standard .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-50%)}.kbq-form-field-appearance-outline .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-25%)}.kbq-disabled.kbq-tree-select .kbq-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.kbq-tree-select__panel{min-width:100%;overflow:hidden;border-radius:var(--kbq-select-panel-size-border-radius, var(--kbq-size-border-radius))}.kbq-tree-select__panel .kbq-option{font-size:inherit}.kbq-tree-select__panel .kbq-select__no-options-message{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--kbq-option-size-height, var(--kbq-size-3xl));cursor:default;outline:none;padding-left:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));padding-right:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));border:var(--kbq-option-size-border-width, var(--kbq-size-3xs)) solid transparent}.kbq-tree-select__panel .kbq-select__search-container{padding:var(--kbq-size-xxs);border-bottom-width:1px;border-bottom-style:solid}.kbq-tree-select__content{max-height:var(--kbq-select-panel-size-max-height, 256px);padding:var(--kbq-size-xxs);overflow:hidden auto}.kbq-tree-select__panel .kbq-select__footer{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;box-sizing:border-box;min-height:40px;border-top-width:1px;border-top-style:solid;padding:var(--kbq-size-xxs) var(--kbq-size-l)}.kbq-tree-select__content .kbq-tree-selection{height:100%}.kbq-form-field-type-select:not(.kbq-disabled) .kbq-form-field-flex{cursor:pointer}.kbq-tree-select{color:var(--kbq-foreground-contrast)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid,.kbq-tree-select.kbq-invalid{color:var(--kbq-error-default)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid .kbq-select__placeholder,.kbq-tree-select.kbq-invalid .kbq-select__placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-tree-select.kbq-disabled{color:var(--kbq-states-foreground-disabled)}.kbq-tree-select.kbq-disabled .kbq-select__placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-select__placeholder{text-overflow:ellipsis;color:var(--kbq-form-field-default-placeholder)}.kbq-tree-select__panel{box-shadow:var(--kbq-select-panel-dropdown-shadow);background:var(--kbq-select-panel-dropdown-background)}.kbq-tree-select__panel .kbq-select__footer{border-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__search-container{border-bottom-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__no-options-message{color:var(--kbq-foreground-contrast-secondary)}.kbq-tree-select,.kbq-tree-select__panel{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-tree-select__panel{--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}.kbq-tree-select__panel .kbq-tree-selection{--kbq-tree-option-border-radius: var(--kbq-size-xs)}\n"] }]
861
+ ], template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger\n cdkOverlayOrigin\n class=\"kbq-select__trigger\"\n [class.kbq-select__trigger_empty]=\"empty\"\n [class.kbq-select__trigger_multiple]=\"multiple\"\n [class.kbq-select__trigger_single]=\"!multiple\"\n>\n @if (!!customMatcher) {\n <ng-content select=\"kbq-select-matcher, [kbq-select-matcher]\" />\n } @else {\n <div class=\"kbq-select__matcher\">\n @if (empty) {\n <span class=\"kbq-select__placeholder\">\n {{ placeholder || '\\u00A0' }}\n </span>\n }\n @if (!empty) {\n <span>\n @if (!!customTrigger) {\n <ng-content select=\"kbq-select-trigger, [kbq-select-trigger]\" />\n } @else {\n <div class=\"kbq-select__match-container\">\n @if (multiple) {\n <div class=\"kbq-select__match-list\">\n @if (!customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <kbq-tag\n [color]=\"colorForState\"\n [disabled]=\"option.disabled || disabled\"\n [selectable]=\"false\"\n >\n {{ option.viewValue }}\n @if (!option.disabled && !disabled) {\n <i\n kbq-icon=\"kbq-xmark-s_16\"\n kbqTagRemove\n (click)=\"onRemoveSelectedOption(option, $event)\"\n ></i>\n }\n </kbq-tag>\n }\n }\n @if (customTagTemplateRef) {\n @for (option of triggerValues; track option) {\n <ng-container\n [ngTemplateOutlet]=\"customTagTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, select: this }\"\n />\n }\n }\n </div>\n } @else {\n <span class=\"kbq-select__matcher-text\">\n {{ triggerValue }}\n </span>\n }\n <div\n class=\"kbq-select__match-hidden-text\"\n [style.display]=\"hiddenItems > 0 ? 'block' : 'none'\"\n >\n {{ hiddenItemsTextFormatter(hiddenItemsText, hiddenItems) }}\n </div>\n </div>\n }\n </span>\n }\n\n @if (canShowCleaner) {\n <div\n class=\"kbq-select__cleaner\"\n (click)=\"clearValue($event)\"\n (keydown.enter)=\"clearValue($event)\"\n (keydown.space)=\"clearValue($event)\"\n >\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <div class=\"kbq-select__arrow-wrapper\">\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"kbq-select__arrow\" [color]=\"colorForState\"></i>\n </div>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayMinWidth]=\"overlayMinWidth\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayOrigin]=\"overlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayPanelClass]=\"overlayPanelClass\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayWidth]=\"overlayWidth\"\n (attach)=\"onAttached()\"\n (backdropClick)=\"close()\"\n>\n <div\n #panel\n cdkMonitorSubtreeFocus\n class=\"kbq-tree-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.font-size.px]=\"triggerFontSize\"\n [style.transformOrigin]=\"transformOrigin\"\n (keydown)=\"handleKeydown($event)\"\n >\n @if (search) {\n <div class=\"kbq-select__search-container\">\n <ng-content select=\"[kbqSelectSearch]\" />\n </div>\n }\n\n <div\n #optionsContainer\n class=\"kbq-tree-select__content kbq-scrollbar\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\"\n [@fadeInContent]=\"'showing'\"\n >\n @if (isEmptySearchResult) {\n <div class=\"kbq-select__no-options-message\">\n <ng-content select=\"[kbq-select-search-empty-result]\" />\n </div>\n }\n\n <ng-content select=\"kbq-tree-selection\" />\n </div>\n\n <ng-content select=\"kbq-select-footer,[kbq-tree-select-footer]\" />\n </div>\n</ng-template>\n", styles: [".kbq-tree-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.kbq-tree-select .kbq-select__matcher{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-grow:1;align-items:center;overflow:hidden;white-space:nowrap}.kbq-tree-select .kbq-select__matcher>span{flex:1;overflow:hidden}.kbq-tree-select .kbq-select__trigger{display:flex;box-sizing:border-box;position:relative;cursor:pointer;height:calc(var(--kbq-form-field-size-height) - var(--kbq-size-border-width) * 2)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_single .kbq-select__matcher,.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple.kbq-select__trigger_empty .kbq-select__matcher{padding:var(--kbq-select-size-single-padding-vertical) var(--kbq-select-size-single-padding-right) var(--kbq-select-size-single-padding-vertical) var(--kbq-select-size-single-padding-left)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher{padding:var(--kbq-select-size-multiple-padding-vertical) var(--kbq-select-size-multiple-padding-right) var(--kbq-select-size-multiple-padding-vertical) var(--kbq-select-size-multiple-padding-left)}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-container{display:flex}.kbq-tree-select .kbq-select__trigger.kbq-select__trigger_multiple:not(.kbq-select__trigger_empty) .kbq-select__matcher .kbq-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;height:calc(var(--kbq-form-field-size-height) - var(--kbq-select-size-multiple-padding-vertical) * 2);max-height:calc(var(--kbq-form-field-size-height) - var(--kbq-select-size-multiple-padding-vertical) * 2);gap:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));margin-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs))}.kbq-tree-select .kbq-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.kbq-tree-select .kbq-select__match-container .kbq-select__match-hidden-text{flex:0 0 70px;align-self:center;padding-left:4px;padding-right:var(--kbq-select-size-multiple-content-gap, var(--kbq-size-xxs));text-align:right}.kbq-tree-select .kbq-select__arrow-wrapper{display:flex;align-self:center;justify-content:center;width:var(--kbq-form-field-size-addon-width)}.kbq-form-field-appearance-fill .kbq-tree-select .kbq-select__arrow-wrapper,.kbq-form-field-appearance-standard .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-50%)}.kbq-form-field-appearance-outline .kbq-tree-select .kbq-select__arrow-wrapper{transform:translateY(-25%)}.kbq-disabled.kbq-tree-select .kbq-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.kbq-tree-select__panel{min-width:100%;overflow:hidden;border-radius:var(--kbq-select-panel-size-border-radius, var(--kbq-size-border-radius))}.kbq-tree-select__panel .kbq-option{font-size:inherit}.kbq-tree-select__panel .kbq-select__no-options-message{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--kbq-option-size-height, var(--kbq-size-3xl));cursor:default;outline:none;padding-left:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));padding-right:var(--kbq-option-size-horizontal-padding, var(--kbq-size-m));border:var(--kbq-option-size-border-width, var(--kbq-size-3xs)) solid transparent}.kbq-tree-select__panel .kbq-select__search-container{padding:var(--kbq-size-xxs);border-bottom-width:1px;border-bottom-style:solid}.kbq-tree-select__content{max-height:var(--kbq-select-panel-size-max-height, 256px);padding:var(--kbq-size-xxs);overflow:hidden auto}.kbq-tree-select__panel .kbq-select__footer{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;align-items:center;box-sizing:border-box;min-height:40px;border-top-width:1px;border-top-style:solid;padding:var(--kbq-size-xxs) var(--kbq-size-l)}.kbq-tree-select__content .kbq-tree-selection{height:100%}.kbq-form-field-type-select:not(.kbq-disabled) .kbq-form-field-flex{cursor:pointer}.kbq-tree-select{color:var(--kbq-foreground-contrast)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid,.kbq-tree-select.kbq-invalid{color:var(--kbq-error-default)}.kbq-tree-select.kbq-control_has-validate-directive.ng-invalid .kbq-select__placeholder,.kbq-tree-select.kbq-invalid .kbq-select__placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-tree-select.kbq-disabled{color:var(--kbq-states-foreground-disabled)}.kbq-tree-select.kbq-disabled .kbq-select__placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-select__placeholder{text-overflow:ellipsis;color:var(--kbq-form-field-default-placeholder)}.kbq-tree-select__panel{box-shadow:var(--kbq-select-panel-dropdown-shadow);background:var(--kbq-select-panel-dropdown-background)}.kbq-tree-select__panel .kbq-select__footer{border-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__search-container{border-bottom-color:var(--kbq-divider-color, var(--kbq-line-contrast-less))}.kbq-select__no-options-message{color:var(--kbq-foreground-contrast-secondary)}.kbq-tree-select,.kbq-tree-select__panel{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-tree-select__panel{--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}.kbq-tree-select__panel .kbq-tree-selection{--kbq-tree-option-border-radius: var(--kbq-size-xs)}\n", ".kbq-select,.kbq-tree-select,.kbq-select__panel{--kbq-select-size-single-padding-left: var(--kbq-form-field-size-infix-padding);--kbq-select-size-single-padding-right: var(--kbq-form-field-size-suffix-padding);--kbq-select-size-single-padding-vertical: var(--kbq-size-xs);--kbq-select-size-single-content-gap: var(--kbq-size-xxs);--kbq-select-size-multiple-padding-left: 0;--kbq-select-size-multiple-padding-right: 0;--kbq-select-size-multiple-padding-vertical: var(--kbq-size-xxs);--kbq-select-size-multiple-content-gap: var(--kbq-size-xxs);--kbq-select-panel-size-border-radius: var(--kbq-size-border-radius);--kbq-select-panel-size-max-height: 256px;--kbq-select-panel-dropdown-background: var(--kbq-background-card);--kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup)}\n"] }]
858
862
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.ErrorStateMatcher }, { type: undefined, decorators: [{
859
863
  type: Inject,
860
864
  args: [KBQ_SELECT_SCROLL_STRATEGY]
@@ -934,7 +938,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
934
938
  }], required: [{
935
939
  type: Input
936
940
  }], multiple: [{
937
- type: Input
941
+ type: Input,
942
+ args: [{ transform: booleanAttribute }]
938
943
  }], autoSelect: [{
939
944
  type: Input
940
945
  }], id: [{