@koobiq/components 17.0.0-rc.1 → 17.0.0-rc.11

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 (669) hide show
  1. package/README.md +1 -2
  2. package/alert/_alert-theme.scss +48 -24
  3. package/alert/alert.component.d.ts +23 -3
  4. package/alert/alert.component.scss +91 -59
  5. package/alert/public-api.d.ts +1 -1
  6. package/autocomplete/_autocomplete-theme.scss +3 -3
  7. package/autocomplete/autocomplete.scss +8 -18
  8. package/autocomplete/public-api.d.ts +2 -2
  9. package/badge/_badge-theme.scss +30 -45
  10. package/badge/badge.component.scss +18 -39
  11. package/badge/public-api.d.ts +1 -1
  12. package/button/_button-base.scss +7 -14
  13. package/button/_button-theme.scss +30 -86
  14. package/button/button.component.d.ts +4 -3
  15. package/button/button.scss +7 -17
  16. package/button/public-api.d.ts +1 -1
  17. package/button-toggle/_button-toggle-theme.scss +19 -20
  18. package/button-toggle/button-toggle.scss +17 -44
  19. package/button-toggle/public-api.d.ts +1 -1
  20. package/card/_card-theme.scss +18 -17
  21. package/card/card.component.d.ts +1 -1
  22. package/card/card.component.scss +3 -6
  23. package/card/public-api.d.ts +1 -1
  24. package/checkbox/_checkbox-theme.scss +50 -50
  25. package/checkbox/checkbox.scss +31 -35
  26. package/code-block/README.md +18 -14
  27. package/code-block/_code-block-theme.scss +53 -23
  28. package/code-block/actionbar.component.scss +11 -25
  29. package/code-block/code-block.component.d.ts +12 -4
  30. package/code-block/code-block.scss +62 -77
  31. package/code-block/public-api.d.ts +1 -1
  32. package/core/animation/index.d.ts +1 -1
  33. package/core/common-behaviors/index.d.ts +3 -3
  34. package/core/datetime/index.d.ts +1 -1
  35. package/core/form-field/form-field-ref.d.ts +2 -0
  36. package/core/formatters/index.d.ts +1 -1
  37. package/core/forms/_forms-theme.scss +4 -8
  38. package/core/forms/_forms.scss +13 -43
  39. package/core/forms/index.d.ts +1 -1
  40. package/core/locales/formatters.d.ts +96 -0
  41. package/core/locales/index.d.ts +1 -1
  42. package/core/locales/locale-service.d.ts +97 -0
  43. package/core/option/_optgroup-theme.scss +4 -6
  44. package/core/option/_option-action-theme.scss +8 -11
  45. package/core/option/_option-theme.scss +15 -20
  46. package/core/option/index.d.ts +2 -2
  47. package/core/option/optgroup.scss +2 -3
  48. package/core/option/option.scss +0 -1
  49. package/core/pop-up/_pop-up.scss +0 -1
  50. package/core/pop-up/pop-up-trigger.d.ts +4 -2
  51. package/core/public-api.d.ts +3 -3
  52. package/core/select/common.d.ts +35 -0
  53. package/core/select/constants.d.ts +1 -1
  54. package/core/select/index.d.ts +3 -2
  55. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +15 -19
  56. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +9 -9
  57. package/core/services/theme.service.d.ts +3 -2
  58. package/core/styles/_core.scss +0 -1
  59. package/core/styles/_koobiq-theme.scss +5 -3
  60. package/core/styles/common/_animation.scss +9 -8
  61. package/core/styles/common/_button.scss +0 -2
  62. package/core/styles/common/_clearfix.scss +1 -1
  63. package/core/styles/common/_groups.scss +3 -9
  64. package/core/styles/common/_list.scss +24 -66
  65. package/core/styles/common/_overlay.scss +4 -3
  66. package/core/styles/common/_popup.scss +5 -5
  67. package/core/styles/common/_rtl.scss +4 -4
  68. package/core/styles/common/_select.scss +48 -42
  69. package/core/styles/common/_tokens.scss +47 -0
  70. package/core/styles/functions/_number.scss +14 -19
  71. package/core/styles/functions/_string.scss +18 -19
  72. package/core/styles/functions/_timing.scss +24 -24
  73. package/core/styles/theming/_components-theming.scss +1322 -1326
  74. package/core/styles/theming/_scrollbar-theme.scss +8 -5
  75. package/core/styles/theming/_theming.scss +26 -29
  76. package/core/styles/typography/_typography-utils.scss +1 -2
  77. package/core/styles/typography/_typography.scss +138 -85
  78. package/core/styles/visual/_body.scss +0 -2
  79. package/core/styles/visual/_layout.scss +44 -38
  80. package/core/utils/data-size/config.d.ts +20 -2
  81. package/core/utils/data-size/data-size.pipe.d.ts +10 -9
  82. package/core/utils/data-size/index.d.ts +1 -1
  83. package/core/utils/data-size/size.d.ts +3 -4
  84. package/core/utils/public-api.d.ts +1 -1
  85. package/datepicker/_datepicker-theme.scss +38 -40
  86. package/datepicker/calendar-body.scss +3 -11
  87. package/datepicker/calendar-header.scss +4 -10
  88. package/datepicker/calendar.scss +5 -17
  89. package/datepicker/datepicker-content.scss +5 -15
  90. package/datepicker/datepicker-input.directive.d.ts +1 -0
  91. package/datepicker/datepicker-input.scss +0 -5
  92. package/datepicker/datepicker-toggle.scss +3 -3
  93. package/datepicker/public-api.d.ts +4 -4
  94. package/divider/_divider-theme.scss +2 -1
  95. package/divider/divider.scss +9 -26
  96. package/dl/_dl-theme.scss +5 -8
  97. package/dl/dl.scss +5 -20
  98. package/dl/public-api.d.ts +1 -1
  99. package/dropdown/_dropdown-theme.scss +30 -22
  100. package/dropdown/dropdown-content.directive.d.ts +1 -1
  101. package/dropdown/dropdown-item.component.d.ts +1 -1
  102. package/dropdown/dropdown-item.scss +12 -16
  103. package/dropdown/dropdown-trigger.directive.d.ts +2 -2
  104. package/dropdown/dropdown.component.d.ts +1 -1
  105. package/dropdown/dropdown.scss +6 -15
  106. package/dropdown/public-api.d.ts +5 -5
  107. package/ellipsis-center/ellipsis-center.directive.d.ts +4 -3
  108. package/empty-state/README.md +0 -0
  109. package/empty-state/_empty-state-theme.scss +56 -0
  110. package/empty-state/empty-state.component.d.ts +31 -0
  111. package/empty-state/empty-state.module.d.ts +10 -0
  112. package/empty-state/empty-state.scss +81 -0
  113. package/empty-state/index.d.ts +1 -0
  114. package/empty-state/public-api.d.ts +2 -0
  115. package/esm2022/alert/alert.component.mjs +52 -5
  116. package/esm2022/alert/alert.module.mjs +1 -1
  117. package/esm2022/alert/public-api.mjs +2 -2
  118. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +1 -1
  119. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +23 -31
  120. package/esm2022/autocomplete/autocomplete.component.mjs +14 -9
  121. package/esm2022/autocomplete/autocomplete.module.mjs +3 -3
  122. package/esm2022/autocomplete/public-api.mjs +3 -3
  123. package/esm2022/badge/badge.component.mjs +8 -6
  124. package/esm2022/badge/badge.module.mjs +1 -1
  125. package/esm2022/badge/public-api.mjs +2 -2
  126. package/esm2022/button/button.component.mjs +20 -10
  127. package/esm2022/button/button.module.mjs +1 -1
  128. package/esm2022/button/public-api.mjs +2 -2
  129. package/esm2022/button-toggle/button-toggle.component.mjs +24 -16
  130. package/esm2022/button-toggle/button-toggle.module.mjs +1 -1
  131. package/esm2022/button-toggle/public-api.mjs +2 -2
  132. package/esm2022/card/card.component.mjs +2 -2
  133. package/esm2022/card/card.module.mjs +1 -1
  134. package/esm2022/card/public-api.mjs +2 -2
  135. package/esm2022/checkbox/checkbox-config.mjs +1 -1
  136. package/esm2022/checkbox/checkbox-module.mjs +1 -1
  137. package/esm2022/checkbox/checkbox-required-validator.mjs +1 -1
  138. package/esm2022/checkbox/checkbox.mjs +6 -6
  139. package/esm2022/checkbox/public-api.mjs +1 -1
  140. package/esm2022/code-block/actionbar.component.mjs +4 -6
  141. package/esm2022/code-block/code-block.component.mjs +64 -17
  142. package/esm2022/code-block/code-block.module.mjs +9 -5
  143. package/esm2022/code-block/public-api.mjs +2 -2
  144. package/esm2022/core/animation/fade-animations.mjs +1 -1
  145. package/esm2022/core/animation/index.mjs +2 -2
  146. package/esm2022/core/animation/select-animations.mjs +5 -5
  147. package/esm2022/core/common-behaviors/color.mjs +4 -2
  148. package/esm2022/core/common-behaviors/common-module.mjs +2 -2
  149. package/esm2022/core/common-behaviors/constructor.mjs +1 -1
  150. package/esm2022/core/common-behaviors/disabled.mjs +1 -1
  151. package/esm2022/core/common-behaviors/error-state.mjs +1 -1
  152. package/esm2022/core/common-behaviors/index.mjs +4 -4
  153. package/esm2022/core/common-behaviors/tabindex.mjs +1 -1
  154. package/esm2022/core/datetime/date-adapter.mjs +1 -1
  155. package/esm2022/core/datetime/date-formats.mjs +1 -1
  156. package/esm2022/core/datetime/index.mjs +2 -2
  157. package/esm2022/core/error/error-options.mjs +1 -1
  158. package/esm2022/core/form-field/form-field-ref.mjs +1 -1
  159. package/esm2022/core/formatters/date/formatter.mjs +1 -1
  160. package/esm2022/core/formatters/date/formatter.pipe.mjs +1 -1
  161. package/esm2022/core/formatters/index.mjs +2 -2
  162. package/esm2022/core/formatters/number/formatter.mjs +19 -20
  163. package/esm2022/core/forms/forms-module.mjs +1 -1
  164. package/esm2022/core/forms/forms.directive.mjs +1 -1
  165. package/esm2022/core/forms/index.mjs +2 -2
  166. package/esm2022/core/highlight/highlight.pipe.mjs +1 -1
  167. package/esm2022/core/highlight/index.mjs +1 -1
  168. package/esm2022/core/label/label-options.mjs +1 -1
  169. package/esm2022/core/line/line.mjs +2 -2
  170. package/esm2022/core/locales/en-US.mjs +1 -1
  171. package/esm2022/core/locales/es-LA.mjs +1 -1
  172. package/esm2022/core/locales/fa-IR.mjs +1 -1
  173. package/esm2022/core/locales/formatters.mjs +97 -1
  174. package/esm2022/core/locales/index.mjs +2 -2
  175. package/esm2022/core/locales/locale-service.mjs +10 -4
  176. package/esm2022/core/locales/locale-service.module.mjs +1 -1
  177. package/esm2022/core/locales/pt-BR.mjs +1 -1
  178. package/esm2022/core/locales/ru-RU.mjs +3 -3
  179. package/esm2022/core/locales/zh-CN.mjs +1 -1
  180. package/esm2022/core/option/action.mjs +20 -12
  181. package/esm2022/core/option/index.mjs +3 -3
  182. package/esm2022/core/option/optgroup.mjs +4 -4
  183. package/esm2022/core/option/option-module.mjs +1 -1
  184. package/esm2022/core/option/option.mjs +13 -7
  185. package/esm2022/core/overlay/overlay-position-map.mjs +1 -1
  186. package/esm2022/core/pop-up/pop-up-trigger.mjs +29 -30
  187. package/esm2022/core/pop-up/pop-up.mjs +1 -1
  188. package/esm2022/core/public-api.mjs +4 -4
  189. package/esm2022/core/select/common.mjs +120 -0
  190. package/esm2022/core/select/constants.mjs +1 -1
  191. package/esm2022/core/select/index.mjs +4 -3
  192. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  193. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +1 -1
  194. package/esm2022/core/services/measure-scrollbar.service.mjs +1 -1
  195. package/esm2022/core/services/theme.service.mjs +5 -4
  196. package/esm2022/core/title/title-text-ref.mjs +1 -1
  197. package/esm2022/core/utils/data-size/config.mjs +5 -17
  198. package/esm2022/core/utils/data-size/data-size.pipe.mjs +35 -22
  199. package/esm2022/core/utils/data-size/index.mjs +2 -2
  200. package/esm2022/core/utils/data-size/size.mjs +7 -14
  201. package/esm2022/core/utils/public-api.mjs +2 -2
  202. package/esm2022/core/utils/utils.mjs +4 -2
  203. package/esm2022/core/validation/validation.mjs +4 -2
  204. package/esm2022/core/version.mjs +2 -2
  205. package/esm2022/datepicker/calendar-body.component.mjs +3 -3
  206. package/esm2022/datepicker/calendar-header.component.mjs +8 -7
  207. package/esm2022/datepicker/calendar.component.mjs +6 -6
  208. package/esm2022/datepicker/datepicker-animations.mjs +2 -2
  209. package/esm2022/datepicker/datepicker-errors.mjs +1 -1
  210. package/esm2022/datepicker/datepicker-input.directive.mjs +42 -34
  211. package/esm2022/datepicker/datepicker-intl.mjs +1 -1
  212. package/esm2022/datepicker/datepicker-module.mjs +2 -2
  213. package/esm2022/datepicker/datepicker-toggle.component.mjs +11 -10
  214. package/esm2022/datepicker/datepicker.component.mjs +15 -15
  215. package/esm2022/datepicker/month-view.component.mjs +14 -13
  216. package/esm2022/datepicker/public-api.mjs +5 -5
  217. package/esm2022/divider/divider.component.mjs +1 -1
  218. package/esm2022/divider/divider.module.mjs +1 -1
  219. package/esm2022/dl/dl.component.mjs +1 -1
  220. package/esm2022/dl/dl.module.mjs +2 -2
  221. package/esm2022/dl/public-api.mjs +2 -2
  222. package/esm2022/dropdown/dropdown-animations.mjs +5 -5
  223. package/esm2022/dropdown/dropdown-content.directive.mjs +3 -3
  224. package/esm2022/dropdown/dropdown-item.component.mjs +5 -5
  225. package/esm2022/dropdown/dropdown-trigger.directive.mjs +25 -31
  226. package/esm2022/dropdown/dropdown.component.mjs +10 -18
  227. package/esm2022/dropdown/dropdown.module.mjs +1 -1
  228. package/esm2022/dropdown/dropdown.types.mjs +1 -1
  229. package/esm2022/dropdown/public-api.mjs +6 -6
  230. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +9 -7
  231. package/esm2022/empty-state/empty-state.component.mjs +104 -0
  232. package/esm2022/empty-state/empty-state.module.mjs +50 -0
  233. package/esm2022/empty-state/index.mjs +2 -0
  234. package/esm2022/empty-state/koobiq-components-empty-state.mjs +5 -0
  235. package/esm2022/empty-state/public-api.mjs +3 -0
  236. package/esm2022/file-upload/file-drop.mjs +2 -2
  237. package/esm2022/file-upload/file-upload.mjs +1 -1
  238. package/esm2022/file-upload/file-upload.module.mjs +12 -6
  239. package/esm2022/file-upload/index.mjs +1 -1
  240. package/esm2022/file-upload/multiple-file-upload.component.mjs +96 -29
  241. package/esm2022/file-upload/public-api.mjs +2 -2
  242. package/esm2022/file-upload/single-file-upload.component.mjs +100 -25
  243. package/esm2022/form-field/cleaner.mjs +13 -3
  244. package/esm2022/form-field/form-field-control.mjs +1 -1
  245. package/esm2022/form-field/form-field-errors.mjs +1 -1
  246. package/esm2022/form-field/form-field.mjs +8 -13
  247. package/esm2022/form-field/form-field.module.mjs +1 -1
  248. package/esm2022/form-field/hint.mjs +4 -4
  249. package/esm2022/form-field/password-hint.mjs +15 -15
  250. package/esm2022/form-field/password-toggle.mjs +14 -15
  251. package/esm2022/form-field/prefix.mjs +1 -1
  252. package/esm2022/form-field/public-api.mjs +4 -4
  253. package/esm2022/form-field/stepper.mjs +33 -29
  254. package/esm2022/form-field/suffix.mjs +1 -1
  255. package/esm2022/form-field/validate.directive.mjs +6 -5
  256. package/esm2022/icon/icon-button.component.mjs +2 -2
  257. package/esm2022/icon/icon-item.component.mjs +16 -6
  258. package/esm2022/icon/icon.component.mjs +3 -4
  259. package/esm2022/icon/icon.module.mjs +1 -1
  260. package/esm2022/icon/public-api.mjs +3 -3
  261. package/esm2022/input/input-number-validators.mjs +1 -1
  262. package/esm2022/input/input-number.mjs +35 -36
  263. package/esm2022/input/input-password.mjs +13 -7
  264. package/esm2022/input/input-value-accessor.mjs +1 -1
  265. package/esm2022/input/input.mjs +13 -7
  266. package/esm2022/input/input.module.mjs +1 -1
  267. package/esm2022/input/public-api.mjs +3 -3
  268. package/esm2022/link/link.component.mjs +2 -2
  269. package/esm2022/link/link.module.mjs +1 -1
  270. package/esm2022/link/public-api.mjs +2 -2
  271. package/esm2022/list/list-selection.component.mjs +34 -36
  272. package/esm2022/list/list.component.mjs +3 -3
  273. package/esm2022/list/list.module.mjs +2 -2
  274. package/esm2022/list/public-api.mjs +3 -3
  275. package/esm2022/loader-overlay/loader-overlay.component.mjs +4 -4
  276. package/esm2022/loader-overlay/loader-overlay.module.mjs +1 -1
  277. package/esm2022/loader-overlay/public-api.mjs +2 -2
  278. package/esm2022/markdown/markdown.component.mjs +22 -8
  279. package/esm2022/markdown/markdown.module.mjs +1 -1
  280. package/esm2022/markdown/markdown.service.mjs +1 -1
  281. package/esm2022/modal/css-unit.pipe.mjs +1 -1
  282. package/esm2022/modal/modal-control.service.mjs +3 -2
  283. package/esm2022/modal/modal-ref.class.mjs +1 -1
  284. package/esm2022/modal/modal-util.mjs +1 -1
  285. package/esm2022/modal/modal.component.mjs +54 -32
  286. package/esm2022/modal/modal.directive.mjs +27 -11
  287. package/esm2022/modal/modal.module.mjs +2 -2
  288. package/esm2022/modal/modal.service.mjs +3 -2
  289. package/esm2022/modal/modal.type.mjs +1 -1
  290. package/esm2022/modal/public-api.mjs +3 -3
  291. package/esm2022/navbar/index.mjs +1 -1
  292. package/esm2022/navbar/navbar-item.component.mjs +47 -38
  293. package/esm2022/navbar/navbar.component.mjs +19 -28
  294. package/esm2022/navbar/navbar.module.mjs +2 -2
  295. package/esm2022/navbar/public-api.mjs +3 -3
  296. package/esm2022/navbar/vertical-navbar.component.mjs +17 -18
  297. package/esm2022/popover/popover-animations.mjs +1 -1
  298. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  299. package/esm2022/popover/popover.component.mjs +5 -5
  300. package/esm2022/popover/popover.module.mjs +1 -1
  301. package/esm2022/popover/public-api.mjs +3 -3
  302. package/esm2022/progress-bar/progress-bar.component.mjs +4 -4
  303. package/esm2022/progress-bar/progress-bar.module.mjs +2 -2
  304. package/esm2022/progress-bar/public-api.mjs +2 -2
  305. package/esm2022/progress-spinner/progress-spinner.component.mjs +4 -4
  306. package/esm2022/progress-spinner/progress-spinner.module.mjs +1 -1
  307. package/esm2022/progress-spinner/public-api.mjs +2 -2
  308. package/esm2022/radio/public-api.mjs +2 -2
  309. package/esm2022/radio/radio.component.mjs +9 -10
  310. package/esm2022/radio/radio.module.mjs +1 -1
  311. package/esm2022/risk-level/public-api.mjs +2 -2
  312. package/esm2022/risk-level/risk-level.component.mjs +1 -1
  313. package/esm2022/risk-level/risk-level.module.mjs +1 -1
  314. package/esm2022/scrollbar/public-api.mjs +2 -2
  315. package/esm2022/scrollbar/scrollbar.component.mjs +15 -13
  316. package/esm2022/scrollbar/scrollbar.directive.mjs +3 -3
  317. package/esm2022/scrollbar/scrollbar.module.mjs +2 -2
  318. package/esm2022/scrollbar/scrollbar.types.mjs +3 -2
  319. package/esm2022/select/public-api.mjs +3 -3
  320. package/esm2022/select/select-option.directive.mjs +14 -9
  321. package/esm2022/select/select.component.mjs +92 -172
  322. package/esm2022/select/select.module.mjs +28 -28
  323. package/esm2022/sidebar/public-api.mjs +2 -2
  324. package/esm2022/sidebar/sidebar-animations.mjs +1 -1
  325. package/esm2022/sidebar/sidebar.component.mjs +3 -3
  326. package/esm2022/sidebar/sidebar.module.mjs +1 -1
  327. package/esm2022/sidepanel/public-api.mjs +4 -4
  328. package/esm2022/sidepanel/sidepanel-animations.mjs +7 -3
  329. package/esm2022/sidepanel/sidepanel-config.mjs +1 -1
  330. package/esm2022/sidepanel/sidepanel-container.component.mjs +4 -4
  331. package/esm2022/sidepanel/sidepanel-directives.mjs +30 -16
  332. package/esm2022/sidepanel/sidepanel-ref.mjs +10 -4
  333. package/esm2022/sidepanel/sidepanel.module.mjs +1 -1
  334. package/esm2022/sidepanel/sidepanel.service.mjs +11 -14
  335. package/esm2022/splitter/public-api.mjs +2 -2
  336. package/esm2022/splitter/splitter.component.mjs +45 -35
  337. package/esm2022/splitter/splitter.module.mjs +1 -1
  338. package/esm2022/table/public-api.mjs +2 -2
  339. package/esm2022/table/table.component.mjs +29 -6
  340. package/esm2022/table/table.module.mjs +14 -6
  341. package/esm2022/tabs/paginated-tab-header.mjs +8 -11
  342. package/esm2022/tabs/public-api.mjs +6 -6
  343. package/esm2022/tabs/tab-body.component.mjs +9 -9
  344. package/esm2022/tabs/tab-content.directive.mjs +1 -1
  345. package/esm2022/tabs/tab-group.component.mjs +61 -21
  346. package/esm2022/tabs/tab-header.component.mjs +4 -4
  347. package/esm2022/tabs/tab-label-wrapper.directive.mjs +1 -1
  348. package/esm2022/tabs/tab-label.directive.mjs +1 -1
  349. package/esm2022/tabs/tab-nav-bar/index.mjs +1 -1
  350. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +4 -4
  351. package/esm2022/tabs/tab.component.mjs +4 -6
  352. package/esm2022/tabs/tabs-animations.mjs +1 -1
  353. package/esm2022/tabs/tabs.module.mjs +2 -2
  354. package/esm2022/tags/public-api.mjs +5 -5
  355. package/esm2022/tags/tag-default-options.mjs +1 -1
  356. package/esm2022/tags/tag-input.mjs +26 -14
  357. package/esm2022/tags/tag-list.component.mjs +14 -20
  358. package/esm2022/tags/tag-text-control.mjs +1 -1
  359. package/esm2022/tags/tag.component.mjs +6 -8
  360. package/esm2022/tags/tag.module.mjs +9 -5
  361. package/esm2022/textarea/index.mjs +1 -1
  362. package/esm2022/textarea/textarea.component.mjs +15 -15
  363. package/esm2022/textarea/textarea.module.mjs +1 -1
  364. package/esm2022/timepicker/public-api.mjs +2 -2
  365. package/esm2022/timepicker/timepicker.constants.mjs +6 -1
  366. package/esm2022/timepicker/timepicker.directive.mjs +72 -28
  367. package/esm2022/timepicker/timepicker.module.mjs +1 -1
  368. package/esm2022/timezone/cities-by-filter.pipe.mjs +1 -1
  369. package/esm2022/timezone/timezone-option.component.mjs +12 -11
  370. package/esm2022/timezone/timezone-option.directive.mjs +9 -7
  371. package/esm2022/timezone/timezone-select.component.mjs +7 -7
  372. package/esm2022/timezone/timezone.module.mjs +1 -1
  373. package/esm2022/timezone/timezone.utils.mjs +5 -9
  374. package/esm2022/timezone/utc-offset.pipe.mjs +1 -1
  375. package/esm2022/title/public-api.mjs +2 -2
  376. package/esm2022/title/title.directive.mjs +11 -8
  377. package/esm2022/title/title.module.mjs +1 -1
  378. package/esm2022/toast/public-api.mjs +4 -4
  379. package/esm2022/toast/toast-animations.mjs +2 -2
  380. package/esm2022/toast/toast-container.component.mjs +5 -6
  381. package/esm2022/toast/toast.component.mjs +6 -6
  382. package/esm2022/toast/toast.module.mjs +1 -1
  383. package/esm2022/toast/toast.service.mjs +26 -37
  384. package/esm2022/toast/toast.type.mjs +3 -1
  385. package/esm2022/toggle/public-api.mjs +2 -2
  386. package/esm2022/toggle/toggle.component.mjs +17 -9
  387. package/esm2022/toggle/toggle.module.mjs +1 -1
  388. package/esm2022/tooltip/public-api.mjs +2 -2
  389. package/esm2022/tooltip/tooltip.animations.mjs +1 -1
  390. package/esm2022/tooltip/tooltip.component.mjs +32 -16
  391. package/esm2022/tooltip/tooltip.module.mjs +2 -2
  392. package/esm2022/tree/control/base-tree-control.mjs +1 -1
  393. package/esm2022/tree/control/flat-tree-control.filters.mjs +4 -7
  394. package/esm2022/tree/control/flat-tree-control.mjs +4 -7
  395. package/esm2022/tree/control/nested-tree-control.mjs +1 -1
  396. package/esm2022/tree/control/tree-control.mjs +1 -1
  397. package/esm2022/tree/data-source/flat-data-source.mjs +3 -8
  398. package/esm2022/tree/data-source/nested-data-source.mjs +2 -3
  399. package/esm2022/tree/node.mjs +1 -1
  400. package/esm2022/tree/outlet.mjs +1 -1
  401. package/esm2022/tree/padding.directive.mjs +5 -6
  402. package/esm2022/tree/public-api.mjs +11 -11
  403. package/esm2022/tree/toggle.mjs +8 -5
  404. package/esm2022/tree/tree-base.mjs +4 -4
  405. package/esm2022/tree/tree-errors.mjs +1 -1
  406. package/esm2022/tree/tree-option.component.mjs +9 -13
  407. package/esm2022/tree/tree-selection.component.mjs +19 -33
  408. package/esm2022/tree/tree.mjs +7 -3
  409. package/esm2022/tree/tree.module.mjs +4 -4
  410. package/esm2022/tree-select/public-api.mjs +2 -2
  411. package/esm2022/tree-select/tree-select.component.mjs +73 -98
  412. package/esm2022/tree-select/tree-select.module.mjs +31 -11
  413. package/fesm2022/koobiq-components-alert.mjs +55 -8
  414. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  415. package/fesm2022/koobiq-components-autocomplete.mjs +58 -61
  416. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  417. package/fesm2022/koobiq-components-badge.mjs +10 -8
  418. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  419. package/fesm2022/koobiq-components-button-toggle.mjs +28 -20
  420. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  421. package/fesm2022/koobiq-components-button.mjs +22 -12
  422. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  423. package/fesm2022/koobiq-components-card.mjs +2 -2
  424. package/fesm2022/koobiq-components-card.mjs.map +1 -1
  425. package/fesm2022/koobiq-components-checkbox.mjs +3 -3
  426. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  427. package/fesm2022/koobiq-components-code-block.mjs +75 -27
  428. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  429. package/fesm2022/koobiq-components-core.mjs +623 -397
  430. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  431. package/fesm2022/koobiq-components-datepicker.mjs +101 -90
  432. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  433. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  434. package/fesm2022/koobiq-components-dl.mjs +3 -3
  435. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  436. package/fesm2022/koobiq-components-dropdown.mjs +127 -141
  437. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  438. package/fesm2022/koobiq-components-ellipsis-center.mjs +5 -4
  439. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  440. package/fesm2022/koobiq-components-empty-state.mjs +157 -0
  441. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -0
  442. package/fesm2022/koobiq-components-file-upload.mjs +207 -62
  443. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  444. package/fesm2022/koobiq-components-form-field.mjs +88 -81
  445. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  446. package/fesm2022/koobiq-components-icon.mjs +17 -8
  447. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  448. package/fesm2022/koobiq-components-input.mjs +62 -51
  449. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  450. package/fesm2022/koobiq-components-link.mjs +1 -1
  451. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  452. package/fesm2022/koobiq-components-list.mjs +39 -41
  453. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  454. package/fesm2022/koobiq-components-loader-overlay.mjs +7 -7
  455. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  456. package/fesm2022/koobiq-components-markdown.mjs +20 -6
  457. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  458. package/fesm2022/koobiq-components-modal.mjs +88 -49
  459. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  460. package/fesm2022/koobiq-components-navbar.mjs +84 -85
  461. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  462. package/fesm2022/koobiq-components-popover.mjs +12 -12
  463. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  464. package/fesm2022/koobiq-components-progress-bar.mjs +5 -5
  465. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  466. package/fesm2022/koobiq-components-progress-spinner.mjs +5 -5
  467. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  468. package/fesm2022/koobiq-components-radio.mjs +11 -12
  469. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  470. package/fesm2022/koobiq-components-risk-level.mjs +2 -2
  471. package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
  472. package/fesm2022/koobiq-components-scrollbar.mjs +17 -14
  473. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  474. package/fesm2022/koobiq-components-select.mjs +136 -212
  475. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  476. package/fesm2022/koobiq-components-sidebar.mjs +3 -3
  477. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  478. package/fesm2022/koobiq-components-sidepanel.mjs +108 -87
  479. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  480. package/fesm2022/koobiq-components-splitter.mjs +46 -36
  481. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  482. package/fesm2022/koobiq-components-table.mjs +42 -11
  483. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  484. package/fesm2022/koobiq-components-tabs.mjs +87 -52
  485. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  486. package/fesm2022/koobiq-components-tags.mjs +53 -46
  487. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  488. package/fesm2022/koobiq-components-textarea.mjs +13 -13
  489. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  490. package/fesm2022/koobiq-components-timepicker.mjs +79 -30
  491. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  492. package/fesm2022/koobiq-components-timezone.mjs +23 -25
  493. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  494. package/fesm2022/koobiq-components-title.mjs +13 -10
  495. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  496. package/fesm2022/koobiq-components-toast.mjs +86 -95
  497. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  498. package/fesm2022/koobiq-components-toggle.mjs +17 -9
  499. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  500. package/fesm2022/koobiq-components-tooltip.mjs +33 -18
  501. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  502. package/fesm2022/koobiq-components-tree-select.mjs +110 -114
  503. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  504. package/fesm2022/koobiq-components-tree.mjs +509 -533
  505. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  506. package/file-upload/_file-upload-theme.scss +124 -73
  507. package/file-upload/file-upload.module.d.ts +11 -10
  508. package/file-upload/file-upload.scss +0 -6
  509. package/file-upload/multiple-file-upload.component.d.ts +37 -7
  510. package/file-upload/multiple-file-upload.component.scss +50 -120
  511. package/file-upload/public-api.d.ts +1 -1
  512. package/file-upload/single-file-upload.component.d.ts +37 -7
  513. package/file-upload/single-file-upload.component.scss +12 -33
  514. package/form-field/_form-field-theme.scss +46 -36
  515. package/form-field/_hint-theme.scss +15 -20
  516. package/form-field/cleaner.scss +3 -9
  517. package/form-field/form-field.scss +23 -26
  518. package/form-field/hint.scss +5 -8
  519. package/form-field/password-toggle.d.ts +3 -2
  520. package/form-field/password-toggle.scss +3 -10
  521. package/form-field/public-api.d.ts +3 -3
  522. package/form-field/stepper.scss +4 -11
  523. package/icon/_icon-button-theme.scss +47 -36
  524. package/icon/_icon-item-theme.scss +47 -26
  525. package/icon/_icon-theme.scss +12 -14
  526. package/icon/icon-button.scss +5 -20
  527. package/icon/icon-item.component.d.ts +3 -1
  528. package/icon/icon-item.scss +10 -8
  529. package/icon/icon.scss +0 -6
  530. package/icon/public-api.d.ts +2 -2
  531. package/input/_input-theme.scss +6 -4
  532. package/input/input.scss +11 -10
  533. package/input/public-api.d.ts +2 -2
  534. package/link/_link-theme.scss +32 -49
  535. package/link/link.component.d.ts +1 -1
  536. package/link/public-api.d.ts +1 -1
  537. package/list/_list-theme.scss +21 -19
  538. package/list/list-selection.component.d.ts +2 -2
  539. package/list/list.scss +2 -6
  540. package/list/public-api.d.ts +2 -2
  541. package/loader-overlay/_loader-overlay-theme.scss +17 -18
  542. package/loader-overlay/loader-overlay.scss +9 -33
  543. package/loader-overlay/public-api.d.ts +1 -1
  544. package/markdown/_markdown-theme.scss +47 -47
  545. package/markdown/markdown.scss +41 -91
  546. package/modal/README.md +4 -3
  547. package/modal/_modal-animation.scss +0 -1
  548. package/modal/_modal-confirm.scss +2 -7
  549. package/modal/_modal-theme.scss +11 -13
  550. package/modal/modal.component.d.ts +1 -1
  551. package/modal/modal.directive.d.ts +3 -3
  552. package/modal/modal.scss +15 -31
  553. package/modal/modal.type.d.ts +2 -2
  554. package/modal/public-api.d.ts +2 -2
  555. package/navbar/README.md +21 -20
  556. package/navbar/_navbar-item_horizontal.scss +40 -33
  557. package/navbar/_navbar-item_vertical.scss +31 -33
  558. package/navbar/_navbar-theme.scss +20 -24
  559. package/navbar/navbar-brand.scss +24 -27
  560. package/navbar/navbar-divider.scss +4 -8
  561. package/navbar/navbar-item.component.d.ts +4 -4
  562. package/navbar/navbar-item.scss +20 -15
  563. package/navbar/navbar.scss +2 -6
  564. package/navbar/public-api.d.ts +2 -2
  565. package/navbar/vertical-navbar.scss +4 -6
  566. package/package.json +17 -10
  567. package/popover/README.md +18 -14
  568. package/popover/_popover-theme.scss +9 -17
  569. package/popover/popover.component.d.ts +1 -1
  570. package/popover/popover.scss +15 -29
  571. package/popover/public-api.d.ts +2 -2
  572. package/prebuilt-themes/dark-theme.css +1 -1
  573. package/prebuilt-themes/light-theme.css +1 -1
  574. package/progress-bar/_progress-bar-theme.scss +7 -11
  575. package/progress-bar/progress-bar.scss +6 -19
  576. package/progress-bar/public-api.d.ts +1 -1
  577. package/progress-spinner/_progress-spinner-theme.scss +6 -8
  578. package/progress-spinner/progress-spinner.scss +8 -18
  579. package/progress-spinner/public-api.d.ts +1 -1
  580. package/radio/_radio-theme.scss +37 -37
  581. package/radio/public-api.d.ts +1 -1
  582. package/radio/radio.scss +35 -40
  583. package/risk-level/_risk-level-theme.scss +25 -31
  584. package/risk-level/public-api.d.ts +1 -1
  585. package/risk-level/risk-level.component.scss +4 -10
  586. package/schematics/collection.json +11 -0
  587. package/schematics/ng-add/index.js +70 -0
  588. package/schematics/ng-add/schema.json +15 -0
  589. package/scrollbar/_scrollbar-component-theme.scss +15 -19
  590. package/scrollbar/public-api.d.ts +1 -1
  591. package/scrollbar/scrollbar.component.scss +68 -63
  592. package/scrollbar/scrollbar.directive.d.ts +1 -1
  593. package/scrollbar/scrollbar.types.d.ts +1 -1
  594. package/select/_select-theme.scss +14 -16
  595. package/select/public-api.d.ts +2 -2
  596. package/select/select-option.directive.d.ts +3 -2
  597. package/select/select.component.d.ts +12 -33
  598. package/select/select.module.d.ts +1 -1
  599. package/select/select.scss +3 -11
  600. package/sidebar/public-api.d.ts +1 -1
  601. package/sidepanel/_sidepanel-theme.scss +8 -10
  602. package/sidepanel/public-api.d.ts +3 -3
  603. package/sidepanel/sidepanel.scss +20 -37
  604. package/splitter/_splitter-theme.scss +5 -6
  605. package/splitter/public-api.d.ts +1 -1
  606. package/splitter/splitter.component.d.ts +10 -5
  607. package/splitter/splitter.scss +0 -1
  608. package/table/_table-theme.scss +16 -15
  609. package/table/public-api.d.ts +1 -1
  610. package/table/table.component.d.ts +8 -1
  611. package/table/table.module.d.ts +1 -1
  612. package/table/table.scss +41 -42
  613. package/tabs/_tabs-common.scss +13 -15
  614. package/tabs/_tabs-theme.scss +76 -44
  615. package/tabs/paginated-tab-header.d.ts +1 -1
  616. package/tabs/public-api.d.ts +5 -5
  617. package/tabs/tab-body.component.d.ts +4 -4
  618. package/tabs/tab-group.component.d.ts +10 -4
  619. package/tabs/tab-group.scss +2 -8
  620. package/tabs/tab-header.scss +0 -10
  621. package/tabs/tab-nav-bar/tab-nav-bar.scss +2 -9
  622. package/tags/_tag-theme.scss +22 -27
  623. package/tags/public-api.d.ts +4 -4
  624. package/tags/tag-default-options.d.ts +1 -0
  625. package/tags/tag-input.d.ts +8 -2
  626. package/tags/tag-list.scss +15 -12
  627. package/tags/tag.component.d.ts +1 -1
  628. package/tags/tag.scss +5 -11
  629. package/textarea/_textarea-theme.scss +2 -5
  630. package/textarea/textarea.component.d.ts +1 -1
  631. package/textarea/textarea.scss +5 -10
  632. package/timepicker/public-api.d.ts +1 -1
  633. package/timepicker/timepicker.constants.d.ts +2 -0
  634. package/timepicker/timepicker.directive.d.ts +11 -4
  635. package/timepicker/timepicker.scss +2 -8
  636. package/timezone/_timezone-option-theme.scss +8 -10
  637. package/timezone/timezone-option.component.scss +5 -8
  638. package/timezone/timezone-option.directive.d.ts +4 -3
  639. package/timezone/timezone-select.component.d.ts +2 -1
  640. package/timezone/timezone-select.component.scss +2 -4
  641. package/timezone/timezone.utils.d.ts +1 -1
  642. package/title/public-api.d.ts +1 -1
  643. package/title/title.directive.d.ts +0 -1
  644. package/toast/_toast-theme.scss +20 -16
  645. package/toast/public-api.d.ts +3 -3
  646. package/toast/toast-container.component.scss +5 -6
  647. package/toast/toast.component.scss +28 -29
  648. package/toast/toast.service.d.ts +9 -5
  649. package/toast/toast.type.d.ts +3 -1
  650. package/toggle/_toggle-theme.scss +49 -42
  651. package/toggle/public-api.d.ts +1 -1
  652. package/toggle/toggle.scss +9 -22
  653. package/tooltip/_tooltip-theme.scss +12 -16
  654. package/tooltip/public-api.d.ts +1 -1
  655. package/tooltip/tooltip.component.d.ts +14 -10
  656. package/tooltip/tooltip.scss +7 -13
  657. package/tree/_tree-theme.scss +20 -23
  658. package/tree/public-api.d.ts +10 -10
  659. package/tree/toggle.scss +3 -6
  660. package/tree/tree-base.d.ts +2 -2
  661. package/tree/tree-option.component.d.ts +1 -1
  662. package/tree/tree-option.scss +17 -14
  663. package/tree/tree-selection.component.d.ts +2 -1
  664. package/tree-select/_tree-select-theme.scss +12 -15
  665. package/tree-select/public-api.d.ts +1 -1
  666. package/tree-select/tree-select.component.d.ts +13 -20
  667. package/tree-select/tree-select.module.d.ts +1 -2
  668. package/tree-select/tree-select.scss +1 -6
  669. package/core/styles/_variables.scss +0 -1
