@koobiq/components 18.38.1 → 19.0.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 (891) hide show
  1. package/accordion/accordion-content.d.ts +2 -2
  2. package/accordion/accordion-content.directive.d.ts +11 -0
  3. package/accordion/accordion-header.d.ts +2 -2
  4. package/accordion/accordion-header.directive.d.ts +7 -0
  5. package/accordion/accordion-item.d.ts +2 -2
  6. package/accordion/accordion-item.directive.d.ts +72 -0
  7. package/accordion/accordion-root.directive.d.ts +64 -0
  8. package/accordion/accordion-trigger.component.d.ts +2 -2
  9. package/accordion/accordion-trigger.directive.d.ts +13 -0
  10. package/accordion/accordion.component.d.ts +2 -4
  11. package/accordion/accordion.module.d.ts +7 -7
  12. package/accordion/public-api.d.ts +5 -0
  13. package/alert/_alert-theme.scss +4 -16
  14. package/alert/alert-tokens.scss +6 -12
  15. package/alert/alert.component.d.ts +5 -12
  16. package/alert/alert.module.d.ts +4 -4
  17. package/app-switcher/app-switcher.d.ts +4 -4
  18. package/autocomplete/autocomplete-origin.directive.d.ts +1 -1
  19. package/autocomplete/autocomplete-trigger.directive.d.ts +1 -1
  20. package/autocomplete/autocomplete.component.d.ts +1 -1
  21. package/autocomplete/autocomplete.module.d.ts +7 -7
  22. package/badge/badge.component.d.ts +3 -3
  23. package/badge/badge.module.d.ts +4 -4
  24. package/breadcrumbs/breadcrumbs.d.ts +3 -2
  25. package/breadcrumbs/public-api.d.ts +2 -0
  26. package/breadcrumbs/roving-focus-group.directive.d.ts +50 -0
  27. package/breadcrumbs/roving-focus-item.directive.d.ts +50 -0
  28. package/breadcrumbs/utils.d.ts +19 -0
  29. package/button/button.component.d.ts +2 -2
  30. package/button/button.module.d.ts +6 -6
  31. package/button-toggle/_button-toggle-theme.scss +30 -27
  32. package/button-toggle/button-toggle.component.d.ts +2 -2
  33. package/button-toggle/button-toggle.module.d.ts +4 -4
  34. package/button-toggle/button-toggle.scss +2 -2
  35. package/checkbox/checkbox-module.d.ts +4 -4
  36. package/checkbox/checkbox-required-validator.d.ts +1 -1
  37. package/checkbox/checkbox.d.ts +1 -1
  38. package/code-block/code-block.scss +2 -2
  39. package/core/common-behaviors/index.d.ts +0 -1
  40. package/core/formatters/date/formatter.pipe.d.ts +13 -0
  41. package/core/formatters/index.d.ts +4 -4
  42. package/core/formatters/number/formatter.d.ts +3 -3
  43. package/core/forms/forms-module.d.ts +1 -1
  44. package/core/forms/forms.directive.d.ts +2 -2
  45. package/core/highlight/highlight.pipe.d.ts +1 -1
  46. package/core/highlight/index.d.ts +3 -3
  47. package/core/line/line.d.ts +1 -6
  48. package/core/option/_option-theme.scss +5 -2
  49. package/core/option/action.d.ts +1 -1
  50. package/core/option/optgroup.d.ts +1 -1
  51. package/core/option/option-module.d.ts +5 -5
  52. package/core/option/option.d.ts +4 -1
  53. package/core/pop-up/constants.d.ts +4 -0
  54. package/core/pop-up/pop-up-trigger.d.ts +5 -5
  55. package/core/pop-up/pop-up.d.ts +1 -1
  56. package/core/select/common.d.ts +1 -1
  57. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +1 -1
  58. package/core/selection/pseudo-checkbox/pseudo-checkbox.module.d.ts +3 -3
  59. package/core/styles/common/_select.scss +1 -1
  60. package/core/styles/theming/_scrollbar-theme.scss +18 -12
  61. package/core/styles/visual/_layout.scss +10 -0
  62. package/core/utils/utils.d.ts +3 -0
  63. package/datepicker/calendar-body.component.d.ts +1 -1
  64. package/datepicker/calendar-header.component.d.ts +1 -1
  65. package/datepicker/calendar.component.d.ts +1 -1
  66. package/datepicker/datepicker-input.directive.d.ts +1 -1
  67. package/datepicker/datepicker-module.d.ts +15 -15
  68. package/datepicker/datepicker-toggle.component.d.ts +2 -2
  69. package/datepicker/datepicker.component.d.ts +2 -2
  70. package/datepicker/month-view.component.d.ts +1 -1
  71. package/divider/divider.component.d.ts +5 -1
  72. package/divider/divider.module.d.ts +3 -3
  73. package/dl/dl.component.d.ts +3 -3
  74. package/dl/dl.module.d.ts +4 -4
  75. package/dropdown/dropdown-content.directive.d.ts +1 -1
  76. package/dropdown/dropdown-item.component.d.ts +1 -1
  77. package/dropdown/dropdown-trigger.directive.d.ts +1 -1
  78. package/dropdown/dropdown.component.d.ts +1 -1
  79. package/dropdown/dropdown.module.d.ts +8 -8
  80. package/dropdown/dropdown.scss +1 -0
  81. package/ellipsis-center/ellipsis-center.directive.d.ts +2 -2
  82. package/empty-state/empty-state.component.d.ts +5 -5
  83. package/empty-state/empty-state.module.d.ts +4 -4
  84. package/fesm2022/koobiq-components-accordion.mjs +459 -40
  85. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  86. package/fesm2022/koobiq-components-actions-panel.mjs +18 -18
  87. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  88. package/fesm2022/koobiq-components-alert.mjs +28 -36
  89. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  90. package/fesm2022/koobiq-components-app-switcher.mjs +49 -52
  91. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
  92. package/fesm2022/koobiq-components-autocomplete.mjs +31 -25
  93. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  94. package/fesm2022/koobiq-components-badge.mjs +20 -21
  95. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  96. package/fesm2022/koobiq-components-breadcrumbs.mjs +339 -36
  97. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  98. package/fesm2022/koobiq-components-button-toggle.mjs +25 -22
  99. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-button.mjs +25 -26
  101. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-checkbox.mjs +18 -16
  103. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-clamped-text.mjs +9 -9
  105. package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-code-block.mjs +15 -16
  107. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-content-panel.mjs +55 -57
  109. package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-core.mjs +326 -356
  111. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-datepicker.mjs +107 -90
  113. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-divider.mjs +16 -14
  115. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-dl.mjs +19 -20
  117. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-dropdown.mjs +47 -48
  119. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  120. package/fesm2022/koobiq-components-dynamic-translation.mjs +16 -19
  121. package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-ellipsis-center.mjs +10 -10
  123. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  124. package/fesm2022/koobiq-components-empty-state.mjs +26 -27
  125. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  126. package/fesm2022/koobiq-components-file-upload.mjs +306 -98
  127. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  128. package/fesm2022/koobiq-components-filter-bar.mjs +258 -234
  129. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  130. package/fesm2022/koobiq-components-form-field.mjs +84 -92
  131. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  132. package/fesm2022/koobiq-components-icon.mjs +18 -18
  133. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  134. package/fesm2022/koobiq-components-inline-edit.mjs +33 -37
  135. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-input.mjs +31 -30
  137. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  138. package/fesm2022/koobiq-components-link.mjs +11 -10
  139. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  140. package/fesm2022/koobiq-components-list.mjs +54 -46
  141. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  142. package/fesm2022/koobiq-components-loader-overlay.mjs +27 -28
  143. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  144. package/fesm2022/koobiq-components-markdown.mjs +14 -14
  145. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  146. package/fesm2022/koobiq-components-modal.mjs +76 -64
  147. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  148. package/fesm2022/koobiq-components-navbar-ic.mjs +76 -54
  149. package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -1
  150. package/fesm2022/koobiq-components-navbar.mjs +77 -66
  151. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  152. package/fesm2022/koobiq-components-notification-center.mjs +31 -32
  153. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -1
  154. package/fesm2022/koobiq-components-overflow-items.mjs +16 -19
  155. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  156. package/fesm2022/koobiq-components-popover.mjs +55 -46
  157. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  158. package/fesm2022/koobiq-components-progress-bar.mjs +18 -19
  159. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  160. package/fesm2022/koobiq-components-progress-spinner.mjs +21 -23
  161. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  162. package/fesm2022/koobiq-components-radio.mjs +20 -16
  163. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  164. package/fesm2022/koobiq-components-resizer.mjs +10 -12
  165. package/fesm2022/koobiq-components-resizer.mjs.map +1 -1
  166. package/fesm2022/koobiq-components-risk-level.mjs +13 -12
  167. package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
  168. package/fesm2022/koobiq-components-scrollbar.mjs +17 -18
  169. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  170. package/fesm2022/koobiq-components-search-expandable.mjs +19 -19
  171. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -1
  172. package/fesm2022/koobiq-components-select.mjs +110 -73
  173. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  174. package/fesm2022/koobiq-components-sidebar.mjs +16 -23
  175. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  176. package/fesm2022/koobiq-components-sidepanel.mjs +61 -55
  177. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  178. package/fesm2022/koobiq-components-split-button.mjs +12 -12
  179. package/fesm2022/koobiq-components-split-button.mjs.map +1 -1
  180. package/fesm2022/koobiq-components-splitter.mjs +24 -25
  181. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  182. package/fesm2022/koobiq-components-table.mjs +17 -18
  183. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  184. package/fesm2022/koobiq-components-tabs.mjs +85 -89
  185. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  186. package/fesm2022/koobiq-components-tags.mjs +43 -47
  187. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  188. package/fesm2022/koobiq-components-textarea.mjs +10 -11
  189. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  190. package/fesm2022/koobiq-components-time-range.mjs +38 -40
  191. package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
  192. package/fesm2022/koobiq-components-timepicker.mjs +65 -14
  193. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  194. package/fesm2022/koobiq-components-timezone.mjs +68 -59
  195. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  196. package/fesm2022/koobiq-components-title.mjs +9 -10
  197. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  198. package/fesm2022/koobiq-components-toast.mjs +23 -24
  199. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  200. package/fesm2022/koobiq-components-toggle.mjs +16 -14
  201. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  202. package/fesm2022/koobiq-components-tooltip.mjs +20 -23
  203. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  204. package/fesm2022/koobiq-components-top-bar.mjs +18 -20
  205. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  206. package/fesm2022/koobiq-components-tree-select.mjs +81 -70
  207. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  208. package/fesm2022/koobiq-components-tree.mjs +77 -66
  209. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  210. package/fesm2022/koobiq-components-username.mjs +31 -37
  211. package/fesm2022/koobiq-components-username.mjs.map +1 -1
  212. package/file-upload/file-upload.d.ts +11 -0
  213. package/file-upload/file-upload.module.d.ts +15 -15
  214. package/file-upload/multiple-file-upload.component.d.ts +12 -9
  215. package/file-upload/{file-drop.d.ts → primitives/file-drop.d.ts} +3 -3
  216. package/file-upload/primitives/file-picker.d.ts +82 -0
  217. package/file-upload/primitives/index.d.ts +2 -0
  218. package/file-upload/public-api.d.ts +2 -1
  219. package/file-upload/single-file-upload.component.d.ts +11 -8
  220. package/filter-bar/filter-bar.d.ts +1 -1
  221. package/filter-bar/filter-search.d.ts +17 -4
  222. package/icon/_icon-button-theme.scss +2 -1
  223. package/inline-edit/inline-edit.d.ts +2 -3
  224. package/input/_input-theme.scss +2 -1
  225. package/input/input-number-validators.d.ts +2 -2
  226. package/input/input-number.d.ts +1 -1
  227. package/input/input-password.d.ts +1 -1
  228. package/input/input.d.ts +2 -2
  229. package/input/input.module.d.ts +8 -8
  230. package/link/_link-theme.scss +3 -0
  231. package/link/link.component.d.ts +1 -1
  232. package/link/link.module.d.ts +3 -3
  233. package/list/_list-theme.scss +6 -0
  234. package/list/list-selection.component.d.ts +6 -4
  235. package/list/list.component.d.ts +2 -2
  236. package/list/list.module.d.ts +6 -6
  237. package/list/list.scss +1 -0
  238. package/loader-overlay/loader-overlay.component.d.ts +4 -4
  239. package/loader-overlay/loader-overlay.module.d.ts +5 -5
  240. package/modal/css-unit.pipe.d.ts +1 -1
  241. package/modal/modal.component.d.ts +1 -1
  242. package/modal/modal.directive.d.ts +4 -4
  243. package/modal/modal.module.d.ts +10 -10
  244. package/modal/modal.service.d.ts +1 -1
  245. package/navbar/_navbar-theme.scss +1 -0
  246. package/navbar/navbar-brand.component.d.ts +1 -1
  247. package/navbar/navbar-item.component.d.ts +7 -7
  248. package/navbar/navbar-toggle.component.d.ts +1 -1
  249. package/navbar/navbar-toggle.scss +1 -1
  250. package/navbar/navbar.component.d.ts +4 -4
  251. package/navbar/navbar.module.d.ts +10 -10
  252. package/navbar/vertical-navbar.component.d.ts +1 -1
  253. package/navbar/vertical-navbar.scss +5 -2
  254. package/navbar-ic/navbar-ic-header.d.ts +3 -0
  255. package/navbar-ic/navbar-ic-item.d.ts +18 -0
  256. package/navbar-ic/navbar-ic.d.ts +13 -7
  257. package/notification-center/notification-center.d.ts +5 -5
  258. package/overflow-items/overflow-items.d.ts +1 -1
  259. package/package.json +9 -140
  260. package/popover/popover-confirm.component.d.ts +2 -2
  261. package/popover/popover.component.d.ts +9 -9
  262. package/popover/popover.module.d.ts +9 -9
  263. package/popover/popover.scss +3 -2
  264. package/prebuilt-themes/dark-theme.css +1 -1
  265. package/prebuilt-themes/light-theme.css +1 -1
  266. package/prebuilt-themes/theme.css +1 -1
  267. package/progress-bar/progress-bar.component.d.ts +3 -3
  268. package/progress-bar/progress-bar.module.d.ts +3 -3
  269. package/progress-spinner/progress-spinner.component.d.ts +3 -3
  270. package/progress-spinner/progress-spinner.module.d.ts +4 -4
  271. package/progress-spinner/progress-spinner.scss +1 -0
  272. package/radio/_radio-theme.scss +2 -1
  273. package/radio/radio-tokens.scss +1 -0
  274. package/radio/radio.component.d.ts +10 -5
  275. package/radio/radio.module.d.ts +3 -3
  276. package/risk-level/risk-level.component.d.ts +1 -1
  277. package/risk-level/risk-level.module.d.ts +4 -4
  278. package/schematics/migrations/icons-replacement/README.md +5 -1
  279. package/schematics/migrations/icons-replacement/index.js +1 -1
  280. package/schematics/ng-add/index.js +4 -5
  281. package/scrollbar/_scrollbar-component-theme.scss +16 -14
  282. package/select/select-option.directive.d.ts +1 -1
  283. package/select/select.component.d.ts +6 -5
  284. package/select/select.module.d.ts +10 -10
  285. package/sidebar/sidebar.component.d.ts +3 -3
  286. package/sidebar/sidebar.module.d.ts +3 -3
  287. package/sidepanel/sidepanel-container.component.d.ts +1 -1
  288. package/sidepanel/sidepanel-directives.d.ts +5 -5
  289. package/sidepanel/sidepanel.module.d.ts +9 -9
  290. package/splitter/splitter.component.d.ts +4 -4
  291. package/splitter/splitter.module.d.ts +3 -3
  292. package/table/_table-theme.scss +1 -0
  293. package/table/table.component.d.ts +2 -2
  294. package/table/table.module.d.ts +4 -4
  295. package/tabs/paginated-tab-header.d.ts +1 -1
  296. package/tabs/tab-body.component.d.ts +2 -2
  297. package/tabs/tab-content.directive.d.ts +1 -1
  298. package/tabs/tab-group.component.d.ts +5 -5
  299. package/tabs/tab-header.component.d.ts +1 -1
  300. package/tabs/tab-label-wrapper.directive.d.ts +1 -1
  301. package/tabs/tab-label.directive.d.ts +1 -1
  302. package/tabs/tab.component.d.ts +3 -3
  303. package/tabs/tabs.module.d.ts +15 -15
  304. package/tags/tag-input.d.ts +1 -1
  305. package/tags/tag-list.component.d.ts +1 -1
  306. package/tags/tag.component.d.ts +4 -4
  307. package/tags/tag.module.d.ts +4 -4
  308. package/textarea/textarea.component.d.ts +1 -1
  309. package/textarea/textarea.module.d.ts +4 -4
  310. package/timepicker/timepicker.directive.d.ts +15 -5
  311. package/timepicker/timepicker.module.d.ts +5 -5
  312. package/timezone/cities-by-filter.pipe.d.ts +1 -1
  313. package/timezone/timezone-option.component.d.ts +1 -1
  314. package/timezone/timezone-option.directive.d.ts +1 -1
  315. package/timezone/timezone-select.component.d.ts +2 -2
  316. package/timezone/timezone.module.d.ts +15 -15
  317. package/timezone/utc-offset.pipe.d.ts +1 -1
  318. package/title/title.directive.d.ts +1 -1
  319. package/title/title.module.d.ts +3 -3
  320. package/toggle/toggle.component.d.ts +1 -1
  321. package/toggle/toggle.module.d.ts +3 -3
  322. package/tooltip/tooltip.component.d.ts +3 -3
  323. package/top-bar/top-bar.d.ts +1 -1
  324. package/tree/node.d.ts +1 -1
  325. package/tree/outlet.d.ts +1 -1
  326. package/tree/padding.directive.d.ts +1 -1
  327. package/tree/toggle.d.ts +3 -3
  328. package/tree/tree-base.d.ts +2 -2
  329. package/tree/tree-option.component.d.ts +1 -1
  330. package/tree/tree-selection.component.d.ts +1 -1
  331. package/tree/tree.d.ts +1 -1
  332. package/tree/tree.module.d.ts +11 -11
  333. package/tree-select/tree-select.component.d.ts +2 -2
  334. package/tree-select/tree-select.module.d.ts +9 -9
  335. package/core/common-behaviors/focus-monitor.d.ts +0 -19
  336. package/esm2022/accordion/accordion-content.mjs +0 -19
  337. package/esm2022/accordion/accordion-header.mjs +0 -19
  338. package/esm2022/accordion/accordion-item.mjs +0 -25
  339. package/esm2022/accordion/accordion-trigger.component.mjs +0 -48
  340. package/esm2022/accordion/accordion.component.mjs +0 -41
  341. package/esm2022/accordion/accordion.module.mjs +0 -44
  342. package/esm2022/accordion/index.mjs +0 -2
  343. package/esm2022/accordion/koobiq-components-accordion.mjs +0 -5
  344. package/esm2022/accordion/public-api.mjs +0 -7
  345. package/esm2022/actions-panel/actions-panel-config.mjs +0 -55
  346. package/esm2022/actions-panel/actions-panel-container.mjs +0 -217
  347. package/esm2022/actions-panel/actions-panel-ref.mjs +0 -78
  348. package/esm2022/actions-panel/actions-panel.mjs +0 -133
  349. package/esm2022/actions-panel/index.mjs +0 -6
  350. package/esm2022/actions-panel/koobiq-components-actions-panel.mjs +0 -5
  351. package/esm2022/actions-panel/module.mjs +0 -21
  352. package/esm2022/alert/alert.component.mjs +0 -124
  353. package/esm2022/alert/alert.module.mjs +0 -40
  354. package/esm2022/alert/index.mjs +0 -2
  355. package/esm2022/alert/koobiq-components-alert.mjs +0 -5
  356. package/esm2022/alert/public-api.mjs +0 -3
  357. package/esm2022/app-switcher/app-switcher-animations.mjs +0 -18
  358. package/esm2022/app-switcher/app-switcher-dropdown-app.mjs +0 -75
  359. package/esm2022/app-switcher/app-switcher-dropdown-site.mjs +0 -60
  360. package/esm2022/app-switcher/app-switcher.mjs +0 -446
  361. package/esm2022/app-switcher/app-switcher.module.mjs +0 -45
  362. package/esm2022/app-switcher/index.mjs +0 -2
  363. package/esm2022/app-switcher/kbq-app-switcher-list-item.mjs +0 -84
  364. package/esm2022/app-switcher/koobiq-components-app-switcher.mjs +0 -5
  365. package/esm2022/app-switcher/public-api.mjs +0 -7
  366. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +0 -21
  367. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +0 -540
  368. package/esm2022/autocomplete/autocomplete.component.mjs +0 -178
  369. package/esm2022/autocomplete/autocomplete.module.mjs +0 -38
  370. package/esm2022/autocomplete/index.mjs +0 -2
  371. package/esm2022/autocomplete/koobiq-components-autocomplete.mjs +0 -5
  372. package/esm2022/autocomplete/public-api.mjs +0 -5
  373. package/esm2022/badge/badge.component.mjs +0 -124
  374. package/esm2022/badge/badge.module.mjs +0 -36
  375. package/esm2022/badge/index.mjs +0 -2
  376. package/esm2022/badge/koobiq-components-badge.mjs +0 -5
  377. package/esm2022/badge/public-api.mjs +0 -3
  378. package/esm2022/breadcrumbs/breadcrumbs.mjs +0 -268
  379. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +0 -31
  380. package/esm2022/breadcrumbs/breadcrumbs.types.mjs +0 -2
  381. package/esm2022/breadcrumbs/index.mjs +0 -2
  382. package/esm2022/breadcrumbs/koobiq-components-breadcrumbs.mjs +0 -5
  383. package/esm2022/breadcrumbs/public-api.mjs +0 -4
  384. package/esm2022/button/button.component.mjs +0 -180
  385. package/esm2022/button/button.dropdown-trigger.directive.mjs +0 -28
  386. package/esm2022/button/button.module.mjs +0 -41
  387. package/esm2022/button/index.mjs +0 -2
  388. package/esm2022/button/koobiq-components-button.mjs +0 -5
  389. package/esm2022/button/public-api.mjs +0 -4
  390. package/esm2022/button-toggle/button-toggle.component.mjs +0 -384
  391. package/esm2022/button-toggle/button-toggle.module.mjs +0 -19
  392. package/esm2022/button-toggle/index.mjs +0 -2
  393. package/esm2022/button-toggle/koobiq-components-button-toggle.mjs +0 -5
  394. package/esm2022/button-toggle/public-api.mjs +0 -3
  395. package/esm2022/checkbox/checkbox-config.mjs +0 -6
  396. package/esm2022/checkbox/checkbox-module.mjs +0 -19
  397. package/esm2022/checkbox/checkbox-required-validator.mjs +0 -27
  398. package/esm2022/checkbox/checkbox.mjs +0 -295
  399. package/esm2022/checkbox/index.mjs +0 -2
  400. package/esm2022/checkbox/koobiq-components-checkbox.mjs +0 -5
  401. package/esm2022/checkbox/public-api.mjs +0 -5
  402. package/esm2022/clamped-text/clamped-text.mjs +0 -202
  403. package/esm2022/clamped-text/constants.mjs +0 -20
  404. package/esm2022/clamped-text/index.mjs +0 -4
  405. package/esm2022/clamped-text/koobiq-components-clamped-text.mjs +0 -5
  406. package/esm2022/clamped-text/module.mjs +0 -19
  407. package/esm2022/code-block/code-block-highlight.mjs +0 -418
  408. package/esm2022/code-block/code-block.mjs +0 -440
  409. package/esm2022/code-block/code-block.module.mjs +0 -19
  410. package/esm2022/code-block/index.mjs +0 -2
  411. package/esm2022/code-block/koobiq-components-code-block.mjs +0 -5
  412. package/esm2022/code-block/public-api.mjs +0 -5
  413. package/esm2022/code-block/types.mjs +0 -2
  414. package/esm2022/content-panel/content-panel.mjs +0 -432
  415. package/esm2022/content-panel/index.mjs +0 -3
  416. package/esm2022/content-panel/koobiq-components-content-panel.mjs +0 -5
  417. package/esm2022/content-panel/module.mjs +0 -42
  418. package/esm2022/core/animation/animation.mjs +0 -39
  419. package/esm2022/core/animation/fade-animations.mjs +0 -9
  420. package/esm2022/core/animation/index.mjs +0 -4
  421. package/esm2022/core/animation/select-animations.mjs +0 -45
  422. package/esm2022/core/common-behaviors/checkbox.mjs +0 -2
  423. package/esm2022/core/common-behaviors/clipboard.mjs +0 -31
  424. package/esm2022/core/common-behaviors/color.mjs +0 -89
  425. package/esm2022/core/common-behaviors/common-module.mjs +0 -76
  426. package/esm2022/core/common-behaviors/constructor.mjs +0 -2
  427. package/esm2022/core/common-behaviors/disabled.mjs +0 -19
  428. package/esm2022/core/common-behaviors/error-state.mjs +0 -50
  429. package/esm2022/core/common-behaviors/focus-monitor.mjs +0 -37
  430. package/esm2022/core/common-behaviors/hover.mjs +0 -34
  431. package/esm2022/core/common-behaviors/index.mjs +0 -14
  432. package/esm2022/core/common-behaviors/orientation.mjs +0 -2
  433. package/esm2022/core/common-behaviors/read-state.mjs +0 -33
  434. package/esm2022/core/common-behaviors/size.mjs +0 -2
  435. package/esm2022/core/common-behaviors/tabindex.mjs +0 -20
  436. package/esm2022/core/datetime/date-adapter.mjs +0 -14
  437. package/esm2022/core/datetime/date-formats.mjs +0 -3
  438. package/esm2022/core/datetime/index.mjs +0 -3
  439. package/esm2022/core/error/error-state-matcher.mjs +0 -56
  440. package/esm2022/core/form-field/field-sizing-content.mjs +0 -117
  441. package/esm2022/core/form-field/form-field-ref.mjs +0 -10
  442. package/esm2022/core/form-field/index.mjs +0 -3
  443. package/esm2022/core/formatters/date/formatter.mjs +0 -25
  444. package/esm2022/core/formatters/date/formatter.pipe.mjs +0 -380
  445. package/esm2022/core/formatters/filesize/config.mjs +0 -32
  446. package/esm2022/core/formatters/filesize/formatter.mjs +0 -43
  447. package/esm2022/core/formatters/filesize/index.mjs +0 -4
  448. package/esm2022/core/formatters/filesize/size.mjs +0 -65
  449. package/esm2022/core/formatters/index.mjs +0 -146
  450. package/esm2022/core/formatters/number/formatter.mjs +0 -347
  451. package/esm2022/core/forms/forms-module.mjs +0 -24
  452. package/esm2022/core/forms/forms.directive.mjs +0 -66
  453. package/esm2022/core/forms/index.mjs +0 -4
  454. package/esm2022/core/forms/validators.mjs +0 -184
  455. package/esm2022/core/highlight/highlight.pipe.mjs +0 -23
  456. package/esm2022/core/highlight/index.mjs +0 -19
  457. package/esm2022/core/index.mjs +0 -2
  458. package/esm2022/core/koobiq-components-core.mjs +0 -5
  459. package/esm2022/core/line/line.mjs +0 -70
  460. package/esm2022/core/locales/en-US.mjs +0 -210
  461. package/esm2022/core/locales/es-LA.mjs +0 -209
  462. package/esm2022/core/locales/formatters.mjs +0 -193
  463. package/esm2022/core/locales/index.mjs +0 -10
  464. package/esm2022/core/locales/locale-service.mjs +0 -173
  465. package/esm2022/core/locales/locale-service.module.mjs +0 -19
  466. package/esm2022/core/locales/pt-BR.mjs +0 -209
  467. package/esm2022/core/locales/ru-RU.mjs +0 -224
  468. package/esm2022/core/locales/tk-TM.mjs +0 -210
  469. package/esm2022/core/locales/types.mjs +0 -2
  470. package/esm2022/core/navbar/index.mjs +0 -2
  471. package/esm2022/core/navbar/rectangle-item.mjs +0 -40
  472. package/esm2022/core/option/action-container.mjs +0 -23
  473. package/esm2022/core/option/action.mjs +0 -107
  474. package/esm2022/core/option/index.mjs +0 -6
  475. package/esm2022/core/option/optgroup.mjs +0 -37
  476. package/esm2022/core/option/option-module.mjs +0 -20
  477. package/esm2022/core/option/option.mjs +0 -322
  478. package/esm2022/core/overlay/overlay-position-map.mjs +0 -251
  479. package/esm2022/core/pop-up/constants.mjs +0 -55
  480. package/esm2022/core/pop-up/focus-trap-strategy.mjs +0 -6
  481. package/esm2022/core/pop-up/index.mjs +0 -6
  482. package/esm2022/core/pop-up/pop-up-styles.mjs +0 -24
  483. package/esm2022/core/pop-up/pop-up-trigger.mjs +0 -343
  484. package/esm2022/core/pop-up/pop-up.mjs +0 -152
  485. package/esm2022/core/public-api.mjs +0 -24
  486. package/esm2022/core/select/common.mjs +0 -203
  487. package/esm2022/core/select/constants.mjs +0 -25
  488. package/esm2022/core/select/errors.mjs +0 -26
  489. package/esm2022/core/select/events.mjs +0 -2
  490. package/esm2022/core/select/index.mjs +0 -5
  491. package/esm2022/core/selection/constants.mjs +0 -6
  492. package/esm2022/core/selection/index.mjs +0 -4
  493. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +0 -43
  494. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +0 -18
  495. package/esm2022/core/services/measure-scrollbar.service.mjs +0 -42
  496. package/esm2022/core/services/theme.service.mjs +0 -80
  497. package/esm2022/core/title/index.mjs +0 -2
  498. package/esm2022/core/title/title-text-ref.mjs +0 -3
  499. package/esm2022/core/tokens/index.mjs +0 -2
  500. package/esm2022/core/tokens/window.mjs +0 -19
  501. package/esm2022/core/utils/dom.mjs +0 -8
  502. package/esm2022/core/utils/index.mjs +0 -3
  503. package/esm2022/core/utils/public-api.mjs +0 -2
  504. package/esm2022/core/utils/utils.mjs +0 -31
  505. package/esm2022/core/validation/index.mjs +0 -2
  506. package/esm2022/core/validation/validation.mjs +0 -27
  507. package/esm2022/core/version.mjs +0 -3
  508. package/esm2022/datepicker/calendar-body.component.mjs +0 -87
  509. package/esm2022/datepicker/calendar-header.component.mjs +0 -164
  510. package/esm2022/datepicker/calendar.component.mjs +0 -185
  511. package/esm2022/datepicker/datepicker-animations.mjs +0 -32
  512. package/esm2022/datepicker/datepicker-errors.mjs +0 -6
  513. package/esm2022/datepicker/datepicker-input.directive.mjs +0 -1119
  514. package/esm2022/datepicker/datepicker-intl.mjs +0 -40
  515. package/esm2022/datepicker/datepicker-module.mjs +0 -103
  516. package/esm2022/datepicker/datepicker-toggle.component.mjs +0 -170
  517. package/esm2022/datepicker/datepicker.component.mjs +0 -388
  518. package/esm2022/datepicker/index.mjs +0 -2
  519. package/esm2022/datepicker/koobiq-components-datepicker.mjs +0 -5
  520. package/esm2022/datepicker/month-view.component.mjs +0 -148
  521. package/esm2022/datepicker/public-api.mjs +0 -11
  522. package/esm2022/divider/divider.component.mjs +0 -49
  523. package/esm2022/divider/divider.module.mjs +0 -18
  524. package/esm2022/divider/index.mjs +0 -2
  525. package/esm2022/divider/koobiq-components-divider.mjs +0 -5
  526. package/esm2022/divider/public-api.mjs +0 -3
  527. package/esm2022/dl/dl.component.mjs +0 -81
  528. package/esm2022/dl/dl.module.mjs +0 -36
  529. package/esm2022/dl/index.mjs +0 -2
  530. package/esm2022/dl/koobiq-components-dl.mjs +0 -5
  531. package/esm2022/dl/public-api.mjs +0 -3
  532. package/esm2022/dropdown/dropdown-animations.mjs +0 -41
  533. package/esm2022/dropdown/dropdown-content.directive.mjs +0 -61
  534. package/esm2022/dropdown/dropdown-errors.mjs +0 -29
  535. package/esm2022/dropdown/dropdown-item.component.mjs +0 -150
  536. package/esm2022/dropdown/dropdown-trigger.directive.mjs +0 -513
  537. package/esm2022/dropdown/dropdown.component.mjs +0 -293
  538. package/esm2022/dropdown/dropdown.module.mjs +0 -51
  539. package/esm2022/dropdown/dropdown.types.mjs +0 -23
  540. package/esm2022/dropdown/index.mjs +0 -2
  541. package/esm2022/dropdown/koobiq-components-dropdown.mjs +0 -5
  542. package/esm2022/dropdown/public-api.mjs +0 -9
  543. package/esm2022/dynamic-translation/dynamic-translation.mjs +0 -175
  544. package/esm2022/dynamic-translation/index.mjs +0 -3
  545. package/esm2022/dynamic-translation/koobiq-components-dynamic-translation.mjs +0 -5
  546. package/esm2022/dynamic-translation/module.mjs +0 -25
  547. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +0 -120
  548. package/esm2022/ellipsis-center/index.mjs +0 -2
  549. package/esm2022/ellipsis-center/koobiq-components-ellipsis-center.mjs +0 -5
  550. package/esm2022/ellipsis-center/public-api.mjs +0 -2
  551. package/esm2022/empty-state/empty-state.component.mjs +0 -109
  552. package/esm2022/empty-state/empty-state.module.mjs +0 -44
  553. package/esm2022/empty-state/index.mjs +0 -2
  554. package/esm2022/empty-state/koobiq-components-empty-state.mjs +0 -5
  555. package/esm2022/empty-state/public-api.mjs +0 -3
  556. package/esm2022/file-upload/file-drop.mjs +0 -87
  557. package/esm2022/file-upload/file-upload.mjs +0 -71
  558. package/esm2022/file-upload/file-upload.module.mjs +0 -79
  559. package/esm2022/file-upload/index.mjs +0 -2
  560. package/esm2022/file-upload/koobiq-components-file-upload.mjs +0 -5
  561. package/esm2022/file-upload/multiple-file-upload.component.mjs +0 -306
  562. package/esm2022/file-upload/public-api.mjs +0 -6
  563. package/esm2022/file-upload/single-file-upload.component.mjs +0 -257
  564. package/esm2022/filter-bar/filter-bar-button.mjs +0 -31
  565. package/esm2022/filter-bar/filter-bar.mjs +0 -213
  566. package/esm2022/filter-bar/filter-bar.module.mjs +0 -67
  567. package/esm2022/filter-bar/filter-bar.types.mjs +0 -72
  568. package/esm2022/filter-bar/filter-refresher.mjs +0 -34
  569. package/esm2022/filter-bar/filter-reset.mjs +0 -49
  570. package/esm2022/filter-bar/filter-search.mjs +0 -145
  571. package/esm2022/filter-bar/filters.mjs +0 -266
  572. package/esm2022/filter-bar/index.mjs +0 -2
  573. package/esm2022/filter-bar/koobiq-components-filter-bar.mjs +0 -5
  574. package/esm2022/filter-bar/pipe-add.mjs +0 -140
  575. package/esm2022/filter-bar/pipe.directive.mjs +0 -37
  576. package/esm2022/filter-bar/pipes/base-pipe.mjs +0 -146
  577. package/esm2022/filter-bar/pipes/pipe-button.mjs +0 -72
  578. package/esm2022/filter-bar/pipes/pipe-date.mjs +0 -206
  579. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +0 -208
  580. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +0 -188
  581. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +0 -260
  582. package/esm2022/filter-bar/pipes/pipe-readonly.mjs +0 -68
  583. package/esm2022/filter-bar/pipes/pipe-select.mjs +0 -101
  584. package/esm2022/filter-bar/pipes/pipe-state.mjs +0 -53
  585. package/esm2022/filter-bar/pipes/pipe-text.mjs +0 -104
  586. package/esm2022/filter-bar/pipes/pipe-title.mjs +0 -102
  587. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +0 -142
  588. package/esm2022/filter-bar/public-api.mjs +0 -22
  589. package/esm2022/form-field/cleaner.mjs +0 -28
  590. package/esm2022/form-field/error.mjs +0 -20
  591. package/esm2022/form-field/fieldset.mjs +0 -84
  592. package/esm2022/form-field/form-field-control.mjs +0 -4
  593. package/esm2022/form-field/form-field.mjs +0 -447
  594. package/esm2022/form-field/form-field.module.mjs +0 -87
  595. package/esm2022/form-field/hint.mjs +0 -36
  596. package/esm2022/form-field/index.mjs +0 -2
  597. package/esm2022/form-field/koobiq-components-form-field.mjs +0 -5
  598. package/esm2022/form-field/label.mjs +0 -19
  599. package/esm2022/form-field/password-hint.mjs +0 -165
  600. package/esm2022/form-field/password-toggle.mjs +0 -129
  601. package/esm2022/form-field/prefix.mjs +0 -19
  602. package/esm2022/form-field/public-api.mjs +0 -16
  603. package/esm2022/form-field/reactive-password-hint.mjs +0 -66
  604. package/esm2022/form-field/stepper.mjs +0 -144
  605. package/esm2022/form-field/suffix.mjs +0 -18
  606. package/esm2022/form-field/validate.directive.mjs +0 -190
  607. package/esm2022/icon/icon-button.component.mjs +0 -64
  608. package/esm2022/icon/icon-item.component.mjs +0 -31
  609. package/esm2022/icon/icon.component.mjs +0 -56
  610. package/esm2022/icon/icon.module.mjs +0 -27
  611. package/esm2022/icon/index.mjs +0 -2
  612. package/esm2022/icon/koobiq-components-icon.mjs +0 -5
  613. package/esm2022/icon/public-api.mjs +0 -5
  614. package/esm2022/index.mjs +0 -2
  615. package/esm2022/inline-edit/index.mjs +0 -3
  616. package/esm2022/inline-edit/inline-edit.mjs +0 -382
  617. package/esm2022/inline-edit/koobiq-components-inline-edit.mjs +0 -5
  618. package/esm2022/inline-edit/module.mjs +0 -25
  619. package/esm2022/input/index.mjs +0 -2
  620. package/esm2022/input/input-errors.mjs +0 -4
  621. package/esm2022/input/input-number-validators.mjs +0 -88
  622. package/esm2022/input/input-number.mjs +0 -386
  623. package/esm2022/input/input-password.mjs +0 -253
  624. package/esm2022/input/input-value-accessor.mjs +0 -3
  625. package/esm2022/input/input.mjs +0 -299
  626. package/esm2022/input/input.module.mjs +0 -58
  627. package/esm2022/input/koobiq-components-input.mjs +0 -5
  628. package/esm2022/input/public-api.mjs +0 -7
  629. package/esm2022/koobiq-components.mjs +0 -5
  630. package/esm2022/link/index.mjs +0 -2
  631. package/esm2022/link/koobiq-components-link.mjs +0 -5
  632. package/esm2022/link/link.component.mjs +0 -143
  633. package/esm2022/link/link.module.mjs +0 -20
  634. package/esm2022/link/public-api.mjs +0 -3
  635. package/esm2022/list/index.mjs +0 -2
  636. package/esm2022/list/koobiq-components-list.mjs +0 -5
  637. package/esm2022/list/list-selection.component.mjs +0 -739
  638. package/esm2022/list/list.component.mjs +0 -43
  639. package/esm2022/list/list.module.mjs +0 -60
  640. package/esm2022/list/public-api.mjs +0 -4
  641. package/esm2022/loader-overlay/index.mjs +0 -2
  642. package/esm2022/loader-overlay/koobiq-components-loader-overlay.mjs +0 -5
  643. package/esm2022/loader-overlay/loader-overlay.component.mjs +0 -110
  644. package/esm2022/loader-overlay/loader-overlay.module.mjs +0 -44
  645. package/esm2022/loader-overlay/public-api.mjs +0 -3
  646. package/esm2022/markdown/index.mjs +0 -2
  647. package/esm2022/markdown/koobiq-components-markdown.mjs +0 -5
  648. package/esm2022/markdown/markdown.component.mjs +0 -67
  649. package/esm2022/markdown/markdown.module.mjs +0 -21
  650. package/esm2022/markdown/markdown.service.mjs +0 -36
  651. package/esm2022/markdown/markdown.values.mjs +0 -35
  652. package/esm2022/markdown/public-api.mjs +0 -5
  653. package/esm2022/modal/css-unit.pipe.mjs +0 -17
  654. package/esm2022/modal/index.mjs +0 -2
  655. package/esm2022/modal/koobiq-components-modal.mjs +0 -5
  656. package/esm2022/modal/modal-control.service.mjs +0 -89
  657. package/esm2022/modal/modal-ref.class.mjs +0 -7
  658. package/esm2022/modal/modal-util.mjs +0 -22
  659. package/esm2022/modal/modal.component.mjs +0 -540
  660. package/esm2022/modal/modal.directive.mjs +0 -94
  661. package/esm2022/modal/modal.module.mjs +0 -78
  662. package/esm2022/modal/modal.service.mjs +0 -135
  663. package/esm2022/modal/modal.type.mjs +0 -7
  664. package/esm2022/modal/public-api.mjs +0 -7
  665. package/esm2022/navbar/index.mjs +0 -2
  666. package/esm2022/navbar/koobiq-components-navbar.mjs +0 -5
  667. package/esm2022/navbar/navbar-brand.component.mjs +0 -105
  668. package/esm2022/navbar/navbar-item.component.mjs +0 -428
  669. package/esm2022/navbar/navbar-toggle.component.mjs +0 -88
  670. package/esm2022/navbar/navbar.component.mjs +0 -251
  671. package/esm2022/navbar/navbar.module.mjs +0 -84
  672. package/esm2022/navbar/public-api.mjs +0 -7
  673. package/esm2022/navbar/vertical-navbar.component.mjs +0 -128
  674. package/esm2022/navbar-ic/index.mjs +0 -2
  675. package/esm2022/navbar-ic/koobiq-components-navbar-ic.mjs +0 -5
  676. package/esm2022/navbar-ic/navbar-ic-header.mjs +0 -74
  677. package/esm2022/navbar-ic/navbar-ic-item.mjs +0 -390
  678. package/esm2022/navbar-ic/navbar-ic.animation.mjs +0 -17
  679. package/esm2022/navbar-ic/navbar-ic.mjs +0 -310
  680. package/esm2022/navbar-ic/navbar-ic.module.mjs +0 -74
  681. package/esm2022/navbar-ic/public-api.mjs +0 -5
  682. package/esm2022/notification-center/index.mjs +0 -2
  683. package/esm2022/notification-center/koobiq-components-notification-center.mjs +0 -5
  684. package/esm2022/notification-center/notification-center-animations.mjs +0 -18
  685. package/esm2022/notification-center/notification-center.mjs +0 -329
  686. package/esm2022/notification-center/notification-center.module.mjs +0 -38
  687. package/esm2022/notification-center/notification-center.service.mjs +0 -127
  688. package/esm2022/notification-center/notification-item.mjs +0 -70
  689. package/esm2022/notification-center/public-api.mjs +0 -5
  690. package/esm2022/overflow-items/index.mjs +0 -3
  691. package/esm2022/overflow-items/koobiq-components-overflow-items.mjs +0 -5
  692. package/esm2022/overflow-items/module.mjs +0 -25
  693. package/esm2022/overflow-items/overflow-items.mjs +0 -290
  694. package/esm2022/popover/index.mjs +0 -2
  695. package/esm2022/popover/koobiq-components-popover.mjs +0 -5
  696. package/esm2022/popover/popover-animations.mjs +0 -16
  697. package/esm2022/popover/popover-confirm.component.mjs +0 -97
  698. package/esm2022/popover/popover.component.mjs +0 -410
  699. package/esm2022/popover/popover.module.mjs +0 -67
  700. package/esm2022/popover/public-api.mjs +0 -5
  701. package/esm2022/progress-bar/index.mjs +0 -2
  702. package/esm2022/progress-bar/koobiq-components-progress-bar.mjs +0 -5
  703. package/esm2022/progress-bar/progress-bar.component.mjs +0 -62
  704. package/esm2022/progress-bar/progress-bar.module.mjs +0 -32
  705. package/esm2022/progress-bar/public-api.mjs +0 -3
  706. package/esm2022/progress-spinner/index.mjs +0 -2
  707. package/esm2022/progress-spinner/koobiq-components-progress-spinner.mjs +0 -5
  708. package/esm2022/progress-spinner/progress-spinner.component.mjs +0 -78
  709. package/esm2022/progress-spinner/progress-spinner.module.mjs +0 -35
  710. package/esm2022/progress-spinner/public-api.mjs +0 -3
  711. package/esm2022/public-api.mjs +0 -2
  712. package/esm2022/radio/index.mjs +0 -2
  713. package/esm2022/radio/koobiq-components-radio.mjs +0 -5
  714. package/esm2022/radio/public-api.mjs +0 -3
  715. package/esm2022/radio/radio.component.mjs +0 -451
  716. package/esm2022/radio/radio.module.mjs +0 -18
  717. package/esm2022/resizer/index.mjs +0 -3
  718. package/esm2022/resizer/koobiq-components-resizer.mjs +0 -5
  719. package/esm2022/resizer/module.mjs +0 -17
  720. package/esm2022/resizer/resizer.mjs +0 -135
  721. package/esm2022/risk-level/index.mjs +0 -2
  722. package/esm2022/risk-level/koobiq-components-risk-level.mjs +0 -5
  723. package/esm2022/risk-level/public-api.mjs +0 -3
  724. package/esm2022/risk-level/risk-level.component.mjs +0 -40
  725. package/esm2022/risk-level/risk-level.module.mjs +0 -24
  726. package/esm2022/scrollbar/index.mjs +0 -2
  727. package/esm2022/scrollbar/koobiq-components-scrollbar.mjs +0 -5
  728. package/esm2022/scrollbar/public-api.mjs +0 -5
  729. package/esm2022/scrollbar/scrollbar.component.mjs +0 -133
  730. package/esm2022/scrollbar/scrollbar.directive.mjs +0 -105
  731. package/esm2022/scrollbar/scrollbar.module.mjs +0 -25
  732. package/esm2022/scrollbar/scrollbar.types.mjs +0 -14
  733. package/esm2022/search-expandable/index.mjs +0 -2
  734. package/esm2022/search-expandable/koobiq-components-search-expandable.mjs +0 -5
  735. package/esm2022/search-expandable/public-api.mjs +0 -3
  736. package/esm2022/search-expandable/search-expandable.mjs +0 -177
  737. package/esm2022/search-expandable/search-expandable.module.mjs +0 -18
  738. package/esm2022/select/index.mjs +0 -2
  739. package/esm2022/select/koobiq-components-select.mjs +0 -5
  740. package/esm2022/select/public-api.mjs +0 -4
  741. package/esm2022/select/select-option.directive.mjs +0 -69
  742. package/esm2022/select/select.component.mjs +0 -1154
  743. package/esm2022/select/select.module.mjs +0 -81
  744. package/esm2022/sidebar/index.mjs +0 -2
  745. package/esm2022/sidebar/koobiq-components-sidebar.mjs +0 -5
  746. package/esm2022/sidebar/public-api.mjs +0 -3
  747. package/esm2022/sidebar/sidebar-animations.mjs +0 -23
  748. package/esm2022/sidebar/sidebar.component.mjs +0 -169
  749. package/esm2022/sidebar/sidebar.module.mjs +0 -30
  750. package/esm2022/sidepanel/index.mjs +0 -2
  751. package/esm2022/sidepanel/koobiq-components-sidepanel.mjs +0 -5
  752. package/esm2022/sidepanel/public-api.mjs +0 -7
  753. package/esm2022/sidepanel/sidepanel-animations.mjs +0 -29
  754. package/esm2022/sidepanel/sidepanel-config.mjs +0 -33
  755. package/esm2022/sidepanel/sidepanel-container.component.mjs +0 -126
  756. package/esm2022/sidepanel/sidepanel-directives.mjs +0 -168
  757. package/esm2022/sidepanel/sidepanel-ref.mjs +0 -60
  758. package/esm2022/sidepanel/sidepanel.module.mjs +0 -73
  759. package/esm2022/sidepanel/sidepanel.service.mjs +0 -167
  760. package/esm2022/split-button/index.mjs +0 -2
  761. package/esm2022/split-button/koobiq-components-split-button.mjs +0 -5
  762. package/esm2022/split-button/public-api.mjs +0 -3
  763. package/esm2022/split-button/split-button.mjs +0 -133
  764. package/esm2022/split-button/split-button.module.mjs +0 -18
  765. package/esm2022/splitter/index.mjs +0 -2
  766. package/esm2022/splitter/koobiq-components-splitter.mjs +0 -5
  767. package/esm2022/splitter/public-api.mjs +0 -3
  768. package/esm2022/splitter/splitter.component.mjs +0 -492
  769. package/esm2022/splitter/splitter.module.mjs +0 -34
  770. package/esm2022/table/index.mjs +0 -2
  771. package/esm2022/table/koobiq-components-table.mjs +0 -5
  772. package/esm2022/table/public-api.mjs +0 -3
  773. package/esm2022/table/table.component.mjs +0 -36
  774. package/esm2022/table/table.module.mjs +0 -32
  775. package/esm2022/tabs/index.mjs +0 -2
  776. package/esm2022/tabs/koobiq-components-tabs.mjs +0 -5
  777. package/esm2022/tabs/paginated-tab-header.mjs +0 -490
  778. package/esm2022/tabs/public-api.mjs +0 -11
  779. package/esm2022/tabs/tab-body.component.mjs +0 -178
  780. package/esm2022/tabs/tab-content.directive.mjs +0 -15
  781. package/esm2022/tabs/tab-group.component.mjs +0 -384
  782. package/esm2022/tabs/tab-header.component.mjs +0 -60
  783. package/esm2022/tabs/tab-label-wrapper.directive.mjs +0 -86
  784. package/esm2022/tabs/tab-label.directive.mjs +0 -17
  785. package/esm2022/tabs/tab-nav-bar.mjs +0 -292
  786. package/esm2022/tabs/tab.component.mjs +0 -145
  787. package/esm2022/tabs/tabs-animations.mjs +0 -24
  788. package/esm2022/tabs/tabs.module.mjs +0 -95
  789. package/esm2022/tags/index.mjs +0 -2
  790. package/esm2022/tags/koobiq-components-tags.mjs +0 -5
  791. package/esm2022/tags/public-api.mjs +0 -6
  792. package/esm2022/tags/tag-default-options.mjs +0 -4
  793. package/esm2022/tags/tag-input.mjs +0 -281
  794. package/esm2022/tags/tag-list.component.mjs +0 -765
  795. package/esm2022/tags/tag-text-control.mjs +0 -2
  796. package/esm2022/tags/tag.component.mjs +0 -647
  797. package/esm2022/tags/tag.module.mjs +0 -67
  798. package/esm2022/textarea/index.mjs +0 -2
  799. package/esm2022/textarea/koobiq-components-textarea.mjs +0 -5
  800. package/esm2022/textarea/public-api.mjs +0 -3
  801. package/esm2022/textarea/textarea.component.mjs +0 -300
  802. package/esm2022/textarea/textarea.module.mjs +0 -20
  803. package/esm2022/time-range/constants.mjs +0 -42
  804. package/esm2022/time-range/index.mjs +0 -8
  805. package/esm2022/time-range/koobiq-components-time-range.mjs +0 -5
  806. package/esm2022/time-range/module.mjs +0 -36
  807. package/esm2022/time-range/time-range-editor.mjs +0 -224
  808. package/esm2022/time-range/time-range-title-as-form-field.mjs +0 -60
  809. package/esm2022/time-range/time-range-title.mjs +0 -112
  810. package/esm2022/time-range/time-range.mjs +0 -234
  811. package/esm2022/time-range/time-range.service.mjs +0 -126
  812. package/esm2022/time-range/types.mjs +0 -2
  813. package/esm2022/timepicker/index.mjs +0 -2
  814. package/esm2022/timepicker/koobiq-components-timepicker.mjs +0 -5
  815. package/esm2022/timepicker/public-api.mjs +0 -4
  816. package/esm2022/timepicker/timepicker.constants.mjs +0 -29
  817. package/esm2022/timepicker/timepicker.directive.mjs +0 -686
  818. package/esm2022/timepicker/timepicker.module.mjs +0 -29
  819. package/esm2022/timezone/cities-by-filter.pipe.mjs +0 -17
  820. package/esm2022/timezone/index.mjs +0 -2
  821. package/esm2022/timezone/koobiq-components-timezone.mjs +0 -5
  822. package/esm2022/timezone/public-api.mjs +0 -7
  823. package/esm2022/timezone/timezone-option.component.mjs +0 -50
  824. package/esm2022/timezone/timezone-option.directive.mjs +0 -54
  825. package/esm2022/timezone/timezone-select.component.mjs +0 -55
  826. package/esm2022/timezone/timezone.models.mjs +0 -2
  827. package/esm2022/timezone/timezone.module.mjs +0 -82
  828. package/esm2022/timezone/timezone.utils.mjs +0 -80
  829. package/esm2022/timezone/utc-offset.pipe.mjs +0 -17
  830. package/esm2022/title/index.mjs +0 -2
  831. package/esm2022/title/koobiq-components-title.mjs +0 -5
  832. package/esm2022/title/public-api.mjs +0 -3
  833. package/esm2022/title/title.directive.mjs +0 -108
  834. package/esm2022/title/title.module.mjs +0 -18
  835. package/esm2022/toast/index.mjs +0 -2
  836. package/esm2022/toast/koobiq-components-toast.mjs +0 -5
  837. package/esm2022/toast/public-api.mjs +0 -6
  838. package/esm2022/toast/toast-animations.mjs +0 -10
  839. package/esm2022/toast/toast-container.component.mjs +0 -57
  840. package/esm2022/toast/toast.component.mjs +0 -125
  841. package/esm2022/toast/toast.module.mjs +0 -26
  842. package/esm2022/toast/toast.service.mjs +0 -197
  843. package/esm2022/toast/toast.type.mjs +0 -39
  844. package/esm2022/toggle/index.mjs +0 -2
  845. package/esm2022/toggle/koobiq-components-toggle.mjs +0 -5
  846. package/esm2022/toggle/public-api.mjs +0 -3
  847. package/esm2022/toggle/toggle.component.mjs +0 -254
  848. package/esm2022/toggle/toggle.module.mjs +0 -18
  849. package/esm2022/tooltip/index.mjs +0 -2
  850. package/esm2022/tooltip/koobiq-components-tooltip.mjs +0 -5
  851. package/esm2022/tooltip/public-api.mjs +0 -3
  852. package/esm2022/tooltip/tooltip.animations.mjs +0 -19
  853. package/esm2022/tooltip/tooltip.component.mjs +0 -400
  854. package/esm2022/tooltip/tooltip.module.mjs +0 -35
  855. package/esm2022/top-bar/index.mjs +0 -2
  856. package/esm2022/top-bar/koobiq-components-top-bar.mjs +0 -5
  857. package/esm2022/top-bar/module.mjs +0 -25
  858. package/esm2022/top-bar/public-api.mjs +0 -3
  859. package/esm2022/top-bar/top-bar.mjs +0 -74
  860. package/esm2022/tree/control/base-tree-control.mjs +0 -59
  861. package/esm2022/tree/control/flat-tree-control.filters.mjs +0 -52
  862. package/esm2022/tree/control/flat-tree-control.mjs +0 -109
  863. package/esm2022/tree/control/nested-tree-control.mjs +0 -40
  864. package/esm2022/tree/control/tree-control.mjs +0 -2
  865. package/esm2022/tree/data-source/flat-data-source.mjs +0 -157
  866. package/esm2022/tree/data-source/nested-data-source.mjs +0 -28
  867. package/esm2022/tree/index.mjs +0 -2
  868. package/esm2022/tree/koobiq-components-tree.mjs +0 -5
  869. package/esm2022/tree/node.mjs +0 -31
  870. package/esm2022/tree/outlet.mjs +0 -15
  871. package/esm2022/tree/padding.directive.mjs +0 -108
  872. package/esm2022/tree/public-api.mjs +0 -17
  873. package/esm2022/tree/toggle.mjs +0 -93
  874. package/esm2022/tree/tree-base.mjs +0 -236
  875. package/esm2022/tree/tree-errors.mjs +0 -36
  876. package/esm2022/tree/tree-option.component.mjs +0 -303
  877. package/esm2022/tree/tree-selection.component.mjs +0 -568
  878. package/esm2022/tree/tree.mjs +0 -19
  879. package/esm2022/tree/tree.module.mjs +0 -64
  880. package/esm2022/tree-select/index.mjs +0 -2
  881. package/esm2022/tree-select/koobiq-components-tree-select.mjs +0 -5
  882. package/esm2022/tree-select/public-api.mjs +0 -3
  883. package/esm2022/tree-select/tree-select.component.mjs +0 -1034
  884. package/esm2022/tree-select/tree-select.module.mjs +0 -71
  885. package/esm2022/username/constants.mjs +0 -25
  886. package/esm2022/username/index.mjs +0 -6
  887. package/esm2022/username/koobiq-components-username.mjs +0 -5
  888. package/esm2022/username/module.mjs +0 -35
  889. package/esm2022/username/types.mjs +0 -32
  890. package/esm2022/username/username.mjs +0 -129
  891. package/esm2022/username/username.pipe.mjs +0 -92
