@koobiq/components 18.34.0 → 18.36.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 (583) hide show
  1. package/accordion/accordion.component.d.ts +1 -1
  2. package/app-switcher/_app-switcher-theme.scss +34 -0
  3. package/app-switcher/app-switcher-animations.d.ts +5 -0
  4. package/app-switcher/app-switcher-dropdown-app.d.ts +11 -0
  5. package/app-switcher/app-switcher-dropdown-app.scss +85 -0
  6. package/app-switcher/app-switcher-dropdown-site.d.ts +9 -0
  7. package/app-switcher/app-switcher-dropdown-site.scss +53 -0
  8. package/app-switcher/app-switcher.d.ts +191 -0
  9. package/app-switcher/app-switcher.module.d.ts +10 -0
  10. package/app-switcher/app-switcher.scss +64 -0
  11. package/app-switcher/index.d.ts +1 -0
  12. package/app-switcher/kbq-app-switcher-list-item.d.ts +16 -0
  13. package/app-switcher/kbq-app-switcher-list-item.scss +180 -0
  14. package/app-switcher/public-api.d.ts +6 -0
  15. package/badge/badge.component.d.ts +1 -1
  16. package/badge/badge.component.scss +2 -0
  17. package/breadcrumbs/breadcrumbs.scss +4 -0
  18. package/button/_button-theme.scss +1 -0
  19. package/button/button.component.d.ts +2 -2
  20. package/core/common-behaviors/clipboard.d.ts +1 -1
  21. package/core/common-behaviors/color.d.ts +5 -5
  22. package/core/common-behaviors/focus-monitor.d.ts +19 -0
  23. package/core/common-behaviors/hovered.d.ts +13 -0
  24. package/core/common-behaviors/index.d.ts +4 -0
  25. package/core/common-behaviors/orientation.d.ts +4 -0
  26. package/core/common-behaviors/read-state.d.ts +12 -0
  27. package/core/form-field/field-sizing-content.d.ts +21 -0
  28. package/core/form-field/index.d.ts +1 -0
  29. package/core/locales/en-US.d.ts +68 -0
  30. package/core/locales/es-LA.d.ts +68 -0
  31. package/core/locales/fa-IR.d.ts +68 -0
  32. package/core/locales/locale-service.d.ts +476 -0
  33. package/core/locales/pt-BR.d.ts +68 -0
  34. package/core/locales/ru-RU.d.ts +68 -0
  35. package/core/locales/tk-TM.d.ts +68 -0
  36. package/core/locales/types.d.ts +22 -0
  37. package/core/locales/zh-CN.d.ts +68 -0
  38. package/core/navbar/index.d.ts +1 -0
  39. package/core/navbar/rectangle-item.d.ts +14 -0
  40. package/core/option/action.d.ts +1 -1
  41. package/core/option/option.d.ts +4 -2
  42. package/core/pop-up/constants.d.ts +2 -1
  43. package/core/pop-up/pop-up-trigger.d.ts +5 -3
  44. package/core/pop-up/pop-up.d.ts +2 -1
  45. package/core/public-api.d.ts +1 -0
  46. package/core/select/common.d.ts +3 -0
  47. package/core/select/constants.d.ts +5 -0
  48. package/core/styles/common/_select.scss +5 -0
  49. package/core/utils/dom.d.ts +4 -0
  50. package/core/utils/index.d.ts +1 -0
  51. package/core/utils/utils.d.ts +4 -0
  52. package/datepicker/datepicker-input.directive.d.ts +18 -7
  53. package/divider/divider.scss +1 -0
  54. package/dropdown/dropdown-item.scss +1 -0
  55. package/dropdown/dropdown-trigger.directive.d.ts +7 -1
  56. package/dropdown/dropdown.component.d.ts +5 -1
  57. package/dropdown/dropdown.module.d.ts +1 -1
  58. package/esm2022/accordion/accordion-content.mjs +3 -3
  59. package/esm2022/accordion/accordion-header.mjs +3 -3
  60. package/esm2022/accordion/accordion-item.mjs +3 -3
  61. package/esm2022/accordion/accordion-trigger.component.mjs +3 -3
  62. package/esm2022/accordion/accordion.component.mjs +5 -5
  63. package/esm2022/accordion/accordion.module.mjs +4 -4
  64. package/esm2022/actions-panel/actions-panel-container.mjs +3 -3
  65. package/esm2022/actions-panel/actions-panel.mjs +3 -3
  66. package/esm2022/actions-panel/module.mjs +4 -4
  67. package/esm2022/alert/alert.component.mjs +12 -12
  68. package/esm2022/alert/alert.module.mjs +4 -4
  69. package/esm2022/app-switcher/app-switcher-animations.mjs +18 -0
  70. package/esm2022/app-switcher/app-switcher-dropdown-app.mjs +75 -0
  71. package/esm2022/app-switcher/app-switcher-dropdown-site.mjs +60 -0
  72. package/esm2022/app-switcher/app-switcher.mjs +446 -0
  73. package/esm2022/app-switcher/app-switcher.module.mjs +45 -0
  74. package/esm2022/app-switcher/index.mjs +2 -0
  75. package/esm2022/app-switcher/kbq-app-switcher-list-item.mjs +84 -0
  76. package/esm2022/app-switcher/koobiq-components-app-switcher.mjs +5 -0
  77. package/esm2022/app-switcher/public-api.mjs +7 -0
  78. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +3 -3
  79. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +3 -3
  80. package/esm2022/autocomplete/autocomplete.component.mjs +3 -3
  81. package/esm2022/autocomplete/autocomplete.module.mjs +4 -4
  82. package/esm2022/badge/badge.component.mjs +11 -11
  83. package/esm2022/badge/badge.module.mjs +4 -4
  84. package/esm2022/breadcrumbs/breadcrumbs.mjs +17 -17
  85. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +4 -4
  86. package/esm2022/button/button.component.mjs +9 -9
  87. package/esm2022/button/button.dropdown-trigger.directive.mjs +3 -3
  88. package/esm2022/button/button.module.mjs +4 -4
  89. package/esm2022/button-toggle/button-toggle.component.mjs +6 -6
  90. package/esm2022/button-toggle/button-toggle.module.mjs +4 -4
  91. package/esm2022/checkbox/checkbox-module.mjs +4 -4
  92. package/esm2022/checkbox/checkbox-required-validator.mjs +3 -3
  93. package/esm2022/checkbox/checkbox.mjs +3 -3
  94. package/esm2022/clamped-text/clamped-text.mjs +3 -3
  95. package/esm2022/clamped-text/module.mjs +4 -4
  96. package/esm2022/code-block/code-block-highlight.mjs +7 -7
  97. package/esm2022/code-block/code-block.mjs +4 -4
  98. package/esm2022/code-block/code-block.module.mjs +4 -4
  99. package/esm2022/content-panel/content-panel.mjs +24 -24
  100. package/esm2022/content-panel/module.mjs +4 -4
  101. package/esm2022/content-panel/resizable.mjs +6 -6
  102. package/esm2022/core/common-behaviors/clipboard.mjs +4 -4
  103. package/esm2022/core/common-behaviors/color.mjs +6 -7
  104. package/esm2022/core/common-behaviors/common-module.mjs +4 -4
  105. package/esm2022/core/common-behaviors/focus-monitor.mjs +37 -0
  106. package/esm2022/core/common-behaviors/hovered.mjs +31 -0
  107. package/esm2022/core/common-behaviors/index.mjs +5 -1
  108. package/esm2022/core/common-behaviors/orientation.mjs +2 -0
  109. package/esm2022/core/common-behaviors/read-state.mjs +33 -0
  110. package/esm2022/core/error/error-state-matcher.mjs +9 -9
  111. package/esm2022/core/form-field/field-sizing-content.mjs +114 -0
  112. package/esm2022/core/form-field/index.mjs +2 -1
  113. package/esm2022/core/formatters/date/formatter.mjs +3 -3
  114. package/esm2022/core/formatters/date/formatter.pipe.mjs +78 -78
  115. package/esm2022/core/formatters/filesize/formatter.mjs +3 -3
  116. package/esm2022/core/formatters/index.mjs +4 -4
  117. package/esm2022/core/formatters/number/formatter.mjs +12 -12
  118. package/esm2022/core/forms/forms-module.mjs +4 -4
  119. package/esm2022/core/forms/forms.directive.mjs +6 -6
  120. package/esm2022/core/highlight/highlight.pipe.mjs +3 -3
  121. package/esm2022/core/highlight/index.mjs +4 -4
  122. package/esm2022/core/line/line.mjs +7 -7
  123. package/esm2022/core/locales/en-US.mjs +111 -1
  124. package/esm2022/core/locales/es-LA.mjs +111 -1
  125. package/esm2022/core/locales/fa-IR.mjs +81 -1
  126. package/esm2022/core/locales/locale-service.mjs +3 -3
  127. package/esm2022/core/locales/locale-service.module.mjs +4 -4
  128. package/esm2022/core/locales/pt-BR.mjs +111 -1
  129. package/esm2022/core/locales/ru-RU.mjs +125 -1
  130. package/esm2022/core/locales/tk-TM.mjs +111 -1
  131. package/esm2022/core/locales/types.mjs +1 -1
  132. package/esm2022/core/locales/zh-CN.mjs +69 -1
  133. package/esm2022/core/navbar/index.mjs +2 -0
  134. package/esm2022/core/navbar/rectangle-item.mjs +40 -0
  135. package/esm2022/core/option/action-container.mjs +3 -3
  136. package/esm2022/core/option/action.mjs +4 -4
  137. package/esm2022/core/option/optgroup.mjs +3 -3
  138. package/esm2022/core/option/option-module.mjs +4 -4
  139. package/esm2022/core/option/option.mjs +10 -6
  140. package/esm2022/core/pop-up/constants.mjs +2 -1
  141. package/esm2022/core/pop-up/pop-up-trigger.mjs +10 -6
  142. package/esm2022/core/pop-up/pop-up.mjs +4 -4
  143. package/esm2022/core/public-api.mjs +2 -1
  144. package/esm2022/core/select/common.mjs +27 -17
  145. package/esm2022/core/select/constants.mjs +6 -1
  146. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  147. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  148. package/esm2022/core/services/measure-scrollbar.service.mjs +3 -3
  149. package/esm2022/core/services/theme.service.mjs +3 -3
  150. package/esm2022/core/utils/dom.mjs +8 -0
  151. package/esm2022/core/utils/index.mjs +2 -1
  152. package/esm2022/core/utils/utils.mjs +9 -1
  153. package/esm2022/core/version.mjs +2 -2
  154. package/esm2022/datepicker/calendar-body.component.mjs +3 -3
  155. package/esm2022/datepicker/calendar-header.component.mjs +3 -3
  156. package/esm2022/datepicker/calendar.component.mjs +3 -3
  157. package/esm2022/datepicker/datepicker-input.directive.mjs +29 -26
  158. package/esm2022/datepicker/datepicker-intl.mjs +3 -3
  159. package/esm2022/datepicker/datepicker-module.mjs +4 -4
  160. package/esm2022/datepicker/datepicker-toggle.component.mjs +9 -9
  161. package/esm2022/datepicker/datepicker.component.mjs +6 -6
  162. package/esm2022/datepicker/month-view.component.mjs +3 -3
  163. package/esm2022/divider/divider.component.mjs +4 -4
  164. package/esm2022/divider/divider.module.mjs +4 -4
  165. package/esm2022/dl/dl.component.mjs +9 -9
  166. package/esm2022/dl/dl.module.mjs +4 -4
  167. package/esm2022/dropdown/dropdown-content.directive.mjs +3 -3
  168. package/esm2022/dropdown/dropdown-item.component.mjs +5 -5
  169. package/esm2022/dropdown/dropdown-trigger.directive.mjs +33 -13
  170. package/esm2022/dropdown/dropdown.component.mjs +18 -8
  171. package/esm2022/dropdown/dropdown.module.mjs +14 -10
  172. package/esm2022/dynamic-translation/dynamic-translation.mjs +9 -9
  173. package/esm2022/dynamic-translation/module.mjs +4 -4
  174. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -7
  175. package/esm2022/empty-state/empty-state.component.mjs +15 -15
  176. package/esm2022/empty-state/empty-state.module.mjs +4 -4
  177. package/esm2022/file-upload/file-drop.mjs +3 -3
  178. package/esm2022/file-upload/file-upload.mjs +6 -1
  179. package/esm2022/file-upload/file-upload.module.mjs +4 -4
  180. package/esm2022/file-upload/multiple-file-upload.component.mjs +29 -13
  181. package/esm2022/file-upload/single-file-upload.component.mjs +25 -10
  182. package/esm2022/filter-bar/filter-bar-button.mjs +3 -3
  183. package/esm2022/filter-bar/filter-bar.mjs +6 -6
  184. package/esm2022/filter-bar/filter-bar.module.mjs +4 -4
  185. package/esm2022/filter-bar/filter-refresher.mjs +3 -3
  186. package/esm2022/filter-bar/filter-reset.mjs +3 -3
  187. package/esm2022/filter-bar/filter-search.mjs +3 -3
  188. package/esm2022/filter-bar/filters.mjs +18 -6
  189. package/esm2022/filter-bar/pipe-add.mjs +5 -5
  190. package/esm2022/filter-bar/pipe.directive.mjs +3 -3
  191. package/esm2022/filter-bar/pipes/base-pipe.mjs +7 -7
  192. package/esm2022/filter-bar/pipes/pipe-button.mjs +3 -3
  193. package/esm2022/filter-bar/pipes/pipe-date.mjs +6 -6
  194. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +6 -6
  195. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +19 -14
  196. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +12 -7
  197. package/esm2022/filter-bar/pipes/pipe-readonly.mjs +6 -6
  198. package/esm2022/filter-bar/pipes/pipe-select.mjs +6 -6
  199. package/esm2022/filter-bar/pipes/pipe-state.mjs +3 -3
  200. package/esm2022/filter-bar/pipes/pipe-text.mjs +6 -6
  201. package/esm2022/filter-bar/pipes/pipe-title.mjs +3 -3
  202. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +6 -6
  203. package/esm2022/form-field/cleaner.mjs +3 -3
  204. package/esm2022/form-field/error.mjs +3 -3
  205. package/esm2022/form-field/fieldset.mjs +11 -11
  206. package/esm2022/form-field/form-field.mjs +11 -11
  207. package/esm2022/form-field/form-field.module.mjs +4 -4
  208. package/esm2022/form-field/hint.mjs +3 -3
  209. package/esm2022/form-field/label.mjs +3 -3
  210. package/esm2022/form-field/password-hint.mjs +3 -3
  211. package/esm2022/form-field/password-toggle.mjs +7 -7
  212. package/esm2022/form-field/prefix.mjs +3 -3
  213. package/esm2022/form-field/reactive-password-hint.mjs +3 -3
  214. package/esm2022/form-field/stepper.mjs +3 -3
  215. package/esm2022/form-field/suffix.mjs +3 -3
  216. package/esm2022/form-field/validate.directive.mjs +3 -3
  217. package/esm2022/icon/icon-button.component.mjs +3 -3
  218. package/esm2022/icon/icon-item.component.mjs +3 -3
  219. package/esm2022/icon/icon.component.mjs +4 -4
  220. package/esm2022/icon/icon.module.mjs +4 -4
  221. package/esm2022/inline-edit/index.mjs +3 -0
  222. package/esm2022/inline-edit/inline-edit.mjs +378 -0
  223. package/esm2022/inline-edit/koobiq-components-inline-edit.mjs +5 -0
  224. package/esm2022/inline-edit/module.mjs +25 -0
  225. package/esm2022/input/input-number-validators.mjs +6 -6
  226. package/esm2022/input/input-number.mjs +4 -4
  227. package/esm2022/input/input-password.mjs +4 -4
  228. package/esm2022/input/input.mjs +7 -7
  229. package/esm2022/input/input.module.mjs +4 -4
  230. package/esm2022/link/link.component.mjs +6 -6
  231. package/esm2022/link/link.module.mjs +4 -4
  232. package/esm2022/list/list-selection.component.mjs +10 -10
  233. package/esm2022/list/list.component.mjs +6 -6
  234. package/esm2022/list/list.module.mjs +4 -4
  235. package/esm2022/loader-overlay/loader-overlay.component.mjs +13 -13
  236. package/esm2022/loader-overlay/loader-overlay.module.mjs +4 -4
  237. package/esm2022/markdown/markdown.component.mjs +5 -5
  238. package/esm2022/markdown/markdown.module.mjs +4 -4
  239. package/esm2022/markdown/markdown.service.mjs +3 -3
  240. package/esm2022/modal/css-unit.pipe.mjs +3 -3
  241. package/esm2022/modal/modal-control.service.mjs +3 -3
  242. package/esm2022/modal/modal.component.mjs +4 -4
  243. package/esm2022/modal/modal.directive.mjs +12 -12
  244. package/esm2022/modal/modal.module.mjs +4 -4
  245. package/esm2022/modal/modal.service.mjs +3 -3
  246. package/esm2022/navbar/navbar-item.component.mjs +49 -38
  247. package/esm2022/navbar/navbar.component.mjs +10 -10
  248. package/esm2022/navbar/navbar.module.mjs +4 -4
  249. package/esm2022/navbar/vertical-navbar.component.mjs +4 -4
  250. package/esm2022/navbar-ic/index.mjs +2 -0
  251. package/esm2022/navbar-ic/koobiq-components-navbar-ic.mjs +5 -0
  252. package/esm2022/navbar-ic/navbar-ic-header.mjs +58 -0
  253. package/esm2022/navbar-ic/navbar-ic-item.mjs +391 -0
  254. package/esm2022/navbar-ic/navbar-ic.animation.mjs +9 -0
  255. package/esm2022/navbar-ic/navbar-ic.mjs +286 -0
  256. package/esm2022/navbar-ic/navbar-ic.module.mjs +74 -0
  257. package/esm2022/navbar-ic/public-api.mjs +5 -0
  258. package/esm2022/notification-center/index.mjs +2 -0
  259. package/esm2022/notification-center/koobiq-components-notification-center.mjs +5 -0
  260. package/esm2022/notification-center/notification-center-animations.mjs +18 -0
  261. package/esm2022/notification-center/notification-center.mjs +353 -0
  262. package/esm2022/notification-center/notification-center.module.mjs +38 -0
  263. package/esm2022/notification-center/notification-center.service.mjs +127 -0
  264. package/esm2022/notification-center/notification-item.mjs +70 -0
  265. package/esm2022/notification-center/public-api.mjs +5 -0
  266. package/esm2022/overflow-items/module.mjs +4 -4
  267. package/esm2022/overflow-items/overflow-items.mjs +95 -41
  268. package/esm2022/popover/popover-confirm.component.mjs +10 -10
  269. package/esm2022/popover/popover.component.mjs +24 -14
  270. package/esm2022/popover/popover.module.mjs +4 -4
  271. package/esm2022/progress-bar/progress-bar.component.mjs +9 -9
  272. package/esm2022/progress-bar/progress-bar.module.mjs +4 -4
  273. package/esm2022/progress-spinner/progress-spinner.component.mjs +9 -9
  274. package/esm2022/progress-spinner/progress-spinner.module.mjs +4 -4
  275. package/esm2022/radio/radio.component.mjs +6 -6
  276. package/esm2022/radio/radio.module.mjs +4 -4
  277. package/esm2022/risk-level/risk-level.component.mjs +3 -3
  278. package/esm2022/risk-level/risk-level.module.mjs +4 -4
  279. package/esm2022/scrollbar/scrollbar.component.mjs +3 -3
  280. package/esm2022/scrollbar/scrollbar.directive.mjs +3 -3
  281. package/esm2022/scrollbar/scrollbar.module.mjs +4 -4
  282. package/esm2022/search-expandable/index.mjs +2 -0
  283. package/esm2022/search-expandable/koobiq-components-search-expandable.mjs +5 -0
  284. package/esm2022/search-expandable/public-api.mjs +3 -0
  285. package/esm2022/search-expandable/search-expandable.mjs +177 -0
  286. package/esm2022/search-expandable/search-expandable.module.mjs +18 -0
  287. package/esm2022/select/select-option.directive.mjs +3 -3
  288. package/esm2022/select/select.component.mjs +37 -10
  289. package/esm2022/select/select.module.mjs +4 -4
  290. package/esm2022/sidebar/sidebar.component.mjs +9 -9
  291. package/esm2022/sidebar/sidebar.module.mjs +4 -4
  292. package/esm2022/sidepanel/sidepanel-container.component.mjs +3 -3
  293. package/esm2022/sidepanel/sidepanel-directives.mjs +15 -15
  294. package/esm2022/sidepanel/sidepanel.module.mjs +4 -4
  295. package/esm2022/sidepanel/sidepanel.service.mjs +3 -3
  296. package/esm2022/split-button/index.mjs +2 -0
  297. package/esm2022/split-button/koobiq-components-split-button.mjs +5 -0
  298. package/esm2022/split-button/public-api.mjs +3 -0
  299. package/esm2022/split-button/split-button.mjs +92 -0
  300. package/esm2022/split-button/split-button.module.mjs +18 -0
  301. package/esm2022/splitter/splitter.component.mjs +13 -13
  302. package/esm2022/splitter/splitter.module.mjs +4 -4
  303. package/esm2022/table/table.component.mjs +6 -6
  304. package/esm2022/table/table.module.mjs +4 -4
  305. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  306. package/esm2022/tabs/tab-body.component.mjs +6 -6
  307. package/esm2022/tabs/tab-content.directive.mjs +3 -3
  308. package/esm2022/tabs/tab-group.component.mjs +15 -15
  309. package/esm2022/tabs/tab-header.component.mjs +4 -4
  310. package/esm2022/tabs/tab-label-wrapper.directive.mjs +4 -4
  311. package/esm2022/tabs/tab-label.directive.mjs +3 -3
  312. package/esm2022/tabs/tab-nav-bar.mjs +10 -10
  313. package/esm2022/tabs/tab.component.mjs +3 -3
  314. package/esm2022/tabs/tabs.module.mjs +4 -4
  315. package/esm2022/tags/tag-input.mjs +17 -11
  316. package/esm2022/tags/tag-list.component.mjs +256 -195
  317. package/esm2022/tags/tag.component.mjs +398 -118
  318. package/esm2022/tags/tag.module.mjs +20 -10
  319. package/esm2022/textarea/textarea.component.mjs +5 -5
  320. package/esm2022/textarea/textarea.module.mjs +4 -4
  321. package/esm2022/time-range/constants.mjs +21 -0
  322. package/esm2022/time-range/index.mjs +8 -0
  323. package/esm2022/time-range/koobiq-components-time-range.mjs +5 -0
  324. package/esm2022/time-range/module.mjs +36 -0
  325. package/esm2022/time-range/time-range-editor.mjs +219 -0
  326. package/esm2022/time-range/time-range-title-as-form-field.mjs +59 -0
  327. package/esm2022/time-range/time-range-title.mjs +112 -0
  328. package/esm2022/time-range/time-range.mjs +229 -0
  329. package/esm2022/time-range/time-range.service.mjs +189 -0
  330. package/esm2022/time-range/types.mjs +2 -0
  331. package/esm2022/timepicker/timepicker.directive.mjs +4 -4
  332. package/esm2022/timepicker/timepicker.module.mjs +4 -4
  333. package/esm2022/timezone/cities-by-filter.pipe.mjs +3 -3
  334. package/esm2022/timezone/timezone-option.component.mjs +3 -3
  335. package/esm2022/timezone/timezone-option.directive.mjs +3 -3
  336. package/esm2022/timezone/timezone-select.component.mjs +9 -9
  337. package/esm2022/timezone/timezone.module.mjs +4 -4
  338. package/esm2022/timezone/utc-offset.pipe.mjs +3 -3
  339. package/esm2022/title/title.directive.mjs +3 -3
  340. package/esm2022/title/title.module.mjs +4 -4
  341. package/esm2022/toast/toast-container.component.mjs +3 -3
  342. package/esm2022/toast/toast.component.mjs +20 -14
  343. package/esm2022/toast/toast.module.mjs +4 -4
  344. package/esm2022/toast/toast.service.mjs +5 -4
  345. package/esm2022/toast/toast.type.mjs +1 -1
  346. package/esm2022/toggle/toggle.component.mjs +3 -3
  347. package/esm2022/toggle/toggle.module.mjs +4 -4
  348. package/esm2022/tooltip/tooltip.component.mjs +20 -20
  349. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  350. package/esm2022/top-bar/module.mjs +4 -4
  351. package/esm2022/top-bar/top-bar.mjs +9 -9
  352. package/esm2022/tree/node.mjs +3 -3
  353. package/esm2022/tree/outlet.mjs +3 -3
  354. package/esm2022/tree/padding.directive.mjs +3 -3
  355. package/esm2022/tree/toggle.mjs +16 -12
  356. package/esm2022/tree/tree-base.mjs +7 -7
  357. package/esm2022/tree/tree-option.component.mjs +5 -9
  358. package/esm2022/tree/tree-selection.component.mjs +4 -4
  359. package/esm2022/tree/tree.mjs +3 -3
  360. package/esm2022/tree/tree.module.mjs +4 -4
  361. package/esm2022/tree-select/tree-select.component.mjs +54 -14
  362. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  363. package/esm2022/username/module.mjs +4 -4
  364. package/esm2022/username/username.mjs +15 -15
  365. package/esm2022/username/username.pipe.mjs +8 -8
  366. package/fesm2022/koobiq-components-accordion.mjs +20 -20
  367. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  368. package/fesm2022/koobiq-components-actions-panel.mjs +10 -10
  369. package/fesm2022/koobiq-components-alert.mjs +16 -16
  370. package/fesm2022/koobiq-components-app-switcher.mjs +704 -0
  371. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -0
  372. package/fesm2022/koobiq-components-autocomplete.mjs +13 -13
  373. package/fesm2022/koobiq-components-badge.mjs +14 -14
  374. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  375. package/fesm2022/koobiq-components-breadcrumbs.mjs +20 -20
  376. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  377. package/fesm2022/koobiq-components-button-toggle.mjs +10 -10
  378. package/fesm2022/koobiq-components-button.mjs +15 -15
  379. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  380. package/fesm2022/koobiq-components-checkbox.mjs +10 -10
  381. package/fesm2022/koobiq-components-clamped-text.mjs +7 -7
  382. package/fesm2022/koobiq-components-code-block.mjs +13 -13
  383. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  384. package/fesm2022/koobiq-components-content-panel.mjs +34 -34
  385. package/fesm2022/koobiq-components-core.mjs +1218 -237
  386. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  387. package/fesm2022/koobiq-components-datepicker.mjs +62 -60
  388. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  389. package/fesm2022/koobiq-components-divider.mjs +8 -8
  390. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  391. package/fesm2022/koobiq-components-dl.mjs +13 -13
  392. package/fesm2022/koobiq-components-dropdown.mjs +69 -35
  393. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  394. package/fesm2022/koobiq-components-dynamic-translation.mjs +13 -13
  395. package/fesm2022/koobiq-components-ellipsis-center.mjs +7 -7
  396. package/fesm2022/koobiq-components-empty-state.mjs +19 -19
  397. package/fesm2022/koobiq-components-file-upload.mjs +60 -25
  398. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  399. package/fesm2022/koobiq-components-filter-bar.mjs +118 -96
  400. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  401. package/fesm2022/koobiq-components-form-field.mjs +60 -60
  402. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  403. package/fesm2022/koobiq-components-icon.mjs +13 -13
  404. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  405. package/fesm2022/koobiq-components-inline-edit.mjs +407 -0
  406. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -0
  407. package/fesm2022/koobiq-components-input.mjs +22 -22
  408. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  409. package/fesm2022/koobiq-components-link.mjs +10 -10
  410. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  411. package/fesm2022/koobiq-components-list.mjs +19 -19
  412. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  413. package/fesm2022/koobiq-components-loader-overlay.mjs +16 -16
  414. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  415. package/fesm2022/koobiq-components-markdown.mjs +12 -12
  416. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  417. package/fesm2022/koobiq-components-modal.mjs +28 -28
  418. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  419. package/fesm2022/koobiq-components-navbar-ic.mjs +797 -0
  420. package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -0
  421. package/fesm2022/koobiq-components-navbar.mjs +65 -54
  422. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  423. package/fesm2022/koobiq-components-notification-center.mjs +586 -0
  424. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -0
  425. package/fesm2022/koobiq-components-overflow-items.mjs +98 -44
  426. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  427. package/fesm2022/koobiq-components-popover.mjs +36 -26
  428. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  429. package/fesm2022/koobiq-components-progress-bar.mjs +13 -13
  430. package/fesm2022/koobiq-components-progress-spinner.mjs +13 -13
  431. package/fesm2022/koobiq-components-radio.mjs +10 -10
  432. package/fesm2022/koobiq-components-risk-level.mjs +7 -7
  433. package/fesm2022/koobiq-components-scrollbar.mjs +10 -10
  434. package/fesm2022/koobiq-components-search-expandable.mjs +199 -0
  435. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -0
  436. package/fesm2022/koobiq-components-select.mjs +43 -16
  437. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  438. package/fesm2022/koobiq-components-sidebar.mjs +13 -13
  439. package/fesm2022/koobiq-components-sidepanel.mjs +25 -25
  440. package/fesm2022/koobiq-components-split-button.mjs +114 -0
  441. package/fesm2022/koobiq-components-split-button.mjs.map +1 -0
  442. package/fesm2022/koobiq-components-splitter.mjs +16 -16
  443. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  444. package/fesm2022/koobiq-components-table.mjs +10 -10
  445. package/fesm2022/koobiq-components-tabs.mjs +52 -52
  446. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  447. package/fesm2022/koobiq-components-tags.mjs +683 -331
  448. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  449. package/fesm2022/koobiq-components-textarea.mjs +8 -8
  450. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  451. package/fesm2022/koobiq-components-time-range.mjs +840 -0
  452. package/fesm2022/koobiq-components-time-range.mjs.map +1 -0
  453. package/fesm2022/koobiq-components-timepicker.mjs +7 -7
  454. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  455. package/fesm2022/koobiq-components-timezone.mjs +24 -24
  456. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  457. package/fesm2022/koobiq-components-title.mjs +7 -7
  458. package/fesm2022/koobiq-components-toast.mjs +28 -21
  459. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  460. package/fesm2022/koobiq-components-toggle.mjs +7 -7
  461. package/fesm2022/koobiq-components-tooltip.mjs +23 -23
  462. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  463. package/fesm2022/koobiq-components-top-bar.mjs +13 -13
  464. package/fesm2022/koobiq-components-tree-select.mjs +57 -17
  465. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  466. package/fesm2022/koobiq-components-tree.mjs +44 -44
  467. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  468. package/fesm2022/koobiq-components-username.mjs +27 -27
  469. package/file-upload/_file-upload-theme.scss +1 -1
  470. package/file-upload/file-upload.d.ts +6 -3
  471. package/file-upload/multiple-file-upload.component.d.ts +4 -1
  472. package/file-upload/single-file-upload.component.d.ts +4 -1
  473. package/filter-bar/_filter-bar-theme.scss +2 -2
  474. package/filter-bar/filters.d.ts +1 -0
  475. package/filter-bar/pipes/base-pipe.d.ts +1 -1
  476. package/filter-bar/pipes/base-pipe.scss +3 -3
  477. package/filter-bar/pipes/pipe-date.scss +1 -0
  478. package/form-field/fieldset-tokens.scss +1 -1
  479. package/form-field/form-field-tokens.scss +1 -1
  480. package/form-field/form-field.d.ts +1 -1
  481. package/form-field/form-field.scss +8 -10
  482. package/form-field/password-toggle.d.ts +1 -1
  483. package/icon/icon.component.d.ts +2 -2
  484. package/inline-edit/index.d.ts +2 -0
  485. package/inline-edit/inline-edit-tokens.scss +8 -0
  486. package/inline-edit/inline-edit.d.ts +136 -0
  487. package/inline-edit/inline-edit.scss +208 -0
  488. package/inline-edit/module.d.ts +7 -0
  489. package/input/input-number.d.ts +1 -1
  490. package/input/input-password.d.ts +2 -2
  491. package/input/input.d.ts +2 -2
  492. package/link/link.component.d.ts +3 -3
  493. package/list/list-selection.component.d.ts +1 -1
  494. package/loader-overlay/loader-overlay.component.d.ts +1 -1
  495. package/markdown/_markdown-theme.scss +1 -1
  496. package/markdown/markdown-tokens.scss +1 -0
  497. package/markdown/markdown.scss +8 -0
  498. package/modal/modal.component.d.ts +1 -1
  499. package/navbar/navbar-item.component.d.ts +3 -2
  500. package/navbar/navbar.component.d.ts +4 -4
  501. package/navbar/vertical-navbar.component.d.ts +2 -2
  502. package/navbar-ic/_navbar-ic-theme.scss +81 -0
  503. package/navbar-ic/index.d.ts +1 -0
  504. package/navbar-ic/navbar-ic-divider.scss +7 -0
  505. package/navbar-ic/navbar-ic-header.d.ts +18 -0
  506. package/navbar-ic/navbar-ic-header.scss +53 -0
  507. package/navbar-ic/navbar-ic-item.d.ts +125 -0
  508. package/navbar-ic/navbar-ic-item.scss +96 -0
  509. package/navbar-ic/navbar-ic-tokens.scss +22 -0
  510. package/navbar-ic/navbar-ic.animation.d.ts +2 -0
  511. package/navbar-ic/navbar-ic.d.ts +105 -0
  512. package/navbar-ic/navbar-ic.module.d.ts +14 -0
  513. package/navbar-ic/navbar-ic.scss +32 -0
  514. package/navbar-ic/public-api.d.ts +4 -0
  515. package/notification-center/_notification-center-theme.scss +27 -0
  516. package/notification-center/index.d.ts +1 -0
  517. package/notification-center/notification-center-animations.d.ts +5 -0
  518. package/notification-center/notification-center.d.ts +153 -0
  519. package/notification-center/notification-center.module.d.ts +7 -0
  520. package/notification-center/notification-center.scss +126 -0
  521. package/notification-center/notification-center.service.d.ts +72 -0
  522. package/notification-center/notification-item.d.ts +27 -0
  523. package/notification-center/notification-item.scss +157 -0
  524. package/notification-center/public-api.d.ts +4 -0
  525. package/overflow-items/overflow-items.d.ts +23 -9
  526. package/package.json +52 -10
  527. package/popover/_popover-theme.scss +6 -2
  528. package/popover/popover-tokens.scss +2 -0
  529. package/popover/popover.component.d.ts +8 -1
  530. package/popover/popover.scss +15 -7
  531. package/prebuilt-themes/dark-theme.css +1 -1
  532. package/prebuilt-themes/light-theme.css +1 -1
  533. package/prebuilt-themes/theme.css +1 -1
  534. package/schematics/ng-add/index.js +6 -6
  535. package/search-expandable/index.d.ts +1 -0
  536. package/search-expandable/public-api.d.ts +2 -0
  537. package/search-expandable/search-expandable.d.ts +70 -0
  538. package/search-expandable/search-expandable.module.d.ts +7 -0
  539. package/search-expandable/search-expandable.scss +21 -0
  540. package/select/select.component.d.ts +38 -3
  541. package/split-button/_split-button-theme.scss +59 -0
  542. package/split-button/index.d.ts +1 -0
  543. package/split-button/public-api.d.ts +2 -0
  544. package/split-button/split-button.d.ts +31 -0
  545. package/split-button/split-button.module.d.ts +7 -0
  546. package/split-button/split-button.scss +83 -0
  547. package/splitter/splitter.component.d.ts +5 -5
  548. package/tabs/paginated-tab-header.d.ts +1 -1
  549. package/tabs/tab-header.component.d.ts +2 -2
  550. package/tabs/tab-label-wrapper.directive.d.ts +2 -2
  551. package/tabs/tab-nav-bar.d.ts +3 -3
  552. package/tags/_tag-theme.scss +31 -16
  553. package/tags/tag-input.d.ts +2 -0
  554. package/tags/tag-list.component.d.ts +141 -45
  555. package/tags/tag-list.scss +16 -0
  556. package/tags/tag-tokens.scss +17 -1
  557. package/tags/tag.component.d.ts +151 -22
  558. package/tags/tag.module.d.ts +1 -1
  559. package/tags/tag.scss +27 -0
  560. package/textarea/textarea-tokens.scss +1 -1
  561. package/textarea/textarea.component.d.ts +2 -2
  562. package/time-range/constants.d.ts +8 -0
  563. package/time-range/index.d.ts +7 -0
  564. package/time-range/module.d.ts +10 -0
  565. package/time-range/time-range-editor.d.ts +67 -0
  566. package/time-range/time-range-title-as-form-field.d.ts +40 -0
  567. package/time-range/time-range-title.d.ts +18 -0
  568. package/time-range/time-range.d.ts +75 -0
  569. package/time-range/time-range.scss +66 -0
  570. package/time-range/time-range.service.d.ts +29 -0
  571. package/time-range/types.d.ts +43 -0
  572. package/timepicker/timepicker.directive.d.ts +2 -2
  573. package/toast/toast.component.d.ts +6 -4
  574. package/toast/toast.component.scss +11 -1
  575. package/toast/toast.service.d.ts +1 -0
  576. package/toast/toast.type.d.ts +1 -0
  577. package/tooltip/_tooltip-theme.scss +9 -2
  578. package/tooltip/tooltip-tokens.scss +2 -0
  579. package/tree/toggle.d.ts +1 -1
  580. package/tree/tree-base.d.ts +2 -2
  581. package/tree/tree-option.component.d.ts +1 -1
  582. package/tree/tree-selection.component.d.ts +1 -1
  583. package/tree-select/tree-select.component.d.ts +44 -3
