@koobiq/components 18.35.0 → 18.37.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 (626) hide show
  1. package/accordion/accordion.component.d.ts +1 -1
  2. package/app-switcher/_app-switcher-theme.scss +34 -0
  3. package/app-switcher/app-switcher-animations.d.ts +5 -0
  4. package/app-switcher/app-switcher-dropdown-app.d.ts +11 -0
  5. package/app-switcher/app-switcher-dropdown-app.scss +85 -0
  6. package/app-switcher/app-switcher-dropdown-site.d.ts +9 -0
  7. package/app-switcher/app-switcher-dropdown-site.scss +53 -0
  8. package/app-switcher/app-switcher.d.ts +191 -0
  9. package/app-switcher/app-switcher.module.d.ts +10 -0
  10. package/app-switcher/app-switcher.scss +64 -0
  11. package/app-switcher/index.d.ts +1 -0
  12. package/app-switcher/kbq-app-switcher-list-item.d.ts +16 -0
  13. package/app-switcher/kbq-app-switcher-list-item.scss +180 -0
  14. package/app-switcher/public-api.d.ts +6 -0
  15. package/autocomplete/autocomplete.scss +2 -17
  16. package/badge/badge.component.d.ts +1 -1
  17. package/badge/badge.component.scss +2 -0
  18. package/breadcrumbs/breadcrumbs.d.ts +2 -1
  19. package/breadcrumbs/breadcrumbs.scss +8 -4
  20. package/button/button.component.d.ts +3 -2
  21. package/button-toggle/button-toggle.scss +0 -2
  22. package/content-panel/content-panel.d.ts +1 -1
  23. package/content-panel/index.d.ts +0 -1
  24. package/core/common-behaviors/clipboard.d.ts +1 -1
  25. package/core/common-behaviors/color.d.ts +5 -5
  26. package/core/common-behaviors/focus-monitor.d.ts +19 -0
  27. package/core/common-behaviors/hover.d.ts +15 -0
  28. package/core/common-behaviors/index.d.ts +4 -0
  29. package/core/common-behaviors/orientation.d.ts +4 -0
  30. package/core/common-behaviors/read-state.d.ts +12 -0
  31. package/core/locales/en-US.d.ts +62 -0
  32. package/core/locales/es-LA.d.ts +62 -0
  33. package/core/locales/formatters.d.ts +0 -72
  34. package/core/locales/index.d.ts +0 -2
  35. package/core/locales/locale-service.d.ts +292 -250
  36. package/core/locales/pt-BR.d.ts +62 -0
  37. package/core/locales/ru-RU.d.ts +62 -0
  38. package/core/locales/tk-TM.d.ts +62 -0
  39. package/core/locales/types.d.ts +22 -0
  40. package/core/navbar/rectangle-item.d.ts +1 -1
  41. package/core/option/action.d.ts +1 -1
  42. package/core/option/option.d.ts +3 -2
  43. package/core/pop-up/constants.d.ts +2 -1
  44. package/core/pop-up/pop-up-trigger.d.ts +3 -3
  45. package/core/pop-up/pop-up.d.ts +2 -1
  46. package/core/select/common.d.ts +6 -1
  47. package/core/select/constants.d.ts +5 -0
  48. package/core/styles/common/_select.scss +25 -0
  49. package/core/styles/typography/_typography.scss +23 -82
  50. package/core/utils/dom.d.ts +1 -6
  51. package/datepicker/datepicker-module.d.ts +2 -1
  52. package/divider/divider.scss +1 -0
  53. package/dropdown/dropdown-item.scss +8 -7
  54. package/dropdown/dropdown.component.d.ts +5 -1
  55. package/dropdown/dropdown.module.d.ts +1 -1
  56. package/dropdown/dropdown.scss +5 -14
  57. package/esm2022/accordion/accordion-content.mjs +3 -3
  58. package/esm2022/accordion/accordion-header.mjs +3 -3
  59. package/esm2022/accordion/accordion-item.mjs +3 -3
  60. package/esm2022/accordion/accordion-trigger.component.mjs +3 -3
  61. package/esm2022/accordion/accordion.component.mjs +5 -5
  62. package/esm2022/accordion/accordion.module.mjs +4 -4
  63. package/esm2022/actions-panel/actions-panel-container.mjs +3 -3
  64. package/esm2022/actions-panel/actions-panel.mjs +3 -3
  65. package/esm2022/actions-panel/module.mjs +4 -4
  66. package/esm2022/alert/alert.component.mjs +12 -12
  67. package/esm2022/alert/alert.module.mjs +4 -4
  68. package/esm2022/app-switcher/app-switcher-animations.mjs +18 -0
  69. package/esm2022/app-switcher/app-switcher-dropdown-app.mjs +75 -0
  70. package/esm2022/app-switcher/app-switcher-dropdown-site.mjs +60 -0
  71. package/esm2022/app-switcher/app-switcher.mjs +446 -0
  72. package/esm2022/app-switcher/app-switcher.module.mjs +45 -0
  73. package/esm2022/app-switcher/index.mjs +2 -0
  74. package/esm2022/app-switcher/kbq-app-switcher-list-item.mjs +84 -0
  75. package/esm2022/app-switcher/koobiq-components-app-switcher.mjs +5 -0
  76. package/esm2022/app-switcher/public-api.mjs +7 -0
  77. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +3 -3
  78. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +7 -7
  79. package/esm2022/autocomplete/autocomplete.component.mjs +3 -3
  80. package/esm2022/autocomplete/autocomplete.module.mjs +4 -4
  81. package/esm2022/badge/badge.component.mjs +11 -11
  82. package/esm2022/badge/badge.module.mjs +4 -4
  83. package/esm2022/breadcrumbs/breadcrumbs.mjs +58 -49
  84. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +4 -4
  85. package/esm2022/button/button.component.mjs +12 -10
  86. package/esm2022/button/button.dropdown-trigger.directive.mjs +3 -3
  87. package/esm2022/button/button.module.mjs +4 -4
  88. package/esm2022/button-toggle/button-toggle.component.mjs +8 -8
  89. package/esm2022/button-toggle/button-toggle.module.mjs +4 -4
  90. package/esm2022/checkbox/checkbox-module.mjs +4 -4
  91. package/esm2022/checkbox/checkbox-required-validator.mjs +3 -3
  92. package/esm2022/checkbox/checkbox.mjs +3 -3
  93. package/esm2022/clamped-text/clamped-text.mjs +3 -3
  94. package/esm2022/clamped-text/module.mjs +4 -4
  95. package/esm2022/code-block/code-block-highlight.mjs +12 -7
  96. package/esm2022/code-block/code-block.mjs +4 -4
  97. package/esm2022/code-block/code-block.module.mjs +4 -4
  98. package/esm2022/content-panel/content-panel.mjs +26 -26
  99. package/esm2022/content-panel/index.mjs +1 -2
  100. package/esm2022/content-panel/module.mjs +4 -4
  101. package/esm2022/core/common-behaviors/clipboard.mjs +4 -4
  102. package/esm2022/core/common-behaviors/color.mjs +7 -7
  103. package/esm2022/core/common-behaviors/common-module.mjs +6 -5
  104. package/esm2022/core/common-behaviors/disabled.mjs +2 -1
  105. package/esm2022/core/common-behaviors/error-state.mjs +2 -1
  106. package/esm2022/core/common-behaviors/focus-monitor.mjs +37 -0
  107. package/esm2022/core/common-behaviors/hover.mjs +34 -0
  108. package/esm2022/core/common-behaviors/index.mjs +5 -1
  109. package/esm2022/core/common-behaviors/orientation.mjs +2 -0
  110. package/esm2022/core/common-behaviors/read-state.mjs +33 -0
  111. package/esm2022/core/common-behaviors/tabindex.mjs +2 -1
  112. package/esm2022/core/error/error-state-matcher.mjs +9 -9
  113. package/esm2022/core/form-field/field-sizing-content.mjs +8 -5
  114. package/esm2022/core/formatters/date/formatter.mjs +3 -3
  115. package/esm2022/core/formatters/date/formatter.pipe.mjs +78 -78
  116. package/esm2022/core/formatters/filesize/formatter.mjs +3 -3
  117. package/esm2022/core/formatters/index.mjs +4 -4
  118. package/esm2022/core/formatters/number/formatter.mjs +14 -14
  119. package/esm2022/core/forms/forms-module.mjs +4 -4
  120. package/esm2022/core/forms/forms.directive.mjs +6 -6
  121. package/esm2022/core/highlight/highlight.pipe.mjs +3 -3
  122. package/esm2022/core/highlight/index.mjs +4 -4
  123. package/esm2022/core/line/line.mjs +7 -7
  124. package/esm2022/core/locales/en-US.mjs +105 -1
  125. package/esm2022/core/locales/es-LA.mjs +114 -10
  126. package/esm2022/core/locales/formatters.mjs +1 -73
  127. package/esm2022/core/locales/index.mjs +1 -3
  128. package/esm2022/core/locales/locale-service.mjs +5 -11
  129. package/esm2022/core/locales/locale-service.module.mjs +4 -4
  130. package/esm2022/core/locales/pt-BR.mjs +123 -19
  131. package/esm2022/core/locales/ru-RU.mjs +119 -1
  132. package/esm2022/core/locales/tk-TM.mjs +128 -24
  133. package/esm2022/core/locales/types.mjs +1 -1
  134. package/esm2022/core/navbar/rectangle-item.mjs +7 -6
  135. package/esm2022/core/option/action-container.mjs +3 -3
  136. package/esm2022/core/option/action.mjs +4 -4
  137. package/esm2022/core/option/optgroup.mjs +3 -3
  138. package/esm2022/core/option/option-module.mjs +4 -4
  139. package/esm2022/core/option/option.mjs +13 -9
  140. package/esm2022/core/pop-up/constants.mjs +2 -1
  141. package/esm2022/core/pop-up/pop-up-trigger.mjs +7 -6
  142. package/esm2022/core/pop-up/pop-up.mjs +4 -4
  143. package/esm2022/core/select/common.mjs +35 -19
  144. package/esm2022/core/select/constants.mjs +6 -1
  145. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  146. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  147. package/esm2022/core/services/measure-scrollbar.service.mjs +3 -3
  148. package/esm2022/core/services/theme.service.mjs +3 -3
  149. package/esm2022/core/utils/dom.mjs +2 -8
  150. package/esm2022/core/version.mjs +2 -2
  151. package/esm2022/datepicker/calendar-body.component.mjs +3 -3
  152. package/esm2022/datepicker/calendar-header.component.mjs +7 -6
  153. package/esm2022/datepicker/calendar.component.mjs +3 -3
  154. package/esm2022/datepicker/datepicker-input.directive.mjs +6 -6
  155. package/esm2022/datepicker/datepicker-intl.mjs +3 -3
  156. package/esm2022/datepicker/datepicker-module.mjs +11 -8
  157. package/esm2022/datepicker/datepicker-toggle.component.mjs +9 -9
  158. package/esm2022/datepicker/datepicker.component.mjs +6 -6
  159. package/esm2022/datepicker/month-view.component.mjs +3 -3
  160. package/esm2022/divider/divider.component.mjs +4 -4
  161. package/esm2022/divider/divider.module.mjs +4 -4
  162. package/esm2022/dl/dl.component.mjs +9 -9
  163. package/esm2022/dl/dl.module.mjs +4 -4
  164. package/esm2022/dropdown/dropdown-content.directive.mjs +3 -3
  165. package/esm2022/dropdown/dropdown-item.component.mjs +5 -5
  166. package/esm2022/dropdown/dropdown-trigger.directive.mjs +5 -5
  167. package/esm2022/dropdown/dropdown.component.mjs +18 -8
  168. package/esm2022/dropdown/dropdown.module.mjs +14 -10
  169. package/esm2022/dynamic-translation/dynamic-translation.mjs +9 -9
  170. package/esm2022/dynamic-translation/module.mjs +4 -4
  171. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +12 -9
  172. package/esm2022/empty-state/empty-state.component.mjs +15 -15
  173. package/esm2022/empty-state/empty-state.module.mjs +4 -4
  174. package/esm2022/file-upload/file-drop.mjs +7 -5
  175. package/esm2022/file-upload/file-upload.mjs +1 -1
  176. package/esm2022/file-upload/file-upload.module.mjs +4 -4
  177. package/esm2022/file-upload/multiple-file-upload.component.mjs +20 -13
  178. package/esm2022/file-upload/single-file-upload.component.mjs +19 -6
  179. package/esm2022/filter-bar/filter-bar-button.mjs +3 -3
  180. package/esm2022/filter-bar/filter-bar.mjs +8 -4
  181. package/esm2022/filter-bar/filter-bar.module.mjs +4 -4
  182. package/esm2022/filter-bar/filter-refresher.mjs +3 -3
  183. package/esm2022/filter-bar/filter-reset.mjs +3 -3
  184. package/esm2022/filter-bar/filter-search.mjs +6 -6
  185. package/esm2022/filter-bar/filters.mjs +12 -7
  186. package/esm2022/filter-bar/pipe-add.mjs +6 -5
  187. package/esm2022/filter-bar/pipe.directive.mjs +3 -3
  188. package/esm2022/filter-bar/pipes/base-pipe.mjs +17 -9
  189. package/esm2022/filter-bar/pipes/pipe-button.mjs +3 -3
  190. package/esm2022/filter-bar/pipes/pipe-date.mjs +6 -6
  191. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +6 -6
  192. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +15 -9
  193. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +12 -7
  194. package/esm2022/filter-bar/pipes/pipe-readonly.mjs +6 -6
  195. package/esm2022/filter-bar/pipes/pipe-select.mjs +6 -6
  196. package/esm2022/filter-bar/pipes/pipe-state.mjs +3 -3
  197. package/esm2022/filter-bar/pipes/pipe-text.mjs +6 -6
  198. package/esm2022/filter-bar/pipes/pipe-title.mjs +26 -21
  199. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +6 -6
  200. package/esm2022/form-field/cleaner.mjs +3 -3
  201. package/esm2022/form-field/error.mjs +3 -3
  202. package/esm2022/form-field/fieldset.mjs +11 -11
  203. package/esm2022/form-field/form-field.mjs +11 -11
  204. package/esm2022/form-field/form-field.module.mjs +4 -4
  205. package/esm2022/form-field/hint.mjs +3 -3
  206. package/esm2022/form-field/label.mjs +3 -3
  207. package/esm2022/form-field/password-hint.mjs +3 -3
  208. package/esm2022/form-field/password-toggle.mjs +7 -7
  209. package/esm2022/form-field/prefix.mjs +3 -3
  210. package/esm2022/form-field/reactive-password-hint.mjs +3 -3
  211. package/esm2022/form-field/stepper.mjs +44 -13
  212. package/esm2022/form-field/suffix.mjs +3 -3
  213. package/esm2022/form-field/validate.directive.mjs +3 -3
  214. package/esm2022/icon/icon-button.component.mjs +3 -3
  215. package/esm2022/icon/icon-item.component.mjs +3 -3
  216. package/esm2022/icon/icon.component.mjs +4 -4
  217. package/esm2022/icon/icon.module.mjs +4 -4
  218. package/esm2022/inline-edit/index.mjs +3 -0
  219. package/esm2022/inline-edit/inline-edit.mjs +382 -0
  220. package/esm2022/inline-edit/koobiq-components-inline-edit.mjs +5 -0
  221. package/esm2022/inline-edit/module.mjs +25 -0
  222. package/esm2022/input/input-number-validators.mjs +6 -6
  223. package/esm2022/input/input-number.mjs +10 -9
  224. package/esm2022/input/input-password.mjs +4 -4
  225. package/esm2022/input/input.mjs +7 -7
  226. package/esm2022/input/input.module.mjs +11 -8
  227. package/esm2022/link/link.component.mjs +6 -6
  228. package/esm2022/link/link.module.mjs +4 -4
  229. package/esm2022/list/list-selection.component.mjs +40 -24
  230. package/esm2022/list/list.component.mjs +6 -6
  231. package/esm2022/list/list.module.mjs +4 -4
  232. package/esm2022/loader-overlay/loader-overlay.component.mjs +13 -13
  233. package/esm2022/loader-overlay/loader-overlay.module.mjs +4 -4
  234. package/esm2022/markdown/markdown.component.mjs +10 -10
  235. package/esm2022/markdown/markdown.module.mjs +4 -4
  236. package/esm2022/markdown/markdown.service.mjs +3 -3
  237. package/esm2022/modal/css-unit.pipe.mjs +3 -3
  238. package/esm2022/modal/modal-control.service.mjs +3 -3
  239. package/esm2022/modal/modal-util.mjs +7 -3
  240. package/esm2022/modal/modal.component.mjs +5 -5
  241. package/esm2022/modal/modal.directive.mjs +12 -12
  242. package/esm2022/modal/modal.module.mjs +4 -4
  243. package/esm2022/modal/modal.service.mjs +5 -4
  244. package/esm2022/navbar/navbar-item.component.mjs +53 -44
  245. package/esm2022/navbar/navbar.component.mjs +17 -13
  246. package/esm2022/navbar/navbar.module.mjs +4 -4
  247. package/esm2022/navbar/vertical-navbar.component.mjs +6 -6
  248. package/esm2022/navbar-ic/navbar-ic-header.mjs +25 -9
  249. package/esm2022/navbar-ic/navbar-ic-item.mjs +35 -44
  250. package/esm2022/navbar-ic/navbar-ic.animation.mjs +10 -2
  251. package/esm2022/navbar-ic/navbar-ic.mjs +50 -21
  252. package/esm2022/navbar-ic/navbar-ic.module.mjs +4 -4
  253. package/esm2022/notification-center/index.mjs +2 -0
  254. package/esm2022/notification-center/koobiq-components-notification-center.mjs +5 -0
  255. package/esm2022/notification-center/notification-center-animations.mjs +18 -0
  256. package/esm2022/notification-center/notification-center.mjs +353 -0
  257. package/esm2022/notification-center/notification-center.module.mjs +38 -0
  258. package/esm2022/notification-center/notification-center.service.mjs +127 -0
  259. package/esm2022/notification-center/notification-item.mjs +70 -0
  260. package/esm2022/notification-center/public-api.mjs +5 -0
  261. package/esm2022/overflow-items/module.mjs +4 -4
  262. package/esm2022/overflow-items/overflow-items.mjs +95 -41
  263. package/esm2022/popover/popover-confirm.component.mjs +10 -10
  264. package/esm2022/popover/popover.component.mjs +31 -13
  265. package/esm2022/popover/popover.module.mjs +4 -4
  266. package/esm2022/progress-bar/progress-bar.component.mjs +9 -9
  267. package/esm2022/progress-bar/progress-bar.module.mjs +4 -4
  268. package/esm2022/progress-spinner/progress-spinner.component.mjs +9 -9
  269. package/esm2022/progress-spinner/progress-spinner.module.mjs +4 -4
  270. package/esm2022/radio/radio.component.mjs +6 -6
  271. package/esm2022/radio/radio.module.mjs +4 -4
  272. package/esm2022/resizer/index.mjs +3 -0
  273. package/esm2022/resizer/koobiq-components-resizer.mjs +5 -0
  274. package/esm2022/resizer/module.mjs +17 -0
  275. package/esm2022/resizer/resizer.mjs +135 -0
  276. package/esm2022/risk-level/risk-level.component.mjs +3 -3
  277. package/esm2022/risk-level/risk-level.module.mjs +4 -4
  278. package/esm2022/scrollbar/scrollbar.component.mjs +3 -3
  279. package/esm2022/scrollbar/scrollbar.directive.mjs +7 -6
  280. package/esm2022/scrollbar/scrollbar.module.mjs +4 -4
  281. package/esm2022/search-expandable/index.mjs +2 -0
  282. package/esm2022/search-expandable/koobiq-components-search-expandable.mjs +5 -0
  283. package/esm2022/search-expandable/public-api.mjs +3 -0
  284. package/esm2022/search-expandable/search-expandable.mjs +177 -0
  285. package/esm2022/search-expandable/search-expandable.module.mjs +18 -0
  286. package/esm2022/select/select-option.directive.mjs +3 -3
  287. package/esm2022/select/select.component.mjs +38 -23
  288. package/esm2022/select/select.module.mjs +12 -8
  289. package/esm2022/sidebar/sidebar.component.mjs +9 -9
  290. package/esm2022/sidebar/sidebar.module.mjs +4 -4
  291. package/esm2022/sidepanel/sidepanel-container.component.mjs +5 -5
  292. package/esm2022/sidepanel/sidepanel-directives.mjs +15 -15
  293. package/esm2022/sidepanel/sidepanel.module.mjs +4 -4
  294. package/esm2022/sidepanel/sidepanel.service.mjs +3 -3
  295. package/esm2022/split-button/index.mjs +2 -0
  296. package/esm2022/split-button/koobiq-components-split-button.mjs +5 -0
  297. package/esm2022/split-button/public-api.mjs +3 -0
  298. package/esm2022/split-button/split-button.mjs +133 -0
  299. package/esm2022/split-button/split-button.module.mjs +18 -0
  300. package/esm2022/splitter/splitter.component.mjs +13 -13
  301. package/esm2022/splitter/splitter.module.mjs +4 -4
  302. package/esm2022/table/table.component.mjs +6 -6
  303. package/esm2022/table/table.module.mjs +4 -4
  304. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  305. package/esm2022/tabs/tab-body.component.mjs +6 -6
  306. package/esm2022/tabs/tab-content.directive.mjs +3 -3
  307. package/esm2022/tabs/tab-group.component.mjs +15 -15
  308. package/esm2022/tabs/tab-header.component.mjs +4 -4
  309. package/esm2022/tabs/tab-label-wrapper.directive.mjs +4 -4
  310. package/esm2022/tabs/tab-label.directive.mjs +3 -3
  311. package/esm2022/tabs/tab-nav-bar.mjs +10 -10
  312. package/esm2022/tabs/tab.component.mjs +3 -3
  313. package/esm2022/tabs/tabs.module.mjs +4 -4
  314. package/esm2022/tags/tag-input.mjs +38 -36
  315. package/esm2022/tags/tag-list.component.mjs +281 -250
  316. package/esm2022/tags/tag.component.mjs +206 -140
  317. package/esm2022/tags/tag.module.mjs +4 -4
  318. package/esm2022/textarea/textarea.component.mjs +5 -5
  319. package/esm2022/textarea/textarea.module.mjs +7 -6
  320. package/esm2022/time-range/constants.mjs +42 -0
  321. package/esm2022/time-range/index.mjs +8 -0
  322. package/esm2022/time-range/koobiq-components-time-range.mjs +5 -0
  323. package/esm2022/time-range/module.mjs +36 -0
  324. package/esm2022/time-range/time-range-editor.mjs +224 -0
  325. package/esm2022/time-range/time-range-title-as-form-field.mjs +60 -0
  326. package/esm2022/time-range/time-range-title.mjs +112 -0
  327. package/esm2022/time-range/time-range.mjs +234 -0
  328. package/esm2022/time-range/time-range.service.mjs +126 -0
  329. package/esm2022/time-range/types.mjs +2 -0
  330. package/esm2022/timepicker/timepicker.directive.mjs +4 -4
  331. package/esm2022/timepicker/timepicker.module.mjs +9 -8
  332. package/esm2022/timezone/cities-by-filter.pipe.mjs +3 -3
  333. package/esm2022/timezone/timezone-option.component.mjs +5 -5
  334. package/esm2022/timezone/timezone-option.directive.mjs +3 -3
  335. package/esm2022/timezone/timezone-select.component.mjs +9 -9
  336. package/esm2022/timezone/timezone.module.mjs +10 -8
  337. package/esm2022/timezone/utc-offset.pipe.mjs +3 -3
  338. package/esm2022/title/title.directive.mjs +9 -5
  339. package/esm2022/title/title.module.mjs +4 -4
  340. package/esm2022/toast/toast-container.component.mjs +3 -3
  341. package/esm2022/toast/toast.component.mjs +20 -14
  342. package/esm2022/toast/toast.module.mjs +4 -4
  343. package/esm2022/toast/toast.service.mjs +5 -4
  344. package/esm2022/toast/toast.type.mjs +1 -1
  345. package/esm2022/toggle/toggle.component.mjs +6 -6
  346. package/esm2022/toggle/toggle.module.mjs +4 -4
  347. package/esm2022/tooltip/tooltip.component.mjs +19 -19
  348. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  349. package/esm2022/top-bar/module.mjs +4 -4
  350. package/esm2022/top-bar/top-bar.mjs +11 -11
  351. package/esm2022/tree/node.mjs +3 -3
  352. package/esm2022/tree/outlet.mjs +3 -3
  353. package/esm2022/tree/padding.directive.mjs +3 -3
  354. package/esm2022/tree/toggle.mjs +16 -12
  355. package/esm2022/tree/tree-base.mjs +7 -7
  356. package/esm2022/tree/tree-option.component.mjs +11 -14
  357. package/esm2022/tree/tree-selection.component.mjs +26 -16
  358. package/esm2022/tree/tree.mjs +3 -3
  359. package/esm2022/tree/tree.module.mjs +4 -4
  360. package/esm2022/tree-select/tree-select.component.mjs +142 -84
  361. package/esm2022/tree-select/tree-select.module.mjs +11 -8
  362. package/esm2022/username/module.mjs +4 -4
  363. package/esm2022/username/username.mjs +15 -15
  364. package/esm2022/username/username.pipe.mjs +8 -8
  365. package/fesm2022/koobiq-components-accordion.mjs +20 -20
  366. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  367. package/fesm2022/koobiq-components-actions-panel.mjs +10 -10
  368. package/fesm2022/koobiq-components-alert.mjs +16 -16
  369. package/fesm2022/koobiq-components-app-switcher.mjs +704 -0
  370. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -0
  371. package/fesm2022/koobiq-components-autocomplete.mjs +16 -16
  372. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  373. package/fesm2022/koobiq-components-badge.mjs +14 -14
  374. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  375. package/fesm2022/koobiq-components-breadcrumbs.mjs +61 -52
  376. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  377. package/fesm2022/koobiq-components-button-toggle.mjs +12 -12
  378. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  379. package/fesm2022/koobiq-components-button.mjs +18 -16
  380. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  381. package/fesm2022/koobiq-components-checkbox.mjs +10 -10
  382. package/fesm2022/koobiq-components-clamped-text.mjs +7 -7
  383. package/fesm2022/koobiq-components-code-block.mjs +18 -13
  384. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  385. package/fesm2022/koobiq-components-content-panel.mjs +31 -165
  386. package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
  387. package/fesm2022/koobiq-components-core.mjs +962 -581
  388. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  389. package/fesm2022/koobiq-components-datepicker.mjs +47 -44
  390. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  391. package/fesm2022/koobiq-components-divider.mjs +8 -8
  392. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  393. package/fesm2022/koobiq-components-dl.mjs +13 -13
  394. package/fesm2022/koobiq-components-dropdown.mjs +41 -27
  395. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  396. package/fesm2022/koobiq-components-dynamic-translation.mjs +13 -13
  397. package/fesm2022/koobiq-components-ellipsis-center.mjs +11 -8
  398. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  399. package/fesm2022/koobiq-components-empty-state.mjs +19 -19
  400. package/fesm2022/koobiq-components-file-upload.mjs +45 -25
  401. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  402. package/fesm2022/koobiq-components-filter-bar.mjs +147 -114
  403. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  404. package/fesm2022/koobiq-components-form-field.mjs +100 -73
  405. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  406. package/fesm2022/koobiq-components-icon.mjs +13 -13
  407. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  408. package/fesm2022/koobiq-components-inline-edit.mjs +411 -0
  409. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -0
  410. package/fesm2022/koobiq-components-input.mjs +34 -31
  411. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  412. package/fesm2022/koobiq-components-link.mjs +10 -10
  413. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  414. package/fesm2022/koobiq-components-list.mjs +49 -33
  415. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  416. package/fesm2022/koobiq-components-loader-overlay.mjs +16 -16
  417. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  418. package/fesm2022/koobiq-components-markdown.mjs +16 -16
  419. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  420. package/fesm2022/koobiq-components-modal.mjs +36 -31
  421. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  422. package/fesm2022/koobiq-components-navbar-ic.mjs +122 -81
  423. package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -1
  424. package/fesm2022/koobiq-components-navbar.mjs +77 -64
  425. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  426. package/fesm2022/koobiq-components-notification-center.mjs +586 -0
  427. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -0
  428. package/fesm2022/koobiq-components-overflow-items.mjs +98 -44
  429. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  430. package/fesm2022/koobiq-components-popover.mjs +43 -25
  431. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  432. package/fesm2022/koobiq-components-progress-bar.mjs +13 -13
  433. package/fesm2022/koobiq-components-progress-spinner.mjs +13 -13
  434. package/fesm2022/koobiq-components-radio.mjs +10 -10
  435. package/fesm2022/koobiq-components-resizer.mjs +156 -0
  436. package/fesm2022/koobiq-components-resizer.mjs.map +1 -0
  437. package/fesm2022/koobiq-components-risk-level.mjs +7 -7
  438. package/fesm2022/koobiq-components-scrollbar.mjs +13 -12
  439. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  440. package/fesm2022/koobiq-components-search-expandable.mjs +199 -0
  441. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -0
  442. package/fesm2022/koobiq-components-select.mjs +51 -33
  443. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  444. package/fesm2022/koobiq-components-sidebar.mjs +13 -13
  445. package/fesm2022/koobiq-components-sidepanel.mjs +26 -26
  446. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  447. package/fesm2022/koobiq-components-split-button.mjs +155 -0
  448. package/fesm2022/koobiq-components-split-button.mjs.map +1 -0
  449. package/fesm2022/koobiq-components-splitter.mjs +16 -16
  450. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  451. package/fesm2022/koobiq-components-table.mjs +10 -10
  452. package/fesm2022/koobiq-components-tabs.mjs +52 -52
  453. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  454. package/fesm2022/koobiq-components-tags.mjs +522 -428
  455. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  456. package/fesm2022/koobiq-components-textarea.mjs +10 -10
  457. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  458. package/fesm2022/koobiq-components-time-range.mjs +809 -0
  459. package/fesm2022/koobiq-components-time-range.mjs.map +1 -0
  460. package/fesm2022/koobiq-components-timepicker.mjs +11 -11
  461. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  462. package/fesm2022/koobiq-components-timezone.mjs +31 -29
  463. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  464. package/fesm2022/koobiq-components-title.mjs +12 -8
  465. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  466. package/fesm2022/koobiq-components-toast.mjs +28 -21
  467. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  468. package/fesm2022/koobiq-components-toggle.mjs +9 -9
  469. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  470. package/fesm2022/koobiq-components-tooltip.mjs +22 -22
  471. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  472. package/fesm2022/koobiq-components-top-bar.mjs +15 -15
  473. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  474. package/fesm2022/koobiq-components-tree-select.mjs +151 -91
  475. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  476. package/fesm2022/koobiq-components-tree.mjs +72 -61
  477. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  478. package/fesm2022/koobiq-components-username.mjs +27 -27
  479. package/file-upload/_file-upload-theme.scss +33 -35
  480. package/file-upload/file-upload-tokens.scss +1 -2
  481. package/file-upload/file-upload.d.ts +1 -1
  482. package/file-upload/file-upload.scss +4 -7
  483. package/file-upload/multiple-file-upload.component.d.ts +2 -1
  484. package/file-upload/multiple-file-upload.component.scss +12 -14
  485. package/file-upload/single-file-upload.component.d.ts +2 -0
  486. package/file-upload/single-file-upload.component.scss +5 -7
  487. package/filter-bar/filter-bar.d.ts +3 -1
  488. package/filter-bar/filter-search.scss +1 -3
  489. package/filter-bar/filters.d.ts +1 -0
  490. package/filter-bar/pipes/base-pipe.d.ts +6 -2
  491. package/filter-bar/pipes/base-pipe.scss +3 -3
  492. package/filter-bar/pipes/pipe-date.scss +4 -1
  493. package/filter-bar/pipes/pipe-title.d.ts +2 -0
  494. package/form-field/fieldset-tokens.scss +1 -0
  495. package/form-field/form-field-tokens.scss +1 -1
  496. package/form-field/form-field.d.ts +1 -1
  497. package/form-field/form-field.scss +7 -7
  498. package/form-field/password-toggle.d.ts +1 -1
  499. package/form-field/stepper.d.ts +28 -6
  500. package/icon/icon.component.d.ts +2 -2
  501. package/inline-edit/index.d.ts +2 -0
  502. package/inline-edit/inline-edit-tokens.scss +8 -0
  503. package/inline-edit/inline-edit.d.ts +140 -0
  504. package/inline-edit/inline-edit.scss +208 -0
  505. package/inline-edit/module.d.ts +7 -0
  506. package/input/input-number.d.ts +1 -1
  507. package/input/input-password.d.ts +2 -2
  508. package/input/input.d.ts +2 -2
  509. package/input/input.module.d.ts +2 -1
  510. package/link/link.component.d.ts +3 -3
  511. package/list/list-selection.component.d.ts +13 -2
  512. package/loader-overlay/loader-overlay.component.d.ts +1 -1
  513. package/markdown/_markdown-theme.scss +1 -2
  514. package/markdown/markdown-tokens.scss +1 -0
  515. package/markdown/markdown.scss +10 -4
  516. package/modal/modal-tokens.scss +2 -1
  517. package/modal/modal-util.d.ts +5 -2
  518. package/modal/modal.component.d.ts +1 -1
  519. package/modal/modal.scss +3 -4
  520. package/navbar/_navbar-item_vertical.scss +10 -0
  521. package/navbar/navbar-brand.scss +5 -2
  522. package/navbar/navbar-item.component.d.ts +3 -2
  523. package/navbar/navbar.component.d.ts +4 -4
  524. package/navbar/vertical-navbar.component.d.ts +2 -2
  525. package/navbar/vertical-navbar.scss +1 -0
  526. package/navbar-ic/navbar-ic-header.d.ts +4 -3
  527. package/navbar-ic/navbar-ic-header.scss +0 -4
  528. package/navbar-ic/navbar-ic-item.d.ts +3 -2
  529. package/navbar-ic/navbar-ic-item.scss +0 -4
  530. package/navbar-ic/navbar-ic.animation.d.ts +1 -0
  531. package/navbar-ic/navbar-ic.d.ts +11 -2
  532. package/notification-center/_notification-center-theme.scss +27 -0
  533. package/notification-center/index.d.ts +1 -0
  534. package/notification-center/notification-center-animations.d.ts +5 -0
  535. package/notification-center/notification-center.d.ts +153 -0
  536. package/notification-center/notification-center.module.d.ts +7 -0
  537. package/notification-center/notification-center.scss +126 -0
  538. package/notification-center/notification-center.service.d.ts +72 -0
  539. package/notification-center/notification-item.d.ts +27 -0
  540. package/notification-center/notification-item.scss +157 -0
  541. package/notification-center/public-api.d.ts +4 -0
  542. package/overflow-items/overflow-items.d.ts +23 -9
  543. package/package.json +46 -4
  544. package/popover/popover-tokens.scss +1 -0
  545. package/popover/popover.component.d.ts +9 -1
  546. package/popover/popover.scss +18 -11
  547. package/prebuilt-themes/dark-theme.css +1 -1
  548. package/prebuilt-themes/light-theme.css +1 -1
  549. package/prebuilt-themes/theme.css +1 -1
  550. package/resizer/index.d.ts +2 -0
  551. package/resizer/module.d.ts +7 -0
  552. package/{content-panel/resizable.d.ts → resizer/resizer.d.ts} +18 -13
  553. package/schematics/collection.json +5 -0
  554. package/schematics/migrations/icons-replacement/README.md +93 -0
  555. package/schematics/migrations/icons-replacement/data.js +92 -0
  556. package/schematics/migrations/icons-replacement/index.js +84 -0
  557. package/schematics/migrations/icons-replacement/schema.json +32 -0
  558. package/schematics/ng-add/index.js +6 -6
  559. package/scrollbar/scrollbar.component.scss +2 -3
  560. package/search-expandable/index.d.ts +1 -0
  561. package/search-expandable/public-api.d.ts +2 -0
  562. package/search-expandable/search-expandable.d.ts +70 -0
  563. package/search-expandable/search-expandable.module.d.ts +7 -0
  564. package/search-expandable/search-expandable.scss +21 -0
  565. package/select/select.component.d.ts +38 -3
  566. package/select/select.module.d.ts +2 -1
  567. package/select/select.scss +1 -17
  568. package/sidepanel/sidepanel-tokens.scss +2 -0
  569. package/sidepanel/sidepanel.scss +2 -0
  570. package/split-button/_split-button-theme.scss +114 -0
  571. package/split-button/index.d.ts +1 -0
  572. package/split-button/public-api.d.ts +2 -0
  573. package/split-button/split-button.d.ts +37 -0
  574. package/split-button/split-button.module.d.ts +7 -0
  575. package/split-button/split-button.scss +72 -0
  576. package/splitter/splitter.component.d.ts +5 -5
  577. package/tabs/paginated-tab-header.d.ts +1 -1
  578. package/tabs/tab-header.component.d.ts +2 -2
  579. package/tabs/tab-label-wrapper.directive.d.ts +2 -2
  580. package/tabs/tab-nav-bar.d.ts +3 -3
  581. package/tags/_tag-theme.scss +21 -15
  582. package/tags/tag-input.d.ts +18 -7
  583. package/tags/tag-list.component.d.ts +175 -64
  584. package/tags/tag-list.scss +24 -14
  585. package/tags/tag-tokens.scss +17 -1
  586. package/tags/tag.component.d.ts +91 -27
  587. package/tags/tag.scss +9 -0
  588. package/textarea/textarea-tokens.scss +6 -1
  589. package/textarea/textarea.component.d.ts +2 -2
  590. package/textarea/textarea.module.d.ts +2 -1
  591. package/textarea/textarea.scss +4 -0
  592. package/time-range/constants.d.ts +19 -0
  593. package/time-range/index.d.ts +7 -0
  594. package/time-range/module.d.ts +10 -0
  595. package/time-range/time-range-editor.d.ts +65 -0
  596. package/time-range/time-range-title-as-form-field.d.ts +41 -0
  597. package/time-range/time-range-title.d.ts +18 -0
  598. package/time-range/time-range.d.ts +78 -0
  599. package/time-range/time-range.scss +66 -0
  600. package/time-range/time-range.service.d.ts +25 -0
  601. package/time-range/types.d.ts +69 -0
  602. package/timepicker/timepicker.directive.d.ts +2 -2
  603. package/timepicker/timepicker.module.d.ts +2 -1
  604. package/timezone/timezone-option.component.scss +6 -0
  605. package/timezone/timezone.module.d.ts +1 -1
  606. package/toast/toast.component.d.ts +6 -4
  607. package/toast/toast.component.scss +11 -1
  608. package/toast/toast.service.d.ts +1 -0
  609. package/toast/toast.type.d.ts +1 -0
  610. package/toggle/_toggle-theme.scss +8 -5
  611. package/toggle/toggle-tokens.scss +0 -1
  612. package/toggle/toggle.scss +11 -15
  613. package/top-bar/top-bar-tokens.scss +1 -1
  614. package/top-bar/top-bar.scss +3 -0
  615. package/tree/toggle.d.ts +1 -1
  616. package/tree/tree-base.d.ts +2 -2
  617. package/tree/tree-option.component.d.ts +2 -1
  618. package/tree/tree-selection.component.d.ts +12 -3
  619. package/tree-select/tree-select.component.d.ts +49 -8
  620. package/tree-select/tree-select.module.d.ts +2 -1
  621. package/tree-select/tree-select.scss +4 -0
  622. package/core/locales/fa-IR.d.ts +0 -100
  623. package/core/locales/zh-CN.d.ts +0 -100
  624. package/esm2022/content-panel/resizable.mjs +0 -138
  625. package/esm2022/core/locales/fa-IR.mjs +0 -99
  626. package/esm2022/core/locales/zh-CN.mjs +0 -99