@@ -1,21 +1,328 @@
1
1
  import { NgTemplateOutlet } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, inject, TemplateRef, Directive, booleanAttribute, Component, ChangeDetectionStrategy, Input, ContentChild, ChangeDetectorRef, DestroyRef, ElementRef, ViewEncapsulation, ContentChildren, forwardRef, ViewChild, ViewChildren, NgModule } from '@angular/core';
3
+ import { inject, NgZone, ElementRef, EventEmitter, signal, booleanAttribute, Output, Input, Directive, computed, InjectionToken, TemplateRef, ContentChild, ChangeDetectionStrategy, Component, ChangeDetectorRef, DestroyRef, ViewChildren, ViewChild, forwardRef, ContentChildren, ViewEncapsulation, NgModule } from '@angular/core';
4
4
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
5
  import { RouterLink } from '@angular/router';
6
- import * as i3 from '@koobiq/components/button';
6
+ import * as i4 from '@koobiq/components/button';
7
7
  import { KbqButton, KbqButtonStyles, KbqButtonModule } from '@koobiq/components/button';
8
8
  import { KbqComponentColors, PopUpPlacements } from '@koobiq/components/core';
9
- import * as i4 from '@koobiq/components/dropdown';
9
+ import * as i5 from '@koobiq/components/dropdown';
10
10
  import { KbqDropdownModule } from '@koobiq/components/dropdown';
