@koobiq/components 17.0.0-rc.6 → 17.0.0-rc.8

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 (256) hide show
  1. package/alert/_alert-theme.scss +19 -33
  2. package/alert/alert.component.scss +49 -141
  3. package/autocomplete/_autocomplete-theme.scss +3 -2
  4. package/autocomplete/autocomplete.scss +7 -14
  5. package/badge/_badge-theme.scss +31 -45
  6. package/badge/badge.component.scss +18 -38
  7. package/button/_button-base.scss +7 -13
  8. package/button/_button-theme.scss +29 -85
  9. package/button/button.component.d.ts +3 -2
  10. package/button/button.scss +7 -16
  11. package/button-toggle/_button-toggle-theme.scss +18 -18
  12. package/button-toggle/button-toggle.scss +14 -34
  13. package/card/_card-theme.scss +19 -17
  14. package/card/card.component.scss +2 -4
  15. package/checkbox/_checkbox-theme.scss +44 -43
  16. package/checkbox/checkbox.scss +23 -21
  17. package/code-block/_code-block-theme.scss +27 -26
  18. package/code-block/actionbar.component.scss +7 -18
  19. package/code-block/code-block.scss +21 -66
  20. package/core/form-field/form-field-ref.d.ts +2 -0
  21. package/core/forms/_forms-theme.scss +4 -7
  22. package/core/forms/_forms.scss +13 -42
  23. package/core/locales/locale-service.d.ts +1 -0
  24. package/core/option/_optgroup-theme.scss +4 -5
  25. package/core/option/_option-action-theme.scss +7 -7
  26. package/core/option/_option-theme.scss +16 -20
  27. package/core/select/common.d.ts +35 -0
  28. package/core/select/index.d.ts +1 -0
  29. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +16 -19
  30. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +9 -8
  31. package/core/styles/common/_groups.scss +3 -5
  32. package/core/styles/common/_list.scss +14 -18
  33. package/core/styles/common/_popup.scss +5 -4
  34. package/core/styles/common/_select.scss +11 -16
  35. package/core/styles/common/_tokens.scss +30 -9
  36. package/core/styles/theming/_components-theming.scss +151 -131
  37. package/core/styles/visual/_layout.scss +14 -16
  38. package/datepicker/_datepicker-theme.scss +24 -39
  39. package/datepicker/calendar-body.scss +3 -8
  40. package/datepicker/calendar-header.scss +4 -9
  41. package/datepicker/calendar.scss +5 -16
  42. package/datepicker/datepicker-content.scss +4 -12
  43. package/datepicker/datepicker-input.scss +0 -4
  44. package/datepicker/datepicker-toggle.scss +3 -2
  45. package/divider/_divider-theme.scss +3 -1
  46. package/divider/divider.scss +9 -25
  47. package/dl/_dl-theme.scss +5 -6
  48. package/dl/dl.scss +5 -19
  49. package/dropdown/_dropdown-theme.scss +21 -21
  50. package/dropdown/dropdown-item.scss +5 -11
  51. package/dropdown/dropdown-trigger.directive.d.ts +2 -2
  52. package/dropdown/dropdown.scss +6 -14
  53. package/esm2022/alert/alert.component.mjs +2 -2
  54. package/esm2022/badge/badge.component.mjs +2 -2
  55. package/esm2022/button/button.component.mjs +13 -6
  56. package/esm2022/button-toggle/button-toggle.component.mjs +2 -2
  57. package/esm2022/checkbox/checkbox.mjs +2 -2
  58. package/esm2022/code-block/actionbar.component.mjs +2 -2
  59. package/esm2022/code-block/code-block.component.mjs +2 -2
  60. package/esm2022/core/form-field/form-field-ref.mjs +1 -1
  61. package/esm2022/core/locales/locale-service.mjs +5 -2
  62. package/esm2022/core/option/option.mjs +2 -2
  63. package/esm2022/core/select/common.mjs +120 -0
  64. package/esm2022/core/select/index.mjs +2 -1
  65. package/esm2022/core/version.mjs +2 -2
  66. package/esm2022/datepicker/calendar-header.component.mjs +1 -1
  67. package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
  68. package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -4
  69. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  70. package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
  71. package/esm2022/form-field/form-field.mjs +2 -2
  72. package/esm2022/form-field/hint.mjs +2 -2
  73. package/esm2022/form-field/password-hint.mjs +2 -2
  74. package/esm2022/icon/icon-item.component.mjs +16 -6
  75. package/esm2022/list/list-selection.component.mjs +2 -2
  76. package/esm2022/list/list.component.mjs +2 -2
  77. package/esm2022/markdown/markdown.component.mjs +2 -2
  78. package/esm2022/navbar/navbar-item.component.mjs +2 -2
  79. package/esm2022/navbar/navbar.component.mjs +2 -2
  80. package/esm2022/navbar/vertical-navbar.component.mjs +2 -2
  81. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  82. package/esm2022/popover/popover.component.mjs +3 -3
  83. package/esm2022/radio/radio.component.mjs +2 -2
  84. package/esm2022/scrollbar/scrollbar.component.mjs +2 -2
  85. package/esm2022/select/select.component.mjs +18 -114
  86. package/esm2022/select/select.module.mjs +28 -28
  87. package/esm2022/table/table.component.mjs +2 -2
  88. package/esm2022/tabs/tab-group.component.mjs +54 -12
  89. package/esm2022/tabs/tab-header.component.mjs +2 -2
  90. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
  91. package/esm2022/tags/tag-default-options.mjs +1 -1
  92. package/esm2022/tags/tag-input.mjs +17 -3
  93. package/esm2022/tags/tag-list.component.mjs +2 -2
  94. package/esm2022/tags/tag.component.mjs +2 -2
  95. package/esm2022/timepicker/timepicker.directive.mjs +10 -2
  96. package/esm2022/timezone/timezone-option.component.mjs +2 -2
  97. package/esm2022/timezone/timezone-select.component.mjs +5 -5
  98. package/esm2022/title/title.directive.mjs +2 -2
  99. package/esm2022/toast/toast.component.mjs +3 -3
  100. package/esm2022/toast/toast.service.mjs +17 -12
  101. package/esm2022/tooltip/tooltip.component.mjs +2 -2
  102. package/esm2022/tree/tree-option.component.mjs +2 -2
  103. package/esm2022/tree-select/tree-select.component.mjs +9 -37
  104. package/esm2022/tree-select/tree-select.module.mjs +31 -11
  105. package/fesm2022/koobiq-components-alert.mjs +2 -2
  106. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  107. package/fesm2022/koobiq-components-badge.mjs +2 -2
  108. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  109. package/fesm2022/koobiq-components-button-toggle.mjs +2 -2
  110. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  111. package/fesm2022/koobiq-components-button.mjs +12 -5
  112. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  113. package/fesm2022/koobiq-components-checkbox.mjs +2 -2
  114. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  115. package/fesm2022/koobiq-components-code-block.mjs +4 -4
  116. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  117. package/fesm2022/koobiq-components-core.mjs +124 -7
  118. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  119. package/fesm2022/koobiq-components-datepicker.mjs +1 -1
  120. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  121. package/fesm2022/koobiq-components-dropdown.mjs +5 -5
  122. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  123. package/fesm2022/koobiq-components-file-upload.mjs +4 -4
  124. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  125. package/fesm2022/koobiq-components-form-field.mjs +6 -6
  126. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  127. package/fesm2022/koobiq-components-icon.mjs +14 -4
  128. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  129. package/fesm2022/koobiq-components-list.mjs +4 -4
  130. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  131. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  132. package/fesm2022/koobiq-components-navbar.mjs +6 -6
  133. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  134. package/fesm2022/koobiq-components-popover.mjs +4 -4
  135. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-radio.mjs +2 -2
  137. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  138. package/fesm2022/koobiq-components-scrollbar.mjs +2 -2
  139. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  140. package/fesm2022/koobiq-components-select.mjs +46 -142
  141. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  142. package/fesm2022/koobiq-components-table.mjs +2 -2
  143. package/fesm2022/koobiq-components-tabs.mjs +56 -14
  144. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  145. package/fesm2022/koobiq-components-tags.mjs +20 -7
  146. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  147. package/fesm2022/koobiq-components-timepicker.mjs +9 -1
  148. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  149. package/fesm2022/koobiq-components-timezone.mjs +6 -6
  150. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  151. package/fesm2022/koobiq-components-title.mjs +1 -1
  152. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  153. package/fesm2022/koobiq-components-toast.mjs +19 -13
  154. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  155. package/fesm2022/koobiq-components-tooltip.mjs +2 -2
  156. package/fesm2022/koobiq-components-tree-select.mjs +37 -44
  157. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  158. package/fesm2022/koobiq-components-tree.mjs +2 -2
  159. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  160. package/file-upload/_file-upload-theme.scss +109 -68
  161. package/file-upload/file-upload.scss +0 -5
  162. package/file-upload/multiple-file-upload.component.scss +35 -99
  163. package/file-upload/single-file-upload.component.scss +12 -31
  164. package/form-field/_form-field-theme.scss +32 -34
  165. package/form-field/_hint-theme.scss +16 -19
  166. package/form-field/cleaner.scss +3 -8
  167. package/form-field/form-field.scss +11 -12
  168. package/form-field/hint.scss +5 -7
  169. package/form-field/password-toggle.scss +3 -9
  170. package/form-field/stepper.scss +4 -10
  171. package/icon/_icon-button-theme.scss +35 -35
  172. package/icon/_icon-item-theme.scss +46 -31
  173. package/icon/_icon-theme.scss +9 -15
  174. package/icon/icon-button.scss +5 -17
  175. package/icon/icon-item.component.d.ts +3 -1
  176. package/icon/icon-item.scss +12 -7
  177. package/icon/icon.scss +0 -5
  178. package/input/_input-theme.scss +2 -3
  179. package/input/input.scss +2 -1
  180. package/link/_link-theme.scss +25 -42
  181. package/list/_list-theme.scss +18 -17
  182. package/list/list.scss +3 -5
  183. package/loader-overlay/_loader-overlay-theme.scss +13 -16
  184. package/loader-overlay/loader-overlay.scss +9 -32
  185. package/markdown/_markdown-theme.scss +41 -44
  186. package/markdown/markdown.scss +38 -88
  187. package/modal/_modal-confirm.scss +2 -6
  188. package/modal/_modal-theme.scss +11 -12
  189. package/modal/modal.scss +18 -24
  190. package/navbar/_navbar-item_horizontal.scss +28 -28
  191. package/navbar/_navbar-item_vertical.scss +31 -30
  192. package/navbar/_navbar-theme.scss +21 -22
  193. package/navbar/navbar-brand.scss +24 -26
  194. package/navbar/navbar-divider.scss +4 -7
  195. package/navbar/navbar-item.scss +11 -13
  196. package/navbar/navbar.scss +2 -5
  197. package/navbar/vertical-navbar.scss +3 -5
  198. package/package.json +9 -9
  199. package/popover/_popover-theme.scss +9 -16
  200. package/popover/popover.scss +18 -24
  201. package/prebuilt-themes/dark-theme.css +1 -1
  202. package/prebuilt-themes/light-theme.css +1 -1
  203. package/progress-bar/_progress-bar-theme.scss +7 -10
  204. package/progress-bar/progress-bar.scss +6 -18
  205. package/progress-spinner/_progress-spinner-theme.scss +6 -7
  206. package/progress-spinner/progress-spinner.scss +8 -17
  207. package/radio/_radio-theme.scss +29 -37
  208. package/radio/radio.scss +20 -39
  209. package/risk-level/_risk-level-theme.scss +25 -30
  210. package/risk-level/risk-level.component.scss +5 -8
  211. package/schematics/ng-add/index.js +6 -6
  212. package/scrollbar/_scrollbar-component-theme.scss +14 -17
  213. package/scrollbar/scrollbar.component.scss +13 -20
  214. package/select/_select-theme.scss +14 -15
  215. package/select/select.component.d.ts +2 -32
  216. package/select/select.module.d.ts +1 -1
  217. package/select/select.scss +3 -10
  218. package/sidepanel/_sidepanel-theme.scss +8 -9
  219. package/sidepanel/sidepanel.scss +19 -30
  220. package/splitter/_splitter-theme.scss +3 -3
  221. package/table/_table-theme.scss +9 -8
  222. package/table/table.scss +12 -12
  223. package/tabs/_tabs-common.scss +4 -7
  224. package/tabs/_tabs-theme.scss +77 -44
  225. package/tabs/tab-group.component.d.ts +9 -3
  226. package/tabs/tab-group.scss +2 -7
  227. package/tabs/tab-header.scss +0 -4
  228. package/tabs/tab-nav-bar/tab-nav-bar.scss +2 -7
  229. package/tags/_tag-theme.scss +23 -26
  230. package/tags/tag-default-options.d.ts +1 -0
  231. package/tags/tag-input.d.ts +7 -1
  232. package/tags/tag-list.scss +6 -5
  233. package/tags/tag.scss +6 -9
  234. package/textarea/_textarea-theme.scss +2 -4
  235. package/textarea/textarea.scss +4 -6
  236. package/timepicker/timepicker.scss +2 -7
  237. package/timezone/_timezone-option-theme.scss +8 -9
  238. package/timezone/timezone-option.component.scss +5 -7
  239. package/timezone/timezone-select.component.d.ts +2 -1
  240. package/timezone/timezone-select.component.scss +2 -3
  241. package/toast/_toast-theme.scss +15 -14
  242. package/toast/toast-container.component.scss +4 -7
  243. package/toast/toast.component.scss +20 -25
  244. package/toast/toast.service.d.ts +8 -4
  245. package/toggle/_toggle-theme.scss +48 -42
  246. package/toggle/toggle.scss +9 -21
  247. package/tooltip/_tooltip-theme.scss +13 -16
  248. package/tooltip/tooltip.scss +8 -10
  249. package/tree/_tree-theme.scss +20 -22
  250. package/tree/toggle.scss +3 -5
  251. package/tree/tree-option.scss +5 -6
  252. package/tree-select/_tree-select-theme.scss +12 -14
  253. package/tree-select/tree-select.component.d.ts +4 -17
  254. package/tree-select/tree-select.module.d.ts +1 -2
  255. package/tree-select/tree-select.scss +1 -5
  256. package/core/styles/_variables.scss +0 -1