@@ -0,0 +1,797 @@
1
+ import { FocusMonitor, A11yModule } from '@angular/cdk/a11y';
2
+ import * as i0 from '@angular/core';
3
+ import { Directive, inject, ElementRef, ChangeDetectorRef, NgZone, booleanAttribute, ContentChild, Input, Component, ChangeDetectionStrategy, ViewEncapsulation, InjectionToken, DestroyRef, numberAttribute, ContentChildren, forwardRef, contentChildren, effect, NgModule } from '@angular/core';
4
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
+ import { FocusKeyManager } from '@koobiq/cdk/a11y';
6
+ import { RIGHT_ARROW, SPACE, ENTER, isVerticalMovement, TAB, DOWN_ARROW, UP_ARROW } from '@koobiq/cdk/keycodes';
7
+ import * as i1 from '@koobiq/components/core';
8
+ import { kbqInjectNativeElement, KBQ_WINDOW, KbqRectangleItem, PopUpTriggers, PopUpPlacements, ruRULocaleData, KBQ_LOCALE_SERVICE } from '@koobiq/components/core';
9
+ import { KbqDropdownTrigger } from '@koobiq/components/dropdown';
10
+ import { KbqNotificationCenterTrigger } from '@koobiq/components/notification-center';
11
+ import { KbqPopoverTrigger } from '@koobiq/components/popover';
12
+ import { Subject, merge, BehaviorSubject, combineLatest } from 'rxjs';
13
+ import { take, startWith } from 'rxjs/operators';
14
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
15
+ import { Platform, PlatformModule } from '@angular/cdk/platform';
16
+ import { KbqButton, KbqButtonCssStyler } from '@koobiq/components/button';
17
+ import { KbqFormField } from '@koobiq/components/form-field';
18
+ import { KbqIcon, KbqIconModule } from '@koobiq/components/icon';
19
+ import { KbqTooltipTrigger, TooltipModifier, KbqToolTipModule } from '@koobiq/components/tooltip';
20
+ import { trigger, state, style, transition, animate } from '@angular/animations';
21
+
22
+ /**
23
+ * The maximum number of characters that can be placed in a title without being wrapped.
24
+ */
25
+ const kbqMaxSymbolsInHeaderTitle = 22;
26
+ class KbqNavbarIcLogo {
27
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcLogo, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqNavbarIcLogo, isStandalone: true, selector: "[kbqNavbarIcLogo]", host: { classAttribute: "kbq-navbar-ic-logo" }, ngImport: i0 }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcLogo, decorators: [{
31
+ type: Directive,
32
+ args: [{
33
+ standalone: true,
34
+ selector: '[kbqNavbarIcLogo]',
35
+ host: {
36
+ class: 'kbq-navbar-ic-logo'
37
+ }
38
+ }]
39
+ }] });
40
+ class KbqNavbarIcTitle {
41
+ constructor() {
42
+ this.isBrowser = inject(Platform).isBrowser;
43
+ this.nativeElement = kbqInjectNativeElement();
44
+ this.window = inject(KBQ_WINDOW);
45
+ this.hovered = new Subject();
46
+ this.isTextOverflown = false;
47
+ }
48
+ get text() {
49
+ return this.nativeElement.textContent || '';
50
+ }
51
+ get isOverflown() {
52
+ return this.nativeElement.scrollWidth > this.nativeElement.clientWidth;
53
+ }
54
+ ngAfterViewInit() {
55
+ this.outerElementWidth = this.getOuterElementWidth();
56
+ this.checkTextOverflown();
57
+ }
58
+ getOuterElementWidth() {
59
+ if (!this.isBrowser)
60
+ return 0;
61
+ const { width, marginLeft, marginRight } = this.window.getComputedStyle(this.nativeElement);
62
+ return [width, marginLeft, marginRight].reduce((acc, item) => acc + parseInt(item) || 0, 0);
63
+ }
64
+ checkTextOverflown() {
65
+ this.isTextOverflown = this.text.length > kbqMaxSymbolsInHeaderTitle;
66
+ }
67
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
68
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqNavbarIcTitle, isStandalone: true, selector: "[kbqNavbarIcTitle]", host: { listeners: { "mouseenter": "hovered.next(true)", "mouseleave": "hovered.next(false)" }, properties: { "class.kbq-navbar-ic-title_text-overflown": "isTextOverflown" }, classAttribute: "kbq-navbar-ic-title" }, ngImport: i0 }); }
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcTitle, decorators: [{
71
+ type: Directive,
72
+ args: [{
73
+ standalone: true,
74
+ selector: '[kbqNavbarIcTitle]',
75
+ host: {
76
+ class: 'kbq-navbar-ic-title',
77
+ '[class.kbq-navbar-ic-title_text-overflown]': 'isTextOverflown',
78
+ '(mouseenter)': 'hovered.next(true)',
79
+ '(mouseleave)': 'hovered.next(false)'
80
+ }
81
+ }]
82
+ }] });
83
+ class KbqNavbarIcDivider {
84
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcDivider, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqNavbarIcDivider, isStandalone: true, selector: "[kbqNavbarIcDivider]", host: { classAttribute: "kbq-navbar-ic-divider" }, ngImport: i0 }); }
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcDivider, decorators: [{
88
+ type: Directive,
89
+ args: [{
90
+ standalone: true,
91
+ selector: '[kbqNavbarIcDivider]',
92
+ host: {
93
+ class: 'kbq-navbar-ic-divider'
94
+ }
95
+ }]
96
+ }] });
97
+ class KbqNavbarIcFocusableItem {
98
+ constructor() {
99
+ this.elementRef = inject(ElementRef);
100
+ this.changeDetector = inject(ChangeDetectorRef);
101
+ this.focusMonitor = inject(FocusMonitor);
102
+ this.ngZone = inject(NgZone);
103
+ this.onFocus = new Subject();
104
+ this.onBlur = new Subject();
105
+ this._hasFocus = false;
106
+ this._disabled = false;
107
+ }
108
+ get tooltip() {
109
+ return this._tooltip;
110
+ }
111
+ get hasFocus() {
112
+ return this._hasFocus;
113
+ }
114
+ set hasFocus(value) {
115
+ this._hasFocus = value;
116
+ }
117
+ /** Whether the item is disabled. */
118
+ get disabled() {
119
+ return this._disabled;
120
+ }
121
+ set disabled(value) {
122
+ if (value !== this._disabled) {
123
+ this._disabled = value;
124
+ this.changeDetector.markForCheck();
125
+ }
126
+ }
127
+ ngAfterViewInit() {
128
+ this.focusMonitor.monitor(this.elementRef);
129
+ }
130
+ ngAfterContentInit() {
131
+ if (this.button) {
132
+ this.button.tabIndex = -1;
133
+ }
134
+ }
135
+ ngOnDestroy() {
136
+ this.focusMonitor.stopMonitoring(this.elementRef);
137
+ }
138
+ setTooltip(value) {
139
+ this._tooltip = value;
140
+ }
141
+ focus(origin) {
142
+ if (this.disabled || this.hasFocus) {
143
+ return;
144
+ }
145
+ if (origin === 'keyboard') {
146
+ this.focusMonitor.focusVia(this.elementRef, origin);
147
+ }
148
+ this.tooltip?.show();
149
+ this.focusHandler();
150
+ }
151
+ /** @docs-private */
152
+ focusHandler() {
153
+ if (this.disabled || this.hasFocus)
154
+ return;
155
+ this.onFocus.next({ item: this });
156
+ this.hasFocus = true;
157
+ this.changeDetector.markForCheck();
158
+ this.elementRef.nativeElement.focus();
159
+ }
160
+ /** @docs-private */
161
+ blurHandler() {
162
+ // When animations are enabled, Angular may end up removing the option from the DOM a little
163
+ // earlier than usual, causing it to be blurred and throwing off the logic in the list
164
+ // that moves focus not the next item. To work around the issue, we defer marking the option
165
+ // as not focused until the next time the zone stabilizes.
166
+ this.ngZone.onStable
167
+ .asObservable()
168
+ .pipe(take(1))
169
+ .subscribe(() => {
170
+ this.ngZone.run(() => {
171
+ this._hasFocus = false;
172
+ this.tooltip?.hide();
173
+ if (this.button?.hasFocus) {
174
+ return;
175
+ }
176
+ this.onBlur.next({ item: this });
177
+ });
178
+ });
179
+ }
180
+ getLabel() {
181
+ return this.title?.text || '';
182
+ }
183
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcFocusableItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
184
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.14", type: KbqNavbarIcFocusableItem, isStandalone: true, selector: "kbq-navbar-ic-item, [kbq-navbar-ic-item], kbq-navbar-ic-header, [kbq-navbar-ic-header], kbq-navbar-ic-toggle", inputs: { disabled: ["disabled", "disabled", booleanAttribute] }, host: { listeners: { "focus": "focusHandler()", "blur": "blurHandler()" }, properties: { "attr.tabindex": "-1", "attr.disabled": "disabled || null", "class.kbq-disabled": "disabled" }, classAttribute: "kbq-navbar-ic-focusable-item" }, queries: [{ propertyName: "title", first: true, predicate: KbqNavbarIcTitle, descendants: true }, { propertyName: "button", first: true, predicate: KbqButton, descendants: true }, { propertyName: "formField", first: true, predicate: KbqFormField, descendants: true }], ngImport: i0 }); }
185
+ }
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcFocusableItem, decorators: [{
187
+ type: Directive,
188
+ args: [{
189
+ standalone: true,
190
+ selector: 'kbq-navbar-ic-item, [kbq-navbar-ic-item], kbq-navbar-ic-header, [kbq-navbar-ic-header], kbq-navbar-ic-toggle',
191
+ host: {
192
+ '[attr.tabindex]': '-1',
193
+ '[attr.disabled]': 'disabled || null',
194
+ class: 'kbq-navbar-ic-focusable-item',
195
+ '[class.kbq-disabled]': 'disabled',
196
+ '(focus)': 'focusHandler()',
197
+ '(blur)': 'blurHandler()'
198
+ }
199
+ }]
200
+ }], propDecorators: { title: [{
201
+ type: ContentChild,
202
+ args: [KbqNavbarIcTitle]
203
+ }], button: [{
204
+ type: ContentChild,
205
+ args: [KbqButton]
206
+ }], formField: [{
207
+ type: ContentChild,
208
+ args: [KbqFormField]
209
+ }], disabled: [{
210
+ type: Input,
211
+ args: [{ transform: booleanAttribute }]
212
+ }] } });
213
+ class KbqNavbarIcItem extends KbqTooltipTrigger {
214
+ get trigger() {
215
+ return this._trigger;
216
+ }
217
+ set trigger(value) {
218
+ if (value) {
219
+ this._trigger = value;
220
+ this.initListeners();
221
+ }
222
+ }
223
+ set collapsed(value) {
224
+ if (this._collapsed !== value) {
225
+ this._collapsed = value;
226
+ this.updateTooltip();
227
+ }
228
+ }
229
+ get croppedText() {
230
+ return this.title?.isOverflown ? this.titleText : '';
231
+ }
232
+ get titleText() {
233
+ return this.title?.text;
234
+ }
235
+ get disabled() {
236
+ if (this._disabled !== undefined) {
237
+ return this._disabled;
238
+ }
239
+ return !this.collapsed && !this.hasCroppedText;
240
+ }
241
+ set disabled(value) {
242
+ this._disabled = coerceBooleanProperty(value);
243
+ }
244
+ get hasDropDownTrigger() {
245
+ return !!this.dropdownTrigger;
246
+ }
247
+ get showDropDownAngle() {
248
+ return this.hasDropDownTrigger && !this.collapsed;
249
+ }
250
+ get hasCroppedText() {
251
+ return !!this.title?.isOverflown;
252
+ }
253
+ constructor() {
254
+ super();
255
+ this.rectangleElement = inject(KbqRectangleItem);
256
+ this.navbarFocusableItem = inject(KbqNavbarIcFocusableItem);
257
+ this.changeDetectorRef = inject(ChangeDetectorRef);
258
+ this.dropdownTrigger = inject(KbqDropdownTrigger, { optional: true });
259
+ this.tooltip = inject(KbqTooltipTrigger, { optional: true });
260
+ this._collapsed = false;
261
+ if (this.dropdownTrigger) {
262
+ this.dropdownTrigger.openByArrowDown = false;
263
+ }
264
+ this.rectangleElement.state.subscribe(() => {
265
+ this.collapsed = this.rectangleElement.collapsed;
266
+ this.changeDetectorRef.markForCheck();
267
+ });
268
+ this._trigger = `${PopUpTriggers.Hover}`;
269
+ this.navbarFocusableItem.setTooltip(this);
270
+ if (this.tooltip) {
271
+ this.tooltip.arrow = false;
272
+ this.tooltip.offset = 0;
273
+ this.tooltip['overlayConfig'].panelClass = 'kbq-tooltip-panel_horizontal-navbar';
274
+ }
275
+ }
276
+ ngAfterContentInit() {
277
+ if (this.dropdownTrigger?.dropdown) {
278
+ this.dropdownTrigger.dropdown.overlapTriggerX = false;
279
+ this.dropdownTrigger.dropdown.overlapTriggerY = true;
280
+ // needs to shift dropdown to the left by 8 pixels
281
+ this.dropdownTrigger.offsetX = -8;
282
+ }
283
+ this.updateTooltip();
284
+ }
285
+ /** @docs-private */
286
+ updateTooltip() {
287
+ if (!this.collapsed && this.hasCroppedText) {
288
+ this.content = this.croppedText;
289
+ }
290
+ this.placement = PopUpPlacements.Right;
291
+ this.changeDetectorRef.markForCheck();
292
+ }
293
+ /** @docs-private */
294
+ onKeyDown($event) {
295
+ if (!this.hasDropDownTrigger) {
296
+ return;
297
+ }
298
+ if (this.dropdownTrigger && this.rectangleElement && $event.keyCode === RIGHT_ARROW) {
299
+ this.dropdownTrigger.openedBy = 'keyboard';
300
+ this.dropdownTrigger.open();
301
+ $event.stopPropagation();
302
+ $event.preventDefault();
303
+ }
304
+ }
305
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
306
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: KbqNavbarIcItem, isStandalone: true, selector: "kbq-navbar-ic-item, [kbq-navbar-ic-item]", inputs: { trigger: ["kbqTrigger", "trigger"] }, host: { listeners: { "keydown": "onKeyDown($event)" }, properties: { "class.kbq-navbar-ic-item_with-title": "!!title" }, classAttribute: "kbq-navbar-ic-item" }, queries: [{ propertyName: "title", first: true, predicate: KbqNavbarIcTitle, descendants: true }, { propertyName: "icon", first: true, predicate: KbqIcon, descendants: true }, { propertyName: "button", first: true, predicate: KbqButtonCssStyler, descendants: true }], exportAs: ["kbqNavbarIcItem"], usesInheritance: true, hostDirectives: [{ directive: i1.KbqRectangleItem }], ngImport: i0, template: "<div class=\"kbq-navbar-ic-item__inner\">\n <ng-content select=\"[kbq-icon]\" />\n\n @if (title && !collapsed) {\n <div class=\"kbq-navbar-ic-item__title-container\">\n <ng-content select=\"[kbqNavbarIcTitle]\" />\n\n @if (showDropDownAngle) {\n <i kbq-icon=\"kbq-chevron-right_16\" class=\"kbq-navbar-ic-item__arrow-icon\"></i>\n }\n </div>\n }\n\n <ng-content />\n</div>\n", styles: [".kbq-navbar-ic-item{box-sizing:border-box;display:flex;padding:var(--kbq-size-3xs) var(--kbq-size-m)}.kbq-navbar-ic-item .kbq-icon{min-width:var(--kbq-size-l);min-height:var(--kbq-size-l)}.kbq-navbar-ic-item .kbq-navbar-ic-item__title-container{gap:var(--kbq-size-m)}.kbq-navbar-ic-item.kbq-collapsed .kbq-badge{position:absolute;z-index:1;top:0;right:0}.kbq-navbar-ic-item.kbq-collapsed .kbq-navbar-ic-item__title-container{display:none}.kbq-navbar-ic-item>.kbq-icon{display:flex;justify-content:center;align-items:center}.kbq-navbar-ic-item__inner{position:relative;display:flex;align-items:center;height:36px;width:100%;max-width:calc(100% - var(--kbq-size-xxl));gap:var(--kbq-size-m);padding-left:var(--kbq-size-m);padding-right:var(--kbq-size-m);border-radius:var(--kbq-navbar-ic-item-size-content-border-radius)}.kbq-navbar-ic-title{display:inline-block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kbq-navbar-ic-item__title-container{display:flex;flex-direction:row;flex:1 1 auto;justify-content:space-between;min-width:0}.kbq-navbar-ic-item__title-container .kbq-icon{align-self:center}a.kbq-navbar-ic-item,a.kbq-navbar-ic-title{text-decoration:none}.kbq-navbar-ic-item [kbq-button],.kbq-navbar-ic-header [kbq-button],.kbq-navbar-ic-toggle [kbq-button]{z-index:1}.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"], dependencies: [{ kind: "component", type: KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
307
+ }
308
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcItem, decorators: [{
309
+ type: Component,
310
+ args: [{ standalone: true, selector: 'kbq-navbar-ic-item, [kbq-navbar-ic-item]', exportAs: 'kbqNavbarIcItem', host: {
311
+ class: 'kbq-navbar-ic-item',
312
+ '[class.kbq-navbar-ic-item_with-title]': '!!title',
313
+ '(keydown)': 'onKeyDown($event)'
314
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, hostDirectives: [KbqRectangleItem], imports: [KbqIcon], template: "<div class=\"kbq-navbar-ic-item__inner\">\n <ng-content select=\"[kbq-icon]\" />\n\n @if (title && !collapsed) {\n <div class=\"kbq-navbar-ic-item__title-container\">\n <ng-content select=\"[kbqNavbarIcTitle]\" />\n\n @if (showDropDownAngle) {\n <i kbq-icon=\"kbq-chevron-right_16\" class=\"kbq-navbar-ic-item__arrow-icon\"></i>\n }\n </div>\n }\n\n <ng-content />\n</div>\n", styles: [".kbq-navbar-ic-item{box-sizing:border-box;display:flex;padding:var(--kbq-size-3xs) var(--kbq-size-m)}.kbq-navbar-ic-item .kbq-icon{min-width:var(--kbq-size-l);min-height:var(--kbq-size-l)}.kbq-navbar-ic-item .kbq-navbar-ic-item__title-container{gap:var(--kbq-size-m)}.kbq-navbar-ic-item.kbq-collapsed .kbq-badge{position:absolute;z-index:1;top:0;right:0}.kbq-navbar-ic-item.kbq-collapsed .kbq-navbar-ic-item__title-container{display:none}.kbq-navbar-ic-item>.kbq-icon{display:flex;justify-content:center;align-items:center}.kbq-navbar-ic-item__inner{position:relative;display:flex;align-items:center;height:36px;width:100%;max-width:calc(100% - var(--kbq-size-xxl));gap:var(--kbq-size-m);padding-left:var(--kbq-size-m);padding-right:var(--kbq-size-m);border-radius:var(--kbq-navbar-ic-item-size-content-border-radius)}.kbq-navbar-ic-title{display:inline-block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kbq-navbar-ic-item__title-container{display:flex;flex-direction:row;flex:1 1 auto;justify-content:space-between;min-width:0}.kbq-navbar-ic-item__title-container .kbq-icon{align-self:center}a.kbq-navbar-ic-item,a.kbq-navbar-ic-title{text-decoration:none}.kbq-navbar-ic-item [kbq-button],.kbq-navbar-ic-header [kbq-button],.kbq-navbar-ic-toggle [kbq-button]{z-index:1}.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"] }]
315
+ }], ctorParameters: () => [], propDecorators: { title: [{
316
+ type: ContentChild,
317
+ args: [KbqNavbarIcTitle]
318
+ }], icon: [{
319
+ type: ContentChild,
320
+ args: [KbqIcon]
321
+ }], button: [{
322
+ type: ContentChild,
323
+ args: [KbqButtonCssStyler]
324
+ }], trigger: [{
325
+ type: Input,
326
+ args: ['kbqTrigger']
327
+ }] } });
328
+ class KbqNavbarIcToggle {
329
+ /** localized data
330
+ * @docs-private */
331
+ get localeData() {
332
+ return this.navbar?.configuration.toggle;
333
+ }
334
+ constructor() {
335
+ this.navbar = inject(KbqNavbarIc);
336
+ this.rectangleElement = inject(KbqRectangleItem);
337
+ this.changeDetectorRef = inject(ChangeDetectorRef);
338
+ this.modifier = TooltipModifier.Default;
339
+ this.toggle = () => {
340
+ if ((this.navbar.expandedByHoverOrFocus || this.navbar.expandedByToggle) && !this.navbar.pinned) {
341
+ this.navbar.pinned = true;
342
+ }
343
+ else {
344
+ this.navbar.pinned = false;
345
+ this.navbar.toggle();
346
+ }
347
+ this.changeDetectorRef.detectChanges();
348
+ };
349
+ this.rectangleElement.state.subscribe(() => this.changeDetectorRef.markForCheck());
350
+ }
351
+ /** @docs-private */
352
+ onKeydown($event) {
353
+ if ([SPACE, ENTER].includes($event.keyCode)) {
354
+ this.toggle();
355
+ $event.stopPropagation();
356
+ $event.preventDefault();
357
+ }
358
+ }
359
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcToggle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
360
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: KbqNavbarIcToggle, isStandalone: true, selector: "kbq-navbar-ic-toggle", host: { listeners: { "keydown": "onKeydown($event)", "click": "toggle()" }, properties: { "class.kbq-collapsed": "!navbar.expanded", "class.kbq-expanded": "navbar.expanded" }, classAttribute: "kbq-navbar-ic-item kbq-navbar-ic-toggle" }, hostDirectives: [{ directive: i1.KbqRectangleItem }], ngImport: i0, template: `
361
+ <div class="kbq-navbar-ic-item__inner">
362
+ @if (navbar.pinned) {
363
+ <i kbq-icon [class.kbq-bars-arrow-left_16]="navbar.expanded"></i>
364
+ <ng-content select="[kbqNavbarIcTitle]">{{ localeData.collapseButton }}</ng-content>
365
+ } @else if ((navbar.expandedByHoverOrFocus || navbar.expandedByToggle) && !navbar.pinned) {
366
+ <i kbq-icon [class.kbq-bars-arrow-right_16]="navbar.expanded"></i>
367
+ {{ localeData.pinButton }}
368
+ } @else {
369
+ <i kbq-icon [class.kbq-bars-arrow-right_16]="!navbar.expanded"></i>
370
+ }
371
+ </div>
372
+ `, isInline: true, styles: [".kbq-navbar-ic-container{display:flex;flex-shrink:0;flex-direction:column;justify-content:space-between}.kbq-navbar-ic{display:flex;position:relative}.kbq-navbar-ic .kbq-navbar-ic-container+.kbq-navbar-ic-container{padding-top:var(--kbq-size-xxl);padding-bottom:var(--kbq-size-m)}.kbq-navbar-ic .kbq-navbar-ic__top-layer{position:absolute;z-index:998;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.kbq-navbar-ic .kbq-navbar-ic__top-layer{background-color:var(--kbq-navbar-ic-background);box-shadow:var(--kbq-navbar-ic-border)}.kbq-navbar-ic-item,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive,.kbq-navbar-ic-toggle{cursor:pointer}.kbq-navbar-ic-item .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-default-content-background)}.kbq-navbar-ic-item .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-title,.kbq-navbar-ic-toggle .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-default-content-text)}.kbq-navbar-ic-item>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-default-content-icon-left)}.kbq-navbar-ic-item .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-default-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-hover-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-hover-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-hover-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-hover-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused{outline:none}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner{box-shadow:inset 0 0 0 2px var(--kbq-states-line-focus-theme)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-selected-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-selected-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-item:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):active>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-selected-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-selected-content-icon-right)}.kbq-navbar-ic-item.kbq-disabled,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled,.kbq-navbar-ic-toggle.kbq-disabled{pointer-events:none;cursor:default}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-disabled-content-background)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-disabled-content-text)}.kbq-navbar-ic-item.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle.kbq-disabled>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-left)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-right)}.kbq-navbar-ic-divider{background:var(--kbq-line-contrast-less)}.kbq-navbar-ic-title{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title{font-size:var(--kbq-typography-text-big-strong-font-size);font-style:var(--kbq-typography-text-big-strong-font-style);font-weight:var(--kbq-typography-text-big-strong-font-weight);line-height:var(--kbq-typography-text-big-strong-line-height);font-family:var(--kbq-typography-text-big-strong-font-family);text-transform:var(--kbq-typography-text-big-strong-text-transform);font-feature-settings:var(--kbq-typography-text-big-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-strong-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{font-size:var(--kbq-typography-text-compact-strong-font-size);font-style:var(--kbq-typography-text-compact-strong-font-style);font-weight:var(--kbq-typography-text-compact-strong-font-weight);line-height:var(--kbq-typography-text-compact-strong-line-height);font-family:var(--kbq-typography-text-compact-strong-font-family);text-transform:var(--kbq-typography-text-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-text-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-strong-letter-spacing);line-height:12px}\n"], dependencies: [{ kind: "component", type: KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
373
+ }
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcToggle, decorators: [{
375
+ type: Component,
376
+ args: [{ standalone: true, selector: 'kbq-navbar-ic-toggle', template: `
377
+ <div class="kbq-navbar-ic-item__inner">
378
+ @if (navbar.pinned) {
379
+ <i kbq-icon [class.kbq-bars-arrow-left_16]="navbar.expanded"></i>
380
+ <ng-content select="[kbqNavbarIcTitle]">{{ localeData.collapseButton }}</ng-content>
381
+ } @else if ((navbar.expandedByHoverOrFocus || navbar.expandedByToggle) && !navbar.pinned) {
382
+ <i kbq-icon [class.kbq-bars-arrow-right_16]="navbar.expanded"></i>
383
+ {{ localeData.pinButton }}
384
+ } @else {
385
+ <i kbq-icon [class.kbq-bars-arrow-right_16]="!navbar.expanded"></i>
386
+ }
387
+ </div>
388
+ `, host: {
389
+ class: 'kbq-navbar-ic-item kbq-navbar-ic-toggle',
390
+ '[class.kbq-collapsed]': '!navbar.expanded',
391
+ '[class.kbq-expanded]': 'navbar.expanded',
392
+ '(keydown)': 'onKeydown($event)',
393
+ '(click)': 'toggle()'
394
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [KbqIcon], hostDirectives: [KbqRectangleItem], styles: [".kbq-navbar-ic-container{display:flex;flex-shrink:0;flex-direction:column;justify-content:space-between}.kbq-navbar-ic{display:flex;position:relative}.kbq-navbar-ic .kbq-navbar-ic-container+.kbq-navbar-ic-container{padding-top:var(--kbq-size-xxl);padding-bottom:var(--kbq-size-m)}.kbq-navbar-ic .kbq-navbar-ic__top-layer{position:absolute;z-index:998;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.kbq-navbar-ic .kbq-navbar-ic__top-layer{background-color:var(--kbq-navbar-ic-background);box-shadow:var(--kbq-navbar-ic-border)}.kbq-navbar-ic-item,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive,.kbq-navbar-ic-toggle{cursor:pointer}.kbq-navbar-ic-item .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-default-content-background)}.kbq-navbar-ic-item .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-title,.kbq-navbar-ic-toggle .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-default-content-text)}.kbq-navbar-ic-item>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-default-content-icon-left)}.kbq-navbar-ic-item .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-default-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-hover-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-hover-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-hover-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-hover-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused{outline:none}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner{box-shadow:inset 0 0 0 2px var(--kbq-states-line-focus-theme)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-selected-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-selected-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-item:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):active>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-selected-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-selected-content-icon-right)}.kbq-navbar-ic-item.kbq-disabled,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled,.kbq-navbar-ic-toggle.kbq-disabled{pointer-events:none;cursor:default}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-disabled-content-background)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-disabled-content-text)}.kbq-navbar-ic-item.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle.kbq-disabled>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-left)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-right)}.kbq-navbar-ic-divider{background:var(--kbq-line-contrast-less)}.kbq-navbar-ic-title{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title{font-size:var(--kbq-typography-text-big-strong-font-size);font-style:var(--kbq-typography-text-big-strong-font-style);font-weight:var(--kbq-typography-text-big-strong-font-weight);line-height:var(--kbq-typography-text-big-strong-line-height);font-family:var(--kbq-typography-text-big-strong-font-family);text-transform:var(--kbq-typography-text-big-strong-text-transform);font-feature-settings:var(--kbq-typography-text-big-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-strong-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{font-size:var(--kbq-typography-text-compact-strong-font-size);font-style:var(--kbq-typography-text-compact-strong-font-style);font-weight:var(--kbq-typography-text-compact-strong-font-weight);line-height:var(--kbq-typography-text-compact-strong-line-height);font-family:var(--kbq-typography-text-compact-strong-font-family);text-transform:var(--kbq-typography-text-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-text-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-strong-letter-spacing);line-height:12px}\n"] }]
395
+ }], ctorParameters: () => [] });
396
+
397
+ function toggleNavbarIcAnimation() {
398
+ return trigger('toggle', [
399
+ state('0', style({ width: '64px' })),
400
+ state('1', style({ width: '240px' })),
401
+ transition('0 <=> 1', animate('150ms ease-out'))
402
+ ]);
403
+ }
404
+
405
+ var KbqExpandEvents;
406
+ (function (KbqExpandEvents) {
407
+ KbqExpandEvents[KbqExpandEvents["toggle"] = 0] = "toggle";
408
+ KbqExpandEvents[KbqExpandEvents["hoverOrFocus"] = 1] = "hoverOrFocus";
409
+ })(KbqExpandEvents || (KbqExpandEvents = {}));
410
+ /** default configuration of navbar-ic */
411
+ /** @docs-private */
412
+ const KBQ_NAVBAR_IC_DEFAULT_CONFIGURATION = ruRULocaleData.navbarIc;
413
+ /** Injection Token for providing configuration of navbar-ic */
414
+ /** @docs-private */
415
+ const KBQ_NAVBAR_IC_CONFIGURATION = new InjectionToken('KbqNavbarIcConfiguration');
416
+ class KbqFocusable {
417
+ constructor() {
418
+ this.changeDetectorRef = inject(ChangeDetectorRef);
419
+ this.elementRef = inject(ElementRef);
420
+ this.destroyRef = inject(DestroyRef);
421
+ this.focusMonitor = inject(FocusMonitor);
422
+ this._tabindex = 0;
423
+ }
424
+ get tabindex() {
425
+ return this._tabindex;
426
+ }
427
+ set tabindex(value) {
428
+ this._tabindex = value;
429
+ }
430
+ get itemFocusChanges() {
431
+ return merge(...this.focusableItems.map((item) => item.onFocus));
432
+ }
433
+ get itemBlurChanges() {
434
+ return merge(...this.focusableItems.map((option) => option.onBlur));
435
+ }
436
+ ngAfterContentInit() {
437
+ this.keyManager = new FocusKeyManager(this.focusableItems).withTypeAhead();
438
+ this.keyManager.tabOut.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {
439
+ this.tabindex = -1;
440
+ setTimeout(() => {
441
+ this.tabindex = 0;
442
+ this.changeDetectorRef.markForCheck();
443
+ });
444
+ });
445
+ this.focusableItems.changes.pipe(startWith(null), takeUntilDestroyed(this.destroyRef)).subscribe(() => {
446
+ this.resetOptions();
447
+ // Check to see if we need to update our tab index
448
+ this.updateTabIndex();
449
+ });
450
+ }
451
+ ngAfterViewInit() {
452
+ this.focusMonitor.monitor(this.elementRef).subscribe((focusOrigin) => {
453
+ this.keyManager.setFocusOrigin(focusOrigin);
454
+ });
455
+ }
456
+ ngOnDestroy() {
457
+ this.focusMonitor.stopMonitoring(this.elementRef);
458
+ }
459
+ /** @docs-private */
460
+ focusHandler() {
461
+ if (this.focusableItems.length === 0)
462
+ return;
463
+ this.keyManager.setFirstItemActive();
464
+ }
465
+ /** @docs-private */
466
+ blurHandler() {
467
+ if (!this.hasFocusedItem()) {
468
+ this.keyManager.setActiveItem(-1);
469
+ }
470
+ this.changeDetectorRef.markForCheck();
471
+ }
472
+ resetOptions() {
473
+ this.dropSubscriptions();
474
+ this.listenToItemsFocus();
475
+ }
476
+ dropSubscriptions() {
477
+ this.itemFocusSubscription?.unsubscribe();
478
+ this.itemBlurSubscription?.unsubscribe();
479
+ this.itemFocusSubscription = null;
480
+ this.itemBlurSubscription = null;
481
+ }
482
+ listenToItemsFocus() {
483
+ this.itemFocusSubscription = this.itemFocusChanges.subscribe((event) => {
484
+ const index = this.focusableItems.toArray().indexOf(event.item);
485
+ if (this.isValidIndex(index)) {
486
+ this.keyManager.updateActiveItem(index);
487
+ }
488
+ });
489
+ this.itemBlurSubscription = this.itemBlurChanges.subscribe(() => this.blurHandler());
490
+ }
491
+ updateTabIndex() {
492
+ this.tabindex = this.focusableItems.length === 0 ? -1 : 0;
493
+ }
494
+ isValidIndex(index) {
495
+ return index >= 0 && index < this.focusableItems.length;
496
+ }
497
+ hasFocusedItem() {
498
+ return this.focusableItems.some((item) => item.hasFocus);
499
+ }
500
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFocusable, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
501
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.14", type: KbqFocusable, inputs: { tabindex: ["tabindex", "tabindex", numberAttribute] }, queries: [{ propertyName: "focusableItems", predicate: i0.forwardRef(() => KbqNavbarIcFocusableItem), descendants: true }], ngImport: i0 }); }
502
+ }
503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFocusable, decorators: [{
504
+ type: Directive
505
+ }], propDecorators: { focusableItems: [{
506
+ type: ContentChildren,
507
+ args: [forwardRef(() => KbqNavbarIcFocusableItem), { descendants: true }]
508
+ }], tabindex: [{
509
+ type: Input,
510
+ args: [{ transform: numberAttribute }]
511
+ }] } });
512
+ class KbqNavbarIcContainer {
513
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcContainer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
514
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqNavbarIcContainer, isStandalone: true, selector: "kbq-navbar-ic-container", host: { classAttribute: "kbq-navbar-ic-container" }, ngImport: i0 }); }
515
+ }
516
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcContainer, decorators: [{
517
+ type: Directive,
518
+ args: [{
519
+ standalone: true,
520
+ selector: 'kbq-navbar-ic-container',
521
+ host: {
522
+ class: 'kbq-navbar-ic-container'
523
+ }
524
+ }]
525
+ }] });
526
+ class KbqNavbarIc extends KbqFocusable {
527
+ get expanded() {
528
+ return this._expanded || this.pinned || this.hasOpenedPopUp;
529
+ }
530
+ set expanded(value) {
531
+ this._expanded = value;
532
+ this.updateExpandedStateForItems();
533
+ }
534
+ get hasOpenedPopUp() {
535
+ return [...this.dropdownTrigger(), ...this.popoverTrigger(), ...this.notificationCenterTrigger()].some((instance) => instance?.isOpen || instance?.opened);
536
+ }
537
+ get expandedByToggle() {
538
+ return this.expanded && this.expandEvent === KbqExpandEvents.toggle;
539
+ }
540
+ get expandedByHoverOrFocus() {
541
+ return this.expanded && this.expandEvent === KbqExpandEvents.hoverOrFocus;
542
+ }
543
+ get currentWidth() {
544
+ return this.expanded ? this.expandedWidth : this.collapsedWidth;
545
+ }
546
+ constructor() {
547
+ super();
548
+ /** @docs-private */
549
+ this.localeService = inject(KBQ_LOCALE_SERVICE, { optional: true });
550
+ this.externalConfiguration = inject(KBQ_NAVBAR_IC_CONFIGURATION, { optional: true });
551
+ /** @docs-private */
552
+ this.rectangleElements = contentChildren(forwardRef(() => KbqRectangleItem), { descendants: true });
553
+ /** @docs-private */
554
+ this.items = contentChildren(forwardRef(() => KbqNavbarIcItem), { descendants: true });
555
+ /** @docs-private */
556
+ this.toggleElement = contentChildren(forwardRef(() => KbqNavbarIcToggle), { descendants: true });
557
+ /** @docs-private */
558
+ this.dropdownTrigger = contentChildren(forwardRef(() => KbqDropdownTrigger), { descendants: true });
559
+ /** @docs-private */
560
+ this.popoverTrigger = contentChildren(forwardRef(() => KbqPopoverTrigger), { descendants: true });
561
+ /** @docs-private */
562
+ this.notificationCenterTrigger = contentChildren(forwardRef(() => KbqNotificationCenterTrigger), { descendants: true });
563
+ this.hovered = new BehaviorSubject(false);
564
+ this.focused = new BehaviorSubject(false);
565
+ this.animationDone = new Subject();
566
+ this.expandEvent = null;
567
+ this.pinned = true;
568
+ this.collapsedWidth = 64;
569
+ this.expandedWidth = 240;
570
+ this._expanded = true;
571
+ this.updateTooltipForItems = () => this.items().forEach((item) => item.updateTooltip());
572
+ this.updateExpandedStateForItems = () => this.rectangleElements().forEach(this.updateItemExpandedState);
573
+ this.updateItemExpandedState = (item) => {
574
+ setTimeout(() => {
575
+ item.collapsed = !this.expanded;
576
+ item.button?.updateClassModifierForIcons();
577
+ });
578
+ };
579
+ this.updateLocaleParams = () => {
580
+ this.configuration = this.externalConfiguration || this.localeService?.getParams('navbarIc');
581
+ this.changeDetectorRef.markForCheck();
582
+ };
583
+ this.animationDone.pipe(takeUntilDestroyed()).subscribe(this.updateTooltipForItems);
584
+ effect(this.updateExpandedStateForItems);
585
+ combineLatest([this.hovered, this.focused])
586
+ .pipe(takeUntilDestroyed())
587
+ .subscribe(([hovered, focused]) => {
588
+ if (this.pinned)
589
+ return;
590
+ this.expandEvent = KbqExpandEvents.hoverOrFocus;
591
+ this.expanded = hovered || focused;
592
+ this.changeDetectorRef.markForCheck();
593
+ });
594
+ this.focusMonitor.monitor(this.elementRef, true).subscribe((focusOrigin) => {
595
+ this.focused.next(focusOrigin === 'keyboard');
596
+ });
597
+ this.localeService?.changes.pipe(takeUntilDestroyed()).subscribe(this.updateLocaleParams);
598
+ if (!this.localeService) {
599
+ this.initDefaultParams();
600
+ }
601
+ }
602
+ /** @docs-private */
603
+ ngAfterContentInit() {
604
+ this.updateTooltipForItems();
605
+ super.ngAfterContentInit();
606
+ this.keyManager.withVerticalOrientation(true);
607
+ }
608
+ toggle() {
609
+ this.expanded = !this.expanded;
610
+ this.expandEvent = KbqExpandEvents.toggle;
611
+ this.changeDetectorRef.markForCheck();
612
+ }
613
+ /** @docs-private */
614
+ onKeyDown(event) {
615
+ const keyCode = event.keyCode;
616
+ if (!event.target.attributes.getNamedItem('kbqinput') && isVerticalMovement(event)) {
617
+ event.preventDefault();
618
+ }
619
+ if (keyCode === TAB) {
620
+ this.keyManager.tabOut.next();
621
+ return;
622
+ }
623
+ else if (keyCode === DOWN_ARROW) {
624
+ this.keyManager.setNextItemActive();
625
+ }
626
+ else if (keyCode === UP_ARROW) {
627
+ this.keyManager.setPreviousItemActive();
628
+ }
629
+ else {
630
+ this.keyManager.onKeydown(event);
631
+ }
632
+ }
633
+ initDefaultParams() {
634
+ this.configuration = KBQ_NAVBAR_IC_DEFAULT_CONFIGURATION;
635
+ }
636
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIc, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
637
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: KbqNavbarIc, isStandalone: true, selector: "kbq-navbar-ic", inputs: { pinned: ["pinned", "pinned", booleanAttribute], collapsedWidth: ["collapsedWidth", "collapsedWidth", numberAttribute], expandedWidth: ["expandedWidth", "expandedWidth", numberAttribute], expanded: ["expanded", "expanded", booleanAttribute] }, host: { listeners: { "focus": "focusHandler()", "blur": "blurHandler()", "keydown": "onKeyDown($event)", "mouseenter": "hovered.next(true)", "mouseleave": "hovered.next(false)" }, properties: { "class.kbq-collapsed": "!expanded", "class.kbq-expanded": "expanded", "style.min-width.px": "pinned ? expandedWidth : collapsedWidth", "attr.tabindex": "tabindex" }, classAttribute: "kbq-navbar-ic" }, queries: [{ propertyName: "rectangleElements", predicate: i0.forwardRef(() => KbqRectangleItem), descendants: true, isSignal: true }, { propertyName: "items", predicate: i0.forwardRef(() => KbqNavbarIcItem), descendants: true, isSignal: true }, { propertyName: "toggleElement", predicate: i0.forwardRef(() => KbqNavbarIcToggle), descendants: true, isSignal: true }, { propertyName: "dropdownTrigger", predicate: i0.forwardRef(() => KbqDropdownTrigger), descendants: true, isSignal: true }, { propertyName: "popoverTrigger", predicate: i0.forwardRef(() => KbqPopoverTrigger), descendants: true, isSignal: true }, { propertyName: "notificationCenterTrigger", predicate: i0.forwardRef(() => KbqNotificationCenterTrigger), descendants: true, isSignal: true }], exportAs: ["KbqNavbarIc"], usesInheritance: true, ngImport: i0, template: `
638
+ <div class="kbq-navbar-ic__top-layer" [@toggle]="expanded" (@toggle.done)="animationDone.next()">
639
+ <ng-content select="[kbq-navbar-ic-container], kbq-navbar-ic-container" />
640
+ <ng-content select="[kbq-navbar-ic-toggle], kbq-navbar-ic-toggle" />
641
+ </div>
642
+ `, isInline: true, styles: [".kbq-navbar-ic-container{display:flex;flex-shrink:0;flex-direction:column;justify-content:space-between}.kbq-navbar-ic{display:flex;position:relative}.kbq-navbar-ic .kbq-navbar-ic-container+.kbq-navbar-ic-container{padding-top:var(--kbq-size-xxl);padding-bottom:var(--kbq-size-m)}.kbq-navbar-ic .kbq-navbar-ic__top-layer{position:absolute;z-index:998;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.kbq-navbar-ic .kbq-navbar-ic__top-layer{background-color:var(--kbq-navbar-ic-background);box-shadow:var(--kbq-navbar-ic-border)}.kbq-navbar-ic-item,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive,.kbq-navbar-ic-toggle{cursor:pointer}.kbq-navbar-ic-item .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-default-content-background)}.kbq-navbar-ic-item .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-title,.kbq-navbar-ic-toggle .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-default-content-text)}.kbq-navbar-ic-item>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-default-content-icon-left)}.kbq-navbar-ic-item .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-default-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-hover-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-hover-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-hover-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-hover-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused{outline:none}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner{box-shadow:inset 0 0 0 2px var(--kbq-states-line-focus-theme)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-selected-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-selected-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-item:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):active>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-selected-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-selected-content-icon-right)}.kbq-navbar-ic-item.kbq-disabled,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled,.kbq-navbar-ic-toggle.kbq-disabled{pointer-events:none;cursor:default}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-disabled-content-background)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-disabled-content-text)}.kbq-navbar-ic-item.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle.kbq-disabled>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-left)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-right)}.kbq-navbar-ic-divider{background:var(--kbq-line-contrast-less)}.kbq-navbar-ic-title{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title{font-size:var(--kbq-typography-text-big-strong-font-size);font-style:var(--kbq-typography-text-big-strong-font-style);font-weight:var(--kbq-typography-text-big-strong-font-weight);line-height:var(--kbq-typography-text-big-strong-line-height);font-family:var(--kbq-typography-text-big-strong-font-family);text-transform:var(--kbq-typography-text-big-strong-text-transform);font-feature-settings:var(--kbq-typography-text-big-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-strong-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{font-size:var(--kbq-typography-text-compact-strong-font-size);font-style:var(--kbq-typography-text-compact-strong-font-style);font-weight:var(--kbq-typography-text-compact-strong-font-weight);line-height:var(--kbq-typography-text-compact-strong-line-height);font-family:var(--kbq-typography-text-compact-strong-font-family);text-transform:var(--kbq-typography-text-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-text-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-strong-letter-spacing);line-height:12px}\n", ".kbq-navbar-ic-divider{display:block;height:1px;margin:var(--kbq-size-s) var(--kbq-size-l)}\n", ".kbq-navbar-ic{--kbq-navbar-ic-item-size-content-border-radius: var(--kbq-size-border-radius);--kbq-navbar-ic-background: var(--kbq-background-bg);--kbq-navbar-ic-border: var(--kbq-shadow-overflow-compact-right);--kbq-navbar-ic-item-default-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-default-content-background: transparent;--kbq-navbar-ic-item-default-content-icon-left: var(--kbq-icon-contrast);--kbq-navbar-ic-item-default-content-icon-right: var(--kbq-icon-contrast);--kbq-navbar-ic-item-states-hover-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-states-hover-content-background: var(--kbq-states-background-transparent-hover);--kbq-navbar-ic-item-states-hover-content-icon-left: var(--kbq-states-icon-contrast-hover);--kbq-navbar-ic-item-states-hover-content-icon-right: var(--kbq-states-icon-contrast-hover);--kbq-navbar-ic-item-states-selected-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-states-selected-content-background: var(--kbq-states-background-transparent-active);--kbq-navbar-ic-item-states-selected-content-icon-left: var(--kbq-states-icon-contrast-active);--kbq-navbar-ic-item-states-selected-content-icon-right: var(--kbq-states-icon-contrast-active);--kbq-navbar-ic-item-states-disabled-content-text: var(--kbq-states-foreground-disabled);--kbq-navbar-ic-item-states-disabled-content-background: transparent;--kbq-navbar-ic-item-states-disabled-content-icon-left: var(--kbq-states-icon-disabled);--kbq-navbar-ic-item-states-disabled-content-icon-right: var(--kbq-states-icon-disabled)}\n"], animations: [toggleNavbarIcAnimation()], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
643
+ }
644
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIc, decorators: [{
645
+ type: Component,
646
+ args: [{ standalone: true, selector: 'kbq-navbar-ic', exportAs: 'KbqNavbarIc', template: `
647
+ <div class="kbq-navbar-ic__top-layer" [@toggle]="expanded" (@toggle.done)="animationDone.next()">
648
+ <ng-content select="[kbq-navbar-ic-container], kbq-navbar-ic-container" />
649
+ <ng-content select="[kbq-navbar-ic-toggle], kbq-navbar-ic-toggle" />
650
+ </div>
651
+ `, host: {
652
+ class: 'kbq-navbar-ic',
653
+ '[class.kbq-collapsed]': '!expanded',
654
+ '[class.kbq-expanded]': 'expanded',
655
+ '[style.min-width.px]': 'pinned ? expandedWidth : collapsedWidth',
656
+ '[attr.tabindex]': 'tabindex',
657
+ '(focus)': 'focusHandler()',
658
+ '(blur)': 'blurHandler()',
659
+ '(keydown)': 'onKeyDown($event)',
660
+ '(mouseenter)': 'hovered.next(true)',
661
+ '(mouseleave)': 'hovered.next(false)'
662
+ }, animations: [toggleNavbarIcAnimation()], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".kbq-navbar-ic-container{display:flex;flex-shrink:0;flex-direction:column;justify-content:space-between}.kbq-navbar-ic{display:flex;position:relative}.kbq-navbar-ic .kbq-navbar-ic-container+.kbq-navbar-ic-container{padding-top:var(--kbq-size-xxl);padding-bottom:var(--kbq-size-m)}.kbq-navbar-ic .kbq-navbar-ic__top-layer{position:absolute;z-index:998;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.kbq-navbar-ic .kbq-navbar-ic__top-layer{background-color:var(--kbq-navbar-ic-background);box-shadow:var(--kbq-navbar-ic-border)}.kbq-navbar-ic-item,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive,.kbq-navbar-ic-toggle{cursor:pointer}.kbq-navbar-ic-item .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-default-content-background)}.kbq-navbar-ic-item .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-title,.kbq-navbar-ic-toggle .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-default-content-text)}.kbq-navbar-ic-item>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-default-content-icon-left)}.kbq-navbar-ic-item .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-default-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-hover-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-hover-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-hover-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):hover .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-hover-content-icon-right)}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused{outline:none}.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).cdk-keyboard-focused .kbq-navbar-ic-header__inner{box-shadow:inset 0 0 0 2px var(--kbq-states-line-focus-theme)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-selected-content-background)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-title,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-selected-content-text)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-item:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle:not(.kbq-disabled):active>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-selected-content-icon-left)}.kbq-navbar-ic-item:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-item:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled).kbq-active .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle:not(.kbq-disabled):active .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-selected-content-icon-right)}.kbq-navbar-ic-item.kbq-disabled,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled,.kbq-navbar-ic-toggle.kbq-disabled{pointer-events:none;cursor:default}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-header__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__inner,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-header__inner{background:var(--kbq-navbar-ic-item-states-disabled-content-background)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-title,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-title{color:var(--kbq-navbar-ic-item-states-disabled-content-text)}.kbq-navbar-ic-item.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled>.kbq-icon.kbq-empty,.kbq-navbar-ic-toggle.kbq-disabled>.kbq-icon.kbq-empty{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-left)}.kbq-navbar-ic-item.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive.kbq-disabled .kbq-navbar-ic-item__arrow-icon,.kbq-navbar-ic-toggle.kbq-disabled .kbq-navbar-ic-item__arrow-icon{color:var(--kbq-navbar-ic-item-states-disabled-content-icon-right)}.kbq-navbar-ic-divider{background:var(--kbq-line-contrast-less)}.kbq-navbar-ic-title{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title{font-size:var(--kbq-typography-text-big-strong-font-size);font-style:var(--kbq-typography-text-big-strong-font-style);font-weight:var(--kbq-typography-text-big-strong-font-weight);line-height:var(--kbq-typography-text-big-strong-line-height);font-family:var(--kbq-typography-text-big-strong-font-family);text-transform:var(--kbq-typography-text-big-strong-text-transform);font-feature-settings:var(--kbq-typography-text-big-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-strong-letter-spacing)}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{font-size:var(--kbq-typography-text-compact-strong-font-size);font-style:var(--kbq-typography-text-compact-strong-font-style);font-weight:var(--kbq-typography-text-compact-strong-font-weight);line-height:var(--kbq-typography-text-compact-strong-line-height);font-family:var(--kbq-typography-text-compact-strong-font-family);text-transform:var(--kbq-typography-text-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-text-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-strong-letter-spacing);line-height:12px}\n", ".kbq-navbar-ic-divider{display:block;height:1px;margin:var(--kbq-size-s) var(--kbq-size-l)}\n", ".kbq-navbar-ic{--kbq-navbar-ic-item-size-content-border-radius: var(--kbq-size-border-radius);--kbq-navbar-ic-background: var(--kbq-background-bg);--kbq-navbar-ic-border: var(--kbq-shadow-overflow-compact-right);--kbq-navbar-ic-item-default-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-default-content-background: transparent;--kbq-navbar-ic-item-default-content-icon-left: var(--kbq-icon-contrast);--kbq-navbar-ic-item-default-content-icon-right: var(--kbq-icon-contrast);--kbq-navbar-ic-item-states-hover-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-states-hover-content-background: var(--kbq-states-background-transparent-hover);--kbq-navbar-ic-item-states-hover-content-icon-left: var(--kbq-states-icon-contrast-hover);--kbq-navbar-ic-item-states-hover-content-icon-right: var(--kbq-states-icon-contrast-hover);--kbq-navbar-ic-item-states-selected-content-text: var(--kbq-foreground-contrast);--kbq-navbar-ic-item-states-selected-content-background: var(--kbq-states-background-transparent-active);--kbq-navbar-ic-item-states-selected-content-icon-left: var(--kbq-states-icon-contrast-active);--kbq-navbar-ic-item-states-selected-content-icon-right: var(--kbq-states-icon-contrast-active);--kbq-navbar-ic-item-states-disabled-content-text: var(--kbq-states-foreground-disabled);--kbq-navbar-ic-item-states-disabled-content-background: transparent;--kbq-navbar-ic-item-states-disabled-content-icon-left: var(--kbq-states-icon-disabled);--kbq-navbar-ic-item-states-disabled-content-icon-right: var(--kbq-states-icon-disabled)}\n"] }]
663
+ }], ctorParameters: () => [], propDecorators: { pinned: [{
664
+ type: Input,
665
+ args: [{ transform: booleanAttribute }]
666
+ }], collapsedWidth: [{
667
+ type: Input,
668
+ args: [{ transform: numberAttribute }]
669
+ }], expandedWidth: [{
670
+ type: Input,
671
+ args: [{ transform: numberAttribute }]
672
+ }], expanded: [{
673
+ type: Input,
674
+ args: [{ transform: booleanAttribute }]
675
+ }] } });
676
+
677
+ class KbqNavbarIcHeader extends KbqTooltipTrigger {
678
+ get titleText() {
679
+ return this.title?.text || '';
680
+ }
681
+ get isLink() {
682
+ return this.nativeElement.tagName === 'A';
683
+ }
684
+ constructor() {
685
+ super();
686
+ this.navbar = inject(KbqNavbarIc);
687
+ this.nativeElement = kbqInjectNativeElement();
688
+ this.destroyRef = inject(DestroyRef);
689
+ this._trigger = `${PopUpTriggers.Hover}`;
690
+ this.arrow = false;
691
+ this.offset = -8;
692
+ this.tooltipPlacement = PopUpPlacements.RightTop;
693
+ }
694
+ ngAfterContentInit() {
695
+ this.navbar?.animationDone
696
+ .pipe(takeUntilDestroyed(this.destroyRef))
697
+ .subscribe(() => this.title?.checkTextOverflown());
698
+ this.title?.checkTextOverflown();
699
+ if (this.title?.isTextOverflown) {
700
+ this.content = this.titleText;
701
+ }
702
+ }
703
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
704
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: KbqNavbarIcHeader, isStandalone: true, selector: "kbq-navbar-ic-header, [kbq-navbar-ic-header]", host: { properties: { "class.kbq-navbar-ic-header_interactive": "isLink" }, classAttribute: "kbq-navbar-ic-header" }, queries: [{ propertyName: "logo", first: true, predicate: KbqNavbarIcLogo, descendants: true }, { propertyName: "title", first: true, predicate: KbqNavbarIcTitle, descendants: true }], exportAs: ["kbqNavbarIcHeader"], usesInheritance: true, ngImport: i0, template: `
705
+ <div class="kbq-navbar-ic-header__inner">
706
+ <ng-content />
707
+ </div>
708
+ `, isInline: true, styles: [".kbq-navbar-ic-header{display:block;margin-top:var(--kbq-size-l);margin-bottom:var(--kbq-size-l);padding:var(--kbq-size-3xs) var(--kbq-size-m)}.kbq-navbar-ic-header .kbq-navbar-ic-header__inner{display:flex;flex-direction:row;padding:var(--kbq-size-xs) var(--kbq-size-s);gap:var(--kbq-size-s);border-radius:var(--kbq-navbar-ic-item-size-content-border-radius)}.kbq-navbar-ic-header .kbq-navbar-ic-logo{display:flex;align-self:center}.kbq-navbar-ic-header .kbq-navbar-ic-title{display:block;align-items:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive{cursor:pointer}.kbq-navbar-ic-header.kbq-collapsed .kbq-navbar-ic-title{display:none}a.kbq-navbar-ic-header{text-decoration:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
709
+ }
710
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcHeader, decorators: [{
711
+ type: Component,
712
+ args: [{ standalone: true, selector: 'kbq-navbar-ic-header, [kbq-navbar-ic-header]', exportAs: 'kbqNavbarIcHeader', template: `
713
+ <div class="kbq-navbar-ic-header__inner">
714
+ <ng-content />
715
+ </div>
716
+ `, host: {
717
+ class: 'kbq-navbar-ic-header',
718
+ '[class.kbq-navbar-ic-header_interactive]': 'isLink'
719
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".kbq-navbar-ic-header{display:block;margin-top:var(--kbq-size-l);margin-bottom:var(--kbq-size-l);padding:var(--kbq-size-3xs) var(--kbq-size-m)}.kbq-navbar-ic-header .kbq-navbar-ic-header__inner{display:flex;flex-direction:row;padding:var(--kbq-size-xs) var(--kbq-size-s);gap:var(--kbq-size-s);border-radius:var(--kbq-navbar-ic-item-size-content-border-radius)}.kbq-navbar-ic-header .kbq-navbar-ic-logo{display:flex;align-self:center}.kbq-navbar-ic-header .kbq-navbar-ic-title{display:block;align-items:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kbq-navbar-ic-header .kbq-navbar-ic-title.kbq-navbar-ic-title_text-overflown{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.kbq-navbar-ic-header.kbq-navbar-ic-header_interactive{cursor:pointer}.kbq-navbar-ic-header.kbq-collapsed .kbq-navbar-ic-title{display:none}a.kbq-navbar-ic-header{text-decoration:none}\n"] }]
720
+ }], ctorParameters: () => [], propDecorators: { logo: [{
721
+ type: ContentChild,
722
+ args: [KbqNavbarIcLogo]
723
+ }], title: [{
724
+ type: ContentChild,
725
+ args: [KbqNavbarIcTitle]
726
+ }] } });
727
+
728
+ class KbqNavbarIcModule {
729
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
730
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcModule, imports: [A11yModule,
731
+ PlatformModule,
732
+ KbqIconModule,
733
+ KbqToolTipModule,
734
+ KbqNavbarIc,
735
+ KbqNavbarIcTitle,
736
+ KbqNavbarIcItem,
737
+ KbqNavbarIcHeader,
738
+ KbqNavbarIcLogo,
739
+ KbqNavbarIcToggle,
740
+ KbqNavbarIcDivider,
741
+ KbqNavbarIcFocusableItem,
742
+ KbqNavbarIcContainer,
743
+ KbqRectangleItem], exports: [KbqNavbarIc,
744
+ KbqNavbarIcContainer,
745
+ KbqNavbarIcTitle,
746
+ KbqNavbarIcItem,
747
+ KbqNavbarIcHeader,
748
+ KbqNavbarIcLogo,
749
+ KbqNavbarIcToggle,
750
+ KbqNavbarIcDivider,
751
+ KbqNavbarIcFocusableItem] }); }
752
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcModule, imports: [A11yModule,
753
+ PlatformModule,
754
+ KbqIconModule,
755
+ KbqToolTipModule,
756
+ KbqNavbarIcItem,
757
+ KbqNavbarIcToggle] }); }
758
+ }
759
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqNavbarIcModule, decorators: [{
760
+ type: NgModule,
761
+ args: [{
762
+ imports: [
763
+ A11yModule,
764
+ PlatformModule,
765
+ KbqIconModule,
766
+ KbqToolTipModule,
767
+ KbqNavbarIc,
768
+ KbqNavbarIcTitle,
769
+ KbqNavbarIcItem,
770
+ KbqNavbarIcHeader,
771
+ KbqNavbarIcLogo,
772
+ KbqNavbarIcToggle,
773
+ KbqNavbarIcDivider,
774
+ KbqNavbarIcFocusableItem,
775
+ KbqNavbarIcContainer,
776
+ KbqRectangleItem
777
+ ],
778
+ exports: [
779
+ KbqNavbarIc,
780
+ KbqNavbarIcContainer,
781
+ KbqNavbarIcTitle,
782
+ KbqNavbarIcItem,
783
+ KbqNavbarIcHeader,
784
+ KbqNavbarIcLogo,
785
+ KbqNavbarIcToggle,
786
+ KbqNavbarIcDivider,
787
+ KbqNavbarIcFocusableItem
788
+ ]
789
+ }]
790
+ }] });
791
+
792
+ /**
793
+ * Generated bundle index. Do not edit.
794
+ */
795
+
796
+ export { KBQ_NAVBAR_IC_CONFIGURATION, KBQ_NAVBAR_IC_DEFAULT_CONFIGURATION, KbqExpandEvents, KbqFocusable, KbqNavbarIc, KbqNavbarIcContainer, KbqNavbarIcDivider, KbqNavbarIcFocusableItem, KbqNavbarIcHeader, KbqNavbarIcItem, KbqNavbarIcLogo, KbqNavbarIcModule, KbqNavbarIcTitle, KbqNavbarIcToggle, kbqMaxSymbolsInHeaderTitle };
797
+ //# sourceMappingURL=koobiq-components-navbar-ic.mjs.map