11
- import * as i2 from '@koobiq/components/icon';
11
+ import * as i3 from '@koobiq/components/icon';
12
12
  import { KbqIconModule } from '@koobiq/components/icon';
13
- import * as i6 from '@koobiq/components/overflow-items';
14
- import { KbqOverflowItemsResult, KbqOverflowItem, KbqOverflowItemsModule } from '@koobiq/components/overflow-items';
15
- import * as i5 from '@koobiq/components/title';
13
+ import * as i7 from '@koobiq/components/overflow-items';
14
+ import { KbqOverflowItemsModule, KbqOverflowItemsResult, KbqOverflowItem } from '@koobiq/components/overflow-items';
15
+ import * as i6 from '@koobiq/components/title';
16
16
  import { KbqTitleModule } from '@koobiq/components/title';
17
- import * as i1 from '@radix-ng/primitives/roving-focus';
18
- import { RdxRovingFocusItemDirective, RdxRovingFocusGroupDirective } from '@radix-ng/primitives/roving-focus';
17
+
18
+ const ENTRY_FOCUS = 'rovingFocusGroup.onEntryFocus';
19
+ const EVENT_OPTIONS = { bubbles: false, cancelable: true };
20
+ const MAP_KEY_TO_FOCUS_INTENT = {
21
+ ArrowLeft: 'prev',
22
+ ArrowUp: 'prev',
23
+ ArrowRight: 'next',
24
+ ArrowDown: 'next',
25
+ PageUp: 'first',
26
+ Home: 'first',
27
+ PageDown: 'last',
28
+ End: 'last'
29
+ };
30
+ function getDirectionAwareKey(key, dir) {
31
+ if (dir !== 'rtl')
32
+ return key;
33
+ return key === 'ArrowLeft' ? 'ArrowRight' : key === 'ArrowRight' ? 'ArrowLeft' : key;
34
+ }
35
+ function getFocusIntent(event, orientation, dir) {
36
+ const key = getDirectionAwareKey(event.key, dir);
37
+ if (orientation === 'vertical' && ['ArrowLeft', 'ArrowRight'].includes(key))
38
+ return undefined;
39
+ if (orientation === 'horizontal' && ['ArrowUp', 'ArrowDown'].includes(key))
40
+ return undefined;
41
+ return MAP_KEY_TO_FOCUS_INTENT[key];
42
+ }
43
+ function focusFirst(candidates, preventScroll = false, rootNode) {
44
+ // eslint-disable-next-line no-restricted-globals
45
+ const PREVIOUSLY_FOCUSED_ELEMENT = rootNode?.activeElement ?? window.document.activeElement;
46
+ for (const candidate of candidates) {
47
+ // if focus is already where we want to go, we don't want to keep going through the candidates
48
+ if (candidate === PREVIOUSLY_FOCUSED_ELEMENT)
49
+ return;
50
+ candidate.focus({ preventScroll });
51
+ // eslint-disable-next-line no-restricted-globals
52
+ if (window.document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT)
53
+ return;
54
+ }
55
+ }
56
+ /**
57
+ * Wraps an array around itself at a given start index
58
+ * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`
59
+ */
60
+ function wrapArray(array, startIndex) {
61
+ return array.map((_, index) => array[(startIndex + index) % array.length]);
62
+ }
63
+ function generateId() {
64
+ return `rf-item-${Math.random().toString(36).slice(2, 11)}`;
65
+ }
66
+
67
+ class RdxRovingFocusGroupDirective {
68
+ constructor() {
69
+ this.ngZone = inject(NgZone);
70
+ this.elementRef = inject(ElementRef);
71
+ this.dir = 'ltr';
72
+ this.loop = true;
73
+ this.preventScrollOnEntryFocus = false;
74
+ this.entryFocus = new EventEmitter();
75
+ this.currentTabStopIdChange = new EventEmitter();
76
+ /** @docs-private */
77
+ this.currentTabStopId = signal(null);
78
+ /** @docs-private */
79
+ this.focusableItems = signal([]);
80
+ this.isClickFocus = signal(false);
81
+ this.isTabbingBackOut = signal(false);
82
+ this.focusableItemsCount = signal(0);
83
+ }
84
+ /** @docs-private */
85
+ get dataOrientation() {
86
+ return this.orientation || 'horizontal';
87
+ }
88
+ /** @docs-private */
89
+ get tabIndex() {
90
+ return this.isTabbingBackOut() || this.getFocusableItemsCount() === 0 ? -1 : 0;
91
+ }
92
+ /** @docs-private */
93
+ handleBlur() {
94
+ this.isTabbingBackOut.set(false);
95
+ }
96
+ /** @docs-private */
97
+ handleMouseUp() {
98
+ // reset `isClickFocus` after 1 tick because handleFocus might not triggered due to focused element
99
+ this.ngZone.runOutsideAngular(() => {
100
+ Promise.resolve().then(() => {
101
+ this.ngZone.run(() => {
102
+ this.isClickFocus.set(false);
103
+ });
104
+ });
105
+ });
106
+ }
107
+ /** @docs-private */
108
+ handleFocus(event) {
109
+ // We normally wouldn't need this check, because we already check
110
+ // that the focus is on the current target and not bubbling to it.
111
+ // We do this because Safari doesn't focus buttons when clicked, and
112
+ // instead, the wrapper will get focused and not through a bubbling event.
113
+ const isKeyboardFocus = !this.isClickFocus();
114
+ if (event.currentTarget === this.elementRef.nativeElement &&
115
+ event.target === event.currentTarget &&
116
+ isKeyboardFocus &&
117
+ !this.isTabbingBackOut()) {
118
+ const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);
119
+ this.elementRef.nativeElement.dispatchEvent(entryFocusEvent);
120
+ this.entryFocus.emit(entryFocusEvent);
121
+ if (!entryFocusEvent.defaultPrevented) {
122
+ const items = this.focusableItems().filter((item) => item.dataset['disabled'] !== '');
123
+ const activeItem = items.find((item) => item.getAttribute('data-active') === 'true');
124
+ const currentItem = items.find((item) => item.id === this.currentTabStopId());
125
+ const candidateItems = [activeItem, currentItem, ...items].filter(Boolean);
126
+ focusFirst(candidateItems, this.preventScrollOnEntryFocus);
127
+ }
128
+ }
129
+ this.isClickFocus.set(false);
130
+ }
131
+ /** @docs-private */
132
+ handleMouseDown() {
133
+ this.isClickFocus.set(true);
134
+ }
135
+ /** @docs-private */
136
+ onItemFocus(tabStopId) {
137
+ this.currentTabStopId.set(tabStopId);
138
+ this.currentTabStopIdChange.emit(tabStopId);
139
+ }
140
+ /** @docs-private */
141
+ onItemShiftTab() {
142
+ this.isTabbingBackOut.set(true);
143
+ }
144
+ /** @docs-private */
145
+ onFocusableItemAdd() {
146
+ this.focusableItemsCount.update((count) => count + 1);
147
+ }
148
+ /** @docs-private */
149
+ onFocusableItemRemove() {
150
+ this.focusableItemsCount.update((count) => Math.max(0, count - 1));
151
+ }
152
+ /** @docs-private */
153
+ registerItem(item) {
154
+ const currentItems = this.focusableItems();
155
+ this.focusableItems.set([...currentItems, item]);
156
+ }
157
+ /** @docs-private */
158
+ unregisterItem(item) {
159
+ const currentItems = this.focusableItems();
160
+ this.focusableItems.set(currentItems.filter((el) => el !== item));
161
+ }
162
+ /** @docs-private */
163
+ getFocusableItemsCount() {
164
+ return this.focusableItemsCount();
165
+ }
166
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: RdxRovingFocusGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
167
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.17", type: RdxRovingFocusGroupDirective, isStandalone: true, selector: "[rdxRovingFocusGroup]", inputs: { orientation: "orientation", dir: "dir", loop: ["loop", "loop", booleanAttribute], preventScrollOnEntryFocus: ["preventScrollOnEntryFocus", "preventScrollOnEntryFocus", booleanAttribute] }, outputs: { entryFocus: "entryFocus", currentTabStopIdChange: "currentTabStopIdChange" }, host: { listeners: { "focus": "handleFocus($event)", "blur": "handleBlur()", "mouseup": "handleMouseUp()", "mousedown": "handleMouseDown()" }, properties: { "attr.data-orientation": "dataOrientation", "attr.tabindex": "tabIndex", "attr.dir": "dir" }, styleAttribute: "outline: none;" }, ngImport: i0 }); }
168
+ }
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: RdxRovingFocusGroupDirective, decorators: [{
170
+ type: Directive,
171
+ args: [{
172
+ selector: '[rdxRovingFocusGroup]',
173
+ host: {
174
+ '[attr.data-orientation]': 'dataOrientation',
175
+ '[attr.tabindex]': 'tabIndex',
176
+ '[attr.dir]': 'dir',
177
+ '(focus)': 'handleFocus($event)',
178
+ '(blur)': 'handleBlur()',
179
+ '(mouseup)': 'handleMouseUp()',
180
+ '(mousedown)': 'handleMouseDown()',
181
+ style: 'outline: none;'
182
+ }
183
+ }]
184
+ }], propDecorators: { orientation: [{
185
+ type: Input
186
+ }], dir: [{
187
+ type: Input
188
+ }], loop: [{
189
+ type: Input,
190
+ args: [{ transform: booleanAttribute }]
191
+ }], preventScrollOnEntryFocus: [{
192
+ type: Input,
193
+ args: [{ transform: booleanAttribute }]
194
+ }], entryFocus: [{
195
+ type: Output
196
+ }], currentTabStopIdChange: [{
197
+ type: Output
198
+ }] } });
199
+
200
+ class RdxRovingFocusItemDirective {
201
+ constructor() {
202
+ this.elementRef = inject(ElementRef);
203
+ this.ngZone = inject(NgZone);
204
+ this.parent = inject(RdxRovingFocusGroupDirective);
205
+ this.focusable = true;
206
+ this.active = true;
207
+ this.allowShiftKey = false;
208
+ this.id = computed(() => this.tabStopId || generateId());
209
+ /** @docs-private */
210
+ this.isCurrentTabStop = computed(() => this.parent.currentTabStopId() === this.id());
211
+ }
212
+ /**
213
+ * Lifecycle hook triggered on initialization.
214
+ * Registers the element with the parent roving focus group if it is focusable.
215
+ * @docs-private
216
+ */
217
+ ngOnInit() {
218
+ if (this.focusable) {
219
+ this.parent.registerItem(this.elementRef.nativeElement);
220
+ this.parent.onFocusableItemAdd();
221
+ }
222
+ }
223
+ /**
224
+ * Lifecycle hook triggered on destruction.
225
+ * Unregisters the element from the parent roving focus group if it is focusable.
226
+ * @docs-private
227
+ */
228
+ ngOnDestroy() {
229
+ if (this.focusable) {
230
+ this.parent.unregisterItem(this.elementRef.nativeElement);
231
+ this.parent.onFocusableItemRemove();
232
+ }
233
+ }
234
+ /**
235
+ * Determines the `tabIndex` of the element.
236
+ * Returns `0` if the element is the current tab stop; otherwise, returns `-1`.
237
+ * @docs-private
238
+ */
239
+ get tabIndex() {
240
+ return this.isCurrentTabStop() ? 0 : -1;
241
+ }
242
+ /** @docs-private */
243
+ handleMouseDown(event) {
244
+ if (!this.focusable) {
245
+ // We prevent focusing non-focusable items on `mousedown`.
246
+ // Even though the item has tabIndex={-1}, that only means take it out of the tab order.
247
+ event.preventDefault();
248
+ }
249
+ else {
250
+ // Safari doesn't focus a button when clicked so we run our logic on mousedown also
251
+ this.parent.onItemFocus(this.id());
252
+ }
253
+ }
254
+ /** @docs-private */
255
+ onFocus() {
256
+ this.parent.onItemFocus(this.id());
257
+ }
258
+ /**
259
+ * Handles the `keydown` event for keyboard navigation within the roving focus group.
260
+ * Supports navigation based on orientation and direction, and focuses appropriate elements.
261
+ *
262
+ * @param event The `KeyboardEvent` object.
263
+ * @docs-private
264
+ */
265
+ handleKeydown(event) {
266
+ if (event.key === 'Tab' && event.shiftKey) {
267
+ this.parent.onItemShiftTab();
268
+ return;
269
+ }
270
+ if (event.target !== this.elementRef.nativeElement)
271
+ return;
272
+ const focusIntent = getFocusIntent(event, this.parent.orientation, this.parent.dir);
273
+ if (focusIntent !== undefined) {
274
+ if (event.metaKey || event.ctrlKey || event.altKey || (this.allowShiftKey ? false : event.shiftKey)) {
275
+ return;
276
+ }
277
+ event.preventDefault();
278
+ let candidateNodes = this.parent.focusableItems().filter((item) => item.dataset['disabled'] !== '');
279
+ if (focusIntent === 'last') {
280
+ candidateNodes.reverse();
281
+ }
282
+ else if (focusIntent === 'prev' || focusIntent === 'next') {
283
+ if (focusIntent === 'prev')
284
+ candidateNodes.reverse();
285
+ const currentIndex = candidateNodes.indexOf(this.elementRef.nativeElement);
286
+ candidateNodes = this.parent.loop
287
+ ? wrapArray(candidateNodes, currentIndex + 1)
288
+ : candidateNodes.slice(currentIndex + 1);
289
+ }
290
+ this.ngZone.runOutsideAngular(() => {
291
+ Promise.resolve().then(() => {
292
+ focusFirst(candidateNodes, false, this.elementRef.nativeElement);
293
+ });
294
+ });
295
+ }
296
+ }
297
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: RdxRovingFocusItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
298
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.17", type: RdxRovingFocusItemDirective, isStandalone: true, selector: "[rdxRovingFocusItem]", inputs: { focusable: ["focusable", "focusable", booleanAttribute], active: ["active", "active", booleanAttribute], tabStopId: "tabStopId", allowShiftKey: ["allowShiftKey", "allowShiftKey", booleanAttribute] }, host: { listeners: { "mousedown": "handleMouseDown($event)", "keydown": "handleKeydown($event)", "focus": "onFocus()" }, properties: { "attr.tabindex": "tabIndex", "attr.data-orientation": "parent.orientation", "attr.data-active": "active", "attr.data-disabled": "!focusable ? \"\" : undefined" } }, ngImport: i0 }); }
299
+ }
300
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: RdxRovingFocusItemDirective, decorators: [{
301
+ type: Directive,
302
+ args: [{
303
+ selector: '[rdxRovingFocusItem]',
304
+ host: {
305
+ '[attr.tabindex]': 'tabIndex',
306
+ '[attr.data-orientation]': 'parent.orientation',
307
+ '[attr.data-active]': 'active',
308
+ '[attr.data-disabled]': '!focusable ? "" : undefined',
309
+ '(mousedown)': 'handleMouseDown($event)',
310
+ '(keydown)': 'handleKeydown($event)',
311
+ '(focus)': 'onFocus()'
312
+ }
313
+ }]
314
+ }], propDecorators: { focusable: [{
315
+ type: Input,
316
+ args: [{ transform: booleanAttribute }]
317
+ }], active: [{
318
+ type: Input,
319
+ args: [{ transform: booleanAttribute }]
320
+ }], tabStopId: [{
321
+ type: Input
322
+ }], allowShiftKey: [{
323
+ type: Input,
324
+ args: [{ transform: booleanAttribute }]
325
+ }] } });
19
326
 