@@ -1,21 +1,26 @@
1
1
  import { Directionality } from '@angular/cdk/bidi';
2
2
  import { SelectionModel } from '@angular/cdk/collections';
3
- import { AfterContentInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, OnDestroy, OnInit, QueryList } from '@angular/core';
3
+ import { CdkDragDrop } from '@angular/cdk/drag-drop';
4
+ import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, OnDestroy, QueryList } from '@angular/core';
4
5
  import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
5
6
  import { FocusKeyManager } from '@koobiq/cdk/a11y';
6
- import { CanUpdateErrorState, ErrorStateMatcher } from '@koobiq/components/core';
7
+ import { CanUpdateErrorState, ErrorStateMatcher, KbqOrientation } from '@koobiq/components/core';
7
8
  import { KbqCleaner, KbqFormFieldControl } from '@koobiq/components/form-field';
8
9
  import { Observable, Subject } from 'rxjs';
9
10
  import { KbqTagTextControl } from './tag-text-control';
10
- import { KbqTag, KbqTagEditChange, KbqTagEvent, KbqTagSelectionChange } from './tag.component';
11
+ import { KbqTag, KbqTagEditChange, KbqTagEvent, KbqTagFocusEvent, KbqTagSelectionChange } from './tag.component';
11
12
  import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/cdk/drag-drop";
