@koobiq/components 20.4.2 → 21.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 (771) hide show
  1. package/accordion/accordion-trigger.scss +3 -10
  2. package/accordion/accordion.scss +4 -6
  3. package/actions-panel/actions-panel-container.scss +45 -1
  4. package/alert/alert.component.scss +3 -2
  5. package/app-switcher/_app-switcher-theme.scss +0 -4
  6. package/app-switcher/app-switcher-dropdown-app.scss +3 -2
  7. package/app-switcher/app-switcher-dropdown-site.scss +2 -1
  8. package/app-switcher/{kbq-app-switcher-list-item.scss → app-switcher-list-item.scss} +18 -4
  9. package/app-switcher/app-switcher-tokens.scss +15 -0
  10. package/app-switcher/app-switcher.scss +14 -4
  11. package/autocomplete/autocomplete.scss +7 -6
  12. package/badge/badge.component.scss +5 -8
  13. package/breadcrumbs/breadcrumbs.scss +25 -10
  14. package/button/_button-base.scss +30 -7
  15. package/button/_button-theme.scss +16 -0
  16. package/button/button-group.scss +7 -0
  17. package/button/button-tokens.scss +0 -2
  18. package/button/button.scss +34 -2
  19. package/button-toggle/_button-toggle-theme.scss +7 -2
  20. package/button-toggle/button-toggle.scss +65 -15
  21. package/checkbox/_checkbox-theme.scss +4 -3
  22. package/checkbox/checkbox.scss +3 -6
  23. package/clamped-text/clamped-text.scss +6 -2
  24. package/code-block/code-block-tokens.scss +0 -224
  25. package/code-block/code-block.scss +20 -9
  26. package/content-panel/content-panel-aside.scss +3 -2
  27. package/content-panel/content-panel-container.scss +37 -0
  28. package/content-panel/content-panel.scss +4 -3
  29. package/core/highlight/_highlight-theme.scss +3 -1
  30. package/core/option/action-container.scss +2 -2
  31. package/core/option/action.scss +2 -1
  32. package/core/option/option.scss +2 -1
  33. package/core/pop-up/_pop-up.scss +0 -37
  34. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +5 -10
  35. package/core/styles/_core.scss +3 -0
  36. package/core/styles/_koobiq-theme.scss +5 -6
  37. package/core/styles/common/_animation.scss +44 -16
  38. package/core/styles/common/_groups-mixins.scss +21 -19
  39. package/core/styles/common/_groups.scss +4 -32
  40. package/core/styles/common/_index.scss +0 -2
  41. package/core/styles/common/_link.scss +117 -0
  42. package/core/styles/common/_list.scss +0 -26
  43. package/core/styles/common/_overlay.scss +8 -10
  44. package/core/styles/common/_rtl.scss +0 -14
  45. package/core/styles/common/_select.scss +33 -15
  46. package/core/styles/common/_squircle.scss +63 -0
  47. package/core/styles/common/_tokens.scss +0 -11
  48. package/core/styles/common/_vendor-prefixes.scss +0 -20
  49. package/core/styles/functions/_timing.scss +0 -22
  50. package/core/styles/theming/_scrollbar-theme.scss +6 -1
  51. package/core/styles/theming/_theming.scss +13 -65
  52. package/core/styles/typography/_index.scss +0 -1
  53. package/core/styles/typography/_typography.scss +0 -143
  54. package/core/styles/visual/_body.scss +1 -6
  55. package/core/styles/visual/_layout.scss +0 -12
  56. package/datepicker/calendar-body.scss +3 -1
  57. package/datepicker/calendar-header.scss +0 -1
  58. package/datepicker/datepicker-content.scss +33 -1
  59. package/datepicker/datepicker-toggle.scss +0 -38
  60. package/dl/dl-tokens.scss +10 -0
  61. package/dl/dl.scss +113 -13
  62. package/dropdown/_dropdown-theme.scss +4 -16
  63. package/dropdown/dropdown-item.scss +4 -10
  64. package/dropdown/dropdown.scss +2 -1
  65. package/empty-state/_empty-state-theme.scss +10 -4
  66. package/empty-state/empty-state-tokens.scss +4 -4
  67. package/empty-state/empty-state.scss +4 -0
  68. package/fesm2022/koobiq-components-accordion.mjs +347 -229
  69. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  70. package/fesm2022/koobiq-components-actions-panel.mjs +302 -187
  71. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  72. package/fesm2022/koobiq-components-alert.mjs +39 -39
  73. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  74. package/fesm2022/koobiq-components-app-switcher.mjs +677 -367
  75. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
  76. package/fesm2022/koobiq-components-autocomplete.mjs +620 -253
  77. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  78. package/fesm2022/koobiq-components-badge.mjs +46 -48
  79. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  80. package/fesm2022/koobiq-components-breadcrumbs.mjs +221 -169
  81. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  82. package/fesm2022/koobiq-components-button-toggle.mjs +565 -196
  83. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  84. package/fesm2022/koobiq-components-button.mjs +332 -116
  85. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  86. package/fesm2022/koobiq-components-checkbox.mjs +172 -132
  87. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  88. package/fesm2022/koobiq-components-clamped-text.mjs +165 -158
  89. package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -1
  90. package/fesm2022/koobiq-components-code-block.mjs +755 -601
  91. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  92. package/fesm2022/koobiq-components-content-panel.mjs +260 -143
  93. package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
  94. package/fesm2022/koobiq-components-core.mjs +4342 -1595
  95. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  96. package/fesm2022/koobiq-components-datepicker.mjs +1713 -1606
  97. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  98. package/fesm2022/koobiq-components-divider.mjs +73 -36
  99. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-dl.mjs +447 -89
  101. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-dropdown.mjs +703 -599
  103. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-dynamic-translation.mjs +20 -20
  105. package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-ellipsis-center.mjs +46 -31
  107. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-empty-state.mjs +116 -60
  109. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-file-upload.mjs +550 -290
  111. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-filter-bar.mjs +2810 -2538
  113. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-flag.mjs +79 -24
  115. package/fesm2022/koobiq-components-flag.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-form-field.mjs +389 -525
  117. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-icon.mjs +366 -136
  119. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  120. package/fesm2022/koobiq-components-inline-edit.mjs +429 -212
  121. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-input.mjs +601 -459
  123. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  124. package/fesm2022/koobiq-components-link-deprecated.mjs +196 -0
  125. package/fesm2022/koobiq-components-link-deprecated.mjs.map +1 -0
  126. package/fesm2022/koobiq-components-link.mjs +328 -125
  127. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  128. package/fesm2022/koobiq-components-list.mjs +583 -433
  129. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  130. package/fesm2022/koobiq-components-loader-overlay.mjs +167 -68
  131. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  132. package/fesm2022/koobiq-components-markdown.mjs +55 -78
  133. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  134. package/fesm2022/koobiq-components-modal.mjs +853 -475
  135. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-navbar.mjs +895 -556
  137. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  138. package/fesm2022/koobiq-components-notification-center.mjs +680 -310
  139. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -1
  140. package/fesm2022/koobiq-components-overflow-items.mjs +46 -64
  141. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  142. package/fesm2022/koobiq-components-popover.mjs +684 -285
  143. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  144. package/fesm2022/koobiq-components-progress-bar.mjs +87 -33
  145. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  146. package/fesm2022/koobiq-components-progress-spinner.mjs +52 -43
  147. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  148. package/fesm2022/koobiq-components-radio.mjs +450 -231
  149. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  150. package/fesm2022/koobiq-components-resizer.mjs +127 -21
  151. package/fesm2022/koobiq-components-resizer.mjs.map +1 -1
  152. package/fesm2022/koobiq-components-scrollbar-deprecated.mjs +299 -0
  153. package/fesm2022/koobiq-components-scrollbar-deprecated.mjs.map +1 -0
  154. package/fesm2022/koobiq-components-scrollbar.mjs +745 -222
  155. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  156. package/fesm2022/koobiq-components-search-expandable.mjs +288 -126
  157. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -1
  158. package/fesm2022/koobiq-components-select.mjs +883 -693
  159. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  160. package/fesm2022/koobiq-components-sidebar.mjs +207 -88
  161. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  162. package/fesm2022/koobiq-components-sidepanel.mjs +689 -296
  163. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  164. package/fesm2022/koobiq-components-skeleton.mjs +815 -41
  165. package/fesm2022/koobiq-components-skeleton.mjs.map +1 -1
  166. package/fesm2022/koobiq-components-split-button.mjs +109 -88
  167. package/fesm2022/koobiq-components-split-button.mjs.map +1 -1
  168. package/fesm2022/koobiq-components-splitter-deprecated.mjs +591 -0
  169. package/fesm2022/koobiq-components-splitter-deprecated.mjs.map +1 -0
  170. package/fesm2022/koobiq-components-splitter.mjs +890 -501
  171. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  172. package/fesm2022/koobiq-components-table.mjs +63 -49
  173. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  174. package/fesm2022/koobiq-components-tabs.mjs +1062 -603
  175. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  176. package/fesm2022/koobiq-components-tags.mjs +886 -733
  177. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  178. package/fesm2022/koobiq-components-textarea.mjs +213 -185
  179. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  180. package/fesm2022/koobiq-components-time-range.mjs +299 -147
  181. package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
  182. package/fesm2022/koobiq-components-timepicker.mjs +233 -245
  183. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  184. package/fesm2022/koobiq-components-timezone.mjs +344 -142
  185. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  186. package/fesm2022/koobiq-components-title.mjs +229 -145
  187. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  188. package/fesm2022/koobiq-components-toast.mjs +463 -143
  189. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  190. package/fesm2022/koobiq-components-toggle.mjs +177 -130
  191. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  192. package/fesm2022/koobiq-components-tooltip.mjs +657 -214
  193. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  194. package/fesm2022/koobiq-components-top-bar.mjs +61 -32
  195. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  196. package/fesm2022/koobiq-components-tree-select.mjs +719 -488
  197. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  198. package/fesm2022/koobiq-components-tree.mjs +1506 -558
  199. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  200. package/fesm2022/koobiq-components-username.mjs +290 -135
  201. package/fesm2022/koobiq-components-username.mjs.map +1 -1
  202. package/file-upload/dropzone.scss +31 -3
  203. package/file-upload/file-upload-tokens.scss +2 -22
  204. package/file-upload/file-upload.scss +6 -0
  205. package/file-upload/multiple-file-upload.component.scss +14 -12
  206. package/file-upload/single-file-upload.component.scss +3 -2
  207. package/filter-bar/filters.scss +7 -0
  208. package/filter-bar/pipes/base-pipe.scss +3 -3
  209. package/filter-bar/pipes/pipe-date.scss +8 -1
  210. package/flag/flag-tokens.scss +22 -0
  211. package/flag/flag.scss +34 -21
  212. package/form-field/{_fiedset-theme.scss → _fieldset-theme.scss} +1 -5
  213. package/form-field/_form-field-theme.scss +4 -9
  214. package/form-field/cleaner.scss +3 -1
  215. package/form-field/fieldset.scss +3 -4
  216. package/form-field/form-field.scss +26 -21
  217. package/form-field/password-toggle.scss +3 -1
  218. package/icon/_icon-button-theme.scss +7 -0
  219. package/icon/_icon-theme.scss +10 -7
  220. package/icon/icon-button.scss +0 -2
  221. package/icon/icon-tokens.scss +12 -9
  222. package/inline-edit/inline-edit.scss +40 -54
  223. package/input/input.scss +4 -0
  224. package/link/{_link-theme.scss → deprecated/_link-theme.scss} +11 -6
  225. package/link/deprecated/link-tokens.scss +27 -0
  226. package/link/link-tokens.scss +6 -25
  227. package/link/link.scss +137 -0
  228. package/list/list.scss +3 -2
  229. package/loader-overlay/_loader-overlay-theme.scss +19 -10
  230. package/loader-overlay/loader-overlay-tokens.scss +0 -2
  231. package/loader-overlay/loader-overlay.scss +7 -1
  232. package/markdown/_markdown-theme.scss +16 -0
  233. package/markdown/markdown-tokens.scss +5 -0
  234. package/markdown/markdown.scss +2 -1
  235. package/modal/_modal-animation.scss +23 -14
  236. package/modal/modal-tokens.scss +2 -1
  237. package/modal/modal.scss +35 -31
  238. package/navbar/_navbar-item_horizontal.scss +8 -6
  239. package/navbar/_navbar-item_vertical.scss +18 -6
  240. package/navbar/_navbar-theme.scss +9 -1
  241. package/navbar/navbar-brand.scss +8 -6
  242. package/navbar/navbar-divider.scss +1 -1
  243. package/navbar/navbar-item.scss +8 -9
  244. package/navbar/navbar-toggle.scss +3 -3
  245. package/navbar/navbar-tokens.scss +14 -0
  246. package/navbar/navbar.scss +1 -2
  247. package/navbar/vertical-navbar.scss +2 -2
  248. package/notification-center/_notification-center-theme.scss +11 -6
  249. package/notification-center/notification-center-tokens.scss +33 -0
  250. package/notification-center/notification-center.scss +58 -20
  251. package/notification-center/notification-item.scss +15 -6
  252. package/package.json +112 -81
  253. package/popover/popover-tokens.scss +0 -2
  254. package/popover/popover.scss +41 -19
  255. package/prebuilt-themes/theme.css +1 -1
  256. package/progress-bar/_progress-bar-theme.scss +20 -3
  257. package/progress-bar/progress-bar-tokens.scss +3 -0
  258. package/progress-bar/progress-bar.scss +36 -8
  259. package/progress-spinner/progress-spinner.scss +4 -3
  260. package/radio/_radio-theme.scss +21 -4
  261. package/radio/radio-tokens.scss +7 -3
  262. package/radio/radio.scss +55 -8
  263. package/schematics/collection.json +399 -7
  264. package/schematics/migrations/accordion-state-saving-default/README.md +60 -0
  265. package/schematics/migrations/accordion-state-saving-default/data.js +75 -0
  266. package/schematics/migrations/accordion-state-saving-default/index.js +60 -0
  267. package/schematics/migrations/accordion-state-saving-default/schema.json +15 -0
  268. package/schematics/migrations/actions-panel-overlay-container/README.md +35 -0
  269. package/schematics/migrations/actions-panel-overlay-container/data.js +47 -0
  270. package/schematics/migrations/actions-panel-overlay-container/index.js +54 -0
  271. package/schematics/migrations/actions-panel-overlay-container/schema.json +15 -0
  272. package/schematics/migrations/alert-signals/README.md +13 -7
  273. package/schematics/migrations/alert-signals/data.js +3 -0
  274. package/schematics/migrations/alert-signals/index.js +70 -203
  275. package/schematics/migrations/angular-animations-removal/README.md +46 -0
  276. package/schematics/migrations/angular-animations-removal/data.js +150 -0
  277. package/schematics/migrations/angular-animations-removal/index.js +20 -0
  278. package/schematics/migrations/angular-animations-removal/schema.json +15 -0
  279. package/schematics/migrations/app-switcher-signals/README.md +88 -0
  280. package/schematics/migrations/app-switcher-signals/data.js +136 -0
  281. package/schematics/migrations/app-switcher-signals/index.js +365 -0
  282. package/schematics/migrations/app-switcher-signals/schema.json +20 -0
  283. package/schematics/migrations/autocomplete-panel-width-auto/README.md +2 -2
  284. package/schematics/migrations/autocomplete-panel-width-auto/index.js +1 -1
  285. package/schematics/migrations/autocomplete-signals/README.md +92 -0
  286. package/schematics/migrations/autocomplete-signals/data.js +149 -0
  287. package/schematics/migrations/autocomplete-signals/index.js +706 -0
  288. package/schematics/migrations/autocomplete-signals/schema.json +20 -0
  289. package/schematics/migrations/badge-signals/README.md +77 -0
  290. package/schematics/migrations/badge-signals/data.js +109 -0
  291. package/schematics/migrations/badge-signals/index.js +693 -0
  292. package/schematics/migrations/badge-signals/schema.json +20 -0
  293. package/schematics/migrations/button-state-and-styles/README.md +129 -0
  294. package/schematics/migrations/button-state-and-styles/data.js +136 -0
  295. package/schematics/migrations/button-state-and-styles/index.js +220 -0
  296. package/schematics/migrations/button-state-and-styles/schema.json +20 -0
  297. package/schematics/migrations/button-supported-colors/README.md +73 -0
  298. package/schematics/migrations/button-supported-colors/data.js +106 -0
  299. package/schematics/migrations/button-supported-colors/index.js +260 -0
  300. package/schematics/migrations/button-supported-colors/schema.json +20 -0
  301. package/schematics/migrations/button-toggle-signals-and-aria/README.md +137 -0
  302. package/schematics/migrations/button-toggle-signals-and-aria/data.js +200 -0
  303. package/schematics/migrations/button-toggle-signals-and-aria/index.js +496 -0
  304. package/schematics/migrations/button-toggle-signals-and-aria/schema.json +20 -0
  305. package/schematics/migrations/button-truncation/README.md +110 -0
  306. package/schematics/migrations/button-truncation/data.js +88 -0
  307. package/schematics/migrations/button-truncation/index.js +269 -0
  308. package/schematics/migrations/button-truncation/schema.json +20 -0
  309. package/schematics/migrations/checkbox-signals/README.md +76 -0
  310. package/schematics/migrations/checkbox-signals/data.js +114 -0
  311. package/schematics/migrations/checkbox-signals/index.js +634 -0
  312. package/schematics/migrations/checkbox-signals/schema.json +20 -0
  313. package/schematics/migrations/clamped-text-disclosure/README.md +62 -0
  314. package/schematics/migrations/clamped-text-disclosure/data.js +101 -0
  315. package/schematics/migrations/clamped-text-disclosure/index.js +59 -0
  316. package/schematics/migrations/clamped-text-disclosure/schema.json +15 -0
  317. package/schematics/migrations/code-block-signals/README.md +84 -0
  318. package/schematics/migrations/code-block-signals/data.js +121 -0
  319. package/schematics/migrations/code-block-signals/index.js +700 -0
  320. package/schematics/migrations/code-block-signals/schema.json +20 -0
  321. package/schematics/migrations/color-signals/README.md +46 -0
  322. package/schematics/migrations/color-signals/data.js +131 -0
  323. package/schematics/migrations/color-signals/index.js +19 -0
  324. package/schematics/migrations/color-signals/schema.json +20 -0
  325. package/schematics/migrations/core-mixins-removal/README.md +20 -0
  326. package/schematics/migrations/core-mixins-removal/data.js +27 -0
  327. package/schematics/migrations/core-mixins-removal/index.js +17 -0
  328. package/schematics/migrations/core-mixins-removal/schema.json +15 -0
  329. package/schematics/migrations/css-selectors/README.md +2 -2
  330. package/schematics/migrations/css-selectors/index.js +1 -1
  331. package/schematics/migrations/datepicker-signals/README.md +24 -0
  332. package/schematics/migrations/datepicker-signals/data.js +49 -0
  333. package/schematics/migrations/datepicker-signals/index.js +17 -0
  334. package/schematics/migrations/datepicker-signals/schema.json +15 -0
  335. package/schematics/migrations/deprecated-icons/README.md +2 -2
  336. package/schematics/migrations/deprecated-icons/index.js +1 -1
  337. package/schematics/migrations/design-tokens-v4/README.md +75 -0
  338. package/schematics/migrations/design-tokens-v4/index.js +59 -0
  339. package/schematics/migrations/design-tokens-v4/schema.json +15 -0
  340. package/schematics/migrations/divider-signals-and-aria/README.md +47 -0
  341. package/schematics/migrations/divider-signals-and-aria/data.js +62 -0
  342. package/schematics/migrations/divider-signals-and-aria/index.js +211 -0
  343. package/schematics/migrations/divider-signals-and-aria/schema.json +15 -0
  344. package/schematics/migrations/dl-attribute-coercion/README.md +59 -0
  345. package/schematics/migrations/dl-attribute-coercion/data.js +85 -0
  346. package/schematics/migrations/dl-attribute-coercion/index.js +161 -0
  347. package/schematics/migrations/dl-attribute-coercion/schema.json +15 -0
  348. package/schematics/migrations/dl-standalone-names/README.md +49 -0
  349. package/schematics/migrations/dl-standalone-names/data.js +44 -0
  350. package/schematics/migrations/dl-standalone-names/index.js +321 -0
  351. package/schematics/migrations/dl-standalone-names/schema.json +20 -0
  352. package/schematics/migrations/dropdown-demote-overlay/README.md +137 -0
  353. package/schematics/migrations/dropdown-demote-overlay/data.js +84 -0
  354. package/schematics/migrations/dropdown-demote-overlay/index.js +288 -0
  355. package/schematics/migrations/dropdown-demote-overlay/schema.json +20 -0
  356. package/schematics/migrations/dropdown-signals/README.md +83 -0
  357. package/schematics/migrations/dropdown-signals/data.js +152 -0
  358. package/schematics/migrations/dropdown-signals/index.js +19 -0
  359. package/schematics/migrations/dropdown-signals/schema.json +20 -0
  360. package/schematics/migrations/empty-state-error-color/README.md +84 -0
  361. package/schematics/migrations/empty-state-error-color/data.js +85 -0
  362. package/schematics/migrations/empty-state-error-color/index.js +71 -0
  363. package/schematics/migrations/empty-state-error-color/schema.json +15 -0
  364. package/schematics/migrations/empty-state-size-attr/README.md +2 -2
  365. package/schematics/migrations/empty-state-size-attr/index.js +1 -1
  366. package/schematics/migrations/file-upload-cva-and-primitives/README.md +70 -0
  367. package/schematics/migrations/file-upload-cva-and-primitives/data.js +97 -0
  368. package/schematics/migrations/file-upload-cva-and-primitives/index.js +60 -0
  369. package/schematics/migrations/file-upload-cva-and-primitives/schema.json +15 -0
  370. package/schematics/migrations/file-upload-deprecated-outputs/README.md +90 -0
  371. package/schematics/migrations/file-upload-deprecated-outputs/data.js +20 -0
  372. package/schematics/migrations/file-upload-deprecated-outputs/index.js +70 -0
  373. package/schematics/migrations/file-upload-deprecated-outputs/schema.json +20 -0
  374. package/schematics/migrations/filter-bar-rename-action/README.md +183 -0
  375. package/schematics/migrations/filter-bar-rename-action/data.js +151 -0
  376. package/schematics/migrations/filter-bar-rename-action/index.js +177 -0
  377. package/schematics/migrations/filter-bar-rename-action/schema.json +20 -0
  378. package/schematics/migrations/filter-bar-signals/README.md +27 -16
  379. package/schematics/migrations/filter-bar-signals/data.js +1 -2
  380. package/schematics/migrations/filter-bar-signals/index.js +100 -195
  381. package/schematics/migrations/filter-bar-state-saving-default/README.md +53 -0
  382. package/schematics/migrations/filter-bar-state-saving-default/data.js +87 -0
  383. package/schematics/migrations/filter-bar-state-saving-default/index.js +61 -0
  384. package/schematics/migrations/filter-bar-state-saving-default/schema.json +15 -0
  385. package/schematics/migrations/flag-inner-html/README.md +67 -0
  386. package/schematics/migrations/flag-inner-html/data.js +58 -0
  387. package/schematics/migrations/flag-inner-html/index.js +61 -0
  388. package/schematics/migrations/flag-inner-html/schema.json +15 -0
  389. package/schematics/migrations/form-field-signals/README.md +125 -0
  390. package/schematics/migrations/form-field-signals/data.js +288 -0
  391. package/schematics/migrations/form-field-signals/index.js +382 -0
  392. package/schematics/migrations/form-field-signals/schema.json +20 -0
  393. package/schematics/migrations/icon-semantics-and-api/README.md +65 -0
  394. package/schematics/migrations/icon-semantics-and-api/data.js +97 -0
  395. package/schematics/migrations/icon-semantics-and-api/index.js +64 -0
  396. package/schematics/migrations/icon-semantics-and-api/schema.json +15 -0
  397. package/schematics/migrations/icons-replacement/README.md +5 -5
  398. package/schematics/migrations/icons-replacement/index.js +1 -1
  399. package/schematics/migrations/inline-edit-a11y-and-types/README.md +82 -0
  400. package/schematics/migrations/inline-edit-a11y-and-types/data.js +117 -0
  401. package/schematics/migrations/inline-edit-a11y-and-types/index.js +97 -0
  402. package/schematics/migrations/inline-edit-a11y-and-types/schema.json +20 -0
  403. package/schematics/migrations/input-number-surface/README.md +140 -0
  404. package/schematics/migrations/input-number-surface/data.js +135 -0
  405. package/schematics/migrations/input-number-surface/index.js +292 -0
  406. package/schematics/migrations/input-number-surface/schema.json +20 -0
  407. package/schematics/migrations/input-signals/README.md +20 -0
  408. package/schematics/migrations/input-signals/data.js +30 -0
  409. package/schematics/migrations/input-signals/index.js +17 -0
  410. package/schematics/migrations/input-signals/schema.json +15 -0
  411. package/schematics/migrations/link-deprecated-path/README.md +144 -0
  412. package/schematics/migrations/link-deprecated-path/index.js +19 -0
  413. package/schematics/migrations/link-deprecated-path/schema.json +20 -0
  414. package/schematics/migrations/link-signals/README.md +71 -0
  415. package/schematics/migrations/link-signals/data.js +116 -0
  416. package/schematics/migrations/link-signals/index.js +415 -0
  417. package/schematics/migrations/link-signals/schema.json +20 -0
  418. package/schematics/migrations/list-signals/README.md +22 -0
  419. package/schematics/migrations/list-signals/data.js +35 -0
  420. package/schematics/migrations/list-signals/index.js +17 -0
  421. package/schematics/migrations/list-signals/schema.json +15 -0
  422. package/schematics/migrations/list-tree-multiple-input/README.md +105 -0
  423. package/schematics/migrations/list-tree-multiple-input/data.js +74 -0
  424. package/schematics/migrations/list-tree-multiple-input/index.js +221 -0
  425. package/schematics/migrations/list-tree-multiple-input/schema.json +20 -0
  426. package/schematics/migrations/loader-overlay-signals/README.md +62 -0
  427. package/schematics/migrations/loader-overlay-signals/data.js +101 -0
  428. package/schematics/migrations/loader-overlay-signals/index.js +697 -0
  429. package/schematics/migrations/loader-overlay-signals/schema.json +20 -0
  430. package/schematics/migrations/loader-overlay-size-attr/README.md +2 -2
  431. package/schematics/migrations/loader-overlay-size-attr/index.js +1 -1
  432. package/schematics/migrations/locale-configuration-providers/README.md +163 -0
  433. package/schematics/migrations/locale-configuration-providers/data.js +257 -0
  434. package/schematics/migrations/locale-configuration-providers/index.js +294 -0
  435. package/schematics/migrations/locale-configuration-providers/schema.json +20 -0
  436. package/schematics/migrations/mandatory-peer-dependencies/README.md +70 -0
  437. package/schematics/migrations/mandatory-peer-dependencies/index.js +42 -0
  438. package/schematics/migrations/mandatory-peer-dependencies/schema.json +15 -0
  439. package/schematics/migrations/markdown-signals/README.md +58 -0
  440. package/schematics/migrations/markdown-signals/data.js +79 -0
  441. package/schematics/migrations/markdown-signals/index.js +639 -0
  442. package/schematics/migrations/markdown-signals/schema.json +20 -0
  443. package/schematics/migrations/modal-dialog-semantics/README.md +106 -0
  444. package/schematics/migrations/modal-dialog-semantics/data.js +110 -0
  445. package/schematics/migrations/modal-dialog-semantics/index.js +58 -0
  446. package/schematics/migrations/modal-dialog-semantics/schema.json +15 -0
  447. package/schematics/migrations/modal-signals/README.md +88 -0
  448. package/schematics/migrations/modal-signals/data.js +132 -0
  449. package/schematics/migrations/modal-signals/index.js +19 -0
  450. package/schematics/migrations/modal-signals/schema.json +20 -0
  451. package/schematics/migrations/navbar-signals-and-aria/README.md +111 -0
  452. package/schematics/migrations/navbar-signals-and-aria/data.js +198 -0
  453. package/schematics/migrations/navbar-signals-and-aria/index.js +568 -0
  454. package/schematics/migrations/navbar-signals-and-aria/schema.json +20 -0
  455. package/schematics/migrations/new-icons-pack/README.md +10 -10
  456. package/schematics/migrations/new-icons-pack/index.js +1 -1
  457. package/schematics/migrations/notification-center-signals/README.md +67 -0
  458. package/schematics/migrations/notification-center-signals/data.js +66 -0
  459. package/schematics/migrations/notification-center-signals/index.js +61 -0
  460. package/schematics/migrations/notification-center-signals/schema.json +15 -0
  461. package/schematics/migrations/option-signals/README.md +37 -0
  462. package/schematics/migrations/option-signals/data.js +86 -0
  463. package/schematics/migrations/option-signals/index.js +19 -0
  464. package/schematics/migrations/option-signals/schema.json +20 -0
  465. package/schematics/migrations/popover-leave-delay/README.md +51 -0
  466. package/schematics/migrations/popover-leave-delay/data.js +61 -0
  467. package/schematics/migrations/popover-leave-delay/index.js +54 -0
  468. package/schematics/migrations/popover-leave-delay/schema.json +15 -0
  469. package/schematics/migrations/progress-bar-percentage-and-aria/README.md +54 -0
  470. package/schematics/migrations/progress-bar-percentage-and-aria/data.js +76 -0
  471. package/schematics/migrations/progress-bar-percentage-and-aria/index.js +58 -0
  472. package/schematics/migrations/progress-bar-percentage-and-aria/schema.json +15 -0
  473. package/schematics/migrations/progress-spinner-signals/README.md +72 -0
  474. package/schematics/migrations/progress-spinner-signals/data.js +83 -0
  475. package/schematics/migrations/progress-spinner-signals/index.js +694 -0
  476. package/schematics/migrations/progress-spinner-signals/schema.json +20 -0
  477. package/schematics/migrations/query-list-signals/README.md +32 -0
  478. package/schematics/migrations/query-list-signals/data.js +70 -0
  479. package/schematics/migrations/query-list-signals/index.js +17 -0
  480. package/schematics/migrations/query-list-signals/schema.json +15 -0
  481. package/schematics/migrations/radio-signals-and-aria/README.md +82 -0
  482. package/schematics/migrations/radio-signals-and-aria/data.js +163 -0
  483. package/schematics/migrations/radio-signals-and-aria/index.js +39 -0
  484. package/schematics/migrations/radio-signals-and-aria/schema.json +20 -0
  485. package/schematics/migrations/read-state-dwell-handlers/README.md +125 -0
  486. package/schematics/migrations/read-state-dwell-handlers/data.js +45 -0
  487. package/schematics/migrations/read-state-dwell-handlers/index.js +215 -0
  488. package/schematics/migrations/read-state-dwell-handlers/schema.json +20 -0
  489. package/schematics/migrations/scrollbar-deprecated-path/README.md +128 -0
  490. package/schematics/migrations/scrollbar-deprecated-path/index.js +20 -0
  491. package/schematics/migrations/scrollbar-deprecated-path/schema.json +20 -0
  492. package/schematics/migrations/select-signal-inputs/README.md +61 -0
  493. package/schematics/migrations/select-signal-inputs/data.js +99 -0
  494. package/schematics/migrations/select-signal-inputs/index.js +57 -0
  495. package/schematics/migrations/select-signal-inputs/schema.json +15 -0
  496. package/schematics/migrations/sidepanel-non-modal-behavior/README.md +57 -0
  497. package/schematics/migrations/sidepanel-non-modal-behavior/data.js +111 -0
  498. package/schematics/migrations/sidepanel-non-modal-behavior/index.js +57 -0
  499. package/schematics/migrations/sidepanel-non-modal-behavior/schema.json +15 -0
  500. package/schematics/migrations/signal-inputs-subclasses/README.md +28 -0
  501. package/schematics/migrations/signal-inputs-subclasses/data.js +69 -0
  502. package/schematics/migrations/signal-inputs-subclasses/index.js +17 -0
  503. package/schematics/migrations/signal-inputs-subclasses/schema.json +15 -0
  504. package/schematics/migrations/split-button-optional-disabled/README.md +47 -0
  505. package/schematics/migrations/split-button-optional-disabled/data.js +53 -0
  506. package/schematics/migrations/split-button-optional-disabled/index.js +57 -0
  507. package/schematics/migrations/split-button-optional-disabled/schema.json +15 -0
  508. package/schematics/migrations/splitter-deprecated-path/README.md +136 -0
  509. package/schematics/migrations/splitter-deprecated-path/index.js +20 -0
  510. package/schematics/migrations/splitter-deprecated-path/schema.json +20 -0
  511. package/schematics/migrations/state-saving-default/README.md +67 -0
  512. package/schematics/migrations/state-saving-default/data.js +88 -0
  513. package/schematics/migrations/state-saving-default/index.js +62 -0
  514. package/schematics/migrations/state-saving-default/schema.json +15 -0
  515. package/schematics/migrations/table-cell-content/README.md +55 -0
  516. package/schematics/migrations/table-cell-content/data.js +66 -0
  517. package/schematics/migrations/table-cell-content/index.js +66 -0
  518. package/schematics/migrations/table-cell-content/schema.json +15 -0
  519. package/schematics/migrations/tabs-signals-and-aria/README.md +93 -0
  520. package/schematics/migrations/tabs-signals-and-aria/data.js +139 -0
  521. package/schematics/migrations/tabs-signals-and-aria/index.js +65 -0
  522. package/schematics/migrations/tabs-signals-and-aria/schema.json +15 -0
  523. package/schematics/migrations/tag-list-cleaner/README.md +58 -0
  524. package/schematics/migrations/tag-list-cleaner/data.js +42 -0
  525. package/schematics/migrations/tag-list-cleaner/index.js +196 -0
  526. package/schematics/migrations/tag-list-cleaner/schema.json +20 -0
  527. package/schematics/migrations/tag-slots/README.md +41 -0
  528. package/schematics/migrations/tag-slots/index.js +190 -0
  529. package/schematics/migrations/tag-slots/schema.json +20 -0
  530. package/schematics/migrations/tags-signals/README.md +85 -0
  531. package/schematics/migrations/tags-signals/data.js +103 -0
  532. package/schematics/migrations/tags-signals/index.js +673 -0
  533. package/schematics/migrations/tags-signals/schema.json +20 -0
  534. package/schematics/migrations/textarea-signals/README.md +72 -0
  535. package/schematics/migrations/textarea-signals/data.js +121 -0
  536. package/schematics/migrations/textarea-signals/index.js +379 -0
  537. package/schematics/migrations/textarea-signals/schema.json +20 -0
  538. package/schematics/migrations/time-range-title-for/README.md +164 -0
  539. package/schematics/migrations/time-range-title-for/data.js +139 -0
  540. package/schematics/migrations/time-range-title-for/index.js +163 -0
  541. package/schematics/migrations/time-range-title-for/schema.json +20 -0
  542. package/schematics/migrations/timepicker-signals/README.md +78 -0
  543. package/schematics/migrations/timepicker-signals/data.js +82 -0
  544. package/schematics/migrations/timepicker-signals/index.js +709 -0
  545. package/schematics/migrations/timepicker-signals/schema.json +20 -0
  546. package/schematics/migrations/timezone-grouping-utils/README.md +73 -0
  547. package/schematics/migrations/timezone-grouping-utils/data.js +101 -0
  548. package/schematics/migrations/timezone-grouping-utils/index.js +64 -0
  549. package/schematics/migrations/timezone-grouping-utils/schema.json +15 -0
  550. package/schematics/migrations/title-encapsulation/README.md +49 -0
  551. package/schematics/migrations/title-encapsulation/data.js +69 -0
  552. package/schematics/migrations/title-encapsulation/index.js +57 -0
  553. package/schematics/migrations/title-encapsulation/schema.json +15 -0
  554. package/schematics/migrations/toast-stack-and-defaults/README.md +102 -0
  555. package/schematics/migrations/toast-stack-and-defaults/data.js +79 -0
  556. package/schematics/migrations/toast-stack-and-defaults/index.js +53 -0
  557. package/schematics/migrations/toast-stack-and-defaults/schema.json +15 -0
  558. package/schematics/migrations/tooltip-pointer-events-and-types/README.md +53 -0
  559. package/schematics/migrations/tooltip-pointer-events-and-types/data.js +89 -0
  560. package/schematics/migrations/tooltip-pointer-events-and-types/index.js +60 -0
  561. package/schematics/migrations/tooltip-pointer-events-and-types/schema.json +15 -0
  562. package/schematics/migrations/top-bar-container-selectors/README.md +111 -0
  563. package/schematics/migrations/top-bar-container-selectors/data.js +56 -0
  564. package/schematics/migrations/top-bar-container-selectors/index.js +84 -0
  565. package/schematics/migrations/top-bar-container-selectors/schema.json +20 -0
  566. package/schematics/migrations/tree-select-signals/README.md +61 -0
  567. package/schematics/migrations/tree-select-signals/data.js +106 -0
  568. package/schematics/migrations/tree-select-signals/index.js +58 -0
  569. package/schematics/migrations/tree-select-signals/schema.json +15 -0
  570. package/schematics/migrations/tree-signals/README.md +82 -0
  571. package/schematics/migrations/tree-signals/data.js +123 -0
  572. package/schematics/migrations/tree-signals/index.js +54 -0
  573. package/schematics/migrations/tree-signals/schema.json +15 -0
  574. package/schematics/migrations/tree-state-saving-default/README.md +66 -0
  575. package/schematics/migrations/tree-state-saving-default/data.js +78 -0
  576. package/schematics/migrations/tree-state-saving-default/index.js +60 -0
  577. package/schematics/migrations/tree-state-saving-default/schema.json +15 -0
  578. package/schematics/migrations/username-pipe-injection/README.md +59 -0
  579. package/schematics/migrations/username-pipe-injection/data.js +78 -0
  580. package/schematics/migrations/username-pipe-injection/index.js +58 -0
  581. package/schematics/migrations/username-pipe-injection/schema.json +15 -0
  582. package/schematics/migrations/v20-upgrade/README.md +36 -16
  583. package/schematics/migrations/v20-upgrade/data.js +124 -77
  584. package/schematics/migrations/v20-upgrade/index.js +6 -213
  585. package/schematics/migrations/v21-upgrade/README.md +271 -0
  586. package/schematics/migrations/v21-upgrade/data.js +1371 -0
  587. package/schematics/migrations/v21-upgrade/index.js +94 -0
  588. package/schematics/migrations/v21-upgrade/schema.json +20 -0
  589. package/schematics/migrations/zoneless-change-detection/README.md +30 -0
  590. package/schematics/migrations/zoneless-change-detection/data.js +29 -0
  591. package/schematics/migrations/zoneless-change-detection/index.js +20 -0
  592. package/schematics/migrations/zoneless-change-detection/schema.json +15 -0
  593. package/schematics/migrations.json +392 -2
  594. package/schematics/ng-add/index.js +515 -14
  595. package/schematics/ng-add/schema.json +15 -0
  596. package/schematics/utils/deprecated-path-migration.js +61 -0
  597. package/schematics/utils/package-config.js +9 -105
  598. package/scrollbar/{_scrollbar-component-theme.scss → deprecated/_scrollbar-component-theme.scss} +1 -1
  599. package/scrollbar/{scrollbar.component.scss → deprecated/scrollbar.component.scss} +1 -1
  600. package/scrollbar/native-scrollbar.scss +68 -0
  601. package/scrollbar/scrollbar-tokens.scss +13 -22
  602. package/scrollbar/scrollbar-track.scss +94 -0
  603. package/scrollbar/scrollbar-viewport.scss +33 -0
  604. package/scrollbar/scrollbar.scss +24 -0
  605. package/search-expandable/search-expandable-tokens.scss +4 -0
  606. package/search-expandable/search-expandable.scss +4 -2
  607. package/select/_select-theme.scss +3 -16
  608. package/select/select.scss +0 -6
  609. package/sidebar/sidebar.scss +20 -0
  610. package/sidepanel/_sidepanel-theme.scss +1 -1
  611. package/sidepanel/sidepanel-tokens.scss +7 -1
  612. package/sidepanel/sidepanel.scss +41 -5
  613. package/skeleton/skeleton-presets.scss +350 -0
  614. package/skeleton/skeleton-tokens.scss +127 -0
  615. package/skeleton/skeleton.scss +53 -45
  616. package/split-button/_split-button-theme.scss +4 -4
  617. package/split-button/split-button.scss +2 -6
  618. package/splitter/{_splitter-theme.scss → deprecated/_splitter-theme.scss} +1 -1
  619. package/splitter/deprecated/splitter.scss +51 -0
  620. package/splitter/splitter-tokens.scss +19 -0
  621. package/splitter/splitter.scss +148 -28
  622. package/table/_table-theme.scss +13 -12
  623. package/table/table-tokens.scss +8 -0
  624. package/table/table.scss +47 -22
  625. package/tabs/_tabs-common.scss +14 -14
  626. package/tabs/_tabs-theme.scss +4 -5
  627. package/tabs/tab-body.scss +49 -1
  628. package/tabs/tab-header.scss +2 -1
  629. package/tags/tag-list.scss +4 -0
  630. package/tags/tag.scss +19 -1
  631. package/time-range/time-range.scss +9 -0
  632. package/timezone/timezone-option.component.scss +4 -7
  633. package/timezone/timezone-select.component.scss +3 -0
  634. package/toast/_toast-theme.scss +1 -4
  635. package/toast/toast-container.component.scss +19 -13
  636. package/toast/toast-tokens.scss +12 -6
  637. package/toast/toast.component.scss +42 -19
  638. package/toggle/_toggle-theme.scss +4 -10
  639. package/toggle/toggle.scss +67 -26
  640. package/tooltip/_tooltip-theme.scss +7 -1
  641. package/tooltip/tooltip-tokens.scss +1 -2
  642. package/tooltip/tooltip.scss +55 -9
  643. package/top-bar/top-bar-tokens.scss +13 -2
  644. package/top-bar/top-bar.scss +24 -19
  645. package/tree/_tree-theme.scss +0 -1
  646. package/tree/toggle.scss +5 -9
  647. package/tree/tree-option.scss +2 -4
  648. package/tree/tree-tokens.scss +2 -1
  649. package/tree/tree.scss +3 -5
  650. package/tree-select/_tree-select-theme.scss +4 -15
  651. package/tree-select/tree-select-tokens.scss +16 -0
  652. package/tree-select/tree-select.scss +0 -6
  653. package/{accordion/index.d.ts → types/koobiq-components-accordion.d.ts} +102 -84
  654. package/{actions-panel/index.d.ts → types/koobiq-components-actions-panel.d.ts} +44 -59
  655. package/{alert/index.d.ts → types/koobiq-components-alert.d.ts} +8 -3
  656. package/types/koobiq-components-app-switcher.d.ts +406 -0
  657. package/types/koobiq-components-autocomplete.d.ts +443 -0
  658. package/{badge/index.d.ts → types/koobiq-components-badge.d.ts} +25 -20
  659. package/{breadcrumbs/index.d.ts → types/koobiq-components-breadcrumbs.d.ts} +97 -46
  660. package/types/koobiq-components-button-toggle.d.ts +340 -0
  661. package/types/koobiq-components-button.d.ts +296 -0
  662. package/types/koobiq-components-checkbox.d.ts +172 -0
  663. package/types/koobiq-components-clamped-text.d.ts +184 -0
  664. package/{code-block/index.d.ts → types/koobiq-components-code-block.d.ts} +114 -79
  665. package/{content-panel/index.d.ts → types/koobiq-components-content-panel.d.ts} +81 -25
  666. package/{core/index.d.ts → types/koobiq-components-core.d.ts} +2827 -865
  667. package/{datepicker/index.d.ts → types/koobiq-components-datepicker.d.ts} +161 -116
  668. package/types/koobiq-components-divider.d.ts +43 -0
  669. package/types/koobiq-components-dl.d.ts +235 -0
  670. package/{dropdown/index.d.ts → types/koobiq-components-dropdown.d.ts} +245 -239
  671. package/types/koobiq-components-ellipsis-center.d.ts +85 -0
  672. package/types/koobiq-components-empty-state.d.ts +106 -0
  673. package/{file-upload/index.d.ts → types/koobiq-components-file-upload.d.ts} +214 -107
  674. package/{filter-bar/index.d.ts → types/koobiq-components-filter-bar.d.ts} +410 -495
  675. package/types/koobiq-components-flag.d.ts +68 -0
  676. package/{form-field/index.d.ts → types/koobiq-components-form-field.d.ts} +167 -191
  677. package/types/koobiq-components-icon.d.ts +333 -0
  678. package/{inline-edit/index.d.ts → types/koobiq-components-inline-edit.d.ts} +109 -46
  679. package/types/koobiq-components-input.d.ts +477 -0
  680. package/types/koobiq-components-link-deprecated.d.ts +101 -0
  681. package/types/koobiq-components-link.d.ts +176 -0
  682. package/{list/index.d.ts → types/koobiq-components-list.d.ts} +162 -99
  683. package/types/koobiq-components-loader-overlay.d.ts +101 -0
  684. package/{markdown/index.d.ts → types/koobiq-components-markdown.d.ts} +16 -24
  685. package/types/koobiq-components-modal.d.ts +666 -0
  686. package/types/koobiq-components-navbar.d.ts +569 -0
  687. package/types/koobiq-components-notification-center.d.ts +500 -0
  688. package/{overflow-items/index.d.ts → types/koobiq-components-overflow-items.d.ts} +8 -22
  689. package/types/koobiq-components-popover.d.ts +468 -0
  690. package/types/koobiq-components-progress-bar.d.ts +67 -0
  691. package/{progress-spinner/index.d.ts → types/koobiq-components-progress-spinner.d.ts} +33 -10
  692. package/types/koobiq-components-radio.d.ts +294 -0
  693. package/{resizer/index.d.ts → types/koobiq-components-resizer.d.ts} +37 -2
  694. package/{scrollbar/index.d.ts → types/koobiq-components-scrollbar-deprecated.d.ts} +18 -1
  695. package/types/koobiq-components-scrollbar.d.ts +154 -0
  696. package/types/koobiq-components-search-expandable.d.ts +164 -0
  697. package/{select/index.d.ts → types/koobiq-components-select.d.ts} +360 -167
  698. package/types/koobiq-components-sidebar.d.ts +152 -0
  699. package/types/koobiq-components-sidepanel.d.ts +436 -0
  700. package/types/koobiq-components-skeleton.d.ts +234 -0
  701. package/types/koobiq-components-split-button.d.ts +65 -0
  702. package/{splitter/index.d.ts → types/koobiq-components-splitter-deprecated.d.ts} +44 -1
  703. package/types/koobiq-components-splitter.d.ts +406 -0
  704. package/types/koobiq-components-table.d.ts +44 -0
  705. package/types/koobiq-components-tabs.d.ts +888 -0
  706. package/{tags/index.d.ts → types/koobiq-components-tags.d.ts} +249 -133
  707. package/types/koobiq-components-textarea.d.ts +178 -0
  708. package/{time-range/index.d.ts → types/koobiq-components-time-range.d.ts} +135 -62
  709. package/types/koobiq-components-timepicker.d.ts +223 -0
  710. package/types/koobiq-components-timezone.d.ts +266 -0
  711. package/types/koobiq-components-title.d.ts +184 -0
  712. package/types/koobiq-components-toast.d.ts +289 -0
  713. package/types/koobiq-components-toggle.d.ts +121 -0
  714. package/types/koobiq-components-tooltip.d.ts +610 -0
  715. package/types/koobiq-components-top-bar.d.ts +61 -0
  716. package/types/koobiq-components-tree-select.d.ts +667 -0
  717. package/types/koobiq-components-tree.d.ts +1290 -0
  718. package/types/koobiq-components-username.d.ts +340 -0
  719. package/username/_username-theme.scss +35 -0
  720. package/username/username.scss +10 -34
  721. package/app-switcher/index.d.ts +0 -276
  722. package/autocomplete/index.d.ts +0 -286
  723. package/button/index.d.ts +0 -153
  724. package/button-toggle/index.d.ts +0 -162
  725. package/checkbox/index.d.ts +0 -163
  726. package/clamped-text/index.d.ts +0 -146
  727. package/core/styles/_tokens.scss +0 -7
  728. package/core/styles/common/_clearfix.scss +0 -13
  729. package/core/styles/common/_popup.scss +0 -6
  730. package/core/styles/functions/_index.scss +0 -3
  731. package/core/styles/functions/_number.scss +0 -60
  732. package/core/styles/functions/_string.scss +0 -18
  733. package/core/styles/theming/scrollbar-tokens.scss +0 -25
  734. package/core/styles/typography/_typography-utils.scss +0 -84
  735. package/divider/index.d.ts +0 -20
  736. package/dl/index.d.ts +0 -45
  737. package/ellipsis-center/index.d.ts +0 -71
  738. package/empty-state/index.d.ts +0 -45
  739. package/flag/index.d.ts +0 -44
  740. package/icon/index.d.ts +0 -200
  741. package/input/index.d.ts +0 -354
  742. package/link/index.d.ts +0 -56
  743. package/loader-overlay/index.d.ts +0 -57
  744. package/modal/index.d.ts +0 -339
  745. package/navbar/index.d.ts +0 -372
  746. package/notification-center/index.d.ts +0 -323
  747. package/popover/index.d.ts +0 -182
  748. package/prebuilt-themes/dark-theme.css +0 -1
  749. package/prebuilt-themes/light-theme.css +0 -1
  750. package/progress-bar/index.d.ts +0 -31
  751. package/radio/index.d.ts +0 -203
  752. package/search-expandable/index.d.ts +0 -101
  753. package/sidebar/index.d.ts +0 -94
  754. package/sidepanel/index.d.ts +0 -272
  755. package/skeleton/index.d.ts +0 -26
  756. package/split-button/index.d.ts +0 -46
  757. package/table/index.d.ts +0 -25
  758. package/tabs/index.d.ts +0 -677
  759. package/textarea/index.d.ts +0 -138
  760. package/timepicker/index.d.ts +0 -197
  761. package/timezone/index.d.ts +0 -125
  762. package/title/index.d.ts +0 -139
  763. package/toast/index.d.ts +0 -178
  764. package/toggle/index.d.ts +0 -104
  765. package/tooltip/index.d.ts +0 -335
  766. package/top-bar/index.d.ts +0 -33
  767. package/tree/index.d.ts +0 -802
  768. package/tree-select/index.d.ts +0 -475
  769. package/username/index.d.ts +0 -194
  770. /package/{dynamic-translation/index.d.ts → types/koobiq-components-dynamic-translation.d.ts} +0 -0
  771. /package/{index.d.ts → types/koobiq-components.d.ts} +0 -0
