@koobiq/components 17.0.0-beta.2 → 17.0.0-rc.10

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 (369) 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/autocomplete/_autocomplete-theme.scss +3 -3
  6. package/autocomplete/autocomplete.scss +8 -18
  7. package/badge/_badge-theme.scss +30 -45
  8. package/badge/badge.component.scss +18 -39
  9. package/button/_button-base.scss +7 -14
  10. package/button/_button-theme.scss +30 -86
  11. package/button/button.component.d.ts +3 -2
  12. package/button/button.scss +7 -17
  13. package/button-toggle/_button-toggle-theme.scss +19 -20
  14. package/button-toggle/button-toggle.scss +17 -44
  15. package/card/_card-theme.scss +18 -17
  16. package/card/card.component.scss +3 -6
  17. package/checkbox/_checkbox-theme.scss +50 -50
  18. package/checkbox/checkbox.scss +31 -35
  19. package/code-block/README.md +18 -14
  20. package/code-block/_code-block-theme.scss +53 -23
  21. package/code-block/actionbar.component.scss +11 -25
  22. package/code-block/code-block.component.d.ts +12 -4
  23. package/code-block/code-block.scss +62 -77
  24. package/core/form-field/form-field-ref.d.ts +2 -0
  25. package/core/forms/_forms-theme.scss +4 -8
  26. package/core/forms/_forms.scss +13 -43
  27. package/core/locales/formatters.d.ts +96 -0
  28. package/core/locales/locale-service.d.ts +97 -0
  29. package/core/option/_optgroup-theme.scss +4 -6
  30. package/core/option/_option-action-theme.scss +8 -11
  31. package/core/option/_option-theme.scss +15 -20
  32. package/core/option/optgroup.scss +0 -1
  33. package/core/option/option.scss +0 -1
  34. package/core/pop-up/_pop-up.scss +0 -1
  35. package/core/pop-up/pop-up-trigger.d.ts +3 -1
  36. package/core/select/common.d.ts +35 -0
  37. package/core/select/index.d.ts +1 -0
  38. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +15 -19
  39. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +9 -9
  40. package/core/services/theme.service.d.ts +3 -2
  41. package/core/styles/_core.scss +0 -1
  42. package/core/styles/_koobiq-theme.scss +5 -3
  43. package/core/styles/common/_animation.scss +9 -8
  44. package/core/styles/common/_button.scss +0 -2
  45. package/core/styles/common/_clearfix.scss +1 -1
  46. package/core/styles/common/_groups.scss +3 -9
  47. package/core/styles/common/_list.scss +28 -31
  48. package/core/styles/common/_overlay.scss +4 -3
  49. package/core/styles/common/_popup.scss +5 -5
  50. package/core/styles/common/_rtl.scss +4 -4
  51. package/core/styles/common/_select.scss +48 -42
  52. package/core/styles/common/_tokens.scss +47 -0
  53. package/core/styles/functions/_number.scss +14 -19
  54. package/core/styles/functions/_string.scss +18 -19
  55. package/core/styles/functions/_timing.scss +24 -24
  56. package/core/styles/theming/_components-theming.scss +1380 -1384
  57. package/core/styles/theming/_scrollbar-theme.scss +8 -5
  58. package/core/styles/theming/_theming.scss +26 -29
  59. package/core/styles/typography/_typography-utils.scss +1 -2
  60. package/core/styles/typography/_typography.scss +138 -85
  61. package/core/styles/visual/_body.scss +0 -2
  62. package/core/styles/visual/_layout.scss +44 -38
  63. package/core/utils/data-size/config.d.ts +20 -2
  64. package/core/utils/data-size/data-size.pipe.d.ts +10 -9
  65. package/core/utils/data-size/size.d.ts +3 -4
  66. package/datepicker/_datepicker-theme.scss +38 -40
  67. package/datepicker/calendar-body.scss +3 -11
  68. package/datepicker/calendar-header.scss +4 -10
  69. package/datepicker/calendar.scss +5 -17
  70. package/datepicker/datepicker-content.scss +5 -15
  71. package/datepicker/datepicker-input.scss +0 -5
  72. package/datepicker/datepicker-toggle.scss +3 -3
  73. package/divider/_divider-theme.scss +2 -1
  74. package/divider/divider.scss +9 -26
  75. package/dl/_dl-theme.scss +5 -8
  76. package/dl/dl.scss +5 -20
  77. package/dropdown/_dropdown-theme.scss +27 -22
  78. package/dropdown/dropdown-item.scss +5 -12
  79. package/dropdown/dropdown-trigger.directive.d.ts +2 -2
  80. package/dropdown/dropdown.scss +6 -15
  81. package/ellipsis-center/ellipsis-center.directive.d.ts +3 -2
  82. package/empty-state/README.md +0 -0
  83. package/empty-state/_empty-state-theme.scss +56 -0
  84. package/empty-state/empty-state.component.d.ts +31 -0
  85. package/empty-state/empty-state.module.d.ts +10 -0
  86. package/empty-state/empty-state.scss +81 -0
  87. package/empty-state/index.d.ts +1 -0
  88. package/empty-state/public-api.d.ts +2 -0
  89. package/esm2022/alert/alert.component.mjs +52 -5
  90. package/esm2022/badge/badge.component.mjs +2 -2
  91. package/esm2022/button/button.component.mjs +13 -6
  92. package/esm2022/button-toggle/button-toggle.component.mjs +2 -2
  93. package/esm2022/checkbox/checkbox.mjs +2 -2
  94. package/esm2022/code-block/actionbar.component.mjs +2 -2
  95. package/esm2022/code-block/code-block.component.mjs +58 -14
  96. package/esm2022/core/animation/select-animations.mjs +4 -4
  97. package/esm2022/core/form-field/form-field-ref.mjs +1 -1
  98. package/esm2022/core/locales/formatters.mjs +97 -1
  99. package/esm2022/core/locales/locale-service.mjs +5 -2
  100. package/esm2022/core/option/option.mjs +2 -2
  101. package/esm2022/core/pop-up/pop-up-trigger.mjs +18 -11
  102. package/esm2022/core/select/common.mjs +120 -0
  103. package/esm2022/core/select/index.mjs +2 -1
  104. package/esm2022/core/services/theme.service.mjs +4 -1
  105. package/esm2022/core/utils/data-size/config.mjs +5 -17
  106. package/esm2022/core/utils/data-size/data-size.pipe.mjs +36 -22
  107. package/esm2022/core/utils/data-size/size.mjs +10 -14
  108. package/esm2022/core/version.mjs +2 -2
  109. package/esm2022/datepicker/calendar-header.component.mjs +1 -1
  110. package/esm2022/datepicker/datepicker-animations.mjs +2 -2
  111. package/esm2022/dropdown/dropdown-animations.mjs +4 -4
  112. package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
  113. package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -4
  114. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -5
  115. package/esm2022/empty-state/empty-state.component.mjs +104 -0
  116. package/esm2022/empty-state/empty-state.module.mjs +50 -0
  117. package/esm2022/empty-state/index.mjs +2 -0
  118. package/esm2022/empty-state/koobiq-components-empty-state.mjs +5 -0
  119. package/esm2022/empty-state/public-api.mjs +3 -0
  120. package/esm2022/file-upload/file-upload.mjs +15 -1
  121. package/esm2022/file-upload/file-upload.module.mjs +15 -5
  122. package/esm2022/file-upload/multiple-file-upload.component.mjs +98 -49
  123. package/esm2022/file-upload/single-file-upload.component.mjs +110 -54
  124. package/esm2022/form-field/form-field.mjs +2 -2
  125. package/esm2022/form-field/hint.mjs +2 -2
  126. package/esm2022/form-field/password-hint.mjs +2 -2
  127. package/esm2022/form-field/password-toggle.mjs +11 -9
  128. package/esm2022/icon/icon-item.component.mjs +16 -6
  129. package/esm2022/input/input-number.mjs +2 -2
  130. package/esm2022/list/list-selection.component.mjs +2 -2
  131. package/esm2022/list/list.component.mjs +2 -2
  132. package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
  133. package/esm2022/markdown/markdown.component.mjs +2 -2
  134. package/esm2022/modal/modal.component.mjs +8 -9
  135. package/esm2022/navbar/navbar-item.component.mjs +11 -11
  136. package/esm2022/navbar/navbar.component.mjs +2 -2
  137. package/esm2022/navbar/vertical-navbar.component.mjs +2 -2
  138. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  139. package/esm2022/popover/popover.component.mjs +3 -3
  140. package/esm2022/radio/radio.component.mjs +2 -2
  141. package/esm2022/scrollbar/scrollbar.component.mjs +2 -2
  142. package/esm2022/select/select-option.directive.mjs +7 -5
  143. package/esm2022/select/select.component.mjs +71 -125
  144. package/esm2022/select/select.module.mjs +28 -28
  145. package/esm2022/splitter/splitter.component.mjs +37 -17
  146. package/esm2022/table/table.component.mjs +29 -6
  147. package/esm2022/table/table.module.mjs +14 -6
  148. package/esm2022/tabs/tab-body.component.mjs +1 -1
  149. package/esm2022/tabs/tab-group.component.mjs +55 -13
  150. package/esm2022/tabs/tab-header.component.mjs +2 -2
  151. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
  152. package/esm2022/tags/tag-default-options.mjs +1 -1
  153. package/esm2022/tags/tag-input.mjs +17 -3
  154. package/esm2022/tags/tag-list.component.mjs +2 -2
  155. package/esm2022/tags/tag.component.mjs +4 -4
  156. package/esm2022/textarea/textarea.component.mjs +12 -10
  157. package/esm2022/timepicker/timepicker.directive.mjs +11 -3
  158. package/esm2022/timezone/timezone-option.component.mjs +2 -2
  159. package/esm2022/timezone/timezone-option.directive.mjs +7 -5
  160. package/esm2022/timezone/timezone-select.component.mjs +5 -5
  161. package/esm2022/title/title.directive.mjs +3 -4
  162. package/esm2022/toast/toast-container.component.mjs +2 -2
  163. package/esm2022/toast/toast.component.mjs +4 -4
  164. package/esm2022/toast/toast.service.mjs +18 -13
  165. package/esm2022/toast/toast.type.mjs +3 -1
  166. package/esm2022/tooltip/tooltip.component.mjs +28 -14
  167. package/esm2022/tree/padding.directive.mjs +2 -2
  168. package/esm2022/tree/tree-base.mjs +2 -2
  169. package/esm2022/tree/tree-option.component.mjs +2 -2
  170. package/esm2022/tree/tree-selection.component.mjs +6 -1
  171. package/esm2022/tree-select/tree-select.component.mjs +29 -44
  172. package/esm2022/tree-select/tree-select.module.mjs +31 -11
  173. package/fesm2022/koobiq-components-alert.mjs +52 -5
  174. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  175. package/fesm2022/koobiq-components-badge.mjs +2 -2
  176. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  177. package/fesm2022/koobiq-components-button-toggle.mjs +2 -2
  178. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  179. package/fesm2022/koobiq-components-button.mjs +12 -5
  180. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  181. package/fesm2022/koobiq-components-checkbox.mjs +2 -2
  182. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  183. package/fesm2022/koobiq-components-code-block.mjs +57 -14
  184. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  185. package/fesm2022/koobiq-components-core.mjs +285 -67
  186. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  187. package/fesm2022/koobiq-components-datepicker.mjs +2 -2
  188. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  189. package/fesm2022/koobiq-components-dropdown.mjs +8 -8
  190. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  191. package/fesm2022/koobiq-components-ellipsis-center.mjs +5 -4
  192. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  193. package/fesm2022/koobiq-components-empty-state.mjs +157 -0
  194. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -0
  195. package/fesm2022/koobiq-components-file-upload.mjs +225 -97
  196. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  197. package/fesm2022/koobiq-components-form-field.mjs +21 -21
  198. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  199. package/fesm2022/koobiq-components-icon.mjs +14 -4
  200. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  201. package/fesm2022/koobiq-components-input.mjs +1 -1
  202. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  203. package/fesm2022/koobiq-components-list.mjs +4 -4
  204. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  205. package/fesm2022/koobiq-components-loader-overlay.mjs +1 -1
  206. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  207. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  208. package/fesm2022/koobiq-components-modal.mjs +7 -8
  209. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  210. package/fesm2022/koobiq-components-navbar.mjs +14 -14
  211. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  212. package/fesm2022/koobiq-components-popover.mjs +4 -4
  213. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  214. package/fesm2022/koobiq-components-radio.mjs +2 -2
  215. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  216. package/fesm2022/koobiq-components-scrollbar.mjs +2 -2
  217. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  218. package/fesm2022/koobiq-components-select.mjs +102 -155
  219. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  220. package/fesm2022/koobiq-components-splitter.mjs +36 -16
  221. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  222. package/fesm2022/koobiq-components-table.mjs +41 -10
  223. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  224. package/fesm2022/koobiq-components-tabs.mjs +57 -15
  225. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  226. package/fesm2022/koobiq-components-tags.mjs +21 -8
  227. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  228. package/fesm2022/koobiq-components-textarea.mjs +11 -9
  229. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  230. package/fesm2022/koobiq-components-timepicker.mjs +10 -2
  231. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  232. package/fesm2022/koobiq-components-timezone.mjs +11 -10
  233. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  234. package/fesm2022/koobiq-components-title.mjs +2 -3
  235. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  236. package/fesm2022/koobiq-components-toast.mjs +25 -17
  237. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  238. package/fesm2022/koobiq-components-tooltip.mjs +26 -13
  239. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  240. package/fesm2022/koobiq-components-tree-select.mjs +57 -51
  241. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  242. package/fesm2022/koobiq-components-tree.mjs +9 -4
  243. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  244. package/file-upload/_file-upload-theme.scss +124 -73
  245. package/file-upload/file-upload.d.ts +1 -1
  246. package/file-upload/file-upload.module.d.ts +11 -9
  247. package/file-upload/file-upload.scss +0 -6
  248. package/file-upload/multiple-file-upload.component.d.ts +38 -10
  249. package/file-upload/multiple-file-upload.component.scss +50 -120
  250. package/file-upload/single-file-upload.component.d.ts +40 -13
  251. package/file-upload/single-file-upload.component.scss +12 -33
  252. package/form-field/_form-field-theme.scss +46 -36
  253. package/form-field/_hint-theme.scss +15 -20
  254. package/form-field/cleaner.scss +3 -9
  255. package/form-field/form-field.scss +23 -26
  256. package/form-field/hint.scss +5 -8
  257. package/form-field/password-toggle.d.ts +3 -2
  258. package/form-field/password-toggle.scss +3 -10
  259. package/form-field/stepper.scss +4 -11
  260. package/icon/_icon-button-theme.scss +47 -36
  261. package/icon/_icon-item-theme.scss +47 -26
  262. package/icon/_icon-theme.scss +12 -14
  263. package/icon/icon-button.scss +5 -20
  264. package/icon/icon-item.component.d.ts +3 -1
  265. package/icon/icon-item.scss +10 -8
  266. package/icon/icon.scss +0 -6
  267. package/input/_input-theme.scss +6 -4
  268. package/input/input.scss +11 -10
  269. package/link/_link-theme.scss +30 -49
  270. package/list/_list-theme.scss +21 -19
  271. package/list/list.scss +2 -6
  272. package/loader-overlay/_loader-overlay-theme.scss +17 -18
  273. package/loader-overlay/loader-overlay.scss +9 -33
  274. package/markdown/_markdown-theme.scss +47 -47
  275. package/markdown/markdown.scss +41 -91
  276. package/modal/README.md +5 -4
  277. package/modal/_modal-animation.scss +0 -1
  278. package/modal/_modal-confirm.scss +2 -7
  279. package/modal/_modal-theme.scss +11 -13
  280. package/modal/modal.component.d.ts +1 -1
  281. package/modal/modal.scss +15 -31
  282. package/navbar/README.md +21 -20
  283. package/navbar/_navbar-item_horizontal.scss +28 -29
  284. package/navbar/_navbar-item_vertical.scss +31 -31
  285. package/navbar/_navbar-theme.scss +20 -24
  286. package/navbar/navbar-brand.scss +24 -27
  287. package/navbar/navbar-divider.scss +4 -8
  288. package/navbar/navbar-item.component.d.ts +4 -4
  289. package/navbar/navbar-item.scss +13 -15
  290. package/navbar/navbar.scss +2 -6
  291. package/navbar/vertical-navbar.scss +4 -6
  292. package/package.json +23 -16
  293. package/popover/README.md +18 -14
  294. package/popover/_popover-theme.scss +9 -17
  295. package/popover/popover.scss +15 -29
  296. package/prebuilt-themes/dark-theme.css +1 -1
  297. package/prebuilt-themes/light-theme.css +1 -1
  298. package/progress-bar/_progress-bar-theme.scss +7 -11
  299. package/progress-bar/progress-bar.scss +6 -19
  300. package/progress-spinner/_progress-spinner-theme.scss +6 -8
  301. package/progress-spinner/progress-spinner.scss +8 -18
  302. package/radio/_radio-theme.scss +36 -37
  303. package/radio/radio.scss +25 -40
  304. package/risk-level/_risk-level-theme.scss +25 -31
  305. package/risk-level/risk-level.component.scss +4 -10
  306. package/schematics/collection.json +11 -0
  307. package/schematics/ng-add/index.js +70 -0
  308. package/schematics/ng-add/schema.json +15 -0
  309. package/scrollbar/_scrollbar-component-theme.scss +15 -19
  310. package/scrollbar/scrollbar.component.scss +68 -63
  311. package/scrollbar/scrollbar.directive.d.ts +1 -0
  312. package/scrollbar/scrollbar.types.d.ts +1 -0
  313. package/select/_select-theme.scss +14 -16
  314. package/select/select-option.directive.d.ts +3 -2
  315. package/select/select.component.d.ts +12 -33
  316. package/select/select.module.d.ts +1 -1
  317. package/select/select.scss +3 -11
  318. package/sidepanel/_sidepanel-theme.scss +8 -10
  319. package/sidepanel/sidepanel.scss +20 -37
  320. package/splitter/_splitter-theme.scss +5 -6
  321. package/splitter/splitter.component.d.ts +10 -5
  322. package/splitter/splitter.scss +0 -1
  323. package/table/_table-theme.scss +16 -15
  324. package/table/table.component.d.ts +8 -1
  325. package/table/table.module.d.ts +1 -1
  326. package/table/table.scss +41 -42
  327. package/tabs/_tabs-common.scss +13 -15
  328. package/tabs/_tabs-theme.scss +76 -44
  329. package/tabs/tab-body.component.d.ts +1 -1
  330. package/tabs/tab-group.component.d.ts +9 -3
  331. package/tabs/tab-group.scss +2 -8
  332. package/tabs/tab-header.scss +0 -10
  333. package/tabs/tab-nav-bar/tab-nav-bar.scss +2 -9
  334. package/tags/_tag-theme.scss +22 -27
  335. package/tags/tag-default-options.d.ts +1 -0
  336. package/tags/tag-input.d.ts +7 -1
  337. package/tags/tag-list.scss +15 -12
  338. package/tags/tag.component.d.ts +1 -1
  339. package/tags/tag.scss +5 -11
  340. package/textarea/_textarea-theme.scss +2 -5
  341. package/textarea/textarea.scss +5 -10
  342. package/timepicker/timepicker.directive.d.ts +1 -1
  343. package/timepicker/timepicker.scss +2 -8
  344. package/timezone/_timezone-option-theme.scss +8 -10
  345. package/timezone/timezone-option.component.scss +5 -8
  346. package/timezone/timezone-option.directive.d.ts +3 -2
  347. package/timezone/timezone-select.component.d.ts +2 -1
  348. package/timezone/timezone-select.component.scss +2 -4
  349. package/title/title.directive.d.ts +0 -1
  350. package/toast/_toast-theme.scss +20 -16
  351. package/toast/toast-container.component.scss +5 -6
  352. package/toast/toast.component.scss +28 -29
  353. package/toast/toast.service.d.ts +8 -4
  354. package/toast/toast.type.d.ts +2 -0
  355. package/toggle/_toggle-theme.scss +49 -42
  356. package/toggle/toggle.scss +9 -22
  357. package/tooltip/_tooltip-theme.scss +12 -16
  358. package/tooltip/tooltip.component.d.ts +12 -8
  359. package/tooltip/tooltip.scss +7 -13
  360. package/tree/_tree-theme.scss +20 -23
  361. package/tree/toggle.scss +3 -6
  362. package/tree/tree-base.d.ts +1 -1
  363. package/tree/tree-option.scss +17 -14
  364. package/tree/tree-selection.component.d.ts +1 -0
  365. package/tree-select/_tree-select-theme.scss +12 -15
  366. package/tree-select/tree-select.component.d.ts +8 -17
  367. package/tree-select/tree-select.module.d.ts +1 -2
  368. package/tree-select/tree-select.scss +1 -6
  369. package/core/styles/_variables.scss +0 -1