12
14
  /** Change event object that is emitted when the tag list value has changed. */
13
15
  export declare class KbqTagListChange {
14
16
  source: KbqTagList;
15
17
  value: any;
16
18
  constructor(source: KbqTagList, value: any);
17
19
  }
18
- export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValueAccessor, AfterContentInit, DoCheck, OnInit, OnDestroy, CanUpdateErrorState {
20
+ export type KbqTagListDroppedEvent = Pick<CdkDragDrop<unknown>, 'event' | 'previousIndex' | 'currentIndex'> & {
21
+ tag: KbqTag;
22
+ };
23
+ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValueAccessor, AfterContentInit, DoCheck, OnDestroy, CanUpdateErrorState, AfterViewInit {
19
24
  protected elementRef: ElementRef<HTMLElement>;
20
25
  private changeDetectorRef;
21
26
  defaultErrorStateMatcher: ErrorStateMatcher;
@@ -23,6 +28,14 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
23
28
  parentForm: NgForm;
24
29
  parentFormGroup: FormGroupDirective;
25
30
  ngControl: NgControl;
31
+ private readonly dropList;
32
+ private readonly destroyRef;
33
+ private readonly focusMonitor;
34
+ /**
35
+ * Implemented as part of KbqFormFieldControl.
36
+ *
37
+ * @docs-private
38
+ */
26
39
  readonly controlType: string;
27
40
  /**
28
41
  * Emits whenever the component state changes and should cause the parent
@@ -30,35 +43,65 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
30
43
  * @docs-private
31
44
  */
32
45
  readonly stateChanges: Subject<void>;
33
- /** Combined stream of all of the child tags' selection change events. */
46
+ /**
47
+ * Combined stream of all of the child tags' selection change events.
48
+ *
49
+ * @docs-private
50
+ */
34
51
  get tagSelectionChanges(): Observable<KbqTagSelectionChange>;
35
- /** Combined stream of all of the child tags' focus change events. */
36
- get tagFocusChanges(): Observable<KbqTagEvent>;
37
- /** Combined stream of all of the child tags' blur change events. */
52
+ /**
53
+ * Combined stream of all of the child tags' focus change events.
54
+ *
55
+ * @docs-private
56
+ */
57
+ get tagFocusChanges(): Observable<KbqTagFocusEvent>;
58
+ /**
59
+ * Combined stream of all of the child tags' blur change events.
60
+ *
61
+ * @docs-private
62
+ */
38
63
  get tagBlurChanges(): Observable<KbqTagEvent>;
39
- /** Combined stream of all of the child tags' remove change events. */
64
+ /**
65
+ * Combined stream of all of the child tags' remove change events.
66
+ *
67
+ * @docs-private
68
+ */
40
69
  get tagRemoveChanges(): Observable<KbqTagEvent>;
41
- /** Combined stream of all of the child tags' edit change events. */
70
+ /**
71
+ * Combined stream of all of the child tags' edit change events.
72
+ *
73
+ * @docs-private
74
+ */
42
75
  get tagEditChanges(): Observable<KbqTagEditChange>;
43
- /** The array of selected tags inside tag list. */
44
- get selected(): KbqTag[] | KbqTag;
76
+ /**
77
+ * The array of selected tags inside tag list.
78
+ *
79
+ * @docs-private
80
+ */
81
+ get selected(): KbqTag[];
82
+ /** @docs-private */
45
83
  get canShowCleaner(): boolean;
46
- /** Whether the user should be allowed to select multiple tags. */
47
- get multiple(): boolean;
48
- set multiple(value: boolean);
84
+ /**
85
+ * @deprecated Unused. Will be removed in next major release.
86
+ *
87
+ * @docs-private
88
+ */
89
+ multiple: boolean;
49
90
  /**
50
91
  * A function to compare the option values with the selected values. The first argument
51
92
  * is a value from an option. The second is a value from the selection. A boolean
52
93
  * should be returned.
94
+ *
95
+ * @deprecated Unused. Will be removed in next major release.
53
96
  */
54
- get compareWith(): (o1: any, o2: any) => boolean;
55
- set compareWith(fn: (o1: any, o2: any) => boolean);
97
+ compareWith: (o1: any, o2: any) => boolean;
56
98
  /**
57
99
  * Implemented as part of KbqFormFieldControl.
58
100
  * @docs-private
59
101
  */
60
102
  get value(): any;
61
103
  set value(value: any);
104
+ private _value;
62
105
  /**
63
106
  * Implemented as part of KbqFormFieldControl.
64
107
  * @docs-private
@@ -70,12 +113,14 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
70
113
  */
71
114
  get required(): boolean;
72
115
  set required(value: boolean);
116
+ private _required;
73
117
  /**
74
118
  * Implemented as part of KbqFormFieldControl.
75
119
  * @docs-private
76
120
  */
77
121
  get placeholder(): string;
78
122
  set placeholder(value: string);
123
+ private _placeholder;
79
124
  /** Whether any tags or the kbqTagInput inside of this tag-list has focus. */
80
125
  get focused(): boolean;
81
126
  /**
@@ -94,15 +139,31 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
94
139
  */
95
140
  get disabled(): boolean;
96
141
  set disabled(value: boolean);
142
+ private _disabled;
143
+ get draggable(): boolean;
144
+ set draggable(value: boolean);
145
+ private _draggable;
146
+ /**
147
+ * Emits when the user drops tag inside tag list container.
148
+ */
149
+ readonly dropped: EventEmitter<KbqTagListDroppedEvent>;
97
150
  /**
98
151
  * Whether or not this tag list is selectable. When a tag list is not selectable,
99
152
  * the selected states for all the tags inside the tag list are always ignored.
100
153
  */
101
- get selectable(): boolean;
102
- set selectable(value: boolean);
103
- /** Whether the tag list is editable. */
154
+ selectable: boolean;
155
+ /** Whether the tags in the list are editable. */
104
156
  editable: boolean;
105
- get tabIndex(): number;
157
+ /** Whether the tags in the list are removable. */
158
+ get removable(): boolean;
159
+ set removable(value: boolean);
160
+ private _removable;
161
+ /**
162
+ * Tab index of the tag list. This property is ignored when the tag list contains a tag input or is disabled.
163
+ *
164
+ * @docs-private
165
+ */
166
+ get tabIndex(): number | null;
106
167
  set tabIndex(value: number);
107
168
  private _tabIndex;
108
169
  /**
@@ -111,34 +172,55 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
111
172
  * @docs-private
112
173
  */
113
174
  readonly valueChange: EventEmitter<any>;
175
+ /** @docs-private */
114
176
  uid: string;
115
177
  /**
116
178
  * User defined tab index.
117
179
  * When it is not null, use user defined tab index. Otherwise use tabIndex
180
+ *
181
+ * @docs-private
118
182
  */
119
183
  userTabIndex: number | null;
184
+ /** @docs-private */
120
185
  keyManager: FocusKeyManager<KbqTag>;
186
+ /**
187
+ * @docs-private
188
+ *
189
+ * @deprecated Unused. Will be removed in next major release.
190
+ */
121
191
  selectionModel: SelectionModel<KbqTag>;
192
+ /**
193
+ * @docs-private
194
+ *
195
+ * @deprecated Unused. Will be removed in next major release.
196
+ */
122
197
  tagChanges: EventEmitter<any>;
123
198
  /** An object used to control when error messages are shown. */
124
199
  errorStateMatcher: ErrorStateMatcher;
125
- /** Orientation of the tag list. */
126
- orientation: 'horizontal' | 'vertical';
200
+ /**
201
+ * Orientation of the tag list.
202
+ *
203
+ * @deprecated Unused. Will be removed in next major release.
204
+ */
205
+ orientation: KbqOrientation;
127
206
  /** Event emitted when the selected tag list value has been changed by the user. */
128
207
  readonly change: EventEmitter<KbqTagListChange>;
208
+ /** @docs-private */
129
209
  cleaner: KbqCleaner;
130
- /** The tag components contained within this tag list. */
210
+ /**
211
+ * The tag components contained within this tag list.
212
+ *
213
+ * @docs-private
214
+ */
131
215
  tags: QueryList<KbqTag>;
132
- /** Whether the component is in an error state. */
216
+ /**
217
+ * Whether the component is in an error state.
218
+ *
219
+ * @docs-private
220
+ */
133
221
  errorState: boolean;
134
- private _value;
135
- private _required;
136
- private _placeholder;
137
- private _disabled;
138
- private _selectable;
139
222
  /** The tag input to add more tags */
140
223
  private tagInput;
141
- private _multiple;
142
224
  /**
143
225
  * When a tag is destroyed, we store the index of the destroyed tag until the tags
144
226
  * query list notifies about the update. This is necessary because we cannot determine an
@@ -149,58 +231,88 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
149
231
  private tagFocusSubscription;
150
232
  /** Subscription to blur changes in the tags. */
151
233
  private tagBlurSubscription;
152
- /** Subscription to selection changes in tags. */
153
- private tagSelectionSubscription;
154
234
  /** Subscription to remove changes in tags. */
155
235
  private tagRemoveSubscription;
156
236
  /** Subscription to edit changes in tags. */
157
237
  private tagEditSubscription;
158
- private readonly destroyRef;
159
238
  constructor(elementRef: ElementRef<HTMLElement>, changeDetectorRef: ChangeDetectorRef, defaultErrorStateMatcher: ErrorStateMatcher, dir: Directionality, parentForm: NgForm, parentFormGroup: FormGroupDirective, ngControl: NgControl);
160
- ngOnInit(): void;
161
239
  ngDoCheck(): void;
162
240
  ngAfterContentInit(): void;
241
+ ngAfterViewInit(): void;
163
242
  ngOnDestroy(): void;
243
+ /** @docs-private */
164
244
  updateErrorState(): void;
245
+ /** @docs-private */
165
246
  onTouched: () => void;
247
+ /** @docs-private */
166
248
  onChange: (value: any) => void;
167
- /** Associates an HTML input element with this tag list. */
249
+ /**
250
+ * Associates an HTML input element with this tag list.
251
+ *
252
+ * @docs-private
253
+ */
168
254
  registerInput(inputElement: KbqTagTextControl): void;
255
+ /**
256
+ * Implemented as part of ControlValueAccessor.
257
+ */
169
258
  writeValue(value: any): void;
259
+ /**
260
+ * Implemented as part of ControlValueAccessor.
261
+ */
170
262
  registerOnChange(fn: (value: any) => void): void;
263
+ /**
264
+ * Implemented as part of ControlValueAccessor.
265
+ */
171
266
  registerOnTouched(fn: () => void): void;
267
+ /**
268
+ * Implemented as part of ControlValueAccessor.
269
+ */
172
270
  setDisabledState(isDisabled: boolean): void;
173
271
  /**
174
272
  * Implemented as part of KbqFormFieldControl.
273
+ *
175
274
  * @docs-private
176
275
  */
177
- onContainerClick(event: MouseEvent): void;
276
+ onContainerClick(): void;
178
277
  /**
179
- * Focuses the first non-disabled tag in this tag list, or the associated input when there
180
- * are no eligible tags.
278
+ * Focuses the tag list. If there is a tag input, focuses that instead.
181
279
  */
182
280
  focus(): void;
183
- /** Attempt to focus an input if we have one. */
281
+ /**
282
+ * Focuses the tag input inside the tag list.
283
+ *
284
+ * @docs-private
285
+ */
184
286
  focusInput(): void;
185
287
  /**
186
288
  * Pass events to the keyboard manager. Available here for tests.
289
+ *
290
+ * @docs-private
187
291
  */
188
292
  keydown(event: KeyboardEvent): void;
189
- setSelectionByValue(value: any, isUserInput?: boolean): void;
293
+ /**
294
+ * @docs-private
295
+ *
296
+ * @deprecated Unused. Will be removed in next major release.
297
+ */
298
+ setSelectionByValue(_value: any, _isUserInput?: boolean): void;
190
299
  /** When blurred, mark the field as touched when focus moved outside the tag list. */
191
300
  blur(): void;
192
301
  /** Mark the field as touched */
193
302
  markAsTouched(): void;
194
303
  /**
195
304
  * Check the tab index as you should not be allowed to focus an empty list.
305
+ *
306
+ * @docs-private
196
307
  */
197
308
  protected updateTabIndex(): void;
198
309
  /**
199
310
  * If the amount of tags changed, we need to update the
200
311
  * key manager state and focus the next closest tag.
312
+ *
313
+ * @docs-private
201
314
  */
202
315
  protected updateFocusForDestroyedTags(): void;
203
- private _compareWith;
204
316
  /**
205
317
  * Utility to ensure all indexes are valid.
206
318
  *
@@ -208,44 +320,43 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
208
320
  * @returns True if the index is valid for our list of tags.
209
321
  */
210
322
  private isValidIndex;
323
+ private isInputElement;
211
324
  private isInputEmpty;
325
+ private isTagElement;
326
+ private selectAll;
212
327
  /**
213
- * Finds and selects the tag based on its value.
214
- * @returns Tag that has the corresponding value.
215
- */
216
- private selectValue;
217
- private initializeSelection;
218
- /**
219
- * Deselects every tag in the list.
220
- * @param skip Tag that should not be deselected.
328
+ * Unselects all tags in the list.
329
+ *
330
+ * @docs-private
221
331
  */
222
- private clearSelection;
332
+ unselectAll(): void;
223
333
  /**
224
- * Sorts the model values, ensuring that they keep the same
225
- * order that they have in the panel.
334
+ * Removes all selected tags from the list.
335
+ *
336
+ * @docs-private
226
337
  */
227
- private sortValues;
228
- /** Emits change event to set the model value. */
229
- private propagateChanges;
338
+ removeSelected(): void;
230
339
  private propagateTagsChanges;
231
340
  private resetTags;
232
341
  private dropSubscriptions;
233
342
  /** Listens to user-generated selection events on each tag. */
234
- private listenToTagsSelection;
235
- /** Listens to user-generated selection events on each tag. */
236
343
  private listenToTagsFocus;
237
344
  private listenToTagsRemoved;
238
345
  private listenToTagsEdit;
239
- /** Checks whether an event comes from inside a tag element. */
240
- private originatesFromTag;
241
346
  /** Checks whether any of the tags is focused. */
242
347
  private hasFocusedTag;
243
- /** Syncs the list's disabled state with the individual tags. */
244
- private syncTagsDisabledState;
348
+ private syncTagsRemovableState;
245
349
  /** Revalidate control. */
246
350
  private revalidate;
247
- private propagateSelectableToChildren;
351
+ private setupDropListInitialProperties;
352
+ private syncDropListDisabledState;
353
+ private setupFocusMonitor;
248
354
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqTagList, [null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }]>;
249
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqTagList, "kbq-tag-list", ["kbqTagList"], { "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "value": { "alias": "value"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; }, { "valueChange": "valueChange"; "change": "change"; }, ["cleaner", "tags"], ["*", "kbq-cleaner"], false, never>;
355
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqTagList, "kbq-tag-list", ["kbqTagList"], { "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "value": { "alias": "value"; "required": false; }; "required": { "alias": "required"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; }, { "dropped": "dropped"; "valueChange": "valueChange"; "change": "change"; }, ["cleaner", "tags"], ["*", "kbq-cleaner"], false, [{ directive: typeof i1.CdkDropList; inputs: {}; outputs: {}; }]>;
356
+ static ngAcceptInputType_multiple: unknown;
357
+ static ngAcceptInputType_disabled: unknown;
358
+ static ngAcceptInputType_draggable: unknown;
359
+ static ngAcceptInputType_selectable: unknown;
250
360
  static ngAcceptInputType_editable: unknown;
361
+ static ngAcceptInputType_removable: unknown;
251
362
  }
@@ -1,33 +1,41 @@
1
1
  @use '../core/styles/common/tokens' as *;
2
+ @use '../core/styles/common/input';
2
3
 
3
4
  .kbq-tag-list {
4
5
  display: flex;
5
6
  flex-direction: row;
7
+ min-height: var(--kbq-size-xxl);
6
8
 
7
9
  box-sizing: border-box;
8
10
 
9
11
  &:focus-visible {
10
12
  outline: none;
11
13
  }
14
+
15
+ &.cdk-drop-list-dragging .cdk-drag {
16
+ transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);
17
+ }
12
18
  }
13
19
 
14
20
  .kbq-tag-input {
15
- border: none;
16
- outline: none;
17
- background: transparent;
18
-
19
- text-overflow: ellipsis;
20
-
21
- min-height: unset;
21
+ @include input.kbq-reset-input();
22
22
 
23
23
  padding-top: var(--kbq-tag-size-padding-vertical);
24
24
  padding-bottom: var(--kbq-tag-size-padding-vertical);
25
- padding-left: 4px;
25
+ padding-left: var(--kbq-size-xxs);
26
26
  padding-right: unset;
27
27
 
28
+ min-width: var(--kbq-size-3xl);
29
+ max-width: 100%;
30
+ flex-grow: 1;
31
+
28
32
  &.kbq-input {
29
- padding: unset;
30
- min-height: unset;
33
+ --kbq-input-size-padding-vertical: 0;
34
+ --kbq-form-field-size-border-radius: 0;
35
+
36
+ padding-left: var(--kbq-size-xxs);
37
+ min-height: unset !important;
38
+ width: auto;
31
39
  }
32
40
  }
33
41
 
@@ -43,10 +51,6 @@
43
51
  gap: var(--kbq-tag-list-size-content-gap);
44
52
 
45
53
  .kbq-tag-input {
46
- max-width: 100%;
47
-
48
- flex: 1 1 auto;
49
-
50
54
  // indicating tag list is empty
51
55
  &:first-child {
52
56
  padding-left: var(--kbq-size-s);
@@ -72,3 +76,9 @@
72
76
  );
73
77
  }
74
78
  }