@@ -1,11 +1,11 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Renderer2, signal, computed, Directive, input, numberAttribute, booleanAttribute, contentChildren, contentChild, output, NgModule } from '@angular/core';
2
+ import { inject, Renderer2, signal, computed, Directive, input, numberAttribute, booleanAttribute, untracked, DestroyRef, contentChildren, contentChild, output, NgModule } from '@angular/core';
3
3
  import { SharedResizeObserver } from '@angular/cdk/observers/private';
4
4
  import { Platform } from '@angular/cdk/platform';
5
5
  import { DOCUMENT } from '@angular/common';
6
6
  import { toSignal, outputToObservable, toObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
7
  import { kbqInjectNativeElement, KBQ_WINDOW } from '@koobiq/components/core';
8
- import { merge, switchMap, skip, debounceTime } from 'rxjs';
8
+ import { merge, switchMap, skip, debounce, timer } from 'rxjs';
9
9
 
10
10
  /**
11
11
  * Manages the visibility of the element.
@@ -15,7 +15,7 @@ import { merge, switchMap, skip, debounceTime } from 'rxjs';
15
15
  class ElementVisibilityManager {
16
16
  constructor() {
17
17
  this.renderer = inject(Renderer2);
18
- this.hiddenState = signal(false, ...(ngDevMode ? [{ debugName: "hiddenState" }] : []));
18
+ this.hiddenState = signal(false, ...(ngDevMode ? [{ debugName: "hiddenState" }] : /* istanbul ignore next */ []));
19
19
  /**
20
20
  * @docs-private
21
21
  */