@@ -2,81 +2,107 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/typography/typography-utils' as *;
5
-
6
- @use '../core/styles/tokens';
7
-
8
- $tokens: meta.module-variables(tokens) !default;
9
-
10
- /* stylelint-disable no-descending-specificity */
11
- @mixin kbq-file-upload-text-color($states) {
12
- &,
13
- .kbq-icon,
14
- .kbq-link {
15
- color: map.get($states, border);
16
- }
17
- }
18
-
19
- @mixin kbq-file-upload-color($states) {
20
- background-color: map.get($states, background);
21
- border-color: map.get($states, border) !important;
22
- }
5
+ @use '../core/styles/common/tokens' as *;
23
6
 
24
7
  @mixin kbq-file-upload-theme($theme) {
25
- $file-upload: map.get(map.get($theme, components), file-upload);
26
-
27
- $single: map.get($file-upload, single);
28
- $single-states: map.get($single, states);
29
-
30
- $multiple: map.get($file-upload, multiple);
31
- $multiple-states: map.get($multiple, states);
8
+ $file-upload: map.get($theme, components, file-upload);
32
9
 
33
10
  .kbq-file-upload {
34
- .kbq-focused, .kbq-link.kbq-focused {
35
- border: 2px solid map.get(map.get($single, states), focused);
11
+ .kbq-focused,
12
+ .kbq-link.kbq-focused {
13
+ border: 2px solid
14
+ kbq-css-variable(file-upload-single-states-focused, map.get($file-upload, single, states, focused));
36
15
  }
37
16
  }
38
17
 
39
18
  .kbq-single-file-upload {
40
19
  .kbq-file-upload {
41
- @include kbq-file-upload-color(map.get($single, default));
20
+ background-color: kbq-css-variable(
21
+ file-upload-single-default-background,
22
+ map.get($file-upload, single, default, background)
23
+ );
24
+ border-color: kbq-css-variable(
25
+ file-upload-single-default-border,
26
+ map.get($file-upload, single, default, border)
27
+ ) !important;
42
28
 
43
29
  &.dragover {
44
- @include kbq-file-upload-color(map.get($single-states, on-drag));
30
+ background-color: kbq-css-variable(
31
+ file-upload-single-states-on-drag-background,
32
+ map.get($file-upload, single, states, on-drag, background)
33
+ );
34
+ border-color: kbq-css-variable(
35
+ file-upload-single-states-on-drag-border,
36
+ map.get($file-upload, single, states, on-drag, border)
37
+ ) !important;
45
38
  }
46
39
 
47
40
  &.kbq-error:not(.kbq-disabled) {
48
- $state-error: map.get($single-states, error);
49
-
50
41
  &:not(.dragover) {
51
- @include kbq-file-upload-color($state-error);
42
+ background-color: kbq-css-variable(
43
+ file-upload-single-states-error-background,
44
+ map.get($file-upload, single, states, error, background)
45
+ );
46
+ border-color: kbq-css-variable(
47
+ file-upload-single-states-error-border,
48
+ map.get($file-upload, single, states, error, border)
49
+ ) !important;
52
50
  }
53
51
 
54
52
  *,
55
53
  .kbq-icon {
56
- color: map.get($state-error, text-block);
54
+ color: kbq-css-variable(
55
+ file-upload-single-states-error-text-block,
56
+ map.get($file-upload, single, states, error, text-block)
57
+ );
57
58
  }
58
59
  }
59
60
 
60
61
  &.kbq-disabled {
61
- @include kbq-file-upload-color(map.get($single-states, disabled));
62
-
63
- @include kbq-file-upload-text-color(map.get($single-states, disabled));
62
+ background-color: kbq-css-variable(
63
+ file-upload-single-states-disabled-background,
64
+ map.get($file-upload, single, states, disabled, background)
65
+ );
66
+ border-color: kbq-css-variable(
67
+ file-upload-single-states-disabled-border,
68
+ map.get($file-upload, single, states, disabled, border)
69
+ ) !important;
70
+
71
+ &,
72
+ .kbq-icon,
73
+ .kbq-link {
74
+ color: kbq-css-variable(
75
+ file-upload-single-states-disabled-border,
76
+ map.get($file-upload, single, states, disabled, border)
77
+ );
78
+ }
64
79
  }
65
80
  }
66
81
  }
67
82
 
68
83
  .kbq-multiple-file-upload {
69
84
  .kbq-file-upload {
70
- $default: map.get($multiple, default);
71
-
72
- @include kbq-file-upload-color($default);
85
+ background-color: kbq-css-variable(
86
+ file-upload-multiple-default-background,
87
+ map.get($file-upload, multiple, default, background)
88
+ );
89
+ border-color: kbq-css-variable(
90
+ file-upload-multiple-default-border,
91
+ map.get($file-upload, multiple, default, border)
92
+ ) !important;
73
93
 
74
94
  .btn-upload {
75
- border-top-color: map.get($default, border);
95
+ border-top-color: kbq-css-variable(
96
+ file-upload-multiple-default-border,
97
+ map.get($file-upload, multiple, default, border)
98
+ );
76
99
  }
77
100
 
78
101
  .kbq-file-multiple-uploaded__header {
79
- border-bottom-color: map.get($default, grid-divider);
102
+ border-bottom-color: kbq-css-variable(
103
+ file-upload-multiple-default-grid-divider,
104
+ map.get($file-upload, multiple, default, grid-divider)
105
+ );
80
106
 
81
107
  .kbq-file-multiple-uploaded__header-inner {
82
108
  //color: map.get(map.get($multiple, default), border);;
@@ -84,49 +110,86 @@ $tokens: meta.module-variables(tokens) !default;
84
110
  }
85
111
 
86
112
  &.dragover {
87
- @include kbq-file-upload-color(map.get($multiple-states, on-drag));
113
+ background-color: kbq-css-variable(
114
+ file-upload-multiple-states-on-drag-background,
115
+ map.get($file-upload, multiple, states, on-drag, background)
116
+ );
117
+ border-color: kbq-css-variable(
118
+ file-upload-multiple-states-on-drag-border,
119
+ map.get($file-upload, multiple, states, on-drag, border)
120
+ ) !important;
88
121
 
89
122
  .kbq-file-multiple-uploaded__header {
90
- border-bottom-color: map.get(map.get($multiple-states, on-drag), background) !important;
123
+ border-bottom-color: kbq-css-variable(
124
+ file-upload-multiple-states-on-drag-background,
125
+ map.get($file-upload, multiple, states, on-drag, background)
126
+ ) !important;
91
127
  }
92
128
 
93
129
  &.selected {
94
130
  .dropzone {
95
- border-top-color: map.get(map.get($multiple-states, on-drag), border);
131
+ border-top-color: kbq-css-variable(
132
+ file-upload-multiple-states-on-drag-border,
133
+ map.get($file-upload, multiple, states, on-drag, border)
134
+ );
96
135
  }
97
136
  }
98
137
  }
99
138
 
100
139
  &.kbq-disabled {
101
- @include kbq-file-upload-color(map.get($multiple-states, disabled));
102
-
103
- @include kbq-file-upload-text-color(map.get($multiple-states, disabled));
140
+ background-color: kbq-css-variable(
141
+ file-upload-multiple-states-disabled-background,
142
+ map.get($file-upload, multiple, states, disabled, background)
143
+ );
144
+ border-color: kbq-css-variable(
145
+ file-upload-multiple-states-disabled-border,
146
+ map.get($file-upload, multiple, states, disabled, border)
147
+ ) !important;
148
+
149
+ &,
150
+ .kbq-icon,
151
+ .kbq-link {
152
+ color: kbq-css-variable(
153
+ file-upload-multiple-states-disabled-border,
154
+ map.get($file-upload, multiple, states, disabled, border)
155
+ );
156
+ }
104
157
 
105
158
  &.selected {
106
159
  .dropzone {
107
- border-top-color: map.get(map.get($multiple-states, disabled), border);
160
+ border-top-color: kbq-css-variable(
161
+ file-upload-multiple-states-disabled-border,
162
+ map.get($file-upload, multiple, states, disabled, border)
163
+ );
108
164
  }
109
165
  }
110
166
  }
111
167
 
112
168
  &:not(.kbq-disabled) {
113
169
  .kbq-file-upload__row.error {
114
- $state-error: map.get($multiple-states, error);
115
-
116
170
  *,
117
171
  .kbq-icon {
118
- color: map.get($state-error, text-block);
172
+ color: kbq-css-variable(
173
+ file-upload-multiple-states-error-text-block,
174
+ map.get($file-upload, multiple, states, error, text-block)
175
+ );
119
176
  }
120
177
  }
121
178
  }
122
179
 
123
180
  .multiple__uploaded-item {
124
181
  & .kbq-file-upload__file .kbq-icon {
125
- color: map.get($default, left-icon)
182
+ color: kbq-css-variable(
183
+ file-upload-multiple-default-left-icon,
184
+ map.get($file-upload, multiple, default, left-icon)
185
+ );
126
186
  }
127
187
 
128
188
  & .kbq-file-upload__action .kbq-icon {
129
- color: map.get($default, icon-button)
189
+ color: kbq-css-variable(
190
+ file-upload-multiple-default-icon-button,
191
+ map.get($file-upload, multiple, default, icon-button)
192
+ );
130
193
  }
131
194
  }
132
195
  }
@@ -135,54 +198,43 @@ $tokens: meta.module-variables(tokens) !default;
135
198
  .kbq-single-file-upload,
136
199
  .kbq-multiple-file-upload {
137
200
  .kbq-file-upload__hint:not(.kbq-error) {
138
- $form-field-hint: map.get(map.get($theme, components), form-field-hint);
139
-
140
- color: map.get($form-field-hint, text);
201
+ color: kbq-css-variable(form-field-hint-text, map.get($theme, components, form-field-hint, text));
141
202
  }
142
203
  }
143
204
  }
144
205
 
145
-
146
206
  @mixin kbq-file-upload-typography($config) {
147
207
  .kbq-single-file-upload {
148
208
  & .file-item__text-wrapper,
149
209
  & .dropzone__text {
150
- @include kbq-typography-level-to-styles($config, map.get($tokens, file-upload-font-single-text-block));
210
+ @include kbq-typography-css-variables(file-upload, single-text-block);
151
211
  }
152
212
  }
153
213
 
154
214
  .kbq-multiple-file-upload {
155
215
  .multiple__header {
156
- @include kbq-typography-level-to-styles($config, map.get($tokens, file-upload-font-multiple-title));
216
+ @include kbq-typography-css-variables(file-upload, multiple-title);
157
217
  }
158
218
 
159
219
  .multiple__caption {
160
220
  &,
161
221
  .kbq-link {
162
- @include kbq-typography-level-to-styles(
163
- $config, map.get($tokens, file-upload-font-multiple-text-block)
164
- );
222
+ @include kbq-typography-css-variables(file-upload, multiple-text-block);
165
223
  }
166
224
  }
167
225
 
168
226
  .kbq-file-multiple-uploaded__header {
169
- @include kbq-typography-level-to-styles(
170
- $config,
171
- map.get($tokens, file-upload-font-multiple-grid)
172
- );
227
+ @include kbq-typography-css-variables(file-upload, multiple-grid);
173
228
  }
174
229
 
175
230
  .multiple__uploaded-item {
176
- @include kbq-typography-level-to-styles($config, map.get($tokens, file-upload-font-multiple-grid));
231
+ @include kbq-typography-css-variables(file-upload, multiple-grid);
177
232
  }
178
233
 
179
234
  .kbq-file-upload {
180
235
  .kbq-list-item,
181
236
  .kbq-list-option {
182
- @include kbq-typography-level-to-styles(
183
- $config,
184
- map.get($tokens, file-upload-font-multiple-grid)
185
- );
237
+ @include kbq-typography-css-variables(file-upload, multiple-grid);
186
238
  }
187
239
  }
188
240
  }
@@ -190,8 +242,7 @@ $tokens: meta.module-variables(tokens) !default;
190
242
  .kbq-single-file-upload,
191
243
  .kbq-multiple-file-upload {
192
244
  .kbq-file-upload__hint.kbq-hint .kbq-hint__text {
193
- @include kbq-typography-level-to-styles($config, map.get($tokens, form-field-hint-font-text));
245
+ @include kbq-typography-css-variables(form-field-hint, text);
194
246
  }
195
247
  }
196
248
  }
197
- /* stylelint-enable no-descending-specificity */
@@ -3,17 +3,18 @@ import * as i1 from "./file-drop";
3
3
  import * as i2 from "./single-file-upload.component";
4
4
  import * as i3 from "./multiple-file-upload.component";
5
5
  import * as i4 from "@angular/common";
6
- import * as i5 from "@koobiq/components/tooltip";
7
- import * as i6 from "@koobiq/components/progress-spinner";
8
- import * as i7 from "@koobiq/components/icon";
9
- import * as i8 from "@koobiq/components/button";
10
- import * as i9 from "@koobiq/components/list";
11
- import * as i10 from "@koobiq/components/form-field";
12
- import * as i11 from "@koobiq/components/ellipsis-center";
13
- import * as i12 from "@koobiq/components/core";
14
- import * as i13 from "@koobiq/components/link";
6
+ import * as i5 from "@angular/forms";
7
+ import * as i6 from "@koobiq/components/tooltip";
8
+ import * as i7 from "@koobiq/components/progress-spinner";
9
+ import * as i8 from "@koobiq/components/icon";
10
+ import * as i9 from "@koobiq/components/button";
11
+ import * as i10 from "@koobiq/components/list";
12
+ import * as i11 from "@koobiq/components/form-field";
13
+ import * as i12 from "@koobiq/components/ellipsis-center";
14
+ import * as i13 from "@koobiq/components/core";
15
+ import * as i14 from "@koobiq/components/link";
15
16
  export declare class KbqFileUploadModule {
16
17
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqFileUploadModule, never>;
17
- static ɵmod: i0.ɵɵNgModuleDeclaration<KbqFileUploadModule, [typeof i1.KbqFileDropDirective, typeof i2.KbqSingleFileUploadComponent, typeof i3.KbqMultipleFileUploadComponent], [typeof i4.CommonModule, typeof i5.KbqToolTipModule, typeof i6.KbqProgressSpinnerModule, typeof i7.KbqIconModule, typeof i8.KbqButtonModule, typeof i9.KbqListModule, typeof i10.KbqFormFieldModule, typeof i11.KbqEllipsisCenterModule, typeof i12.KbqDataSizeModule, typeof i13.KbqLinkModule], [typeof i2.KbqSingleFileUploadComponent, typeof i3.KbqMultipleFileUploadComponent, typeof i1.KbqFileDropDirective]>;
18
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KbqFileUploadModule, [typeof i1.KbqFileDropDirective, typeof i2.KbqSingleFileUploadComponent, typeof i3.KbqMultipleFileUploadComponent], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i5.ReactiveFormsModule, typeof i6.KbqToolTipModule, typeof i7.KbqProgressSpinnerModule, typeof i8.KbqIconModule, typeof i9.KbqButtonModule, typeof i10.KbqListModule, typeof i11.KbqFormFieldModule, typeof i12.KbqEllipsisCenterModule, typeof i13.KbqDataSizePipe, typeof i14.KbqLinkModule], [typeof i2.KbqSingleFileUploadComponent, typeof i3.KbqMultipleFileUploadComponent, typeof i1.KbqFileDropDirective]>;
18
19
  static ɵinj: i0.ɵɵInjectorDeclaration<KbqFileUploadModule>;
19
20
  }
@@ -1,12 +1,6 @@
1
1
  @use 'sass:meta';
2
2
  @use 'sass:map';
3
3
 
4
- @use '../core/styles/tokens';
5
-
6
- @use '../core/styles/common';
7
-
8
- $tokens: meta.module-variables(tokens) !default;
9
-
10
4
  .kbq-file-upload {
11
5
  box-sizing: border-box;
12
6
  display: flex;
@@ -1,7 +1,9 @@
1
- import { ChangeDetectorRef, ElementRef, EventEmitter, Renderer2, TemplateRef } from '@angular/core';
1
+ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2, TemplateRef } from '@angular/core';
2
+ import { ControlValueAccessor, NgControl } from '@angular/forms';
2
3
  import { CanDisable, KbqLocaleService } from '@koobiq/components/core';
3
- import { KbqFile, KbqFileItem, KbqFileValidatorFn, KbqInputFile, KbqInputFileLabel } from './file-upload';
4
4
  import { ProgressSpinnerMode } from '@koobiq/components/progress-spinner';
5
+ import { Subscription } from 'rxjs';
6
+ import { KbqFile, KbqFileItem, KbqFileValidatorFn, KbqInputFile, KbqInputFileLabel } from './file-upload';
5
7
  import * as i0 from "@angular/core";
6
8
  export interface KbqInputFileMultipleLabel extends KbqInputFileLabel {
7
9
  captionTextWhenSelected: string;
@@ -13,11 +15,12 @@ export interface KbqInputFileMultipleLabel extends KbqInputFileLabel {
13
15
  [k: string | number | symbol]: unknown;
14
16
  }
15
17
  export declare const KBQ_MULTIPLE_FILE_UPLOAD_DEFAULT_CONFIGURATION: KbqInputFileMultipleLabel;
16
- export declare class KbqMultipleFileUploadComponent implements KbqInputFile, CanDisable {
18
+ export declare class KbqMultipleFileUploadComponent implements AfterViewInit, OnDestroy, KbqInputFile, CanDisable, ControlValueAccessor {
17
19
  private cdr;
18
20
  private renderer;
19
21
  readonly configuration: KbqInputFileMultipleLabel;
20
22
  private localeService?;
23
+ ngControl?: NgControl | undefined;
21
24
  /**
22
25
  * A value responsible for progress spinner type.
23
26
  * Loading logic depends on selected mode */
@@ -25,10 +28,15 @@ export declare class KbqMultipleFileUploadComponent implements KbqInputFile, Can
25
28
  accept?: string[];
26
29
  disabled: boolean;
27
30
  errors: string[];
28
- files: KbqFileItem[];
29
31
  size: 'compact' | 'default';
30
32
  inputId: string;
33
+ /**
34
+ * Alternative for FormControl's validation
35
+ */
31
36
  customValidation?: KbqFileValidatorFn[];
37
+ private _files;
38
+ get files(): KbqFileItem[];
39
+ set files(currentFileList: KbqFileItem[]);
32
40
  fileQueueChanged: EventEmitter<KbqFileItem[]>;
33
41
  customFileIcon: TemplateRef<HTMLElement>;
34
42
  input: ElementRef<HTMLInputElement>;
@@ -41,9 +49,31 @@ export declare class KbqMultipleFileUploadComponent implements KbqInputFile, Can
41
49
  separatedCaptionText: string[];
42
50
  separatedCaptionTextWhenSelected: string[];
43
51
  separatedCaptionTextForCompactSize: string[];
52
+ statusChangeSubscription?: Subscription;
53
+ /** cvaOnChange function registered via registerOnChange (ControlValueAccessor). */
54
+ cvaOnChange: (_: KbqFileItem[]) => void;
55
+ /** onTouch function registered via registerOnTouch (ControlValueAccessor). */
56
+ onTouched: () => void;
44
57
  get acceptedFiles(): string;
45
58
  get hasErrors(): boolean;
46
- constructor(cdr: ChangeDetectorRef, renderer: Renderer2, configuration: KbqInputFileMultipleLabel, localeService?: KbqLocaleService | undefined);
59
+ constructor(cdr: ChangeDetectorRef, renderer: Renderer2, configuration: KbqInputFileMultipleLabel, localeService?: KbqLocaleService | undefined, ngControl?: NgControl | undefined);
60
+ ngAfterViewInit(): void;
61
+ ngOnDestroy(): void;
62
+ /** Implemented as part of ControlValueAccessor.
63
+ * @docs-private */
64
+ writeValue(files: FileList | KbqFileItem[] | null): void;
65
+ /** Implemented as part of ControlValueAccessor.
66
+ * @docs-private */
67
+ registerOnChange(fn: any): void;
68
+ /** Implemented as part of ControlValueAccessor.
69
+ * @docs-private */
70
+ registerOnTouched(fn: any): void;
71
+ /**
72
+ * Sets the disabled state of the control. Implemented as a part of ControlValueAccessor.
73
+ * @param isDisabled Whether the control should be disabled.
74
+ * @docs-private
75
+ */
76
+ setDisabledState(isDisabled: boolean): void;
47
77
  onFileSelectedViaClick({ target }: Event): void;
48
78
  onFileDropped(files: FileList | KbqFile[]): void;
49
79
  deleteFile(index: number, event?: MouseEvent): void;
@@ -53,6 +83,6 @@ export declare class KbqMultipleFileUploadComponent implements KbqInputFile, Can
53
83
  private validateFile;
54
84
  private initDefaultParams;
55
85
  private getCaptionText;
56
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqMultipleFileUploadComponent, [null, null, { optional: true; }, { optional: true; }]>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqMultipleFileUploadComponent, "kbq-multiple-file-upload,kbq-file-upload[multiple]", never, { "progressMode": { "alias": "progressMode"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "files": { "alias": "files"; "required": false; }; "size": { "alias": "size"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; }, { "fileQueueChanged": "fileQueueChanged"; }, ["customFileIcon"], ["[hint]"], false, never>;
86
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqMultipleFileUploadComponent, [null, null, { optional: true; }, { optional: true; }, { optional: true; self: true; }]>;
87
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqMultipleFileUploadComponent, "kbq-multiple-file-upload,kbq-file-upload[multiple]", never, { "progressMode": { "alias": "progressMode"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "size": { "alias": "size"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; "files": { "alias": "files"; "required": false; }; }, { "fileQueueChanged": "fileQueueChanged"; }, ["customFileIcon"], ["[hint]"], false, never>;
58
88
  }