79
+
80
+ // We should apply `cursor: grabbing` to the body, not to the dragged element itself.
81
+ // Reason: https://github.com/angular/components/blob/18.2.14/src/cdk/drag-drop/resets.scss#L14-L15
82
+ body:has(.kbq-tag-list.cdk-drop-list-dragging) {
83
+ cursor: grabbing;
84
+ }
@@ -21,6 +21,10 @@
21
21
  --kbq-tag-theme-fade-on-states-focus-icon: var(--kbq-icon-theme);
22
22
  --kbq-tag-theme-fade-on-states-focus-close-button: var(--kbq-icon-theme);
23
23
  --kbq-tag-theme-fade-on-states-focus-outline: var(--kbq-states-line-focus-theme);
24
+ --kbq-tag-theme-fade-on-states-selected-background: var(--kbq-background-theme);
25
+ --kbq-tag-theme-fade-on-states-selected-text: var(--kbq-foreground-white);
26
+ --kbq-tag-theme-fade-on-states-selected-icon: var(--kbq-icon-white);
27
+ --kbq-tag-theme-fade-on-states-selected-close-button: var(--kbq-icon-white);
24
28
  --kbq-tag-theme-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
25
29
  --kbq-tag-theme-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
26
30
  --kbq-tag-theme-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