package/icon/icon.scss CHANGED
@@ -1,12 +1,6 @@
1
1
  @use 'sass:meta';
2
2
  @use 'sass:map';
3
3
 
4
- @use '../core/styles/tokens';
5
-
6
-
7
- $tokens: meta.module-variables(tokens) !default;
8
-
9
-
10
4
  .kbq-icon-rotate_90 {
11
5
  transform: rotate(90deg);
12
6
  }
@@ -2,13 +2,15 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/typography/typography-utils' as *;
5
-
5
+ @use '../core/styles/common/tokens' as *;
6
6
 
7
7
  @mixin kbq-input-typography($config) {
8
- $tokens: map.get($config, tokens);
9
-
10
8
  .kbq-input,
11
9
  .kbq-input.kbq-input-password::placeholder {
12
- @include kbq-typography-level-to-styles($config, map.get($tokens, input-font-text));
10
+ @include kbq-typography-css-variables(input, text);
11
+ }
12
+
13
+ .kbq-input.kbq-input-password {
14
+ @include kbq-typography-level-to-styles($config, mono-normal);
13
15
  }
14
16
  }
package/input/input.scss CHANGED
@@ -4,7 +4,7 @@
4
4
  @use '../core/styles/common/input';
5
5
 
6
6
  @use '../core/styles/tokens';