@@ -1,4 +1,6 @@
1
1
  @use 'sass:map';
2
+ @use '../core/styles/common/tokens' as *;
3
+
2
4
 
3
5
  @mixin kbq-scrollbar-component-theme($theme) {
4
6
  $scrollbar: map.get(map.get($theme, components), scrollbar);
@@ -7,44 +9,39 @@
7
9
  .os-scrollbar {
8
10
  .os-scrollbar-handle {
9
11
  &::before {
10
- border-color: map.get($scrollbar, default);
11
- background-color: map.get($scrollbar, default);
12
+ border-color: kbq-css-variable(scrollbar-default, map.get($scrollbar, default));
13
+ background-color: kbq-css-variable(scrollbar-default, map.get($scrollbar, default));
12
14
  }
13
15
 
14
16
  &:hover {
15
17
  &::before {
16
- border-color: map.get($scrollbar, hover);
17
- background-color: map.get($scrollbar, hover);
18
+ border-color: kbq-css-variable(scrollbar-hover, map.get($scrollbar, hover));
19
+ background-color: kbq-css-variable(scrollbar-hover, map.get($scrollbar, hover));
18
20
  }
19
21
  }
20
22
 
21
23
  &:active {
22
24
  &::before {
23
- border-color: map.get($scrollbar, active);
24
- background-color: map.get($scrollbar, active);
25
+ border-color: kbq-css-variable(scrollbar-active, map.get($scrollbar, active));
26
+ background-color: kbq-css-variable(scrollbar-active, map.get($scrollbar, active));
25
27
  }
26
28
  }
27
29
  }
28
30
 
29
31
  /* stylelint-disable no-descending-specificity */
30
32
  .os-scrollbar-track, .os-scrollbar-handle {
31
- $track: map.get($scrollbar, track);
32
- $default: map.get($track, default);
33
-
34
33
  border-style: solid;
35
- border-color: $default !important;
36
- background-color: $default;
34
+ border-color: kbq-css-variable(scrollbar-track-default, map.get($scrollbar, track, default)) !important;
35
+ background-color: kbq-css-variable(scrollbar-track-default, map.get($scrollbar, track, default));
37
36
 
38
37
  &:hover {
39
- $hover: map.get($track, hover);
40
- border-color: $hover;
41
- background: $hover;
38
+ border-color: kbq-css-variable(scrollbar-track-hover, map.get($scrollbar, track, hover));
39
+ background: kbq-css-variable(scrollbar-track-hover, map.get($scrollbar, track, hover));
42
40
  }
43
41
 
44
42
  &:active {
45
- $active: map.get($track, active);
46
- border-color: $active;
47
- background: $active;
43
+ border-color: kbq-css-variable(scrollbar-track-active, map.get($scrollbar, track, active));
44
+ background: kbq-css-variable(scrollbar-track-active, map.get($scrollbar, track, active));
48
45
  }
49
46
  }
50
47
  }
@@ -1,26 +1,16 @@
1
1
  @use 'sass:meta';
2
2
  @use 'sass:map';
3
3
 
4
- @use '../core/styles/tokens';
4
+ @use '../core/styles/common/tokens' as *;
5
5
 
6
- $tokens: meta.module-variables(tokens) !default;
7
6
 
8
7
  /* stylelint-disable no-descending-specificity */
9
8
  .kbq-scrollbar-component {
10
- $scrollbar-size-thumb-width: var(--kbq-scrollbar-size-thumb-width, map.get($tokens, scrollbar-size-thumb-width));
11
- $padding-vertical: var(
12
- --kbq-scrollbar-size-track-padding-vertical,
13
- map.get($tokens, scrollbar-size-track-padding-vertical)
14
- );
15
- $padding-horizontal: var(
16
- --kbq-scrollbar-size-track-padding-horizontal,
17
- map.get($tokens, scrollbar-size-track-padding-horizontal)
18
- );
19
- $kbq-scrollbar-track-width: var(
20
- --kbq-scrollbar-size-track-dimension,
21
- map.get($tokens, scrollbar-size-track-dimension)
22
- );
23
- $thumb-min-height: var(--kbq-scrollbar-size-thumb-min-size, map.get($tokens, scrollbar-size-thumb-min-size));
9
+ $scrollbar-size-thumb-width: kbq-css-variable(scrollbar-size-thumb-width);
10
+ $padding-vertical: kbq-css-variable(scrollbar-size-track-padding-vertical);
11
+ $padding-horizontal: kbq-css-variable(scrollbar-size-track-padding-horizontal);
12
+ $kbq-scrollbar-track-width: kbq-css-variable(scrollbar-size-track-dimension);
13
+ $thumb-min-height: kbq-css-variable(scrollbar-size-thumb-min-size);
24
14
  $border-width: calc(($kbq-scrollbar-track-width - $scrollbar-size-thumb-width) / 4);
25
15
 
26
16
  .os-scrollbar-vertical {
@@ -62,10 +52,7 @@ $tokens: meta.module-variables(tokens) !default;
62
52
  .os-scrollbar {
63
53
  .os-scrollbar-handle, .os-scrollbar-handle::before, .os-scrollbar-track {
64
54
  box-sizing: border-box;
65
- border-radius: var(
66
- --kbq-scrollbar-size-thumb-inset-border-radius,
67
- map.get($tokens, scrollbar-size-thumb-border-radius)
68
- );
55
+ border-radius: kbq-css-variable(scrollbar-size-thumb-border-radius);
69
56
  }
70
57
 
71
58
  .os-scrollbar-track {
@@ -75,6 +62,12 @@ $tokens: meta.module-variables(tokens) !default;
75
62
  }
76
63
  }
77
64
 
65
+ [data-overlayscrollbars-contents] {
66
+ &:focus-visible {
67
+ outline: none;
68
+ }
69
+ }
70
+
78
71
 
79
72
  // core
80
73
  .os-size-observer,
@@ -4,6 +4,7 @@
4
4
  @use '../core/styles/common/popup' as *;
5
5
  @use '../core/styles/theming/theming' as *;
6
6
  @use '../core/styles/typography/typography-utils' as *;
7
+ @use '../core/styles/common/tokens' as *;
7
8
 
8
9
 
9
10
  @mixin kbq-select-theme($theme) {
@@ -11,53 +12,51 @@
11
12
 
12
13
  $error: map.get($theme, error);
13
14
 
14
- $select-panel: map.get(map.get($theme, components), select-panel);
15
- $divider: map.get(map.get($theme, components), divider);
15
+ $select-panel: map.get($theme, components, select-panel);
16
+ $divider: map.get($theme, components, divider);
16
17
 
17
18
  .kbq-select {
18
- color: map.get($foreground, contrast);
19
+ color: kbq-css-variable(foreground-contrast, map.get($foreground, contrast));
19
20
 
20
21
  &.ng-invalid {
21
- color: kbq-color($error);
22
+ color: kbq-css-variable(error-default, kbq-color($error));
22
23
  }
23
24
 
24
25
  &.kbq-disabled {
25
- color: map.get($foreground, text-disabled);
26
+ color: kbq-css-variable(foreground-text-disabled, map.get($foreground, text-disabled));
26
27
  }
27
28
  }
28
29
 
29
30
  .kbq-select__placeholder {
30
31
  text-overflow: ellipsis;
31
32
 
32
- color: map.get($foreground, text-disabled);
33
+ color: kbq-css-variable(foreground-text-disabled, map.get($foreground, text-disabled));
33
34
  }
34
35
 
35
36
  .kbq-select__panel {
36
- box-shadow: map.get($select-panel, shadow);
37
- background: map.get($select-panel, background);
37
+ box-shadow: kbq-css-variable(select-panel-shadow, map.get($select-panel, shadow));
38
+ background: kbq-css-variable(select-panel-background, map.get($select-panel, background));
38
39
 
39
40
  & .kbq-select__footer {
40
- border-color: map.get($divider, color);
41
+ border-color: kbq-css-variable(divider-color, map.get($divider, color));
41
42
  }
42
43
  }
43
44
 
44
45
  .kbq-select__search-container {
45
- border-bottom-color: map.get($divider, color);
46
+ border-bottom-color: kbq-css-variable(divider-color, map.get($divider, color));
46
47
  }
47
48
 
48
49
  .kbq-select__no-options-message {
49
- color: map.get($foreground, text-less-contrast);
50
+ color: kbq-css-variable(foreground-text-less-contrast, map.get($foreground, text-less-contrast));
50
51
  }
51
52
  }
52
53
 
53
54
  @mixin kbq-select-typography($config) {
54
- $tokens: map.get($config, tokens);
55
-
56
55
  .kbq-select {
57
- @include kbq-typography-level-to-styles($config, map.get($tokens, select-font-default));
56
+ @include kbq-typography-css-variables(select, default);
58
57
  }
59
58
 
60
59
  .kbq-select__panel {
61
- @include kbq-typography-level-to-styles($config, map.get($tokens, select-panel-font-default));
60
+ @include kbq-typography-css-variables(select-panel, default);
62
61
  }
63
62
  }
@@ -5,11 +5,10 @@ import { CdkVirtualForOf } from '@angular/cdk/scrolling';
5
5
  import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
6
6
  import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
7
7
  import { ActiveDescendantKeyManager } from '@koobiq/cdk/a11y';
8
- import { CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, ErrorStateMatcher, HasTabIndex, HasTabIndexCtor, KbqOptgroup, KbqOption, KbqOptionSelectionChange, KbqLocaleService, KbqOptionBase } from '@koobiq/components/core';
8
+ import { CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, ErrorStateMatcher, HasTabIndex, HasTabIndexCtor, KbqOptgroup, KbqOption, KbqOptionSelectionChange, KbqLocaleService, KbqOptionBase, KbqSelectTrigger, KbqSelectMatcher, KbqSelectSearch } from '@koobiq/components/core';
9
9
  import { KbqCleaner, KbqFormField, KbqFormFieldControl } from '@koobiq/components/form-field';
10
- import { KbqInput } from '@koobiq/components/input';
11
10
  import { KbqTag } from '@koobiq/components/tags';
12
- import { Observable, Subject, Subscription } from 'rxjs';
11
+ import { Observable, Subject } from 'rxjs';
13
12
  import * as i0 from "@angular/core";
14
13
  /** Change event object that is emitted when the select value has changed. */
15
14
  export declare class KbqSelectChange {
@@ -17,35 +16,6 @@ export declare class KbqSelectChange {
17
16
  value: any;
18
17
  constructor(source: KbqSelect, value: any);
19
18
  }
20
- export declare class KbqSelectFooter {
21
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectFooter, never>;
22
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectFooter, "kbq-select-footer, [kbq-select-footer]", never, {}, {}, never, never, false, never>;
23
- }
24
- export declare class KbqSelectSearch implements AfterContentInit, OnDestroy {
25
- input: KbqInput;
26
- searchChangesSubscription: Subscription;
27
- isSearchChanged: boolean;
28
- constructor(formField: KbqFormField);
29
- focus(): void;
30
- reset(): void;
31
- ngAfterContentInit(): void;
32
- ngOnDestroy(): void;
33
- handleKeydown(event: KeyboardEvent): void;
34
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectSearch, never>;
35
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectSearch, "[kbqSelectSearch]", ["kbqSelectSearch"], {}, {}, ["input"], never, false, never>;
36
- }
37
- export declare class KbqSelectSearchEmptyResult {
38
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectSearchEmptyResult, never>;
39
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectSearchEmptyResult, "[kbq-select-search-empty-result]", ["kbqSelectSearchEmptyResult"], {}, {}, never, never, false, never>;
40
- }
41
- export declare class KbqSelectTrigger {
42
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectTrigger, never>;
43
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectTrigger, "kbq-select-trigger, [kbq-select-trigger]", never, {}, {}, never, never, false, never>;
44
- }
45
- export declare class KbqSelectMatcher {
46
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectMatcher, never>;
47
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectMatcher, "kbq-select-matcher, [kbq-select-matcher]", never, {}, {}, never, never, false, never>;
48
- }
49
19
  /** @docs-private */
50
20
  export declare class KbqSelectBase {
51
21
  elementRef: ElementRef;
@@ -10,6 +10,6 @@ import * as i8 from "@koobiq/components/tooltip";
10
10
  import * as i9 from "@koobiq/components/form-field";
11
11
  export declare class KbqSelectModule {
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectModule, never>;
13
- static ɵmod: i0.ɵɵNgModuleDeclaration<KbqSelectModule, [typeof i1.KbqSelect, typeof i1.KbqSelectSearch, typeof i1.KbqSelectSearchEmptyResult, typeof i1.KbqSelectTrigger, typeof i1.KbqSelectMatcher, typeof i2.KbqOptionTooltip, typeof i1.KbqSelectFooter], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.KbqOptionModule, typeof i6.KbqIconModule, typeof i7.KbqTagsModule, typeof i8.KbqToolTipModule], [typeof i9.KbqFormFieldModule, typeof i1.KbqSelect, typeof i1.KbqSelectSearch, typeof i1.KbqSelectSearchEmptyResult, typeof i1.KbqSelectTrigger, typeof i1.KbqSelectMatcher, typeof i1.KbqSelectFooter, typeof i2.KbqOptionTooltip, typeof i5.KbqOptionModule, typeof i3.CommonModule]>;
13
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KbqSelectModule, [typeof i1.KbqSelect, typeof i2.KbqOptionTooltip], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.KbqOptionModule, typeof i6.KbqIconModule, typeof i7.KbqTagsModule, typeof i8.KbqToolTipModule, typeof i5.KbqSelectSearch, typeof i5.KbqSelectFooter, typeof i5.KbqSelectMatcher, typeof i5.KbqSelectTrigger, typeof i5.KbqSelectSearchEmptyResult], [typeof i9.KbqFormFieldModule, typeof i1.KbqSelect, typeof i2.KbqOptionTooltip, typeof i5.KbqOptionModule, typeof i3.CommonModule, typeof i5.KbqSelectSearch, typeof i5.KbqSelectFooter, typeof i5.KbqSelectMatcher, typeof i5.KbqSelectTrigger, typeof i5.KbqSelectSearchEmptyResult]>;
14
14
  static ɵinj: i0.ɵɵInjectorDeclaration<KbqSelectModule>;
15
15
  }
@@ -3,10 +3,7 @@
3
3
 
4
4
  @use '../core/styles/common/select' as *;
5
5
 
6
- @use '../core/styles/tokens';
7
-
8
-
9
- $tokens: meta.module-variables(tokens) !default;
6
+ @use '../core/styles/common/tokens' as *;
10
7
 
11
8
 
12
9
  .kbq-select {
@@ -25,12 +22,8 @@ $tokens: meta.module-variables(tokens) !default;
25
22
  @extend %kbq-select-content;
26
23
 
27
24
  &:not(:has(> .kbq-select__no-options-message)) .cdk-virtual-scroll-viewport {
28
- min-height: calc(
29
- var(--kbq-select-panel-size-max-height, map.get($tokens, select-panel-size-max-height))
30
- );
31
- max-height: calc(
32
- var(--kbq-select-panel-size-max-height, map.get($tokens, select-panel-size-max-height))
33
- );
25
+ min-height: kbq-css-variable(select-panel-size-max-height);
26
+ max-height: kbq-css-variable(select-panel-size-max-height);
34
27
 
35
28
  &.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper {
36
29
  max-width: 100%;
@@ -2,36 +2,35 @@
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
 
6
7
 
7
8
  @mixin kbq-sidepanel-theme($theme) {
8
- $sidepanel: map.get(map.get($theme, components), sidepanel);
9
+ $sidepanel: map.get($theme, components, sidepanel);
9
10
 
10
11
  .kbq-sidepanel-title {
11
- color: map.get($sidepanel, header-text);
12
+ color: kbq-css-variable(sidepanel-header-text, map.get($sidepanel, header-text));
12
13
  }
13
14
 
14
15
  .kbq-sidepanel-content {
15
- background-color: map.get($sidepanel, background);
16
- color: map.get($sidepanel, content-text);
16
+ background-color: kbq-css-variable(sidepanel-background, map.get($sidepanel, background));
17
+ color: kbq-css-variable(sidepanel-content-text, map.get($sidepanel, content-text));
17
18
  }
18
19
 
19
20
  .kbq-sidepanel-container_shadowed {
20
21
  .kbq-sidepanel-content {
21
- box-shadow: map.get($sidepanel, box-shadow);
22
+ box-shadow: kbq-css-variable(sidepanel-box-shadow, map.get($sidepanel, box-shadow));
22
23
  }
23
24
  }
24
25
  }
25
26
 
26
27
  @mixin kbq-sidepanel-typography($config) {
27
- $tokens: map.get($config, tokens);
28
-
29
28
  .kbq-sidepanel-title {
30
- @include kbq-typography-level-to-styles($config, map.get($tokens, sidepanel-font-header));
29
+ @include kbq-typography-css-variables(sidepanel, header);
31
30
  }
32
31
 
33
32
  .kbq-sidepanel-container,
34
33
  .kbq-sidepanel-footer {
35
- @include kbq-typography-level-to-styles($config, map.get($tokens, sidepanel-font-content));
34
+ @include kbq-typography-css-variables(sidepanel, content);
36
35
  }
37
36
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  @use '../core/styles/common';
5
5
 
6
- @use '../core/styles/tokens';
6
+ @use '../core/styles/common/tokens' as *;
7
7
 
8
8
 
9
9
  $tokens: meta.module-variables(tokens) !default;
@@ -39,18 +39,18 @@ $tokens: meta.module-variables(tokens) !default;
39
39
  top: 0;
40
40
 
41
41
  &.kbq-sidepanel_small {
42
- width: var(--kbq-sidepanel-size-small-width, map.get($tokens, sidepanel-size-small-width));
43
- max-width: var(--kbq-sidepanel-size-small-width, map.get($tokens, sidepanel-size-small-width));
42
+ width: kbq-css-variable(sidepanel-size-small-width);
43
+ max-width: kbq-css-variable(sidepanel-size-small-width);
44
44
  }
45
45
 
46
46
  &.kbq-sidepanel_medium {
47
- width: var(--kbq-sidepanel-size-medium-width, map.get($tokens, sidepanel-size-medium-width));
48
- max-width: var(--kbq-sidepanel-size-medium-width, map.get($tokens, sidepanel-size-medium-width));
47
+ width: kbq-css-variable(sidepanel-size-medium-width);
48
+ max-width: kbq-css-variable(sidepanel-size-medium-width);
49
49
  }
50
50
 
51
51
  &.kbq-sidepanel_large {
52
- width: var(--kbq-sidepanel-size-large-width, map.get($tokens, sidepanel-size-large-width));
53
- max-width: var(--kbq-sidepanel-size-large-width, map.get($tokens, sidepanel-size-large-width));
52
+ width: kbq-css-variable(sidepanel-size-large-width);
53
+ max-width: kbq-css-variable(sidepanel-size-large-width);
54
54
  }
55
55
 
56
56
  .kbq-sidepanel-indent {
@@ -128,15 +128,13 @@ $tokens: meta.module-variables(tokens) !default;
128
128
  flex: 0 0 auto;
129
129
 
130
130
  padding:
131
- var(--kbq-sidepanel-size-header-padding-vertical, map.get($tokens, sidepanel-size-header-padding-vertical))
132
- var(--kbq-sidepanel-size-header-padding-right, map.get($tokens, sidepanel-size-header-padding-right))
133
- var(--kbq-sidepanel-size-header-padding-vertical, map.get($tokens, sidepanel-size-header-padding-vertical))
134
- var(--kbq-sidepanel-size-header-padding-left, map.get($tokens, sidepanel-size-header-padding-left));
131
+ kbq-css-variable(sidepanel-size-header-padding-vertical)
132
+ kbq-css-variable(sidepanel-size-header-padding-right)
133
+ kbq-css-variable(sidepanel-size-header-padding-vertical)
134
+ kbq-css-variable(sidepanel-size-header-padding-left);
135
135
 
136
136
  .kbq-sidepanel-close {
137
- margin-left: var(
138
- --kbq-sidepanel-size-close-button-margin-left, map.get($tokens, sidepanel-size-close-button-margin-left)
139
- );
137
+ margin-left: kbq-css-variable(sidepanel-size-close-button-margin-left);
140
138
  }
141
139
  }
142
140
 
@@ -153,17 +151,11 @@ $tokens: meta.module-variables(tokens) !default;
153
151
  flex-direction: column;
154
152
  min-height: 0;
155
153
 
156
- padding-right: var(
157
- --kbq-sidepanel-size-content-padding-horizontal, map.get($tokens, sidepanel-size-content-padding-horizontal)
158
- );
154
+ padding-right: kbq-css-variable(sidepanel-size-content-padding-horizontal);
159
155
 
160
- padding-left: var(
161
- --kbq-sidepanel-size-content-padding-horizontal, map.get($tokens, sidepanel-size-content-padding-horizontal)
162
- );
156
+ padding-left: kbq-css-variable(sidepanel-size-content-padding-horizontal);
163
157
 
164
- padding-bottom: var(
165
- --kbq-sidepanel-size-content-padding-bottom, map.get($tokens, sidepanel-size-content-padding-bottom)
166
- );
158
+ padding-bottom: kbq-css-variable(sidepanel-size-content-padding-bottom);
167
159
  }
168
160
 
169
161
  .kbq-sidepanel-footer {
@@ -175,9 +167,9 @@ $tokens: meta.module-variables(tokens) !default;
175
167
  flex: 0 0 auto;
176
168
 
177
169
  padding:
178
- var(--kbq-sidepanel-size-footer-padding-top, map.get($tokens, sidepanel-size-footer-padding-top))
179
- var(--kbq-sidepanel-size-footer-padding-horizontal, map.get($tokens, sidepanel-size-footer-padding-horizontal))
180
- var(--kbq-sidepanel-size-footer-padding-bottom, map.get($tokens, sidepanel-size-footer-padding-bottom));
170
+ kbq-css-variable(sidepanel-size-footer-padding-top)
171
+ kbq-css-variable(sidepanel-size-footer-padding-horizontal)
172
+ kbq-css-variable(sidepanel-size-footer-padding-bottom);
181
173
 
182
174
  .kbq-sidepanel-actions {
183
175
  display: flex;
@@ -193,9 +185,6 @@ $tokens: meta.module-variables(tokens) !default;
193
185
  justify-content: flex-end;
194
186
  }
195
187
 
196
- gap: var(
197
- --kbq-sidepanel-size-footer-content-gap-horizontal,
198
- map.get($tokens, sidepanel-size-footer-content-gap-horizontal)
199
- );
188
+ gap: kbq-css-variable(sidepanel-size-footer-content-gap-horizontal);
200
189
  }
201
190
  }
@@ -1,10 +1,10 @@
1
1
  @use 'sass:map';
2
2
 
3
- @use '../core/styles/theming/theming' as *;
3
+ @use '../core/styles/common/tokens' as *;
4
4
 
5
5
 
6
6
  @mixin kbq-splitter-theme($theme) {
7
- $background: map.get(map.get($theme, states), background);
7
+ $background: map.get($theme, states, background);
8
8
 
9
9
  .kbq-gutter {
10
10
  cursor: col-resize;
@@ -20,7 +20,7 @@
20
20
 
21
21
  // todo
22
22
  &[disabled] {
23
- background-color: kbq-color($background, disabled);
23
+ background-color: kbq-css-variable(background-disabled, map.get($background, disabled));
24
24
 
25
25
  cursor: default;
26
26
  }
@@ -7,27 +7,28 @@
7
7
 
8
8
  @mixin kbq-table-theme($theme) {
9
9
  $foreground: map.get($theme, foreground);
10
- $states-background: map.get(map.get($theme, states), background);
10
+ $states-background: map.get($theme, states, background);
11
11
  $line: map.get($theme, line);
12
12
 
13
13
  .kbq-table {
14
14
  & > thead {
15
- color: map.get($foreground, contrast-secondary);
15
+ color: kbq-css-variable(foreground-contrast-secondary, map.get($foreground, contrast-secondary));
16
16
 
17
17
  & > tr > th {
18
- border-bottom-color: map.get($line, contrast-fade);
18
+ border-bottom-color: kbq-css-variable(line-contrast-fade, map.get($line, contrast-fade));
19
19
  }
20
20
  }
21
21
 
22
22
  & > tbody {
23
23
  & > tr {
24
24
  &:hover td {
25
- background-color: map.get($states-background, transparent-hover);
25
+ background-color: kbq-css-variable(
26
+ states-background-transparent-hover, map.get($states-background, transparent-hover));
26
27
  }
27
28
 
28
29
  & > th,
29
30
  & > td {
30
- color: map.get($foreground, contrast);
31
+ color: kbq-css-variable(foreground-contrast, map.get($foreground, contrast));
31
32
  }
32
33
  }
33
34
  }
@@ -36,7 +37,7 @@
36
37
  & > tbody > tr {
37
38
  & th,
38
39
  & td {
39
- border-bottom-color: map.get($line, contrast-fade);
40
+ border-bottom-color: kbq-css-variable(line-contrast-fade, map.get($line, contrast-fade));
40
41
  }
41
42
  }
42
43
  }
@@ -50,7 +51,7 @@
50
51
  font-weight: normal;
51
52
  }
52
53
 
53
- @include kbq-typography-level-to-styles($config, getToken(table-font-header));
54
+ @include kbq-typography-css-variables(table, header);
54
55
  }
55
56
 
56
57
  & > tbody {
@@ -58,7 +59,7 @@
58
59
  font-weight: normal;
59
60
  }
60
61
 
61
- @include kbq-typography-level-to-styles($config, getToken(table-font-body));
62
+ @include kbq-typography-css-variables(table, body);
62
63
  }
63
64
  }
64
65
  }
package/table/table.scss CHANGED
@@ -16,10 +16,10 @@ $tokens: meta.module-variables(tokens) !default;
16
16
  & > th,
17
17
  & > td {
18
18
  padding: {
19
- top: cssVar(table-size-row-padding-vertical);
20
- right: cssVar(table-size-row-padding-horizontal);
21
- bottom: cssVar(table-size-row-padding-vertical);
22
- left: cssVar(table-size-row-padding-horizontal);
19
+ top: kbq-css-variable(table-size-row-padding-vertical);
20
+ right: kbq-css-variable(table-size-row-padding-horizontal);
21
+ bottom: kbq-css-variable(table-size-row-padding-vertical);
22
+ left: kbq-css-variable(table-size-row-padding-horizontal);
23
23
  };
24
24
 
25
25
  vertical-align: baseline;
@@ -30,21 +30,21 @@ $tokens: meta.module-variables(tokens) !default;
30
30
 
31
31
  & > thead {
32
32
  & > tr > th {
33
- border-bottom-width: cssVar(table-size-border-width);
33
+ border-bottom-width: kbq-css-variable(table-size-border-width);
34
34
  border-bottom-style: solid;
35
35
  }
36
36
  }
37
37
 
38
38
  .kbq-table-cell_has-button {
39
- padding-top: cssVar(size-xxs);
40
- padding-bottom: cssVar(size-xxs);
39
+ padding-top: kbq-css-variable(size-xxs);
40
+ padding-bottom: kbq-css-variable(size-xxs);
41
41
  }
42
42
  }
43
43
  .kbq-table.kbq-table_bordered {
44
44
  & > tbody > tr {
45
45
  & th,
46
46
  & td {
47
- border-bottom-width: cssVar(table-size-border-width);
47
+ border-bottom-width: kbq-css-variable(table-size-border-width);
48
48
  border-bottom-style: solid;
49
49
  }
50
50
  }
@@ -53,13 +53,13 @@ $tokens: meta.module-variables(tokens) !default;
53
53
  .kbq-table:not(.kbq-table_bordered) {
54
54
  & > tbody > tr {
55
55
  & > td:first-child {
56
- border-top-left-radius: cssVar(size-m);
57
- border-bottom-left-radius: cssVar(size-m);
56
+ border-top-left-radius: kbq-css-variable(size-m);
57
+ border-bottom-left-radius: kbq-css-variable(size-m);
58
58
  }
59
59
 
60
60
  & > td:last-child {
61
- border-top-right-radius: cssVar(size-m);
62
- border-bottom-right-radius: cssVar(size-m);
61
+ border-top-right-radius: kbq-css-variable(size-m);
62
+ border-bottom-right-radius: kbq-css-variable(size-m);
63
63
  }
64
64
 
65
65
  &:first-child {
@@ -2,6 +2,7 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/tokens';
5
+ @use '../core/styles/common/tokens' as *;
5
6
 
6
7
 
7
8
  $tokens: meta.module-variables(tokens) !default;
@@ -36,12 +37,10 @@ $tokens: meta.module-variables(tokens) !default;
36
37
  );
37
38
 
38
39
  border: {
39
- width: var(--kbq-tabs-size-tab-item-focus-outline-width, $border-width);
40
+ width: kbq-css-variable(tabs-size-tab-item-focus-outline-width);
40
41
  style: solid;
41
42
  color: transparent;
42
- radius: var(
43
- --kbq-tabs-size-tab-item-border-radius, map.get($tokens, tabs-size-tab-item-border-radius)
44
- );
43
+ radius: kbq-css-variable(tabs-size-tab-item-border-radius);
45
44
  }
46
45
 
47
46
  outline: none;
@@ -61,9 +60,7 @@ $tokens: meta.module-variables(tokens) !default;
61
60
  & .kbq-tab-label__content {
62
61
  display: flex;
63
62
 
64
- gap: var(
65
- --kbq-tabs-size-tab-item-content-gap-horizontal, map.get($tokens, tabs-size-tab-item-content-gap-horizontal)
66
- );
63
+ gap: kbq-css-variable(tabs-size-tab-item-content-gap-horizontal);
67
64
  }
68
65
 
69
66
  &.kbq-tab-label_vertical {