@@ -25,7 +25,7 @@ class ElementVisibilityManager {
25
25
  *
26
26
  * @docs-private
27
27
  */
28
- this.hidden = computed(() => this.hiddenState(), ...(ngDevMode ? [{ debugName: "hidden" }] : []));
28
+ this.hidden = computed(() => this.hiddenState(), ...(ngDevMode ? [{ debugName: "hidden" }] : /* istanbul ignore next */ []));
29
29
  }
30
30
  /**
31
31
  * Hides the element.
@@ -47,10 +47,10 @@ class ElementVisibilityManager {
47
47
  this.renderer.removeStyle(this.element, 'position');
48
48
  this.hiddenState.set(false);
49
49
  }
50
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: ElementVisibilityManager, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
51
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.30", type: ElementVisibilityManager, isStandalone: true, host: { properties: { "attr.aria-hidden": "hidden()", "class.kbq-overflow-item-hidden": "hidden()" } }, ngImport: i0 }); }
50
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ElementVisibilityManager, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
51
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: ElementVisibilityManager, isStandalone: true, host: { properties: { "attr.aria-hidden": "hidden()", "class.kbq-overflow-item-hidden": "hidden()" } }, ngImport: i0 }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: ElementVisibilityManager, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ElementVisibilityManager, decorators: [{
54
54
  type: Directive,
55
55
  args: [{
56
56
  host: {
@@ -63,10 +63,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImpo
63
63
  * Directive for displaying the result of hidden items by the `KbqOverflowItems` directive.
64
64
  */