7
-
7
+ @use '../core/styles/common/tokens' as *;
8
8
 
9
9
  $tokens: meta.module-variables(tokens) !default;
10
10
 
@@ -19,23 +19,24 @@ $tokens: meta.module-variables(tokens) !default;
19
19
  width: 100%;
20
20
  min-height: calc(
21
21
  var(--kbq-form-field-size-height, map.get($tokens, form-field-size-height)) -
22
- (var(--kbq-form-field-size-border-width, map.get($tokens, form-field-size-border-width)) * 2)
22
+ (var(--kbq-form-field-size-border-width, map.get($tokens, form-field-size-border-width)) * 2)
23
23
  );
24
24
 
25
- padding:
26
- calc(
27
- var(--kbq-input-size-padding-vertical, map.get($tokens, input-size-padding-vertical)) -
28
- var(--kbq-form-field-size-border-width, map.get($tokens, form-field-size-border-width))
25
+ padding: calc(
26
+ var(--kbq-input-size-padding-vertical, map.get($tokens, input-size-padding-vertical)) - var(
27
+ --kbq-form-field-size-border-width,
28
+ map.get($tokens, form-field-size-border-width)
29
+ )
29
30
  )
30
- var(--kbq-input-size-padding-horizontal, map.get($tokens, input-size-padding-horizontal));
31
+ kbq-css-variable(input-size-padding-horizontal);
31
32
  }