@@ -38,6 +42,10 @@
38
42
  --kbq-tag-contrast-fade-on-states-focus-icon: var(--kbq-icon-contrast-fade);
39
43
  --kbq-tag-contrast-fade-on-states-focus-close-button: var(--kbq-icon-contrast-fade);
40
44
  --kbq-tag-contrast-fade-on-states-focus-outline: var(--kbq-states-line-focus-theme);
45
+ --kbq-tag-contrast-fade-on-states-selected-background: var(--kbq-background-theme);
46
+ --kbq-tag-contrast-fade-on-states-selected-text: var(--kbq-foreground-white);
47
+ --kbq-tag-contrast-fade-on-states-selected-icon: var(--kbq-icon-white);
48
+ --kbq-tag-contrast-fade-on-states-selected-close-button: var(--kbq-icon-white);
41
49
  --kbq-tag-contrast-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
42
50
  --kbq-tag-contrast-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
43
51
  --kbq-tag-contrast-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
@@ -55,6 +63,10 @@
55
63
  --kbq-tag-error-fade-on-states-focus-icon: var(--kbq-icon-error);
56
64
  --kbq-tag-error-fade-on-states-focus-close-button: var(--kbq-icon-error);
57
65
  --kbq-tag-error-fade-on-states-focus-outline: var(--kbq-states-line-focus-error);