65
65
  class KbqOverflowItemsResult extends ElementVisibilityManager {
66
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsResult, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
67
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.30", type: KbqOverflowItemsResult, isStandalone: true, selector: "[kbqOverflowItemsResult]", host: { classAttribute: "kbq-overflow-items-result" }, exportAs: ["kbqOverflowItemsResult"], usesInheritance: true, ngImport: i0 }); }
66
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsResult, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
67
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: KbqOverflowItemsResult, isStandalone: true, selector: "[kbqOverflowItemsResult]", host: { classAttribute: "kbq-overflow-items-result" }, exportAs: ["kbqOverflowItemsResult"], usesInheritance: true, ngImport: i0 }); }
68
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsResult, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsResult, decorators: [{
70
70
  type: Directive,
71
71
  args: [{
72
72
  selector: '[kbqOverflowItemsResult]',
@@ -83,30 +83,30 @@ class KbqOverflowItem extends ElementVisibilityManager {
83
83
  /**
84
84
  * Unique identifier for the item.
85
85
  */
86
- this.id = input.required(...(ngDevMode ? [{ debugName: "id", alias: 'kbqOverflowItem' }] : [{ alias: 'kbqOverflowItem' }]));
86
+ this.id = input.required({ ...(ngDevMode ? { debugName: "id" } : /* istanbul ignore next */ {}), alias: 'kbqOverflowItem' });
87
87
  /**
88
88
  * Defines the order in which the item is processed in the overflow container,
89
89
  * without changing its original position in the `QueryList`.
90
90
  */
91
- this.order = input(null, ...(ngDevMode ? [{ debugName: "order", transform: numberAttribute }] : [{ transform: numberAttribute }]));
91
+ this.order = input(null, { ...(ngDevMode ? { debugName: "order" } : /* istanbul ignore next */ {}), transform: numberAttribute });
92
92
  /**
93
- * Element with this attribute will be ignored when hiding and will always remain visible.
94
- * @default false
93
+ * Element with this attribute will be ignored when hiding and will always remain visible. Defaults to `false`.
95
94
  */
96
- this.alwaysVisible = input(false, ...(ngDevMode ? [{ debugName: "alwaysVisible", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
95
+ this.alwaysVisible = input(false, { ...(ngDevMode ? { debugName: "alwaysVisible" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
97
96
  }
98
97
  /**
99
98
  * @docs-private
100
99
  */
101
100
  hide() {
102
- if (this.alwaysVisible())
101
+ // Untracked: called from a consumer's `effect()`, `alwaysVisible` would make the effect run again when it changes.
102
+ if (untracked(this.alwaysVisible))
103
103
  return;
104
104
  super.hide();
105
105
  }
106
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItem, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
107
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.30", type: KbqOverflowItem, isStandalone: true, selector: "[kbqOverflowItem]", inputs: { id: { classPropertyName: "id", publicName: "kbqOverflowItem", isSignal: true, isRequired: true, transformFunction: null }, order: { classPropertyName: "order", publicName: "order", isSignal: true, isRequired: false, transformFunction: null }, alwaysVisible: { classPropertyName: "alwaysVisible", publicName: "alwaysVisible", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.kbq-overflow-item_always-visible": "alwaysVisible()" }, classAttribute: "kbq-overflow-item" }, exportAs: ["kbqOverflowItem"], usesInheritance: true, ngImport: i0 }); }
106
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItem, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
107
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.25", type: KbqOverflowItem, isStandalone: true, selector: "[kbqOverflowItem]", inputs: { id: { classPropertyName: "id", publicName: "kbqOverflowItem", isSignal: true, isRequired: true, transformFunction: null }, order: { classPropertyName: "order", publicName: "order", isSignal: true, isRequired: false, transformFunction: null }, alwaysVisible: { classPropertyName: "alwaysVisible", publicName: "alwaysVisible", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.kbq-overflow-item_always-visible": "alwaysVisible()" }, classAttribute: "kbq-overflow-item" }, exportAs: ["kbqOverflowItem"], usesInheritance: true, ngImport: i0 }); }
108
108
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItem, decorators: [{
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItem, decorators: [{
110
110
  type: Directive,
111
111
  args: [{
112
112
  selector: '[kbqOverflowItem]',
@@ -123,6 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImpo
123
123
  class KbqOverflowItems {
124
124
  constructor() {
125
125
  this.element = kbqInjectNativeElement();
126
+ this.destroyRef = inject(DestroyRef);
126
127
  this.resizeObserver = inject(SharedResizeObserver);
127
128
  this.renderer = inject(Renderer2);
128
129
  this.document = inject(DOCUMENT);
@@ -131,34 +132,28 @@ class KbqOverflowItems {
131
132
  /**
132
133
  * `KbqOverflowItem` directive references.
133
134
  */
134
- this.items = contentChildren(KbqOverflowItem, ...(ngDevMode ? [{ debugName: "items" }] : []));
135
+ this.items = contentChildren(KbqOverflowItem, ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
135
136
  /**
136
137
  * `KbqOverflowItemsResult` directive reference.
137
138
  */
138
- this.result = contentChild(KbqOverflowItemsResult, ...(ngDevMode ? [{ debugName: "result" }] : []));
139
+ this.result = contentChild(KbqOverflowItemsResult, ...(ngDevMode ? [{ debugName: "result" }] : /* istanbul ignore next */ []));
139
140
  /**
140
- * Whether the overflow order should be reversed.
141
+ * Whether the overflow order should be reversed. Defaults to `false`.
141
142
  *
142
143
  * @example
143
- * ```
144
+ * ```text
144
145
  * [0, 1, hidden, hidden] ---> [hidden, hidden, 2, 3]
145
146
  * ```
146
- *
147
- * @default false
148
147
  */
149
- this.reverseOverflowOrder = input(false, ...(ngDevMode ? [{ debugName: "reverseOverflowOrder", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
148
+ this.reverseOverflowOrder = input(false, { ...(ngDevMode ? { debugName: "reverseOverflowOrder" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
150
149
  /**
151
- * Debounce time for recalculating items visibility.
152
- *
153
- * @default 0
150
+ * Debounce time for recalculating items visibility. Defaults to `0`.
154
151
  */
155
- this.debounceTime = input(0, ...(ngDevMode ? [{ debugName: "debounceTime", transform: numberAttribute }] : [{ transform: numberAttribute }]));
152
+ this.debounceTime = input(0, { ...(ngDevMode ? { debugName: "debounceTime" } : /* istanbul ignore next */ {}), transform: numberAttribute });
156
153
  /**
157
- * List of additional elements to observe for resize changes.
158
- *
159
- * @default document.body
154
+ * List of additional elements to observe for resize changes. Defaults to `document.body`.
160
155
  */
161
- this.additionalResizeObserverTargets = input(this.document.body, ...(ngDevMode ? [{ debugName: "additionalResizeObserverTargets" }] : []));
156
+ this.additionalResizeObserverTargets = input(this.document.body, ...(ngDevMode ? [{ debugName: "additionalResizeObserverTargets" }] : /* istanbul ignore next */ []));
162
157
  /**
163
158
  * Emits when the set of hidden items changes.
164
159
  */
@@ -170,17 +165,13 @@ class KbqOverflowItems {
170
165
  initialValue: new Set([])
171
166
  });
172
167
  /**
173
- * Defines the orientation of the overflow items.
174
- *
175
- * @default 'horizontal'
168
+ * Defines the orientation of the overflow items. Defaults to `'horizontal'`.
176
169
  */
177
- this.orientation = input('horizontal', ...(ngDevMode ? [{ debugName: "orientation" }] : []));
170
+ this.orientation = input('horizontal', ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
178
171
  /**
179
- * Defines the wrap of the overflow items.
180
- *
181
- * @default 'nowrap'
172
+ * Defines the wrap of the overflow items. Defaults to `'nowrap'`.
182
173
  */
183
- this.wrap = input('nowrap', ...(ngDevMode ? [{ debugName: "wrap" }] : []));
174
+ this.wrap = input('nowrap', ...(ngDevMode ? [{ debugName: "wrap" }] : /* istanbul ignore next */ []));
184
175
  this.orientationConfig = {
185
176
  horizontal: {
186
177
  containerSize: (element) => element.getBoundingClientRect().width,
@@ -221,7 +212,9 @@ class KbqOverflowItems {
221
212
  : this.resizeObserver.observe(targets);
222
213
  })));
223
214
  merge(toObservable(this.items), toObservable(this.reverseOverflowOrder).pipe(skip(1)), toObservable(this.orientation).pipe(skip(1)), resizeObservers)
224
- .pipe(debounceTime(this.debounceTime()), takeUntilDestroyed())
215
+ .pipe(
216
+ // Read per emission: the constructor that builds this runs before the input is set.
217
+ debounce(() => timer(this.debounceTime())), takeUntilDestroyed(this.destroyRef))
225
218
  .subscribe(() => {
226
219
  const hiddenItems = this.getHiddenItems(this.sortItemsByOrder(this.items()), this.reverseOverflowOrder(), this.result(), this.element, this.orientation());
227
220
  const hiddenItemIDs = new Set(hiddenItems.map(({ id }) => id()));
@@ -246,7 +239,7 @@ class KbqOverflowItems {
246
239
  while (this.hasOverflown(container, items, result, orientation)) {
247
240
  const itemToHide = reverseOverflowOrder
248
241
  ? items.find(({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible())
249
- : this.findLast(items, ({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible());
242
+ : items.findLast(({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible());
250
243
  if (!itemToHide)
251
244
  break;
252
245
  itemToHide.hide();
@@ -263,13 +256,13 @@ class KbqOverflowItems {
263
256
  this.renderer.setStyle(this.element, 'display', 'flex');
264
257
  this.renderer.setStyle(this.element, 'flex-grow', '1');
265
258
  toObservable(this.orientation)
266
- .pipe(takeUntilDestroyed())
259
+ .pipe(takeUntilDestroyed(this.destroyRef))
267
260
  .subscribe((orientation) => {
268
261
  const { flexDirection } = this.orientationConfig[orientation];
269
262
  this.renderer.setStyle(this.element, 'flex-direction', flexDirection);
270
263
  });
271
264
  toObservable(this.wrap)
272
- .pipe(takeUntilDestroyed())
265
+ .pipe(takeUntilDestroyed(this.destroyRef))
273
266
  .subscribe((wrap) => this.renderer.setStyle(this.element, 'flex-wrap', wrap));
274
267
  }
275
268
  hasOverflown(container, items, result, orientation) {
@@ -282,21 +275,10 @@ class KbqOverflowItems {
282
275
  const resultSize = !result || result.hidden() ? 0 : itemSize(result.element);
283
276
  return itemsSize + resultSize > containerSizeWithoutPaddings;
284
277
  }
285
- /**
286
- * @TODO Should be removed when `Array.prototype.findLast` is supported.
287
- */
288
- findLast(array, predicate) {
289
- for (let i = array.length - 1; i >= 0; i--) {
290
- if (predicate(array[i])) {
291
- return array[i];
292
- }
293
- }
294
- return undefined;
295
- }
296
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItems, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
297
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.30", type: KbqOverflowItems, isStandalone: true, selector: "[kbqOverflowItems]", inputs: { reverseOverflowOrder: { classPropertyName: "reverseOverflowOrder", publicName: "reverseOverflowOrder", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, additionalResizeObserverTargets: { classPropertyName: "additionalResizeObserverTargets", publicName: "additionalResizeObserverTargets", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, wrap: { classPropertyName: "wrap", publicName: "wrap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { changes: "changes" }, host: { classAttribute: "kbq-overflow-items" }, queries: [{ propertyName: "items", predicate: KbqOverflowItem, isSignal: true }, { propertyName: "result", first: true, predicate: KbqOverflowItemsResult, descendants: true, isSignal: true }], exportAs: ["kbqOverflowItems"], ngImport: i0 }); }
278
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItems, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
279
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.25", type: KbqOverflowItems, isStandalone: true, selector: "[kbqOverflowItems]", inputs: { reverseOverflowOrder: { classPropertyName: "reverseOverflowOrder", publicName: "reverseOverflowOrder", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, additionalResizeObserverTargets: { classPropertyName: "additionalResizeObserverTargets", publicName: "additionalResizeObserverTargets", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, wrap: { classPropertyName: "wrap", publicName: "wrap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { changes: "changes" }, host: { classAttribute: "kbq-overflow-items" }, queries: [{ propertyName: "items", predicate: KbqOverflowItem, isSignal: true }, { propertyName: "result", first: true, predicate: KbqOverflowItemsResult, descendants: true, isSignal: true }], exportAs: ["kbqOverflowItems"], ngImport: i0 }); }
298
280
  }
299
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItems, decorators: [{
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItems, decorators: [{
300
282
  type: Directive,
301
283
  args: [{
302
284
  selector: '[kbqOverflowItems]',
@@ -311,15 +293,15 @@ const COMPONENTS = [
311
293
  KbqOverflowItemsResult
312
294
  ];
313
295
  class KbqOverflowItemsModule {
314
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
315
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsModule, imports: [KbqOverflowItems,
296
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
297
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsModule, imports: [KbqOverflowItems,
316
298
  KbqOverflowItem,
317
299
  KbqOverflowItemsResult], exports: [KbqOverflowItems,
318
300
  KbqOverflowItem,
319
301
  KbqOverflowItemsResult] }); }
320
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsModule }); }
302
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsModule }); }
321
303
  }
322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.30", ngImport: i0, type: KbqOverflowItemsModule, decorators: [{
304
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: KbqOverflowItemsModule, decorators: [{
323
305
  type: NgModule,
324
306
  args: [{
325
307
  imports: COMPONENTS,
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-overflow-items.mjs","sources":["../../../packages/components/overflow-items/overflow-items.ts","../../../packages/components/overflow-items/module.ts","../../../packages/components/overflow-items/koobiq-components-overflow-items.ts"],"sourcesContent":["import { SharedResizeObserver } from '@angular/cdk/observers/private';\nimport { Platform } from '@angular/cdk/platform';\nimport { DOCUMENT } from '@angular/common';\nimport {\n booleanAttribute,\n computed,\n contentChild,\n contentChildren,\n Directive,\n inject,\n input,\n numberAttribute,\n output,\n Renderer2,\n signal\n} from '@angular/core';\nimport { outputToObservable, takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport {\n KBQ_WINDOW,\n KbqFlexDirection,\n KbqFlexWrap,\n kbqInjectNativeElement,\n KbqOrientation\n} from '@koobiq/components/core';\nimport { debounceTime, merge, skip, switchMap } from 'rxjs';\n\n/**\n * Manages the visibility of the element.\n *\n * @docs-private\n */\n@Directive({\n host: {\n '[attr.aria-hidden]': 'hidden()',\n '[class.kbq-overflow-item-hidden]': 'hidden()'\n }\n})\nexport class ElementVisibilityManager {\n private readonly renderer = inject(Renderer2);\n private readonly hiddenState = signal(false);\n\n /**\n * @docs-private\n */\n readonly element = kbqInjectNativeElement();\n\n /**\n * Whether the element is hidden.\n *\n * @docs-private\n */\n readonly hidden = computed(() => this.hiddenState());\n\n /**\n * Hides the element.\n *\n * @docs-private\n */\n hide(): void {\n this.renderer.setStyle(this.element, 'visibility', 'hidden');\n this.renderer.setStyle(this.element, 'position', 'absolute');\n this.hiddenState.set(true);\n }\n\n /**\n * Shows the element.\n *\n * @docs-private\n */\n show(): void {\n this.renderer.removeStyle(this.element, 'visibility');\n this.renderer.removeStyle(this.element, 'position');\n this.hiddenState.set(false);\n }\n}\n\n/**\n * Directive for displaying the result of hidden items by the `KbqOverflowItems` directive.\n */\n@Directive({\n selector: '[kbqOverflowItemsResult]',\n host: { class: 'kbq-overflow-items-result' },\n exportAs: 'kbqOverflowItemsResult'\n})\nexport class KbqOverflowItemsResult extends ElementVisibilityManager {}\n\n/**\n * Directive for the item that can be hidden by the `KbqOverflowItems` directive.\n */\n@Directive({\n selector: '[kbqOverflowItem]',\n host: {\n class: 'kbq-overflow-item',\n '[class.kbq-overflow-item_always-visible]': 'alwaysVisible()'\n },\n exportAs: 'kbqOverflowItem'\n})\nexport class KbqOverflowItem extends ElementVisibilityManager {\n /**\n * Unique identifier for the item.\n */\n readonly id = input.required({ alias: 'kbqOverflowItem' });\n /**\n * Defines the order in which the item is processed in the overflow container,\n * without changing its original position in the `QueryList`.\n */\n readonly order = input(null, { transform: numberAttribute });\n /**\n * Element with this attribute will be ignored when hiding and will always remain visible.\n * @default false\n */\n readonly alwaysVisible = input(false, { transform: booleanAttribute });\n\n /**\n * @docs-private\n */\n override hide(): void {\n if (this.alwaysVisible()) return;\n\n super.hide();\n }\n}\n\n/**\n * Directive for managing the visibility of items that overflow the container.\n */\n@Directive({\n selector: '[kbqOverflowItems]',\n host: { class: 'kbq-overflow-items' },\n exportAs: 'kbqOverflowItems'\n})\nexport class KbqOverflowItems {\n private readonly element = kbqInjectNativeElement();\n private readonly resizeObserver = inject(SharedResizeObserver);\n private readonly renderer = inject(Renderer2);\n private readonly document = inject(DOCUMENT);\n private readonly window = inject(KBQ_WINDOW);\n private readonly platform = inject(Platform);\n\n /**\n * `KbqOverflowItem` directive references.\n */\n private readonly items = contentChildren(KbqOverflowItem);\n\n /**\n * `KbqOverflowItemsResult` directive reference.\n */\n private readonly result = contentChild(KbqOverflowItemsResult);\n\n /**\n * Whether the overflow order should be reversed.\n *\n * @example\n * ```\n * [0, 1, hidden, hidden] ---> [hidden, hidden, 2, 3]\n * ```\n *\n * @default false\n */\n readonly reverseOverflowOrder = input(false, { transform: booleanAttribute });\n\n /**\n * Debounce time for recalculating items visibility.\n *\n * @default 0\n */\n readonly debounceTime = input(0, { transform: numberAttribute });\n\n /**\n * List of additional elements to observe for resize changes.\n *\n * @default document.body\n */\n readonly additionalResizeObserverTargets = input<Element | Element[]>(this.document.body);\n\n /**\n * Emits when the set of hidden items changes.\n */\n readonly changes = output<ReadonlySet<unknown>>();\n\n /**\n * Set of hidden item IDs.\n */\n readonly hiddenItemIDs = toSignal(outputToObservable(this.changes), {\n initialValue: new Set<unknown>([]) as ReadonlySet<unknown>\n });\n\n /**\n * Defines the orientation of the overflow items.\n *\n * @default 'horizontal'\n */\n readonly orientation = input<KbqOrientation>('horizontal');\n\n /**\n * Defines the wrap of the overflow items.\n *\n * @default 'nowrap'\n */\n readonly wrap = input<KbqFlexWrap>('nowrap');\n\n private readonly orientationConfig: Record<\n KbqOrientation,\n {\n containerSize: (element: HTMLElement) => number;\n paddingStart: (computedStyle: CSSStyleDeclaration) => number;\n paddingEnd: (computedStyle: CSSStyleDeclaration) => number;\n itemSize: (element: HTMLElement) => number;\n isCrossAxisExceeded: (element: HTMLElement) => boolean;\n flexDirection: KbqFlexDirection;\n }\n > = {\n horizontal: {\n containerSize: (element) => element.getBoundingClientRect().width,\n paddingStart: ({ paddingLeft }) => parseFloat(paddingLeft) || 0,\n paddingEnd: ({ paddingRight }) => parseFloat(paddingRight) || 0,\n itemSize: (element) => {\n const { marginRight, marginLeft } = this.window.getComputedStyle(element);\n\n return (\n element.getBoundingClientRect().width +\n (parseFloat(marginLeft) || 0) +\n (parseFloat(marginRight) || 0)\n );\n },\n isCrossAxisExceeded: ({ clientHeight, scrollHeight }) => scrollHeight > clientHeight,\n flexDirection: 'row'\n },\n vertical: {\n containerSize: (element) => element.getBoundingClientRect().height,\n paddingStart: ({ paddingTop }) => parseFloat(paddingTop) || 0,\n paddingEnd: ({ paddingBottom }) => parseFloat(paddingBottom) || 0,\n itemSize: (element) => {\n const { marginTop, marginBottom } = this.window.getComputedStyle(element);\n\n return (\n element.getBoundingClientRect().height +\n (parseFloat(marginTop) || 0) +\n (parseFloat(marginBottom) || 0)\n );\n },\n isCrossAxisExceeded: ({ clientWidth, scrollWidth }) => scrollWidth > clientWidth,\n flexDirection: 'column'\n }\n } as const;\n\n constructor() {\n this.setStyles();\n this.setupObservers();\n }\n\n private setupObservers(): void {\n if (!this.platform.isBrowser) return;\n\n const resizeObservers = merge(\n this.resizeObserver.observe(this.element),\n toObservable(this.additionalResizeObserverTargets).pipe(\n switchMap((targets) => {\n return Array.isArray(targets)\n ? merge(...targets.map((target) => this.resizeObserver.observe(target)))\n : this.resizeObserver.observe(targets);\n })\n )\n );\n\n merge(\n toObservable(this.items),\n toObservable(this.reverseOverflowOrder).pipe(skip(1)),\n toObservable(this.orientation).pipe(skip(1)),\n resizeObservers\n )\n .pipe(debounceTime(this.debounceTime()), takeUntilDestroyed())\n .subscribe(() => {\n const hiddenItems = this.getHiddenItems(\n this.sortItemsByOrder(this.items()),\n this.reverseOverflowOrder(),\n this.result(),\n this.element,\n this.orientation()\n );\n const hiddenItemIDs = new Set(hiddenItems.map(({ id }) => id()));\n\n this.changes.emit(hiddenItemIDs);\n });\n }\n\n /**\n * Sort items by their `order` attribute.\n * If an item does not have an `order` defined, its index is used as a fallback.\n */\n private sortItemsByOrder(items: ReadonlyArray<KbqOverflowItem>): ReadonlyArray<KbqOverflowItem> {\n const itemsWithOrder = Array.from(items, (item, index) => ({ item, order: item.order() ?? index }));\n\n return itemsWithOrder.sort((a, b) => a.order - b.order).map(({ item }) => item);\n }\n\n /**\n * Manages the visibility of items based on the available space in the container and returns the hidden items.\n * Direction of hiding is determined by the `reverseOverflowOrder` attribute.\n */\n private getHiddenItems(\n items: ReadonlyArray<KbqOverflowItem>,\n reverseOverflowOrder: boolean,\n result: KbqOverflowItemsResult | undefined,\n container: HTMLElement,\n orientation: KbqOrientation\n ): ReadonlyArray<KbqOverflowItem> {\n result?.hide();\n items.forEach((item) => item.show());\n\n while (this.hasOverflown(container, items, result, orientation)) {\n const itemToHide = reverseOverflowOrder\n ? items.find(({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible())\n : this.findLast(items, ({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible());\n\n if (!itemToHide) break;\n\n itemToHide.hide();\n result?.show();\n }\n\n return items.filter(({ hidden }) => hidden());\n }\n\n /**\n * This method sets the necessary styles for the directive.\n */\n private setStyles(): void {\n this.renderer.setStyle(this.element, 'position', 'relative');\n this.renderer.setStyle(this.element, 'overflow', 'hidden');\n this.renderer.setStyle(this.element, 'display', 'flex');\n this.renderer.setStyle(this.element, 'flex-grow', '1');\n\n toObservable(this.orientation)\n .pipe(takeUntilDestroyed())\n .subscribe((orientation) => {\n const { flexDirection } = this.orientationConfig[orientation];\n\n this.renderer.setStyle(this.element, 'flex-direction', flexDirection);\n });\n\n toObservable(this.wrap)\n .pipe(takeUntilDestroyed())\n .subscribe((wrap) => this.renderer.setStyle(this.element, 'flex-wrap', wrap));\n }\n\n private hasOverflown(\n container: HTMLElement,\n items: ReadonlyArray<KbqOverflowItem>,\n result: KbqOverflowItemsResult | undefined,\n orientation: KbqOrientation\n ): boolean {\n if (this.wrap() === 'wrap') return this.orientationConfig[orientation].isCrossAxisExceeded(container);\n\n const { containerSize, paddingStart, paddingEnd, itemSize } = this.orientationConfig[orientation];\n const computedStyle = this.window.getComputedStyle(container);\n const containerSizeWithoutPaddings =\n containerSize(container) - paddingStart(computedStyle) - paddingEnd(computedStyle);\n const itemsSize = items.reduce((size, item) => size + (item.hidden() ? 0 : itemSize(item.element)), 0);\n const resultSize = !result || result.hidden() ? 0 : itemSize(result.element);\n\n return itemsSize + resultSize > containerSizeWithoutPaddings;\n }\n\n /**\n * @TODO Should be removed when `Array.prototype.findLast` is supported.\n */\n private findLast<T>(array: ReadonlyArray<T>, predicate: (item: T) => boolean): T | undefined {\n for (let i = array.length - 1; i >= 0; i--) {\n if (predicate(array[i])) {\n return array[i];\n }\n }\n\n return undefined;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { KbqOverflowItem, KbqOverflowItems, KbqOverflowItemsResult } from './overflow-items';\n\nconst COMPONENTS = [\n KbqOverflowItems,\n KbqOverflowItem,\n KbqOverflowItemsResult\n];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class KbqOverflowItemsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-overflow-items.mjs","sources":["../../../packages/components/overflow-items/overflow-items.ts","../../../packages/components/overflow-items/module.ts","../../../packages/components/overflow-items/koobiq-components-overflow-items.ts"],"sourcesContent":["import { SharedResizeObserver } from '@angular/cdk/observers/private';\nimport { Platform } from '@angular/cdk/platform';\nimport { DOCUMENT } from '@angular/common';\nimport {\n booleanAttribute,\n computed,\n contentChild,\n contentChildren,\n DestroyRef,\n Directive,\n inject,\n input,\n numberAttribute,\n output,\n Renderer2,\n signal,\n untracked\n} from '@angular/core';\nimport { outputToObservable, takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport {\n KBQ_WINDOW,\n KbqFlexDirection,\n KbqFlexWrap,\n kbqInjectNativeElement,\n KbqOrientation\n} from '@koobiq/components/core';\nimport { debounce, merge, skip, switchMap, timer } from 'rxjs';\n\n/**\n * Manages the visibility of the element.\n *\n * @docs-private\n */\n@Directive({\n host: {\n '[attr.aria-hidden]': 'hidden()',\n '[class.kbq-overflow-item-hidden]': 'hidden()'\n }\n})\nexport class ElementVisibilityManager {\n private readonly renderer = inject(Renderer2);\n private readonly hiddenState = signal(false);\n\n /**\n * @docs-private\n */\n readonly element = kbqInjectNativeElement();\n\n /**\n * Whether the element is hidden.\n *\n * @docs-private\n */\n readonly hidden = computed(() => this.hiddenState());\n\n /**\n * Hides the element.\n *\n * @docs-private\n */\n hide(): void {\n this.renderer.setStyle(this.element, 'visibility', 'hidden');\n this.renderer.setStyle(this.element, 'position', 'absolute');\n this.hiddenState.set(true);\n }\n\n /**\n * Shows the element.\n *\n * @docs-private\n */\n show(): void {\n this.renderer.removeStyle(this.element, 'visibility');\n this.renderer.removeStyle(this.element, 'position');\n this.hiddenState.set(false);\n }\n}\n\n/**\n * Directive for displaying the result of hidden items by the `KbqOverflowItems` directive.\n */\n@Directive({\n selector: '[kbqOverflowItemsResult]',\n host: { class: 'kbq-overflow-items-result' },\n exportAs: 'kbqOverflowItemsResult'\n})\nexport class KbqOverflowItemsResult extends ElementVisibilityManager {}\n\n/**\n * Directive for the item that can be hidden by the `KbqOverflowItems` directive.\n */\n@Directive({\n selector: '[kbqOverflowItem]',\n host: {\n class: 'kbq-overflow-item',\n '[class.kbq-overflow-item_always-visible]': 'alwaysVisible()'\n },\n exportAs: 'kbqOverflowItem'\n})\nexport class KbqOverflowItem extends ElementVisibilityManager {\n /**\n * Unique identifier for the item.\n */\n readonly id = input.required({ alias: 'kbqOverflowItem' });\n\n /**\n * Defines the order in which the item is processed in the overflow container,\n * without changing its original position in the `QueryList`.\n */\n readonly order = input(null, { transform: numberAttribute });\n\n /**\n * Element with this attribute will be ignored when hiding and will always remain visible. Defaults to `false`.\n */\n readonly alwaysVisible = input(false, { transform: booleanAttribute });\n\n /**\n * @docs-private\n */\n override hide(): void {\n // Untracked: called from a consumer's `effect()`, `alwaysVisible` would make the effect run again when it changes.\n if (untracked(this.alwaysVisible)) return;\n\n super.hide();\n }\n}\n\n/**\n * Directive for managing the visibility of items that overflow the container.\n */\n@Directive({\n selector: '[kbqOverflowItems]',\n host: { class: 'kbq-overflow-items' },\n exportAs: 'kbqOverflowItems'\n})\nexport class KbqOverflowItems {\n private readonly element = kbqInjectNativeElement();\n private readonly destroyRef = inject(DestroyRef);\n private readonly resizeObserver = inject(SharedResizeObserver);\n private readonly renderer = inject(Renderer2);\n private readonly document = inject(DOCUMENT);\n private readonly window = inject(KBQ_WINDOW);\n private readonly platform = inject(Platform);\n\n /**\n * `KbqOverflowItem` directive references.\n */\n private readonly items = contentChildren(KbqOverflowItem);\n\n /**\n * `KbqOverflowItemsResult` directive reference.\n */\n private readonly result = contentChild(KbqOverflowItemsResult);\n\n /**\n * Whether the overflow order should be reversed. Defaults to `false`.\n *\n * @example\n * ```text\n * [0, 1, hidden, hidden] ---> [hidden, hidden, 2, 3]\n * ```\n */\n readonly reverseOverflowOrder = input(false, { transform: booleanAttribute });\n\n /**\n * Debounce time for recalculating items visibility. Defaults to `0`.\n */\n readonly debounceTime = input(0, { transform: numberAttribute });\n\n /**\n * List of additional elements to observe for resize changes. Defaults to `document.body`.\n */\n readonly additionalResizeObserverTargets = input<Element | Element[]>(this.document.body);\n\n /**\n * Emits when the set of hidden items changes.\n */\n readonly changes = output<ReadonlySet<unknown>>();\n\n /**\n * Set of hidden item IDs.\n */\n readonly hiddenItemIDs = toSignal(outputToObservable(this.changes), {\n initialValue: new Set<unknown>([]) as ReadonlySet<unknown>\n });\n\n /**\n * Defines the orientation of the overflow items. Defaults to `'horizontal'`.\n */\n readonly orientation = input<KbqOrientation>('horizontal');\n\n /**\n * Defines the wrap of the overflow items. Defaults to `'nowrap'`.\n */\n readonly wrap = input<KbqFlexWrap>('nowrap');\n\n private readonly orientationConfig: Record<\n KbqOrientation,\n {\n containerSize: (element: HTMLElement) => number;\n paddingStart: (computedStyle: CSSStyleDeclaration) => number;\n paddingEnd: (computedStyle: CSSStyleDeclaration) => number;\n itemSize: (element: HTMLElement) => number;\n isCrossAxisExceeded: (element: HTMLElement) => boolean;\n flexDirection: KbqFlexDirection;\n }\n > = {\n horizontal: {\n containerSize: (element) => element.getBoundingClientRect().width,\n paddingStart: ({ paddingLeft }) => parseFloat(paddingLeft) || 0,\n paddingEnd: ({ paddingRight }) => parseFloat(paddingRight) || 0,\n itemSize: (element) => {\n const { marginRight, marginLeft } = this.window.getComputedStyle(element);\n\n return (\n element.getBoundingClientRect().width +\n (parseFloat(marginLeft) || 0) +\n (parseFloat(marginRight) || 0)\n );\n },\n isCrossAxisExceeded: ({ clientHeight, scrollHeight }) => scrollHeight > clientHeight,\n flexDirection: 'row'\n },\n vertical: {\n containerSize: (element) => element.getBoundingClientRect().height,\n paddingStart: ({ paddingTop }) => parseFloat(paddingTop) || 0,\n paddingEnd: ({ paddingBottom }) => parseFloat(paddingBottom) || 0,\n itemSize: (element) => {\n const { marginTop, marginBottom } = this.window.getComputedStyle(element);\n\n return (\n element.getBoundingClientRect().height +\n (parseFloat(marginTop) || 0) +\n (parseFloat(marginBottom) || 0)\n );\n },\n isCrossAxisExceeded: ({ clientWidth, scrollWidth }) => scrollWidth > clientWidth,\n flexDirection: 'column'\n }\n } as const;\n\n constructor() {\n this.setStyles();\n this.setupObservers();\n }\n\n private setupObservers(): void {\n if (!this.platform.isBrowser) return;\n\n const resizeObservers = merge(\n this.resizeObserver.observe(this.element),\n toObservable(this.additionalResizeObserverTargets).pipe(\n switchMap((targets) => {\n return Array.isArray(targets)\n ? merge(...targets.map((target) => this.resizeObserver.observe(target)))\n : this.resizeObserver.observe(targets);\n })\n )\n );\n\n merge(\n toObservable(this.items),\n toObservable(this.reverseOverflowOrder).pipe(skip(1)),\n toObservable(this.orientation).pipe(skip(1)),\n resizeObservers\n )\n .pipe(\n // Read per emission: the constructor that builds this runs before the input is set.\n debounce(() => timer(this.debounceTime())),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(() => {\n const hiddenItems = this.getHiddenItems(\n this.sortItemsByOrder(this.items()),\n this.reverseOverflowOrder(),\n this.result(),\n this.element,\n this.orientation()\n );\n const hiddenItemIDs = new Set(hiddenItems.map(({ id }) => id()));\n\n this.changes.emit(hiddenItemIDs);\n });\n }\n\n /**\n * Sort items by their `order` attribute.\n * If an item does not have an `order` defined, its index is used as a fallback.\n */\n private sortItemsByOrder(items: ReadonlyArray<KbqOverflowItem>): ReadonlyArray<KbqOverflowItem> {\n const itemsWithOrder = Array.from(items, (item, index) => ({ item, order: item.order() ?? index }));\n\n return itemsWithOrder.sort((a, b) => a.order - b.order).map(({ item }) => item);\n }\n\n /**\n * Manages the visibility of items based on the available space in the container and returns the hidden items.\n * Direction of hiding is determined by the `reverseOverflowOrder` attribute.\n */\n private getHiddenItems(\n items: ReadonlyArray<KbqOverflowItem>,\n reverseOverflowOrder: boolean,\n result: KbqOverflowItemsResult | undefined,\n container: HTMLElement,\n orientation: KbqOrientation\n ): ReadonlyArray<KbqOverflowItem> {\n result?.hide();\n items.forEach((item) => item.show());\n\n while (this.hasOverflown(container, items, result, orientation)) {\n const itemToHide = reverseOverflowOrder\n ? items.find(({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible())\n : items.findLast(({ hidden, alwaysVisible }) => !hidden() && !alwaysVisible());\n\n if (!itemToHide) break;\n\n itemToHide.hide();\n result?.show();\n }\n\n return items.filter(({ hidden }) => hidden());\n }\n\n /**\n * This method sets the necessary styles for the directive.\n */\n private setStyles(): void {\n this.renderer.setStyle(this.element, 'position', 'relative');\n this.renderer.setStyle(this.element, 'overflow', 'hidden');\n this.renderer.setStyle(this.element, 'display', 'flex');\n this.renderer.setStyle(this.element, 'flex-grow', '1');\n\n toObservable(this.orientation)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((orientation) => {\n const { flexDirection } = this.orientationConfig[orientation];\n\n this.renderer.setStyle(this.element, 'flex-direction', flexDirection);\n });\n\n toObservable(this.wrap)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((wrap) => this.renderer.setStyle(this.element, 'flex-wrap', wrap));\n }\n\n private hasOverflown(\n container: HTMLElement,\n items: ReadonlyArray<KbqOverflowItem>,\n result: KbqOverflowItemsResult | undefined,\n orientation: KbqOrientation\n ): boolean {\n if (this.wrap() === 'wrap') return this.orientationConfig[orientation].isCrossAxisExceeded(container);\n\n const { containerSize, paddingStart, paddingEnd, itemSize } = this.orientationConfig[orientation];\n const computedStyle = this.window.getComputedStyle(container);\n const containerSizeWithoutPaddings =\n containerSize(container) - paddingStart(computedStyle) - paddingEnd(computedStyle);\n const itemsSize = items.reduce((size, item) => size + (item.hidden() ? 0 : itemSize(item.element)), 0);\n const resultSize = !result || result.hidden() ? 0 : itemSize(result.element);\n\n return itemsSize + resultSize > containerSizeWithoutPaddings;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { KbqOverflowItem, KbqOverflowItems, KbqOverflowItemsResult } from './overflow-items';\n\nconst COMPONENTS = [\n KbqOverflowItems,\n KbqOverflowItem,\n KbqOverflowItemsResult\n];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class KbqOverflowItemsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}