20
327
  const KBQ_BREADCRUMBS_DEFAULT_CONFIGURATION = {
21
328
  max: 4,
@@ -34,14 +341,13 @@ class KbqBreadcrumbsSeparator {
34
341
  constructor() {
35
342
  this.templateRef = inject(TemplateRef);
36
343
  }
37
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
38
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqBreadcrumbsSeparator, isStandalone: true, selector: "ng-template[kbqBreadcrumbsSeparator]", host: { classAttribute: "kbq-breadcrumbs-separator" }, ngImport: i0 }); }
344
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
345
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: KbqBreadcrumbsSeparator, isStandalone: true, selector: "ng-template[kbqBreadcrumbsSeparator]", host: { classAttribute: "kbq-breadcrumbs-separator" }, ngImport: i0 }); }
39
346
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsSeparator, decorators: [{
347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsSeparator, decorators: [{
41
348
  type: Directive,
42
349
  args: [{
43
350
  selector: 'ng-template[kbqBreadcrumbsSeparator]',
44
- standalone: true,
45
351
  host: {
46
352
  class: 'kbq-breadcrumbs-separator'
47
353
  }
@@ -62,13 +368,12 @@ class KbqBreadcrumbButton {
62
368
  this.button.kbqStyle = KbqButtonStyles.Transparent;
63
369
  }
64
370
  }
65
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbButton, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
66
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqBreadcrumbButton, isStandalone: true, selector: "[kbq-button][kbqBreadcrumb]", host: { classAttribute: "kbq-breadcrumb-item" }, hostDirectives: [{ directive: i1.RdxRovingFocusItemDirective, inputs: ["focusable", "focusable"] }], ngImport: i0 }); }
371
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbButton, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
372
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: KbqBreadcrumbButton, isStandalone: true, selector: "[kbq-button][kbqBreadcrumb]", host: { classAttribute: "kbq-breadcrumb-item" }, hostDirectives: [{ directive: RdxRovingFocusItemDirective, inputs: ["focusable", "focusable"] }], ngImport: i0 }); }
67
373
  }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbButton, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbButton, decorators: [{
69
375
  type: Directive,
70
376
  args: [{
71
- standalone: true,
72
377
  selector: '[kbq-button][kbqBreadcrumb]',
73
378
  host: { class: 'kbq-breadcrumb-item' },
74
379
  hostDirectives: [
@@ -87,13 +392,12 @@ class KbqBreadcrumbView {
87
392
  constructor() {
88
393
  this.templateRef = inject(TemplateRef);
89
394
  }
90
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbView, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
91
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqBreadcrumbView, isStandalone: true, selector: "[kbqBreadcrumbView]", ngImport: i0 }); }
395
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbView, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
396
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: KbqBreadcrumbView, isStandalone: true, selector: "[kbqBreadcrumbView]", ngImport: i0 }); }
92
397
  }
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbView, decorators: [{
398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbView, decorators: [{
94
399
  type: Directive,
95
400
  args: [{
96
- standalone: true,
97
401
  selector: '[kbqBreadcrumbView]'
98
402
  }]
99
403
  }] });