66
+ --kbq-tag-error-fade-on-states-selected-background: var(--kbq-background-error);
67
+ --kbq-tag-error-fade-on-states-selected-text: var(--kbq-foreground-white);
68
+ --kbq-tag-error-fade-on-states-selected-icon: var(--kbq-icon-white);
69
+ --kbq-tag-error-fade-on-states-selected-close-button: var(--kbq-icon-white);
58
70
  --kbq-tag-error-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
59
71
  --kbq-tag-error-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
60
72
  --kbq-tag-error-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
@@ -71,7 +83,11 @@
71
83
  --kbq-tag-warning-fade-states-focus-text: var(--kbq-foreground-warning);
72
84
  --kbq-tag-warning-fade-states-focus-icon: var(--kbq-icon-warning);
73
85
  --kbq-tag-warning-fade-states-focus-close-button: var(--kbq-icon-warning);
74
- --kbq-tag-warning-fade-states-focus-outline: var(--kbq-states-line-focus-theme);
86
+ --kbq-tag-warning-fade-states-focus-outline: var(--kbq-line-warning);
87
+ --kbq-tag-warning-fade-states-selected-background: var(--kbq-background-warning);
88
+ --kbq-tag-warning-fade-states-selected-text: var(--kbq-foreground-white);
89
+ --kbq-tag-warning-fade-states-selected-icon: var(--kbq-icon-white);
90
+ --kbq-tag-warning-fade-states-selected-close-button: var(--kbq-icon-white);
75
91
  --kbq-tag-warning-fade-states-disabled-background: var(--kbq-states-background-disabled);
76
92
  --kbq-tag-warning-fade-states-disabled-text: var(--kbq-states-foreground-disabled);
77
93
  --kbq-tag-warning-fade-states-disabled-icon: var(--kbq-states-icon-disabled);