32
33
 
33
- input.kbq-input[type="number"] {
34
+ input.kbq-input[type='number'] {
34
35
  -moz-appearance: textfield;
35
36
  }
36
37
 
37
- input.kbq-input[type="number"]::-webkit-inner-spin-button,
38
- input.kbq-input[type="number"]::-webkit-outer-spin-button {
38
+ input.kbq-input[type='number']::-webkit-inner-spin-button,
39
+ input.kbq-input[type='number']::-webkit-outer-spin-button {
39
40
  -webkit-appearance: none;
40
41
  }
41
42
 
@@ -2,7 +2,7 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/typography/typography-utils' as *;
5
-
5
+ @use '../core/styles/common/tokens' as *;
6
6
 
7
7
  @mixin kbq-link-geometry($tokens) {
8
8
  display: inline;
@@ -10,9 +10,7 @@
10
10
  text-decoration: none;
11
11
  cursor: pointer;
12
12
 
13
- outline-offset: var(
14
- --kbq-link-size-state-focused-outline-offset, map.get($tokens, link-size-state-focused-outline-offset)
15
- );
13
+ outline-offset: kbq-css-variable(link-size-state-focused-outline-offset);
16
14
 
17
15
  &:focus {
18
16
  outline: none;
@@ -26,48 +24,38 @@
26
24
 
27
25
  &.kbq-text-with-icon .kbq-link__text {
28
26
  &:not(:first-child) {
29
- margin-left: var(
30
- --kbq-link-size-normal-content-padding, map.get($tokens, link-size-normal-content-padding)
31
- );
27
+ margin-left: kbq-css-variable(link-size-normal-content-padding);
32
28
  }
33
29
 
34
30
  &:not(:last-child) {
35
- margin-right: var(
36
- --kbq-link-size-normal-content-padding, map.get($tokens, link-size-normal-content-padding)
37
- );
31
+ margin-right: kbq-css-variable(link-size-normal-content-padding);
38
32
  }
39
33
  }
40
34
 
41
35
  &.kbq-link_compact {
42
36
  &.kbq-text-with-icon .kbq-link__text {
43
37
  &:not(:first-child) {
44
- margin-left: var(
45
- --kbq-link-size-compact-content-padding, map.get($tokens, link-size-compact-content-padding)
46
- );
38
+ margin-left: kbq-css-variable(link-size-compact-content-padding);
47
39
  }
48
40
 
49
41
  &:not(:last-child) {
50
- margin-right: var(
51
- --kbq-link-size-compact-content-padding, map.get($tokens, link-size-compact-content-padding)
52
- );
42
+ margin-right: kbq-css-variable(link-size-compact-content-padding);
53
43
  }
54
44
  }
55
45
  }
56
46
 
57
- /* stylelint-disable no-descending-specificity */
58
47
  &.kbq-link_big {
59
48
  &.kbq-text-with-icon .kbq-link__text {
60
49
  &:not(:first-child) {
61
- margin-left: var(--kbq-link-size-big-content-padding, map.get($tokens, link-size-big-content-padding));
50
+ margin-left: kbq-css-variable(link-size-big-content-padding);
62
51
  }
63
52
 
64
53
  &:not(:last-child) {
65
- margin-right: var(--kbq-link-size-big-content-padding, map.get($tokens, link-size-big-content-padding));
54
+ margin-right: kbq-css-variable(link-size-big-content-padding);
66
55
  }
67
56
  }
68
57
  }
69
58
 
70
-
71
59
  &.kbq-link_pseudo {
72
60
  &.kbq-text-only,
73
61
  &.kbq-text-with-icon .kbq-link__text {
@@ -81,19 +69,20 @@
81
69
  border-bottom-color: transparent;
82
70
  }
83
71
  }
84
- /* stylelint-enable no-descending-specificity */
85
72
  }
86
73
 
87
- @mixin kbq-link-state($state) {
88
- color: map.get($state, text);
74
+ @mixin kbq-link-state($component, $state-name) {
75
+ $state: map.get($component, $state-name);
76
+
77
+ color: kbq-css-variable(link-#{$state-name}-text, map.get($state, text));
89
78
 
90
79
  &.kbq-text-only,
91
80
  &.kbq-text-with-icon .kbq-link__text {
92
- border-bottom-color: map.get($state, border-bottom);
81
+ border-bottom-color: kbq-css-variable(link-#{$state-name}-border-bottom, map.get($state, border-bottom));
93
82
  }
94
83
 
95
84
  & .kbq-icon {
96
- color: map.get($state, text) !important;
85
+ color: kbq-css-variable(link-#{$state-name}-text, map.get($state, text)) !important;
97
86
  }
98
87
  }
99
88
 
@@ -105,49 +94,43 @@
105
94
  .kbq-link {
106
95
  @include kbq-link-geometry($tokens);
107
96
 
108
- $default: map.get($link, default);
109
- @include kbq-link-state($default);
97
+ @include kbq-link-state($link, default);
110
98
 
111
99
  transition: color ease-out 300ms;
112
100
 
113
101
  &:hover {
114
102
  transition: color 0ms;
115
103
 
116
- $hover: map.get($link, hover);
117
- @include kbq-link-state($hover);
104
+ @include kbq-link-state($link, state-hover);
118
105
  }
119
106
 
120
- &:active {
121
- $active: map.get($link, active);
122
- @include kbq-link-state($active);
107
+ &:active,
108
+ &.kbq-active {
109
+ @include kbq-link-state($link, state-active);
123
110
  }
124
111
 
125
112
  &.kbq-link_use-visited:not(.kbq-disabled):visited {
126
- $visited: map.get($link, visited);
127
- @include kbq-link-state($visited);
113
+ @include kbq-link-state($link, state-visited);
128
114
 
129
115
  &:hover {
130
- $visited-hover: map.get($link, visited-hover);
131
- @include kbq-link-state($visited-hover);
116
+ @include kbq-link-state($link, state-visited-hover);
132
117
  }
133
118
 
134
- &:active {
135
- $visited-active: map.get($link, visited-active);
136
- @include kbq-link-state($visited-active);
119
+ &:active,
120
+ &.kbq-active {
121
+ @include kbq-link-state($link, state-visited-active);
137
122
  }
138
123
  }
139
124
 
140
125
  &.cdk-keyboard-focused {
141
- $focused: map.get($link, focused);
142
- outline: map.get($focused, outline) solid;
126
+ outline: kbq-css-variable(link-state-focused-outline, map.get($link, state-focused, outline)) solid;
143
127
  }
144
128
 
145
129
  &.kbq-disabled {
146
130
  cursor: default;
147
131
  pointer-events: none;
148
132
 
149
- $disabled: map.get($link, disabled);
150
- @include kbq-link-state($disabled);
133
+ @include kbq-link-state($link, state-disabled);
151
134
  }
152
135
 
153
136
  @media print {
@@ -158,7 +141,7 @@
158
141
  }
159
142
 
160
143
  &::after {
161
- content: ":\a" attr(print);
144
+ content: ':\a' attr(print);
162
145
  white-space: pre;
163
146
  }
164
147
  }
@@ -167,10 +150,8 @@
167
150
  }
168
151
 
169
152
  @mixin kbq-link-typography($config) {
170
- $tokens: map.get($config, tokens);
171
-
172
153
  .kbq-link {
173
- @include kbq-typography-level-to-styles($config, map.get($tokens, link-font-normal));
154
+ @include kbq-typography-css-variables(link, normal);
174
155
 
175
156
  & .kbq-icon {
176
157
  line-height: inherit;
@@ -179,10 +160,10 @@
179
160
  }
180
161
 
181
162
  .kbq-link.kbq-link_compact {
182
- @include kbq-typography-level-to-styles($config, map.get($tokens, link-font-compact));
163
+ @include kbq-typography-css-variables(link, compact);
183
164
  }
184
165
 
185
166
  .kbq-link.kbq-link_big {
186
- @include kbq-typography-level-to-styles($config, map.get($tokens, link-font-big));
167
+ @include kbq-typography-css-variables(link, big);
187
168
  }
188
169
  }
@@ -2,65 +2,67 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/typography/typography-utils' as *;
5
+ @use '../core/styles/common/tokens' as *;
5
6
 
7
+ @mixin kbq-list-item($component, $state-name) {
8
+ $state: map.get($component, $state-name);
6
9
 
7
- @mixin kbq-list-item($state) {
8
- background: map.get($state, container-background);
10
+ background: kbq-css-variable(list-#{$state-name}-container-background, map.get($state, container-background));
9
11
 
10
12
  .kbq-list-text {
11
- color: map.get($state, text);
13
+ color: kbq-css-variable(list-#{$state-name}-text, map.get($state, text));
12
14
  }
13
15
 
14
16
  .kbq-icon {
15
- color: map.get($state, icon);
17
+ color: kbq-css-variable(list-#{$state-name}-icon, map.get($state, icon));
16
18
  }
17
19
 
18
20
  .kbq-option-action .kbq-icon {
19
- color: map.get($state, icon-button);
21
+ color: kbq-css-variable(list-#{$state-name}-icon-button, map.get($state, icon-button));
20
22
  }
21
23
 
22
24
  .kbq-list-option-caption {
23
- color: map.get($state, caption);
25
+ color: kbq-css-variable(list-#{$state-name}-caption, map.get($state, caption));
24
26
  }
25
27
  }
26
28
 
27
29
  @mixin kbq-list-theme($theme) {
28
- $list-item: map.get(map.get($theme, components), list-item);
30
+ $list-item: map.get($theme, components, list-item);
29
31
 
30
32
  .kbq-list-option {
31
- @include kbq-list-item(map.get($list-item, default));
33
+ @include kbq-list-item($list-item, default);
32
34
 
33
35
  &:hover:not(.kbq-disabled) {
34
- @include kbq-list-item(map.get($list-item, hover));
36
+ @include kbq-list-item($list-item, states-hover);
35
37
  }
36
38
 
37
39
  &.kbq-focused {
38
- border-color: map.get(map.get($list-item, focused), focus-outline);
40
+ border-color: map.get($list-item, states-focused, focus-outline);
39
41
  }
40
42
 
41
43
  &.kbq-selected {
42
- @include kbq-list-item(map.get($list-item, selected));
44
+ @include kbq-list-item($list-item, states-selected);
43
45
 
44
46
  &:hover:not(.kbq-disabled) {
45
- @include kbq-list-item(map.get($list-item, selected-hover));
47
+ @include kbq-list-item($list-item, states-selected-hover);
46
48
  }
47
49
  }
48
50
 
49
51
  &.kbq-disabled {
50
- @include kbq-list-item(map.get($list-item, disabled));
52
+ @include kbq-list-item($list-item, states-disabled);
51
53
  }
52
54
  }
53
55
  }
54
56
 
55
57
  @mixin kbq-list-typography($config) {
56
- $tokens: map.get($config, tokens);
57
-
58
58
  .kbq-list-item,
59
59
  .kbq-list-option {
60
- @include kbq-typography-level-to-styles($config, map.get($tokens, list-font-text));
61
- }
60
+ @include kbq-typography-css-variables(list, text);
62
61
 
63
- .kbq-list-option-caption {
64
- @include kbq-typography-level-to-styles($config, map.get($tokens, list-font-caption));
62
+ .kbq-list-text {
63
+ .kbq-list-option-caption {
64
+ @include kbq-typography-css-variables(list, caption);
65
+ }
66
+ }
65
67
  }
66
68
  }
package/list/list.scss CHANGED
@@ -3,15 +3,9 @@
3
3
 
4
4
  @use '../core/styles/common/list';
5
5
 
6
- @use '../core/styles/tokens';
7
-
8
-
9
- $tokens: meta.module-variables(tokens) !default;
10
-
11
6
  .kbq-list,
12
7
  .kbq-list-selection {
13
8
  display: block;
14
-
15
9
  outline: none;
16
10
  }
17
11
 
@@ -27,6 +21,8 @@ $tokens: meta.module-variables(tokens) !default;
27
21
 
28
22
  & .kbq-option-action {
29
23
  display: none;
24
+ height: 20px;
25
+ align-items: center;
30
26
  }
31
27
 
32
28
  &:not(.kbq-disabled):hover,
@@ -2,65 +2,64 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/typography/typography-utils' as *;
5
-
5
+ @use '../core/styles/common/tokens' as *;
6
6
 
7
7
  @mixin kbq-loader-overlay-theme($theme) {
8
8
  $loader-overlay: map.get(map.get($theme, components), loader-overlay);
9
9
 
10
10
  .kbq-loader-overlay_filled {
11
- $filled: map.get($loader-overlay, filled);
12
-
13
11
  &.kbq-loader-overlay {
14
- background: map.get($filled, background);
12
+ background: kbq-css-variable(
13
+ loader-overlay-filled-background,
14
+ map.get($loader-overlay, filled, background)
15
+ );
15
16
  }
16
17
 
17
18
  & .kbq-loader-overlay-text {
18
- color: map.get($filled, text);
19
+ color: kbq-css-variable(loader-overlay-filled-text, map.get($loader-overlay, filled, text));
19
20
  }
20
21
 
21
22
  & .kbq-loader-overlay-caption {
22
- color: map.get($filled, caption);
23
+ color: kbq-css-variable(loader-overlay-filled-caption, map.get($loader-overlay, filled, caption));
23
24
  }
24
25
  }
25
26
 
26
27
  .kbq-loader-overlay_transparent {
27
- $transparent: map.get($loader-overlay, transparent);
28
-
29
28
  &.kbq-loader-overlay {
30
- background: map.get($transparent, background);
29
+ background: kbq-css-variable(
30
+ loader-overlay-transparent-background,
31
+ map.get($loader-overlay, transparent, background)
32
+ );
31
33
  }
32
34
 
33
35
  & .kbq-loader-overlay-text {
34
- color: map.get($transparent, text);
36
+ color: kbq-css-variable(loader-overlay-transparent-text, map.get($loader-overlay, transparent, text));
35
37
  }
36
38
 
37
39
  & .kbq-loader-overlay-caption {
38
- color: map.get($transparent, caption);
40
+ color: kbq-css-variable(loader-overlay-transparent-caption, map.get($loader-overlay, transparent, caption));
39
41
  }
40
42
  }
41
43
  }
42
44
 
43
45
  @mixin kbq-loader-overlay-typography($config) {
44
- $tokens: map.get($config, tokens);
45
-
46
46
  .kbq-loader-overlay_big {
47
47
  & .kbq-loader-overlay-text {
48
- @include kbq-typography-level-to-styles($config, map.get($tokens, loader-overlay-font-big-text));
48
+ @include kbq-typography-css-variables(loader-overlay, big-text);
49
49
  }
50
50
 
51
51
  & .kbq-loader-overlay-caption {
52
- @include kbq-typography-level-to-styles($config, map.get($tokens, loader-overlay-font-big-caption));
52
+ @include kbq-typography-css-variables(loader-overlay, big-caption);
53
53
  }
54
54
  }
55
55
 
56
56
  .kbq-loader-overlay_compact {
57
57
  & .kbq-loader-overlay-text {
58
- @include kbq-typography-level-to-styles($config, map.get($tokens, loader-overlay-font-compact-text));
58
+ @include kbq-typography-css-variables(loader-overlay, compact-text);
59
59
  }
60
60
 
61
61
  & .kbq-loader-overlay-caption {
62
- @include kbq-typography-level-to-styles($config, map.get($tokens, loader-overlay-font-compact-caption));
62
+ @include kbq-typography-css-variables(loader-overlay, compact-caption);
63
63
  }
64
64
  }
65
65
  }
66
-
@@ -2,7 +2,7 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/tokens';
5
-
5
+ @use '../core/styles/common/tokens' as *;
6
6
 
7
7
  $tokens: meta.module-variables(tokens) !default;
8
8
 
@@ -45,54 +45,30 @@ $tokens: meta.module-variables(tokens) !default;
45
45
  }
46
46
 
47
47
  &.kbq-loader-overlay_big {
48
- padding-left: var(
49
- --kbq-loader-overlay-size-big-overlay-padding-horizontal,
50
- map.get($tokens, loader-overlay-size-big-overlay-padding-horizontal)
51
- );
48
+ padding-left: kbq-css-variable(loader-overlay-size-big-overlay-padding-horizontal);
52
49
 
53
- padding-right: var(
54
- --kbq-loader-overlay-size-big-overlay-padding-horizontal,
55
- map.get($tokens, loader-overlay-size-big-overlay-padding-horizontal)
56
- );
50
+ padding-right: kbq-css-variable(loader-overlay-size-big-overlay-padding-horizontal);
57
51
 
58
52
  & .kbq-progress-spinner {
59
- margin-bottom: var(
60
- --kbq-loader-overlay-size-big-loader-margin-bottom,
61
- map.get($tokens, loader-overlay-size-big-loader-margin-bottom)
62
- );
53
+ margin-bottom: kbq-css-variable(loader-overlay-size-big-loader-margin-bottom);
63
54
  }
64
55
 
65
56
  & .kbq-loader-overlay-text {
66
- margin-bottom: var(
67
- --kbq-loader-overlay-size-big-content-content-gap-vertical,
68
- map.get($tokens, loader-overlay-size-big-content-content-gap-vertical)
69
- );
57
+ margin-bottom: kbq-css-variable(loader-overlay-size-big-content-content-gap-vertical);
70
58
  }
71
59
  }
72
60
 
73
61
  &.kbq-loader-overlay_compact {
74
- padding-left: var(
75
- --kbq-loader-overlay-size-compact-overlay-padding-horizontal,
76
- map.get($tokens, loader-overlay-size-compact-overlay-padding-horizontal)
77
- );
62
+ padding-left: kbq-css-variable(loader-overlay-size-compact-overlay-padding-horizontal);
78
63
 
79
- padding-right: var(
80
- --kbq-loader-overlay-size-compact-overlay-padding-horizontal,
81
- map.get($tokens, loader-overlay-size-compact-overlay-padding-horizontal)
82
- );
64
+ padding-right: kbq-css-variable(loader-overlay-size-compact-overlay-padding-horizontal);
83
65
 
84
66
  & .kbq-progress-spinner {
85
- margin-bottom: var(
86
- --kbq-loader-overlay-size-compact-loader-margin-bottom,
87
- map.get($tokens, loader-overlay-size-compact-loader-margin-bottom)
88
- );
67
+ margin-bottom: kbq-css-variable(loader-overlay-size-compact-loader-margin-bottom);
89
68
  }
90
69
 
91
70
  & .kbq-loader-overlay-text {
92
- margin-bottom: var(
93
- --kbq-loader-overlay-size-compact-content-content-gap-vertical,
94
- map.get($tokens, loader-overlay-size-compact-content-content-gap-vertical)
95
- );
71
+ margin-bottom: kbq-css-variable(loader-overlay-size-compact-content-content-gap-vertical);
96
72
  }
97
73
  }
98
74
  }