@@ -113,15 +417,14 @@ class KbqBreadcrumbItem {
113
417
  */
114
418
  this.routerLink = inject(RouterLink, { optional: true, host: true });
115
419
  }
116
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: KbqBreadcrumbItem, isStandalone: true, selector: "kbq-breadcrumb-item", inputs: { text: "text", disabled: ["disabled", "disabled", booleanAttribute], current: ["current", "current", booleanAttribute] }, host: { properties: { "attr.tabIndex": "null" } }, queries: [{ propertyName: "customTemplateRef", first: true, predicate: KbqBreadcrumbView, descendants: true, read: TemplateRef }], ngImport: i0, template: `
420
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
421
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.17", type: KbqBreadcrumbItem, isStandalone: true, selector: "kbq-breadcrumb-item", inputs: { text: "text", disabled: ["disabled", "disabled", booleanAttribute], current: ["current", "current", booleanAttribute] }, host: { properties: { "attr.tabIndex": "null" } }, queries: [{ propertyName: "customTemplateRef", first: true, predicate: KbqBreadcrumbView, descendants: true, read: TemplateRef }], ngImport: i0, template: `
118
422
  <ng-content />
119
423
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
120
424
  }
121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbItem, decorators: [{
425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbItem, decorators: [{
122
426
  type: Component,
123
427
  args: [{
124
- standalone: true,
125
428
  selector: 'kbq-breadcrumb-item',
126
429
  template: `
127
430
  <ng-content />
@@ -218,12 +521,12 @@ class KbqBreadcrumbs {
218
521
  getItemWidth(item) {
219
522
  return item ? item.nativeElement.offsetWidth : 0;
220
523
  }
221
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbs, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
222
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: KbqBreadcrumbs, isStandalone: true, selector: "kbq-breadcrumbs,[kbq-breadcrumbs]", inputs: { firstItemNegativeMargin: ["firstItemNegativeMargin", "firstItemNegativeMargin", booleanAttribute], size: "size", max: "max", disabled: ["disabled", "disabled", booleanAttribute], wrapMode: "wrapMode" }, host: { properties: { "class.kbq-breadcrumbs_compact": "size === \"compact\"", "class.kbq-breadcrumbs_normal": "size === \"normal\"", "class.kbq-breadcrumbs_big": "size === \"big\"", "class.kbq-breadcrumbs_wrap": "wrapMode === \"wrap\"", "class.kbq-breadcrumbs_first-item-negative-margin": "firstItemNegativeMargin", "attr.aria-label": "'breadcrumb'" }, classAttribute: "kbq-breadcrumbs" }, queries: [{ propertyName: "separator", first: true, predicate: KbqBreadcrumbsSeparator, descendants: true, read: TemplateRef }, { propertyName: "items", predicate: i0.forwardRef(() => KbqBreadcrumbItem) }], viewQueries: [{ propertyName: "result", first: true, predicate: KbqOverflowItemsResult, descendants: true, read: ElementRef }, { propertyName: "overflowItems", predicate: KbqOverflowItem, descendants: true, read: ElementRef }], hostDirectives: [{ directive: i1.RdxRovingFocusGroupDirective }], ngImport: i0, template: "<!--\n@TODO: check when updated to Angular 20.x (#DS-4034)\nresolved SSR issue with official hack https://github.com/angular/angular/issues/50543#issuecomment-1572900259\n-->\n<ng-content />\n@if (items.length < minVisibleItems || wrapMode !== 'auto') {\n @for (item of items; track item; let last = $last) {\n <div class=\"kbq-breadcrumb-item__container\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: last }\" />\n @if (!last) {\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n }\n </div>\n }\n} @else {\n <div\n #kbqOverflowItems=\"kbqOverflowItems\"\n kbqOverflowItems\n reverseOverflowOrder\n class=\"layout-align-start-center\"\n [style.max-width.px]=\"maxWidth\"\n >\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"0\" [order]=\"items.length\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.first, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n <!-- @TODO delay rendering for proper elements order (#DS-3334)--->\n @if (true) {\n <div kbqOverflowItemsResult class=\"kbq-breadcrumb-item__container\">\n <button\n kbq-button\n kbqBreadcrumb\n class=\"kbq-breadcrumb__expand\"\n [kbqDropdownTriggerFor]=\"hiddenBreadcrumbsDropdown\"\n [kbqStyle]=\"KbqButtonStyles.Transparent\"\n >\n <i kbq-icon=\"kbq-ellipsis-horizontal_16\" [color]=\"KbqComponentColors.ContrastFade\"></i>\n </button>\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n\n <kbq-dropdown #hiddenBreadcrumbsDropdown=\"kbqDropdown\">\n @for (item of items; track item) {\n @if (kbqOverflowItems.hiddenItemIDs().has($index)) {\n <a kbq-dropdown-item [routerLink]=\"item.routerLink?.urlTree\" [disabled]=\"item.disabled\">\n {{ item.text }}\n </a>\n }\n }\n </kbq-dropdown>\n </div>\n }\n @for (item of itemsExcludingEdges; track item; let index = $index) {\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"index + 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n }\n <div alwaysVisible class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"items.length - 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.last, last: true }\" />\n </div>\n </div>\n}\n\n<ng-template #breadcrumbTemplate let-item let-last=\"last\">\n @if (item.customTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"item.customTemplateRef\" />\n } @else {\n <a\n kbq-button\n kbq-title\n kbqBreadcrumb\n [focusable]=\"!item.disabled && !last\"\n [routerLink]=\"item.routerLink?.urlTree\"\n [attr.aria-current]=\"last ? 'page' : null\"\n [disabled]=\"item.disabled || last\"\n [kbqPlacementPriority]=\"PopUpPlacements.Bottom\"\n [kbqTooltipArrow]=\"false\"\n >\n {{ item.text }}\n </a>\n }\n</ng-template>\n\n<ng-template #separatorTemplate>\n @if (separator) {\n <ng-container [ngTemplateOutlet]=\"separator\" />\n } @else {\n <i kbq-icon=\"\" class=\"kbq-breadcrumb__separator\" [color]=\"KbqComponentColors.ContrastFade\">&nbsp;/&nbsp;</i>\n }\n</ng-template>\n", styles: [".kbq-breadcrumbs{display:flex;align-items:center;gap:var(--kbq-breadcrumbs-gap);flex-grow:1}.kbq-breadcrumbs .kbq-overflow-items{padding:1px}.kbq-breadcrumbs .kbq-breadcrumb-item__container{display:inline-flex;align-items:center}.kbq-breadcrumbs.kbq-breadcrumbs_first-item-negative-margin .kbq-overflow-items{margin-left:var(--kbq-breadcrumb-item-negative-margin)}.kbq-breadcrumbs.kbq-breadcrumbs_wrap{flex-wrap:wrap}.kbq-breadcrumbs:not(.kbq-breadcrumbs_wrap){overflow:hidden}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{--kbq-breadcrumb-item-height: var(--kbq-size-xxl)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb__expand.kbq-button-icon{--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-xxs)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height);--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);--kbq-button-size-border-radius: var(--kbq-breadcrumb-item-border-radius)}.kbq-breadcrumbs .kbq-breadcrumb-item:focus-visible{outline-offset:unset}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-icon-size-horizontal-padding: var(--kbq-breadcrumb-item-expand-horizontal-padding)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast-secondary);--kbq-button-transparent-contrast-fade-on-right-icon: var(--kbq-breadcrumb-item-icon-color);--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-item-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page],.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page]{--kbq-button-transparent-contrast-fade-on-states-disabled-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page].kbq-disabled,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page].kbq-disabled{--kbq-button-transparent-contrast-fade-on-states-disabled-left-icon: var( --kbq-breadcrumb-item-icon-color );--kbq-button-transparent-contrast-fade-on-states-disabled-right-icon: var( --kbq-breadcrumb-item-icon-color )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-hover );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-hover )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-active );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-active )}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-expand-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-hover)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-active)}.kbq-breadcrumbs .kbq-breadcrumb_current{color:var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button.kbq-button_transparent.kbq-contrast,.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button-icon.kbq-button_transparent.kbq-contrast{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{font-size:var(--kbq-typography-subheading-font-size);font-style:var(--kbq-typography-subheading-font-style);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-breadcrumbs .kbq-breadcrumb__separator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}\n", ":where(.kbq-breadcrumbs){--kbq-breadcrumb-item-horizontal-padding: var(--kbq-size-xs);--kbq-breadcrumb-item-height: var(--kbq-size-3xl);--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-s);--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-border-radius: var(--kbq-size-xs);--kbq-breadcrumb-item-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-negative-margin: calc(-1 * var(--kbq-size-xs));--kbq-breadcrumbs-gap: 0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i2.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i3.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i3.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i3.KbqButtonDropdownTrigger, selector: "[kbq-button][kbqDropdownTriggerFor]" }, { kind: "ngmodule", type: KbqDropdownModule }, { kind: "component", type: i4.KbqDropdown, selector: "kbq-dropdown", inputs: ["navigationWithWrap", "xPosition", "yPosition", "overlapTriggerY", "overlapTriggerX", "hasBackdrop", "class", "backdropClass"], outputs: ["closed"], exportAs: ["kbqDropdown"] }, { kind: "component", type: i4.KbqDropdownItem, selector: "kbq-dropdown-item, [kbq-dropdown-item]", inputs: ["disabled"], exportAs: ["kbqDropdownItem"] }, { kind: "directive", type: i4.KbqDropdownTrigger, selector: "[kbqDropdownTriggerFor]", inputs: ["offsetX", "offsetY", "kbqDropdownTriggerData", "openByArrowDown", "kbqDropdownTriggerRestoreFocus", "kbqDropdownTriggerFor"], outputs: ["dropdownOpened", "dropdownClosed"], exportAs: ["kbqDropdownTrigger"] }, { kind: "directive", type: KbqBreadcrumbButton, selector: "[kbq-button][kbqBreadcrumb]" }, { kind: "ngmodule", type: KbqTitleModule }, { kind: "directive", type: i5.KbqTitleDirective, selector: "[kbq-title]", exportAs: ["kbqTitle"] }, { kind: "ngmodule", type: KbqOverflowItemsModule }, { kind: "directive", type: i6.KbqOverflowItems, selector: "[kbqOverflowItems]", inputs: ["reverseOverflowOrder", "debounceTime", "additionalResizeObserverTargets", "orientation"], outputs: ["changes"], exportAs: ["kbqOverflowItems"] }, { kind: "directive", type: i6.KbqOverflowItem, selector: "[kbqOverflowItem]", inputs: ["kbqOverflowItem", "order", "alwaysVisible"], exportAs: ["kbqOverflowItem"] }, { kind: "directive", type: i6.KbqOverflowItemsResult, selector: "[kbqOverflowItemsResult]", exportAs: ["kbqOverflowItemsResult"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
524
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbs, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
525
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: KbqBreadcrumbs, isStandalone: true, selector: "kbq-breadcrumbs,[kbq-breadcrumbs]", inputs: { firstItemNegativeMargin: ["firstItemNegativeMargin", "firstItemNegativeMargin", booleanAttribute], size: "size", max: "max", disabled: ["disabled", "disabled", booleanAttribute], wrapMode: "wrapMode" }, host: { properties: { "class.kbq-breadcrumbs_compact": "size === \"compact\"", "class.kbq-breadcrumbs_normal": "size === \"normal\"", "class.kbq-breadcrumbs_big": "size === \"big\"", "class.kbq-breadcrumbs_wrap": "wrapMode === \"wrap\"", "class.kbq-breadcrumbs_first-item-negative-margin": "firstItemNegativeMargin", "attr.aria-label": "'breadcrumb'" }, classAttribute: "kbq-breadcrumbs" }, queries: [{ propertyName: "separator", first: true, predicate: KbqBreadcrumbsSeparator, descendants: true, read: TemplateRef }, { propertyName: "items", predicate: i0.forwardRef(() => KbqBreadcrumbItem) }], viewQueries: [{ propertyName: "result", first: true, predicate: KbqOverflowItemsResult, descendants: true, read: ElementRef }, { propertyName: "overflowItems", predicate: KbqOverflowItem, descendants: true, read: ElementRef }], hostDirectives: [{ directive: RdxRovingFocusGroupDirective }], ngImport: i0, template: "<!--\n@TODO: check when updated to Angular 20.x (#DS-4034)\nresolved SSR issue with official hack https://github.com/angular/angular/issues/50543#issuecomment-1572900259\n-->\n<ng-content />\n@if (items.length < minVisibleItems || wrapMode !== 'auto') {\n @for (item of items; track item) {\n <div class=\"kbq-breadcrumb-item__container\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: $last }\" />\n @if (!$last) {\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n }\n </div>\n }\n} @else {\n <div\n #kbqOverflowItems=\"kbqOverflowItems\"\n kbqOverflowItems\n reverseOverflowOrder\n class=\"layout-align-start-center\"\n [style.max-width.px]=\"maxWidth\"\n >\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"0\" [order]=\"items.length\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.first, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n <!-- @TODO delay rendering for proper elements order (#DS-3334)--->\n @if (true) {\n <div kbqOverflowItemsResult class=\"kbq-breadcrumb-item__container\">\n <button\n kbq-button\n kbqBreadcrumb\n class=\"kbq-breadcrumb__expand\"\n [kbqDropdownTriggerFor]=\"hiddenBreadcrumbsDropdown\"\n [kbqStyle]=\"KbqButtonStyles.Transparent\"\n >\n <i kbq-icon=\"kbq-ellipsis-horizontal_16\" [color]=\"KbqComponentColors.ContrastFade\"></i>\n </button>\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n\n <kbq-dropdown #hiddenBreadcrumbsDropdown=\"kbqDropdown\">\n @for (item of items; track item) {\n @if (kbqOverflowItems.hiddenItemIDs().has($index)) {\n <a kbq-dropdown-item [routerLink]=\"item.routerLink?.urlTree\" [disabled]=\"item.disabled\">\n {{ item.text }}\n </a>\n }\n }\n </kbq-dropdown>\n </div>\n }\n @for (item of itemsExcludingEdges; track item) {\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"$index + 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n }\n <div alwaysVisible class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"items.length - 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.last, last: true }\" />\n </div>\n </div>\n}\n\n<ng-template #breadcrumbTemplate let-item let-last=\"last\">\n @if (item.customTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"item.customTemplateRef\" />\n } @else {\n <a\n kbq-button\n kbq-title\n kbqBreadcrumb\n [focusable]=\"!item.disabled && !last\"\n [routerLink]=\"item.routerLink?.urlTree\"\n [attr.aria-current]=\"last ? 'page' : null\"\n [disabled]=\"item.disabled || last\"\n [kbqPlacementPriority]=\"PopUpPlacements.Bottom\"\n [kbqTooltipArrow]=\"false\"\n >\n {{ item.text }}\n </a>\n }\n</ng-template>\n\n<ng-template #separatorTemplate>\n @if (separator) {\n <ng-container [ngTemplateOutlet]=\"separator\" />\n } @else {\n <i kbq-icon=\"\" class=\"kbq-breadcrumb__separator\" [color]=\"KbqComponentColors.ContrastFade\">&nbsp;/&nbsp;</i>\n }\n</ng-template>\n", styles: [".kbq-breadcrumbs{display:flex;align-items:center;gap:var(--kbq-breadcrumbs-gap);flex-grow:1}.kbq-breadcrumbs .kbq-overflow-items{padding:1px}.kbq-breadcrumbs .kbq-breadcrumb-item__container{display:inline-flex;align-items:center}.kbq-breadcrumbs.kbq-breadcrumbs_first-item-negative-margin .kbq-overflow-items{margin-left:var(--kbq-breadcrumb-item-negative-margin)}.kbq-breadcrumbs.kbq-breadcrumbs_wrap{flex-wrap:wrap}.kbq-breadcrumbs:not(.kbq-breadcrumbs_wrap){overflow:hidden}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{--kbq-breadcrumb-item-height: var(--kbq-size-xxl)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb__expand.kbq-button-icon{--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-xxs)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height);--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);--kbq-button-size-border-radius: var(--kbq-breadcrumb-item-border-radius)}.kbq-breadcrumbs .kbq-breadcrumb-item:focus-visible{outline-offset:unset}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-icon-size-horizontal-padding: var(--kbq-breadcrumb-item-expand-horizontal-padding)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast-secondary);--kbq-button-transparent-contrast-fade-on-right-icon: var(--kbq-breadcrumb-item-icon-color);--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-item-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page],.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page]{--kbq-button-transparent-contrast-fade-on-states-disabled-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page].kbq-disabled,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page].kbq-disabled{--kbq-button-transparent-contrast-fade-on-states-disabled-left-icon: var( --kbq-breadcrumb-item-icon-color );--kbq-button-transparent-contrast-fade-on-states-disabled-right-icon: var( --kbq-breadcrumb-item-icon-color )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-hover );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-hover )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-active );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-active )}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-expand-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-hover)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-active)}.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button.kbq-button_transparent.kbq-contrast,.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button-icon.kbq-button_transparent.kbq-contrast{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb_current{color:var(--kbq-foreground-contrast)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{font-size:var(--kbq-typography-subheading-font-size);font-style:var(--kbq-typography-subheading-font-style);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-breadcrumbs .kbq-breadcrumb__separator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}\n", ":where(.kbq-breadcrumbs){--kbq-breadcrumb-item-horizontal-padding: var(--kbq-size-xs);--kbq-breadcrumb-item-height: var(--kbq-size-3xl);--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-s);--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-border-radius: var(--kbq-size-xs);--kbq-breadcrumb-item-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-negative-margin: calc(-1 * var(--kbq-size-xs));--kbq-breadcrumbs-gap: 0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i4.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i4.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i4.KbqButtonDropdownTrigger, selector: "[kbq-button][kbqDropdownTriggerFor]" }, { kind: "ngmodule", type: KbqDropdownModule }, { kind: "component", type: i5.KbqDropdown, selector: "kbq-dropdown", inputs: ["navigationWithWrap", "xPosition", "yPosition", "overlapTriggerY", "overlapTriggerX", "hasBackdrop", "class", "backdropClass"], outputs: ["closed"], exportAs: ["kbqDropdown"] }, { kind: "component", type: i5.KbqDropdownItem, selector: "kbq-dropdown-item, [kbq-dropdown-item]", inputs: ["disabled"], exportAs: ["kbqDropdownItem"] }, { kind: "directive", type: i5.KbqDropdownTrigger, selector: "[kbqDropdownTriggerFor]", inputs: ["offsetX", "offsetY", "kbqDropdownTriggerData", "openByArrowDown", "kbqDropdownTriggerRestoreFocus", "kbqDropdownTriggerFor"], outputs: ["dropdownOpened", "dropdownClosed"], exportAs: ["kbqDropdownTrigger"] }, { kind: "directive", type: KbqBreadcrumbButton, selector: "[kbq-button][kbqBreadcrumb]" }, { kind: "ngmodule", type: KbqTitleModule }, { kind: "directive", type: i6.KbqTitleDirective, selector: "[kbq-title]", exportAs: ["kbqTitle"] }, { kind: "ngmodule", type: KbqOverflowItemsModule }, { kind: "directive", type: i7.KbqOverflowItems, selector: "[kbqOverflowItems]", inputs: ["reverseOverflowOrder", "debounceTime", "additionalResizeObserverTargets", "orientation"], outputs: ["changes"], exportAs: ["kbqOverflowItems"] }, { kind: "directive", type: i7.KbqOverflowItem, selector: "[kbqOverflowItem]", inputs: ["kbqOverflowItem", "order", "alwaysVisible"], exportAs: ["kbqOverflowItem"] }, { kind: "directive", type: i7.KbqOverflowItemsResult, selector: "[kbqOverflowItemsResult]", exportAs: ["kbqOverflowItemsResult"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
223
526
  }
224
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbs, decorators: [{
527
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbs, decorators: [{
225
528
  type: Component,
226
- args: [{ standalone: true, selector: 'kbq-breadcrumbs,[kbq-breadcrumbs]', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
529
+ args: [{ selector: 'kbq-breadcrumbs,[kbq-breadcrumbs]', imports: [
227
530
  NgTemplateOutlet,
228
531
  RouterLink,
229
532
  KbqIconModule,
@@ -232,7 +535,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
232
535
  KbqBreadcrumbButton,
233
536
  KbqTitleModule,
234
537
  KbqOverflowItemsModule
235
- ], host: {
538
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
236
539
  class: 'kbq-breadcrumbs',
237
540
  '[class.kbq-breadcrumbs_compact]': 'size === "compact"',
238
541
  '[class.kbq-breadcrumbs_normal]': 'size === "normal"',
@@ -240,7 +543,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
240
543
  '[class.kbq-breadcrumbs_wrap]': 'wrapMode === "wrap"',
241
544
  '[class.kbq-breadcrumbs_first-item-negative-margin]': 'firstItemNegativeMargin',
242
545
  '[attr.aria-label]': "'breadcrumb'"
243
- }, hostDirectives: [RdxRovingFocusGroupDirective], template: "<!--\n@TODO: check when updated to Angular 20.x (#DS-4034)\nresolved SSR issue with official hack https://github.com/angular/angular/issues/50543#issuecomment-1572900259\n-->\n<ng-content />\n@if (items.length < minVisibleItems || wrapMode !== 'auto') {\n @for (item of items; track item; let last = $last) {\n <div class=\"kbq-breadcrumb-item__container\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: last }\" />\n @if (!last) {\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n }\n </div>\n }\n} @else {\n <div\n #kbqOverflowItems=\"kbqOverflowItems\"\n kbqOverflowItems\n reverseOverflowOrder\n class=\"layout-align-start-center\"\n [style.max-width.px]=\"maxWidth\"\n >\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"0\" [order]=\"items.length\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.first, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n <!-- @TODO delay rendering for proper elements order (#DS-3334)--->\n @if (true) {\n <div kbqOverflowItemsResult class=\"kbq-breadcrumb-item__container\">\n <button\n kbq-button\n kbqBreadcrumb\n class=\"kbq-breadcrumb__expand\"\n [kbqDropdownTriggerFor]=\"hiddenBreadcrumbsDropdown\"\n [kbqStyle]=\"KbqButtonStyles.Transparent\"\n >\n <i kbq-icon=\"kbq-ellipsis-horizontal_16\" [color]=\"KbqComponentColors.ContrastFade\"></i>\n </button>\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n\n <kbq-dropdown #hiddenBreadcrumbsDropdown=\"kbqDropdown\">\n @for (item of items; track item) {\n @if (kbqOverflowItems.hiddenItemIDs().has($index)) {\n <a kbq-dropdown-item [routerLink]=\"item.routerLink?.urlTree\" [disabled]=\"item.disabled\">\n {{ item.text }}\n </a>\n }\n }\n </kbq-dropdown>\n </div>\n }\n @for (item of itemsExcludingEdges; track item; let index = $index) {\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"index + 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n }\n <div alwaysVisible class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"items.length - 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.last, last: true }\" />\n </div>\n </div>\n}\n\n<ng-template #breadcrumbTemplate let-item let-last=\"last\">\n @if (item.customTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"item.customTemplateRef\" />\n } @else {\n <a\n kbq-button\n kbq-title\n kbqBreadcrumb\n [focusable]=\"!item.disabled && !last\"\n [routerLink]=\"item.routerLink?.urlTree\"\n [attr.aria-current]=\"last ? 'page' : null\"\n [disabled]=\"item.disabled || last\"\n [kbqPlacementPriority]=\"PopUpPlacements.Bottom\"\n [kbqTooltipArrow]=\"false\"\n >\n {{ item.text }}\n </a>\n }\n</ng-template>\n\n<ng-template #separatorTemplate>\n @if (separator) {\n <ng-container [ngTemplateOutlet]=\"separator\" />\n } @else {\n <i kbq-icon=\"\" class=\"kbq-breadcrumb__separator\" [color]=\"KbqComponentColors.ContrastFade\">&nbsp;/&nbsp;</i>\n }\n</ng-template>\n", styles: [".kbq-breadcrumbs{display:flex;align-items:center;gap:var(--kbq-breadcrumbs-gap);flex-grow:1}.kbq-breadcrumbs .kbq-overflow-items{padding:1px}.kbq-breadcrumbs .kbq-breadcrumb-item__container{display:inline-flex;align-items:center}.kbq-breadcrumbs.kbq-breadcrumbs_first-item-negative-margin .kbq-overflow-items{margin-left:var(--kbq-breadcrumb-item-negative-margin)}.kbq-breadcrumbs.kbq-breadcrumbs_wrap{flex-wrap:wrap}.kbq-breadcrumbs:not(.kbq-breadcrumbs_wrap){overflow:hidden}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{--kbq-breadcrumb-item-height: var(--kbq-size-xxl)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb__expand.kbq-button-icon{--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-xxs)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height);--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);--kbq-button-size-border-radius: var(--kbq-breadcrumb-item-border-radius)}.kbq-breadcrumbs .kbq-breadcrumb-item:focus-visible{outline-offset:unset}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-icon-size-horizontal-padding: var(--kbq-breadcrumb-item-expand-horizontal-padding)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast-secondary);--kbq-button-transparent-contrast-fade-on-right-icon: var(--kbq-breadcrumb-item-icon-color);--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-item-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page],.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page]{--kbq-button-transparent-contrast-fade-on-states-disabled-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page].kbq-disabled,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page].kbq-disabled{--kbq-button-transparent-contrast-fade-on-states-disabled-left-icon: var( --kbq-breadcrumb-item-icon-color );--kbq-button-transparent-contrast-fade-on-states-disabled-right-icon: var( --kbq-breadcrumb-item-icon-color )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-hover );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-hover )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-active );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-active )}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-expand-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-hover)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-active)}.kbq-breadcrumbs .kbq-breadcrumb_current{color:var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button.kbq-button_transparent.kbq-contrast,.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button-icon.kbq-button_transparent.kbq-contrast{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{font-size:var(--kbq-typography-subheading-font-size);font-style:var(--kbq-typography-subheading-font-style);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-breadcrumbs .kbq-breadcrumb__separator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}\n", ":where(.kbq-breadcrumbs){--kbq-breadcrumb-item-horizontal-padding: var(--kbq-size-xs);--kbq-breadcrumb-item-height: var(--kbq-size-3xl);--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-s);--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-border-radius: var(--kbq-size-xs);--kbq-breadcrumb-item-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-negative-margin: calc(-1 * var(--kbq-size-xs));--kbq-breadcrumbs-gap: 0}\n"] }]
546
+ }, hostDirectives: [RdxRovingFocusGroupDirective], template: "<!--\n@TODO: check when updated to Angular 20.x (#DS-4034)\nresolved SSR issue with official hack https://github.com/angular/angular/issues/50543#issuecomment-1572900259\n-->\n<ng-content />\n@if (items.length < minVisibleItems || wrapMode !== 'auto') {\n @for (item of items; track item) {\n <div class=\"kbq-breadcrumb-item__container\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: $last }\" />\n @if (!$last) {\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n }\n </div>\n }\n} @else {\n <div\n #kbqOverflowItems=\"kbqOverflowItems\"\n kbqOverflowItems\n reverseOverflowOrder\n class=\"layout-align-start-center\"\n [style.max-width.px]=\"maxWidth\"\n >\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"0\" [order]=\"items.length\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.first, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n <!-- @TODO delay rendering for proper elements order (#DS-3334)--->\n @if (true) {\n <div kbqOverflowItemsResult class=\"kbq-breadcrumb-item__container\">\n <button\n kbq-button\n kbqBreadcrumb\n class=\"kbq-breadcrumb__expand\"\n [kbqDropdownTriggerFor]=\"hiddenBreadcrumbsDropdown\"\n [kbqStyle]=\"KbqButtonStyles.Transparent\"\n >\n <i kbq-icon=\"kbq-ellipsis-horizontal_16\" [color]=\"KbqComponentColors.ContrastFade\"></i>\n </button>\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n\n <kbq-dropdown #hiddenBreadcrumbsDropdown=\"kbqDropdown\">\n @for (item of items; track item) {\n @if (kbqOverflowItems.hiddenItemIDs().has($index)) {\n <a kbq-dropdown-item [routerLink]=\"item.routerLink?.urlTree\" [disabled]=\"item.disabled\">\n {{ item.text }}\n </a>\n }\n }\n </kbq-dropdown>\n </div>\n }\n @for (item of itemsExcludingEdges; track item) {\n <div class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"$index + 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: item, last: false }\" />\n <ng-container [ngTemplateOutlet]=\"separatorTemplate\" />\n </div>\n }\n <div alwaysVisible class=\"kbq-breadcrumb-item__container\" [kbqOverflowItem]=\"items.length - 1\">\n <ng-container *ngTemplateOutlet=\"breadcrumbTemplate; context: { $implicit: items.last, last: true }\" />\n </div>\n </div>\n}\n\n<ng-template #breadcrumbTemplate let-item let-last=\"last\">\n @if (item.customTemplateRef) {\n <ng-container [ngTemplateOutlet]=\"item.customTemplateRef\" />\n } @else {\n <a\n kbq-button\n kbq-title\n kbqBreadcrumb\n [focusable]=\"!item.disabled && !last\"\n [routerLink]=\"item.routerLink?.urlTree\"\n [attr.aria-current]=\"last ? 'page' : null\"\n [disabled]=\"item.disabled || last\"\n [kbqPlacementPriority]=\"PopUpPlacements.Bottom\"\n [kbqTooltipArrow]=\"false\"\n >\n {{ item.text }}\n </a>\n }\n</ng-template>\n\n<ng-template #separatorTemplate>\n @if (separator) {\n <ng-container [ngTemplateOutlet]=\"separator\" />\n } @else {\n <i kbq-icon=\"\" class=\"kbq-breadcrumb__separator\" [color]=\"KbqComponentColors.ContrastFade\">&nbsp;/&nbsp;</i>\n }\n</ng-template>\n", styles: [".kbq-breadcrumbs{display:flex;align-items:center;gap:var(--kbq-breadcrumbs-gap);flex-grow:1}.kbq-breadcrumbs .kbq-overflow-items{padding:1px}.kbq-breadcrumbs .kbq-breadcrumb-item__container{display:inline-flex;align-items:center}.kbq-breadcrumbs.kbq-breadcrumbs_first-item-negative-margin .kbq-overflow-items{margin-left:var(--kbq-breadcrumb-item-negative-margin)}.kbq-breadcrumbs.kbq-breadcrumbs_wrap{flex-wrap:wrap}.kbq-breadcrumbs:not(.kbq-breadcrumbs_wrap){overflow:hidden}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{--kbq-breadcrumb-item-height: var(--kbq-size-xxl)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb__expand.kbq-button-icon{--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-xxs)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-size-height: var(--kbq-breadcrumb-item-height);--kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);--kbq-button-size-border-radius: var(--kbq-breadcrumb-item-border-radius)}.kbq-breadcrumbs .kbq-breadcrumb-item:focus-visible{outline-offset:unset}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-icon-size-horizontal-padding: var(--kbq-breadcrumb-item-expand-horizontal-padding)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast-secondary);--kbq-button-transparent-contrast-fade-on-right-icon: var(--kbq-breadcrumb-item-icon-color);--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-item-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page],.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page]{--kbq-button-transparent-contrast-fade-on-states-disabled-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button[aria-current=page].kbq-disabled,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-button-icon[aria-current=page].kbq-disabled{--kbq-button-transparent-contrast-fade-on-states-disabled-left-icon: var( --kbq-breadcrumb-item-icon-color );--kbq-button-transparent-contrast-fade-on-states-disabled-right-icon: var( --kbq-breadcrumb-item-icon-color )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-hover );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-hover )}.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button:not(.kbq-disabled).kbq-active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb-item.kbq-dropdown-trigger.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var( --kbq-states-icon-contrast-fade-active );--kbq-button-transparent-contrast-fade-on-right-icon: var( --kbq-states-icon-contrast-fade-active )}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon{--kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-expand-icon-color)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-hover .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).cdk-keyboard-focused .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-hover)}.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled):active .kbq-icon,.kbq-breadcrumbs .kbq-breadcrumb__expand.kbq-button-icon:not(.kbq-disabled).kbq-active .kbq-icon{--kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-active)}.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button.kbq-button_transparent.kbq-contrast,.kbq-breadcrumbs .kbq-breadcrumb_current .kbq-button-icon.kbq-button_transparent.kbq-contrast{--kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast)}.kbq-breadcrumbs .kbq-breadcrumb_current{color:var(--kbq-foreground-contrast)}.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_compact .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_normal .kbq-breadcrumb-item.kbq-button-icon{font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button,.kbq-breadcrumbs.kbq-breadcrumbs_big .kbq-button-icon{font-size:var(--kbq-typography-subheading-font-size);font-style:var(--kbq-typography-subheading-font-style);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-breadcrumbs .kbq-breadcrumb__separator{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:var(--kbq-typography-text-big-font-size);font-style:var(--kbq-typography-text-big-font-style);font-weight:var(--kbq-typography-text-big-font-weight);line-height:var(--kbq-typography-text-big-line-height);font-family:var(--kbq-typography-text-big-font-family);text-transform:var(--kbq-typography-text-big-text-transform);font-feature-settings:var(--kbq-typography-text-big-font-feature-settings);letter-spacing:var(--kbq-typography-text-big-letter-spacing)}\n", ":where(.kbq-breadcrumbs){--kbq-breadcrumb-item-horizontal-padding: var(--kbq-size-xs);--kbq-breadcrumb-item-height: var(--kbq-size-3xl);--kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-s);--kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-border-radius: var(--kbq-size-xs);--kbq-breadcrumb-item-icon-color: var(--kbq-icon-contrast-fade);--kbq-breadcrumb-item-negative-margin: calc(-1 * var(--kbq-size-xs));--kbq-breadcrumbs-gap: 0}\n"] }]
244
547
  }], ctorParameters: () => [], propDecorators: { firstItemNegativeMargin: [{
245
548
  type: Input,
246
549
  args: [{ transform: booleanAttribute }]
@@ -275,8 +578,8 @@ const COMPONENTS = [
275
578
  KbqBreadcrumbButton
276
579
  ];
277
580
  class KbqBreadcrumbsModule {
278
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
279
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsModule, imports: [KbqBreadcrumbs,
581
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
582
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsModule, imports: [KbqBreadcrumbs,
280
583
  KbqBreadcrumbItem,
281
584
  KbqBreadcrumbView,
282
585
  KbqBreadcrumbsSeparator,
@@ -285,9 +588,9 @@ class KbqBreadcrumbsModule {
285
588
  KbqBreadcrumbView,
286
589
  KbqBreadcrumbsSeparator,
287
590
  KbqBreadcrumbButton] }); }
288
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsModule, imports: [KbqBreadcrumbs] }); }
591
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsModule, imports: [KbqBreadcrumbs] }); }
289
592
  }
290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqBreadcrumbsModule, decorators: [{
593
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqBreadcrumbsModule, decorators: [{
291
594
  type: NgModule,
292
595
  args: [{
293
596
  imports: COMPONENTS,
@@ -299,5 +602,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
299
602
  * Generated bundle index. Do not edit.
300
603
  */
301
604
 
302
- export { KBQ_BREADCRUMBS_CONFIGURATION, KbqBreadcrumbButton, KbqBreadcrumbItem, KbqBreadcrumbView, KbqBreadcrumbs, KbqBreadcrumbsModule, KbqBreadcrumbsSeparator, kbqBreadcrumbsConfigurationProvider };
605
+ export { KBQ_BREADCRUMBS_CONFIGURATION, KbqBreadcrumbButton, KbqBreadcrumbItem, KbqBreadcrumbView, KbqBreadcrumbs, KbqBreadcrumbsModule, KbqBreadcrumbsSeparator, RdxRovingFocusGroupDirective, RdxRovingFocusItemDirective, kbqBreadcrumbsConfigurationProvider };
303
606
  //# sourceMappingURL=koobiq-components-breadcrumbs.mjs.map