@koobiq/components 18.8.0 → 18.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/accordion/accordion-tokens.scss +1 -13
  2. package/alert/alert-tokens.scss +1 -36
  3. package/autocomplete/autocomplete-tokens.scss +1 -8
  4. package/autocomplete/autocomplete.scss +21 -1
  5. package/badge/badge-tokens.scss +1 -71
  6. package/button/button-tokens.scss +1 -140
  7. package/button-toggle/button-toggle-tokens.scss +1 -32
  8. package/checkbox/checkbox-tokens.scss +1 -50
  9. package/code-block/actionbar.component.d.ts +2 -2
  10. package/code-block/code-block-content.d.ts +28 -0
  11. package/code-block/code-block-tokens.scss +1 -139
  12. package/code-block/code-block.component.d.ts +3 -3
  13. package/code-block/code-block.module.d.ts +3 -3
  14. package/code-block/code-block.types.d.ts +10 -2
  15. package/core/forms/forms-tokens.scss +1 -8
  16. package/core/option/_option-theme.scss +10 -0
  17. package/core/option/option-tokens.scss +4 -0
  18. package/core/selection/pseudo-checkbox/pseudo-checkbox-tokens.scss +1 -50
  19. package/core/styles/_koobiq-theme.scss +3 -2
  20. package/core/styles/common/_list.scss +6 -8
  21. package/core/styles/common/_select.scss +3 -2
  22. package/core/styles/theming/scrollbar-tokens.scss +1 -16
  23. package/datepicker/datepicker-tokens.scss +1 -21
  24. package/divider/divider-tokens.scss +1 -7
  25. package/dl/dl-tokens.scss +1 -8
  26. package/dropdown/_dropdown-theme.scss +10 -0
  27. package/dropdown/dropdown-tokens.scss +5 -8
  28. package/dropdown/dropdown.scss +22 -3
  29. package/empty-state/empty-state-tokens.scss +1 -8
  30. package/esm2022/accordion/accordion-trigger.component.mjs +2 -2
  31. package/esm2022/accordion/accordion.component.mjs +2 -2
  32. package/esm2022/alert/alert.component.mjs +2 -2
  33. package/esm2022/autocomplete/autocomplete.component.mjs +2 -2
  34. package/esm2022/badge/badge.component.mjs +2 -2
  35. package/esm2022/button/button.component.mjs +2 -2
  36. package/esm2022/button-toggle/button-toggle.component.mjs +2 -2
  37. package/esm2022/checkbox/checkbox.mjs +2 -2
  38. package/esm2022/code-block/actionbar.component.mjs +1 -1
  39. package/esm2022/code-block/code-block-content.mjs +382 -0
  40. package/esm2022/code-block/code-block.component.mjs +5 -5
  41. package/esm2022/code-block/code-block.module.mjs +7 -27
  42. package/esm2022/code-block/code-block.types.mjs +1 -1
  43. package/esm2022/core/common-behaviors/common-module.mjs +2 -2
  44. package/esm2022/core/option/option.mjs +3 -3
  45. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +2 -2
  46. package/esm2022/core/version.mjs +2 -2
  47. package/esm2022/datepicker/calendar-header.component.mjs +1 -1
  48. package/esm2022/datepicker/datepicker.component.mjs +3 -3
  49. package/esm2022/divider/divider.component.mjs +2 -2
  50. package/esm2022/dl/dl.component.mjs +2 -2
  51. package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
  52. package/esm2022/dropdown/dropdown.component.mjs +3 -3
  53. package/esm2022/empty-state/empty-state.component.mjs +2 -2
  54. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  55. package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
  56. package/esm2022/form-field/form-field.mjs +4 -4
  57. package/esm2022/form-field/hint.mjs +2 -2
  58. package/esm2022/form-field/password-hint.mjs +2 -2
  59. package/esm2022/icon/icon-button.component.mjs +2 -2
  60. package/esm2022/icon/icon-item.component.mjs +2 -2
  61. package/esm2022/icon/icon.component.mjs +2 -2
  62. package/esm2022/list/list-selection.component.mjs +2 -2
  63. package/esm2022/list/list.component.mjs +2 -2
  64. package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
  65. package/esm2022/markdown/markdown.component.mjs +2 -2
  66. package/esm2022/modal/modal.component.mjs +2 -2
  67. package/esm2022/navbar/navbar.component.mjs +2 -2
  68. package/esm2022/navbar/vertical-navbar.component.mjs +2 -2
  69. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  70. package/esm2022/popover/popover.component.mjs +3 -3
  71. package/esm2022/progress-bar/progress-bar.component.mjs +2 -2
  72. package/esm2022/progress-spinner/progress-spinner.component.mjs +2 -2
  73. package/esm2022/radio/radio.component.mjs +2 -2
  74. package/esm2022/risk-level/risk-level.component.mjs +2 -2
  75. package/esm2022/scrollbar/scrollbar.component.mjs +3 -3
  76. package/esm2022/select/select.component.mjs +49 -16
  77. package/esm2022/sidepanel/sidepanel-container.component.mjs +3 -3
  78. package/esm2022/tabs/tab-group.component.mjs +2 -2
  79. package/esm2022/tabs/tab-nav-bar.mjs +3 -3
  80. package/esm2022/tags/tag-list.component.mjs +2 -2
  81. package/esm2022/timezone/timezone-option.component.mjs +2 -2
  82. package/esm2022/timezone/timezone-select.component.mjs +3 -3
  83. package/esm2022/toast/toast.component.mjs +3 -3
  84. package/esm2022/toggle/toggle.component.mjs +3 -3
  85. package/esm2022/tooltip/tooltip.component.mjs +3 -3
  86. package/esm2022/tree/toggle.mjs +2 -2
  87. package/esm2022/tree/tree-option.component.mjs +2 -2
  88. package/esm2022/tree/tree-selection.component.mjs +2 -2
  89. package/esm2022/tree/tree.mjs +2 -2
  90. package/esm2022/tree-select/tree-select.component.mjs +43 -8
  91. package/fesm2022/koobiq-components-accordion.mjs +4 -4
  92. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  93. package/fesm2022/koobiq-components-alert.mjs +2 -2
  94. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  95. package/fesm2022/koobiq-components-autocomplete.mjs +2 -2
  96. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  97. package/fesm2022/koobiq-components-badge.mjs +2 -2
  98. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  99. package/fesm2022/koobiq-components-button-toggle.mjs +2 -2
  100. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  101. package/fesm2022/koobiq-components-button.mjs +2 -2
  102. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  103. package/fesm2022/koobiq-components-checkbox.mjs +2 -2
  104. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  105. package/fesm2022/koobiq-components-code-block.mjs +389 -31
  106. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  107. package/fesm2022/koobiq-components-core.mjs +6 -6
  108. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  109. package/fesm2022/koobiq-components-datepicker.mjs +3 -3
  110. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  111. package/fesm2022/koobiq-components-divider.mjs +2 -2
  112. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  113. package/fesm2022/koobiq-components-dl.mjs +2 -2
  114. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  115. package/fesm2022/koobiq-components-dropdown.mjs +4 -4
  116. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  117. package/fesm2022/koobiq-components-empty-state.mjs +2 -2
  118. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  119. package/fesm2022/koobiq-components-file-upload.mjs +4 -4
  120. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  121. package/fesm2022/koobiq-components-form-field.mjs +7 -7
  122. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  123. package/fesm2022/koobiq-components-icon.mjs +6 -6
  124. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  125. package/fesm2022/koobiq-components-list.mjs +4 -4
  126. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  127. package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
  128. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  129. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  130. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  131. package/fesm2022/koobiq-components-modal.mjs +2 -2
  132. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  133. package/fesm2022/koobiq-components-navbar.mjs +4 -4
  134. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  135. package/fesm2022/koobiq-components-popover.mjs +4 -4
  136. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  137. package/fesm2022/koobiq-components-progress-bar.mjs +2 -2
  138. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  139. package/fesm2022/koobiq-components-progress-spinner.mjs +2 -2
  140. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  141. package/fesm2022/koobiq-components-radio.mjs +2 -2
  142. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  143. package/fesm2022/koobiq-components-risk-level.mjs +2 -2
  144. package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
  145. package/fesm2022/koobiq-components-scrollbar.mjs +2 -2
  146. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  147. package/fesm2022/koobiq-components-select.mjs +49 -16
  148. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  149. package/fesm2022/koobiq-components-sidepanel.mjs +2 -2
  150. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  151. package/fesm2022/koobiq-components-tabs.mjs +4 -4
  152. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  153. package/fesm2022/koobiq-components-tags.mjs +2 -2
  154. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  155. package/fesm2022/koobiq-components-timezone.mjs +4 -4
  156. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  157. package/fesm2022/koobiq-components-toast.mjs +2 -2
  158. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  159. package/fesm2022/koobiq-components-toggle.mjs +2 -2
  160. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  161. package/fesm2022/koobiq-components-tooltip.mjs +2 -2
  162. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  163. package/fesm2022/koobiq-components-tree-select.mjs +43 -8
  164. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  165. package/fesm2022/koobiq-components-tree.mjs +8 -8
  166. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  167. package/file-upload/file-upload-tokens.scss +1 -52
  168. package/form-field/form-field-tokens.scss +1 -29
  169. package/form-field/form-field.scss +5 -6
  170. package/form-field/hint-tokens.scss +1 -22
  171. package/icon/icon-button-tokens.scss +1 -30
  172. package/icon/icon-item-tokens.scss +1 -26
  173. package/icon/icon-tokens.scss +2 -10
  174. package/link/_link-theme.scss +27 -5
  175. package/link/link-tokens.scss +1 -21
  176. package/list/_list-theme.scss +10 -0
  177. package/list/list-tokens.scss +17 -42
  178. package/loader-overlay/loader-overlay-tokens.scss +1 -12
  179. package/markdown/markdown-tokens.scss +1 -34
  180. package/modal/modal-tokens.scss +1 -12
  181. package/navbar/navbar-tokens.scss +1 -28
  182. package/package.json +6 -8
  183. package/popover/popover-tokens.scss +1 -12
  184. package/prebuilt-themes/dark-theme.css +1 -1
  185. package/prebuilt-themes/light-theme.css +1 -1
  186. package/prebuilt-themes/theme.css +1 -1
  187. package/progress-bar/progress-bar-tokens.scss +1 -10
  188. package/progress-spinner/progress-spinner-tokens.scss +1 -9
  189. package/radio/radio-tokens.scss +11 -70
  190. package/risk-level/risk-level-tokens.scss +1 -32
  191. package/schematics/ng-add/index.js +3 -6
  192. package/scrollbar/scrollbar-tokens.scss +1 -16
  193. package/select/select-tokens.scss +1 -8
  194. package/select/select.component.d.ts +40 -4
  195. package/select/select.scss +20 -0
  196. package/sidepanel/sidepanel-tokens.scss +1 -11
  197. package/tabs/tabs-tokens.scss +1 -92
  198. package/tags/tag-tokens.scss +1 -74
  199. package/timezone/timezone-option-tokens.scss +5 -11
  200. package/toast/toast-tokens.scss +1 -22
  201. package/toggle/toggle-tokens.scss +1 -52
  202. package/tooltip/tooltip-tokens.scss +1 -21
  203. package/tree/tree-option.scss +11 -0
  204. package/tree/tree-tokens.scss +1 -37
  205. package/tree-select/_tree-select-theme.scss +5 -1
  206. package/tree-select/tree-select-tokens.scss +2 -6
  207. package/tree-select/tree-select.component.d.ts +45 -5
  208. package/select/README.md +0 -0
@@ -3,38 +3,7 @@
3
3
  --kbq-risk-level-size-padding-horizontal: var(--kbq-size-s);
4
4
  --kbq-risk-level-size-border-width: var(--kbq-size-border-width);
5
5
  --kbq-risk-level-size-border-radius: var(--kbq-size-xxs);
6
- }
7
-
8
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
9
- --kbq-risk-level-filled-fade-off-success-background: var(--kbq-background-success);
10
- --kbq-risk-level-filled-fade-off-success-text: var(--kbq-foreground-white);
11
- --kbq-risk-level-filled-fade-off-warning-background: var(--kbq-background-warning);
12
- --kbq-risk-level-filled-fade-off-warning-text: var(--kbq-foreground-white);
13
- --kbq-risk-level-filled-fade-off-error-background: var(--kbq-background-error);
14
- --kbq-risk-level-filled-fade-off-error-text: var(--kbq-foreground-white);
15
- --kbq-risk-level-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);
16
- --kbq-risk-level-filled-fade-on-contrast-text: var(--kbq-foreground-contrast);
17
- --kbq-risk-level-filled-fade-on-success-background: var(--kbq-background-success-fade);
18
- --kbq-risk-level-filled-fade-on-success-text: var(--kbq-foreground-success);
19
- --kbq-risk-level-filled-fade-on-warning-background: var(--kbq-background-warning-fade);
20
- --kbq-risk-level-filled-fade-on-warning-text: var(--kbq-foreground-warning);
21
- --kbq-risk-level-filled-fade-on-error-background: var(--kbq-background-error-fade);
22
- --kbq-risk-level-filled-fade-on-error-text: var(--kbq-foreground-error);
23
- --kbq-risk-level-outline-fade-on-contrast-background: transparent;
24
- --kbq-risk-level-outline-fade-on-contrast-text: var(--kbq-foreground-contrast);
25
- --kbq-risk-level-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);
26
- --kbq-risk-level-outline-fade-on-success-background: transparent;
27
- --kbq-risk-level-outline-fade-on-success-text: var(--kbq-foreground-success);
28
- --kbq-risk-level-outline-fade-on-success-border: var(--kbq-line-success-fade);
29
- --kbq-risk-level-outline-fade-on-warning-background: transparent;
30
- --kbq-risk-level-outline-fade-on-warning-text: var(--kbq-foreground-warning);
31
- --kbq-risk-level-outline-fade-on-warning-border: var(--kbq-line-warning-fade);
32
- --kbq-risk-level-outline-fade-on-error-background: transparent;
33
- --kbq-risk-level-outline-fade-on-error-text: var(--kbq-foreground-error);
34
- --kbq-risk-level-outline-fade-on-error-border: var(--kbq-line-error-fade);
35
- }
36
-
37
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
6
+ /* THEME TOKENS */
38
7
  --kbq-risk-level-filled-fade-off-success-background: var(--kbq-background-success);
39
8
  --kbq-risk-level-filled-fade-off-success-text: var(--kbq-foreground-white);
40
9
  --kbq-risk-level-filled-fade-off-warning-background: var(--kbq-background-warning);
@@ -23,7 +23,6 @@ const VERSIONS = {
23
23
  MESSAGEFORMAT_CORE: '^0.0.0',
24
24
  RADIX_NG: '^0.0.0',
25
25
  LUXON: '^0.0.0',
26
- OVERLAYSCROLLBARS: '^0.0.0',
27
26
  NGX_HIGHLIGHTJS: '^0.0.0'
28
27
  };
29
28
  /**
@@ -42,18 +41,16 @@ function ngAdd(options) {
42
41
  }
43
42
  // Installing dependencies
44
43
  utils_packageConfig.addPackageToPackageJson(tree, '@angular/cdk', "^18.2.6");
45
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.8.0");
46
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.8.0");
44
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.9.0");
45
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.9.0");
47
46
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.1.4");
48
47
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.1.4");
49
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^9.1.0");
48
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^9.2.0");
50
49
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/tokens-builder', "^3.8.1");
51
50
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/design-tokens', "^3.8.1");
52
51
  utils_packageConfig.addPackageToPackageJson(tree, '@messageformat/core', "^3.0.1");
53
52
  utils_packageConfig.addPackageToPackageJson(tree, '@radix-ng/primitives', VERSIONS.RADIX_NG);
54
53
  utils_packageConfig.addPackageToPackageJson(tree, 'luxon', "^3.4.4");
55
- utils_packageConfig.addPackageToPackageJson(tree, 'overlayscrollbars', "^2.7.3");
56
- utils_packageConfig.addPackageToPackageJson(tree, 'ngx-highlightjs', "^10.0.0");
57
54
  };
58
55
  }
59
56
 
@@ -5,22 +5,7 @@
5
5
  --kbq-scrollbar-size-thumb-width: var(--kbq-size-s);
6
6
  --kbq-scrollbar-size-thumb-min-size: var(--kbq-size-xl);
7
7
  --kbq-scrollbar-size-thumb-border-radius: var(--kbq-size-s);
8
- }
9
-
10
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
11
- --kbq-scrollbar-thumb-default-background: var(--kbq-icon-contrast-fade);
12
- --kbq-scrollbar-thumb-hover-background: var(--kbq-states-icon-contrast-fade-hover);
13
- --kbq-scrollbar-thumb-active-background: var(--kbq-states-icon-contrast-fade-active);
14
- --kbq-scrollbar-thumb-disabled-background: var(--kbq-states-icon-disabled);
15
- --kbq-scrollbar-track-default-border: transparent;
16
- --kbq-scrollbar-track-default-background: transparent;
17
- --kbq-scrollbar-track-hover-border: transparent;
18
- --kbq-scrollbar-track-hover-background: transparent;
19
- --kbq-scrollbar-track-active-border: transparent;
20
- --kbq-scrollbar-track-active-background: transparent;
21
- }
22
-
23
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
8
+ /* THEME TOKENS */
24
9
  --kbq-scrollbar-thumb-default-background: var(--kbq-icon-contrast-fade);
25
10
  --kbq-scrollbar-thumb-hover-background: var(--kbq-states-icon-contrast-fade-hover);
26
11
  --kbq-scrollbar-thumb-active-background: var(--kbq-states-icon-contrast-fade-active);
@@ -10,14 +10,7 @@
10
10
  --kbq-select-size-multiple-content-gap: var(--kbq-size-xxs);
11
11
  --kbq-select-panel-size-border-radius: var(--kbq-size-border-radius);
12
12
  --kbq-select-panel-size-max-height: 256px;
13
- }
14
-
15
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
16
- --kbq-select-panel-dropdown-background: var(--kbq-background-card);
17
- --kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup);
18
- }
19
-
20
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
13
+ /* THEME TOKENS */
21
14
  --kbq-select-panel-dropdown-background: var(--kbq-background-card);
22
15
  --kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup);
23
16
  }
@@ -1,8 +1,8 @@
1
1
  import { Directionality } from '@angular/cdk/bidi';
2
2
  import { SelectionModel } from '@angular/cdk/collections';
3
- import { CdkConnectedOverlay, ConnectedPosition, OverlayContainer } from '@angular/cdk/overlay';
3
+ import { CdkConnectedOverlay, CdkOverlayOrigin, ConnectedPosition, OverlayContainer } from '@angular/cdk/overlay';
4
4
  import { CdkVirtualForOf } from '@angular/cdk/scrolling';
5
- import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
5
+ import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, InjectionToken, NgZone, OnChanges, OnDestroy, OnInit, Provider, 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
8
  import { CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, ErrorStateMatcher, HasTabIndex, HasTabIndexCtor, KbqLocaleService, KbqOptgroup, KbqOption, KbqOptionBase, KbqOptionSelectionChange, KbqSelectMatcher, KbqSelectSearch, KbqSelectTrigger } from '@koobiq/components/core';
@@ -16,6 +16,26 @@ export declare class KbqSelectChange {
16
16
  value: any;
17
17
  constructor(source: KbqSelect, value: any);
18
18
  }
19
+ /** Select panel width type. */
20
+ export type KbqSelectPanelWidth = 'auto' | number | null;
21
+ /** Options for the `kbq-select` that can be configured using the `KBQ_SELECT_OPTIONS` injection token. */
22
+ export type KbqSelectOptions = Partial<{
23
+ /**
24
+ * Width of the panel. If set to `auto`, the panel will match the trigger width.
25
+ * If set to null or an empty string, the panel will grow to match the longest option's text.
26
+ */
27
+ panelWidth: KbqSelectPanelWidth;
28
+ }>;
29
+ /** Injection token that can be used to provide the default options for the `kbq-select`. */
30
+ export declare const KBQ_SELECT_OPTIONS: InjectionToken<Partial<{
31
+ /**
32
+ * Width of the panel. If set to `auto`, the panel will match the trigger width.
33
+ * If set to null or an empty string, the panel will grow to match the longest option's text.
34
+ */
35
+ panelWidth: KbqSelectPanelWidth;
36
+ }>>;
37
+ /** Utility provider for `KBQ_SELECT_OPTIONS`. */
38
+ export declare const kbqSelectOptionsProvider: (options: KbqSelectOptions) => Provider;
19
39
  /** @docs-private */
20
40
  export declare class KbqSelectBase {
21
41
  elementRef: ElementRef;
@@ -42,11 +62,12 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
42
62
  private readonly parentFormField;
43
63
  private readonly scrollStrategyFactory;
44
64
  protected localeService?: KbqLocaleService | undefined;
65
+ private readonly defaultOptions;
45
66
  /** A name for this control that can be used by `kbq-form-field`. */
46
67
  controlType: string;
47
68
  hiddenItems: number;
48
69
  /** The last measured value for the trigger's client bounding rect. */
49
- triggerRect: ClientRect;
70
+ triggerRect: DOMRect;
50
71
  /** The cached font-size of the trigger element. */
51
72
  triggerFontSize: number;
52
73
  /** Deals with the selection logic. */
@@ -141,6 +162,11 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
141
162
  */
142
163
  get compareWith(): (o1: any, o2: any) => boolean;
143
164
  set compareWith(fn: (o1: any, o2: any) => boolean);
165
+ /**
166
+ * Width of the panel. If set to `auto`, the panel will match the trigger width.
167
+ * If set to null or an empty string, the panel will grow to match the longest option's text.
168
+ */
169
+ panelWidth: KbqSelectPanelWidth;
144
170
  /** Value of the select control. */
145
171
  get value(): any;
146
172
  set value(newValue: any);
@@ -171,6 +197,14 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
171
197
  /** Unique id for this input. */
172
198
  private readonly uid;
173
199
  private visibleChanges;
200
+ /** Width of the overlay panel. */
201
+ protected overlayWidth: string | number;
202
+ /** Min width of the overlay panel. */
203
+ protected overlayMinWidth: string | number;
204
+ /** Overlay panel class. */
205
+ protected readonly overlayPanelClass = "kbq-select-overlay";
206
+ /** Origin for the overlay panel. */
207
+ protected overlayOrigin?: CdkOverlayOrigin | ElementRef;
174
208
  private readonly destroyRef;
175
209
  constructor(_changeDetectorRef: ChangeDetectorRef, _ngZone: NgZone, _renderer: Renderer2, defaultErrorStateMatcher: ErrorStateMatcher, elementRef: ElementRef, overlayContainer: OverlayContainer, _dir: Directionality, parentForm: NgForm, parentFormGroup: FormGroupDirective, parentFormField: KbqFormField, ngControl: NgControl, scrollStrategyFactory: any, localeService?: KbqLocaleService | undefined);
176
210
  ngOnInit(): void;
@@ -301,12 +335,14 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
301
335
  private calculateOverlayXPosition;
302
336
  private resetOverlay;
303
337
  private getOverlayRect;
338
+ /** Gets how wide the overlay panel should be. */
304
339
  private getOverlayWidth;
305
340
  /** Comparison function to specify which option is displayed. Defaults to object equality. */
306
341
  private _compareWith;
307
342
  private getTotalVisibleItems;
308
343
  private buildTriggerClone;
309
344
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }, null, { optional: true; }]>;
310
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["footer", "cdkVirtualForOf", "customTrigger", "customMatcher", "customTagTemplateRef", "cleaner", "search", "options", "optionGroups"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
345
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["footer", "cdkVirtualForOf", "customTrigger", "customMatcher", "customTagTemplateRef", "cleaner", "search", "options", "optionGroups"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
346
+ static ngAcceptInputType_multiple: unknown;
311
347
  }
312
348
  export {};
@@ -19,6 +19,26 @@
19
19
  .kbq-select__content {
20
20
  @extend %kbq-select-content;
21
21
 
22
+ .kbq-option {
23
+ position: relative;
24
+
25
+ &:before,
26
+ &:after {
27
+ position: absolute;
28
+ content: '';
29
+ width: var(--kbq-size-xxs);
30
+ height: calc(100% + var(--kbq-size-3xs) * 2); // outline size * 2
31
+ }
32
+
33
+ &:before {
34
+ right: calc(100% + var(--kbq-size-3xs)); // outline size
35
+ }
36
+
37
+ &:after {
38
+ left: calc(100% + var(--kbq-size-3xs)); // outline size
39
+ }
40
+ }
41
+
22
42
  &:not(:has(> .kbq-select__no-options-message)) .cdk-virtual-scroll-viewport {
23
43
  min-height: var(--kbq-select-panel-size-max-height, 256px);
24
44
  max-height: var(--kbq-select-panel-size-max-height, 256px);
@@ -12,17 +12,7 @@
12
12
  --kbq-sidepanel-size-footer-padding-bottom: var(--kbq-size-3xl);
13
13
  --kbq-sidepanel-size-footer-padding-horizontal: var(--kbq-size-3xl);
14
14
  --kbq-sidepanel-size-footer-content-gap-horizontal: var(--kbq-size-l);
15
- }
16
-
17
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
18
- --kbq-sidepanel-overlay-background: var(--kbq-background-overlay);
19
- --kbq-sidepanel-container-background: var(--kbq-background-card);
20
- --kbq-sidepanel-container-shadow: var(--kbq-shadow-overlay);
21
- --kbq-sidepanel-header-text-color: var(--kbq-foreground-contrast);
22
- --kbq-sidepanel-content-text-color: var(--kbq-foreground-contrast);
23
- }
24
-
25
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
15
+ /* THEME TOKENS */
26
16
  --kbq-sidepanel-overlay-background: var(--kbq-background-overlay);
27
17
  --kbq-sidepanel-container-background: var(--kbq-background-card);
28
18
  --kbq-sidepanel-container-shadow: var(--kbq-shadow-overlay);
@@ -7,98 +7,7 @@
7
7
  --kbq-tabs-size-tab-item-focus-outline-width: var(--kbq-size-3xs);
8
8
  --kbq-tabs-size-tab-stack-horizontal-border-radius: var(--kbq-size-s);
9
9
  --kbq-tabs-size-tab-stack-vertical-content-gap-vertical: var(--kbq-size-s);
10
- }
11
-
12
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
13
- --kbq-tabs-tab-item-filled-on-background-default-background: transparent;
14
- --kbq-tabs-tab-item-filled-on-background-default-text-color: var(--kbq-foreground-contrast);
15
- --kbq-tabs-tab-item-filled-on-background-default-icon-color: var(--kbq-icon-contrast);
16
- --kbq-tabs-tab-item-filled-on-background-states-hover-background: var(--kbq-states-background-transparent-hover);
17
- --kbq-tabs-tab-item-filled-on-background-states-focused-focus-outline-color: var(--kbq-states-line-focus-theme);
18
- --kbq-tabs-tab-item-filled-on-background-states-selected-background: var(
19
- --kbq-states-background-transparent-active
20
- );
21
- --kbq-tabs-tab-item-filled-on-background-states-selected-hover-background: var(
22
- --kbq-states-background-transparent-active
23
- );
24
- --kbq-tabs-tab-item-filled-on-background-states-selected-disabled-background: var(
25
- --kbq-states-background-transparent-active
26
- );
27
- --kbq-tabs-tab-item-filled-on-background-states-selected-disabled-text-color: var(--kbq-states-foreground-disabled);
28
- --kbq-tabs-tab-item-filled-on-background-states-selected-disabled-icon-color: var(--kbq-states-icon-disabled);
29
- --kbq-tabs-tab-item-filled-on-background-states-disabled-background: transparent;
30
- --kbq-tabs-tab-item-filled-on-background-states-disabled-text-color: var(--kbq-states-foreground-disabled);
31
- --kbq-tabs-tab-item-filled-on-background-states-disabled-icon-color: var(--kbq-states-icon-disabled);
32
- --kbq-tabs-tab-item-filled-on-surface-default-background: transparent;
33
- --kbq-tabs-tab-item-filled-on-surface-default-text-color: var(--kbq-foreground-contrast);
34
- --kbq-tabs-tab-item-filled-on-surface-default-icon-color: var(--kbq-icon-contrast);
35
- --kbq-tabs-tab-item-filled-on-surface-states-hover-background: var(--kbq-states-background-transparent-hover);
36
- --kbq-tabs-tab-item-filled-on-surface-states-focused-focus-outline-color: var(--kbq-states-line-focus-theme);
37
- --kbq-tabs-tab-item-filled-on-surface-states-selected-background: var(--kbq-states-background-transparent-active);
38
- --kbq-tabs-tab-item-filled-on-surface-states-selected-hover-background: var(
39
- --kbq-states-background-transparent-active
40
- );
41
- --kbq-tabs-tab-item-filled-on-surface-states-selected-disabled-background: var(
42
- --kbq-states-background-transparent-active
43
- );
44
- --kbq-tabs-tab-item-filled-on-surface-states-selected-disabled-text-color: var(--kbq-states-foreground-disabled);
45
- --kbq-tabs-tab-item-filled-on-surface-states-selected-disabled-icon-color: var(--kbq-states-icon-disabled);
46
- --kbq-tabs-tab-item-filled-on-surface-states-disabled-background: transparent;
47
- --kbq-tabs-tab-item-filled-on-surface-states-disabled-text-color: var(--kbq-states-foreground-disabled);
48
- --kbq-tabs-tab-item-filled-on-surface-states-disabled-icon-color: var(--kbq-states-icon-disabled);
49
- --kbq-tabs-tab-item-transparent-on-background-default-background: transparent;
50
- --kbq-tabs-tab-item-transparent-on-background-default-text-color: var(--kbq-foreground-contrast);
51
- --kbq-tabs-tab-item-transparent-on-background-default-icon-color: var(--kbq-icon-contrast);
52
- --kbq-tabs-tab-item-transparent-on-background-states-hover-background: var(
53
- --kbq-states-background-transparent-hover
54
- );
55
- --kbq-tabs-tab-item-transparent-on-background-states-focused-focus-outline-color: var(
56
- --kbq-states-line-focus-theme
57
- );
58
- --kbq-tabs-tab-item-transparent-on-background-states-selected-background: var(
59
- --kbq-states-background-transparent-active
60
- );
61
- --kbq-tabs-tab-item-transparent-on-background-states-selected-hover-background: var(
62
- --kbq-states-background-transparent-active
63
- );
64
- --kbq-tabs-tab-item-transparent-on-background-states-selected-disabled-background: var(
65
- --kbq-states-background-transparent-active
66
- );
67
- --kbq-tabs-tab-item-transparent-on-background-states-selected-disabled-text-color: var(
68
- --kbq-states-foreground-disabled
69
- );
70
- --kbq-tabs-tab-item-transparent-on-background-states-selected-disabled-icon-color: var(--kbq-states-icon-disabled);
71
- --kbq-tabs-tab-item-transparent-on-background-states-disabled-background: transparent;
72
- --kbq-tabs-tab-item-transparent-on-background-states-disabled-text-color: var(--kbq-states-foreground-disabled);
73
- --kbq-tabs-tab-item-transparent-on-background-states-disabled-icon-color: var(--kbq-states-icon-disabled);
74
- --kbq-tabs-tab-item-transparent-on-surface-default-background: transparent;
75
- --kbq-tabs-tab-item-transparent-on-surface-default-text-color: var(--kbq-foreground-contrast);
76
- --kbq-tabs-tab-item-transparent-on-surface-default-icon-color: var(--kbq-icon-contrast);
77
- --kbq-tabs-tab-item-transparent-on-surface-states-hover-background: var(--kbq-states-background-transparent-hover);
78
- --kbq-tabs-tab-item-transparent-on-surface-states-focused-focus-outline-color: var(--kbq-states-line-focus-theme);
79
- --kbq-tabs-tab-item-transparent-on-surface-states-selected-background: var(
80
- --kbq-states-background-transparent-active
81
- );
82
- --kbq-tabs-tab-item-transparent-on-surface-states-selected-hover-background: var(
83
- --kbq-states-background-transparent-active
84
- );
85
- --kbq-tabs-tab-item-transparent-on-surface-states-selected-disabled-background: var(
86
- --kbq-states-background-transparent-active
87
- );
88
- --kbq-tabs-tab-item-transparent-on-surface-states-selected-disabled-text-color: var(
89
- --kbq-states-foreground-disabled
90
- );
91
- --kbq-tabs-tab-item-transparent-on-surface-states-selected-disabled-icon-color: var(--kbq-states-icon-disabled);
92
- --kbq-tabs-tab-item-transparent-on-surface-states-disabled-background: transparent;
93
- --kbq-tabs-tab-item-transparent-on-surface-states-disabled-text-color: var(--kbq-states-foreground-disabled);
94
- --kbq-tabs-tab-item-transparent-on-surface-states-disabled-icon-color: var(--kbq-states-icon-disabled);
95
- --kbq-tabs-tab-stack-filled-on-background-background: var(--kbq-background-bg);
96
- --kbq-tabs-tab-stack-filled-on-surface-background: var(--kbq-background-contrast-fade);
97
- --kbq-tabs-tab-stack-transparent-on-background-background: transparent;
98
- --kbq-tabs-tab-stack-transparent-on-surface-background: transparent;
99
- }
100
-
101
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
10
+ /* THEME TOKENS */
102
11
  --kbq-tabs-tab-item-filled-on-background-default-background: transparent;
103
12
  --kbq-tabs-tab-item-filled-on-background-default-text-color: var(--kbq-foreground-contrast);
104
13
  --kbq-tabs-tab-item-filled-on-background-default-icon-color: var(--kbq-icon-contrast);
@@ -7,63 +7,7 @@
7
7
  --kbq-tag-size-content-gap-horizontal: var(--kbq-size-3xs);
8
8
  --kbq-tag-size-icon-margin-left: var(--kbq-size-3xs);
9
9
  --kbq-tag-size-close-button-margin-right: var(--kbq-size-3xs);
10
- }
11
-
12
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
13
- --kbq-tag-theme-fade-on-default-background: var(--kbq-background-theme-fade);
14
- --kbq-tag-theme-fade-on-default-text: var(--kbq-foreground-theme);
15
- --kbq-tag-theme-fade-on-default-icon: var(--kbq-icon-theme);
16
- --kbq-tag-theme-fade-on-default-close-button: var(--kbq-icon-theme);
17
- --kbq-tag-theme-fade-on-states-hover-background: var(--kbq-states-background-theme-fade-hover);
18
- --kbq-tag-theme-fade-on-states-hover-text: var(--kbq-foreground-theme);
19
- --kbq-tag-theme-fade-on-states-hover-icon: var(--kbq-icon-theme);
20
- --kbq-tag-theme-fade-on-states-hover-close-button: var(--kbq-icon-theme);
21
- --kbq-tag-theme-fade-on-states-focus-background: var(--kbq-background-theme-fade);
22
- --kbq-tag-theme-fade-on-states-focus-text: var(--kbq-foreground-theme);
23
- --kbq-tag-theme-fade-on-states-focus-icon: var(--kbq-icon-theme);
24
- --kbq-tag-theme-fade-on-states-focus-close-button: var(--kbq-icon-theme);
25
- --kbq-tag-theme-fade-on-states-focus-outline: var(--kbq-states-line-focus-theme);
26
- --kbq-tag-theme-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
27
- --kbq-tag-theme-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
28
- --kbq-tag-theme-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
29
- --kbq-tag-theme-fade-on-states-disabled-close-button: var(--kbq-states-icon-disabled);
30
- --kbq-tag-contrast-fade-on-default-background: var(--kbq-background-contrast-fade);
31
- --kbq-tag-contrast-fade-on-default-text: var(--kbq-foreground-contrast);
32
- --kbq-tag-contrast-fade-on-default-icon: var(--kbq-icon-contrast-fade);
33
- --kbq-tag-contrast-fade-on-default-close-button: var(--kbq-icon-contrast-fade);
34
- --kbq-tag-contrast-fade-on-states-hover-background: var(--kbq-states-background-contrast-fade-hover);
35
- --kbq-tag-contrast-fade-on-states-hover-text: var(--kbq-foreground-contrast);
36
- --kbq-tag-contrast-fade-on-states-hover-icon: var(--kbq-icon-contrast-fade);
37
- --kbq-tag-contrast-fade-on-states-hover-close-button: var(--kbq-icon-contrast-fade);
38
- --kbq-tag-contrast-fade-on-states-focus-background: var(--kbq-background-contrast-fade);
39
- --kbq-tag-contrast-fade-on-states-focus-text: var(--kbq-foreground-contrast);
40
- --kbq-tag-contrast-fade-on-states-focus-icon: var(--kbq-icon-contrast-fade);
41
- --kbq-tag-contrast-fade-on-states-focus-close-button: var(--kbq-icon-contrast-fade);
42
- --kbq-tag-contrast-fade-on-states-focus-outline: var(--kbq-states-line-focus-theme);
43
- --kbq-tag-contrast-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
44
- --kbq-tag-contrast-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
45
- --kbq-tag-contrast-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
46
- --kbq-tag-contrast-fade-on-states-disabled-close-button: var(--kbq-states-icon-disabled);
47
- --kbq-tag-error-fade-on-default-background: var(--kbq-background-error-fade);
48
- --kbq-tag-error-fade-on-default-text: var(--kbq-foreground-error);
49
- --kbq-tag-error-fade-on-default-icon: var(--kbq-icon-error);
50
- --kbq-tag-error-fade-on-default-close-button: var(--kbq-icon-error);
51
- --kbq-tag-error-fade-on-states-hover-background: var(--kbq-states-background-error-fade-hover);
52
- --kbq-tag-error-fade-on-states-hover-text: var(--kbq-foreground-error);
53
- --kbq-tag-error-fade-on-states-hover-icon: var(--kbq-icon-error);
54
- --kbq-tag-error-fade-on-states-hover-close-button: var(--kbq-icon-error);
55
- --kbq-tag-error-fade-on-states-focus-background: var(--kbq-background-error-fade);
56
- --kbq-tag-error-fade-on-states-focus-text: var(--kbq-foreground-error);
57
- --kbq-tag-error-fade-on-states-focus-icon: var(--kbq-icon-error);
58
- --kbq-tag-error-fade-on-states-focus-close-button: var(--kbq-icon-error);
59
- --kbq-tag-error-fade-on-states-focus-outline: var(--kbq-states-line-focus-error);
60
- --kbq-tag-error-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
61
- --kbq-tag-error-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
62
- --kbq-tag-error-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
63
- --kbq-tag-error-fade-on-states-disabled-close-button: var(--kbq-states-icon-disabled);
64
- }
65
-
66
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
10
+ /* THEME TOKENS */
67
11
  --kbq-tag-theme-fade-on-default-background: var(--kbq-background-theme-fade);
68
12
  --kbq-tag-theme-fade-on-default-text: var(--kbq-foreground-theme);
69
13
  --kbq-tag-theme-fade-on-default-icon: var(--kbq-icon-theme);
@@ -115,21 +59,4 @@
115
59
  --kbq-tag-error-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
116
60
  --kbq-tag-error-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
117
61
  --kbq-tag-error-fade-on-states-disabled-close-button: var(--kbq-states-icon-disabled);
118
- --kbq-tag-warning-fade-on-default-background: var(--kbq-background-warning-fade);
119
- --kbq-tag-warning-fade-on-default-text: var(--kbq-foreground-warning);
120
- --kbq-tag-warning-fade-on-default-icon: var(--kbq-icon-warning);
121
- --kbq-tag-warning-fade-on-default-close-button: var(--kbq-icon-warning);
122
- --kbq-tag-warning-fade-on-states-hover-background: var(--kbq-states-background-warning-fade-hover);
123
- --kbq-tag-warning-fade-on-states-hover-text: var(--kbq-foreground-warning);
124
- --kbq-tag-warning-fade-on-states-hover-icon: var(--kbq-icon-warning);
125
- --kbq-tag-warning-fade-on-states-hover-close-button: var(--kbq-icon-warning);
126
- --kbq-tag-warning-fade-on-states-focus-background: var(--kbq-background-warning-fade);
127
- --kbq-tag-warning-fade-on-states-focus-text: var(--kbq-foreground-warning);
128
- --kbq-tag-warning-fade-on-states-focus-icon: var(--kbq-icon-warning);
129
- --kbq-tag-warning-fade-on-states-focus-close-button: var(--kbq-icon-warning);
130
- --kbq-tag-warning-fade-on-states-focus-outline: var(--kbq-states-line-focus-theme);
131
- --kbq-tag-warning-fade-on-states-disabled-background: var(--kbq-states-background-disabled);
132
- --kbq-tag-warning-fade-on-states-disabled-text: var(--kbq-states-foreground-disabled);
133
- --kbq-tag-warning-fade-on-states-disabled-icon: var(--kbq-states-icon-disabled);
134
- --kbq-tag-warning-fade-on-states-disabled-close-button: var(--kbq-states-icon-disabled);
135
62
  }
@@ -1,3 +1,5 @@
1
+ @use '../list/list-tokens';
2
+
1
3
  .kbq-timezone-select__panel {
2
4
  --kbq-select-size-single-padding-left: var(--kbq-size-m);
3
5
  --kbq-select-size-single-padding-right: var(--kbq-size-xxs);
@@ -11,20 +13,12 @@
11
13
  --kbq-timezone-option-size-height: auto;
12
14
  --kbq-timezone-option-size-max-height: 5em;
13
15
  --kbq-timezone-option-size-optgroup-label-padding: 12px 12px 4px 12px;
14
- }
15
-
16
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
17
- --kbq-select-panel-dropdown-background: var(--kbq-background-card);
18
- --kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup);
19
- --kbq-timezone-option-text: var(--kbq-foreground-contrast);
20
- --kbq-timezone-option-caption: var(--kbq-foreground-contrast-secondary);
21
- --kbq-timezone-option-optgroup-label: var(--kbq-foreground-contrast-secondary);
22
- }
23
-
24
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
16
+ /* THEME TOKENS */
25
17
  --kbq-select-panel-dropdown-background: var(--kbq-background-card);
26
18
  --kbq-select-panel-dropdown-shadow: var(--kbq-shadow-popup);
27
19
  --kbq-timezone-option-text: var(--kbq-foreground-contrast);
28
20
  --kbq-timezone-option-caption: var(--kbq-foreground-contrast-secondary);
29
21
  --kbq-timezone-option-optgroup-label: var(--kbq-foreground-contrast-secondary);
22
+ /* LIST THEME TOKENS */
23
+ @include list-tokens.list-theme-tokens;
30
24
  }
@@ -17,28 +17,7 @@
17
17
  --kbq-toast-size-close-button-margin-right: var(--kbq-size-xxs);
18
18
  --kbq-toast-size-button-stack-padding-top: var(--kbq-size-s);
19
19
  --kbq-toast-size-button-stack-content-gap-horizontal: var(--kbq-size-m);
20
- }
21
-
22
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
23
- --kbq-toast-contrast-container-background: var(--kbq-background-card);
24
- --kbq-toast-contrast-container-title: var(--kbq-foreground-contrast);
25
- --kbq-toast-contrast-container-text: var(--kbq-foreground-contrast-secondary);
26
- --kbq-toast-contrast-container-shadow: var(--kbq-shadow-popup);
27
- --kbq-toast-error-container-background: var(--kbq-background-card);
28
- --kbq-toast-error-container-title: var(--kbq-foreground-contrast);
29
- --kbq-toast-error-container-text: var(--kbq-foreground-contrast-secondary);
30
- --kbq-toast-error-container-shadow: var(--kbq-shadow-popup);
31
- --kbq-toast-warning-container-background: var(--kbq-background-card);
32
- --kbq-toast-warning-container-title: var(--kbq-foreground-contrast);
33
- --kbq-toast-warning-container-text: var(--kbq-foreground-contrast-secondary);
34
- --kbq-toast-warning-container-shadow: var(--kbq-shadow-popup);
35
- --kbq-toast-success-container-background: var(--kbq-background-card);
36
- --kbq-toast-success-container-title: var(--kbq-foreground-contrast);
37
- --kbq-toast-success-container-text: var(--kbq-foreground-contrast-secondary);
38
- --kbq-toast-success-container-shadow: var(--kbq-shadow-popup);
39
- }
40
-
41
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
20
+ /* THEME TOKENS */
42
21
  --kbq-toast-contrast-container-background: var(--kbq-background-card);
43
22
  --kbq-toast-contrast-container-title: var(--kbq-foreground-contrast);
44
23
  --kbq-toast-contrast-container-text: var(--kbq-foreground-contrast-secondary);
@@ -7,58 +7,7 @@
7
7
  --kbq-toggle-size-big-width: 28px;
8
8
  --kbq-toggle-size-big-horizontal-content-padding: var(--kbq-size-s);
9
9
  --kbq-toggle-size-big-vertical-content-padding: var(--kbq-size-s);
10
- }
11
-
12
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
13
- --kbq-toggle-theme-default-border: var(--kbq-line-contrast-fade);
14
- --kbq-toggle-theme-default-background: var(--kbq-background-bg);
15
- --kbq-toggle-theme-default-circle-background: var(--kbq-icon-contrast);
16
- --kbq-toggle-theme-states-hover-border: var(--kbq-line-contrast-fade);
17
- --kbq-toggle-theme-states-hover-background: var(--kbq-states-background-transparent-hover);
18
- --kbq-toggle-theme-states-hover-circle-background: var(--kbq-icon-contrast);
19
- --kbq-toggle-theme-states-checked-border: transparent;
20
- --kbq-toggle-theme-states-checked-background: var(--kbq-background-theme);
21
- --kbq-toggle-theme-states-checked-circle-background: var(--kbq-icon-white);
22
- --kbq-toggle-theme-states-checked-hover-border: transparent;
23
- --kbq-toggle-theme-states-checked-hover-background: var(--kbq-states-background-theme-hover);
24
- --kbq-toggle-theme-states-checked-hover-circle-background: var(--kbq-icon-white);
25
- --kbq-toggle-theme-states-focused-border: var(--kbq-states-line-focus-theme);
26
- --kbq-toggle-theme-states-focused-background: var(--kbq-background-bg);
27
- --kbq-toggle-theme-states-focused-circle-background: var(--kbq-icon-contrast);
28
- --kbq-toggle-theme-states-focused-focus-outline: var(--kbq-states-line-focus-theme);
29
- --kbq-toggle-theme-states-checked-focused-border: var(--kbq-states-line-focus-theme);
30
- --kbq-toggle-theme-states-checked-focused-background: var(--kbq-background-theme);
31
- --kbq-toggle-theme-states-checked-focused-circle-background: var(--kbq-icon-white);
32
- --kbq-toggle-theme-states-checked-focused-focus-outline: var(--kbq-states-line-focus-theme);
33
- --kbq-toggle-theme-states-disabled-border: var(--kbq-states-line-disabled);
34
- --kbq-toggle-theme-states-disabled-background: var(--kbq-states-background-disabled);
35
- --kbq-toggle-theme-states-disabled-circle-background: var(--kbq-states-icon-disabled);
36
- --kbq-toggle-error-default-border: var(--kbq-line-error);
37
- --kbq-toggle-error-default-background: var(--kbq-background-error-less);
38
- --kbq-toggle-error-default-circle-background: var(--kbq-icon-error);
39
- --kbq-toggle-error-states-hover-border: var(--kbq-line-error);
40
- --kbq-toggle-error-states-hover-background: var(--kbq-states-background-error-fade-hover);
41
- --kbq-toggle-error-states-hover-circle-background: var(--kbq-icon-error);
42
- --kbq-toggle-error-states-checked-border: var(--kbq-line-error);
43
- --kbq-toggle-error-states-checked-background: var(--kbq-background-error);
44
- --kbq-toggle-error-states-checked-circle-background: var(--kbq-icon-white);
45
- --kbq-toggle-error-states-checked-hover-border: var(--kbq-line-error);
46
- --kbq-toggle-error-states-checked-hover-background: var(--kbq-states-background-error-hover);
47
- --kbq-toggle-error-states-checked-hover-circle-background: var(--kbq-icon-white);
48
- --kbq-toggle-error-states-focused-border: var(--kbq-states-line-focus-error);
49
- --kbq-toggle-error-states-focused-background: var(--kbq-states-background-error-less);
50
- --kbq-toggle-error-states-focused-circle-background: var(--kbq-icon-error);
51
- --kbq-toggle-error-states-focused-focus-outline: var(--kbq-states-line-focus-error);
52
- --kbq-toggle-error-states-checked-focused-border: var(--kbq-states-line-focus-error);
53
- --kbq-toggle-error-states-checked-focused-background: var(--kbq-background-error);
54
- --kbq-toggle-error-states-checked-focused-circle-background: var(--kbq-icon-white);
55
- --kbq-toggle-error-states-checked-focused-focus-outline: var(--kbq-states-line-focus-error);
56
- --kbq-toggle-error-states-disabled-border: var(--kbq-states-line-disabled);
57
- --kbq-toggle-error-states-disabled-background: var(--kbq-states-background-disabled);
58
- --kbq-toggle-error-states-disabled-circle-background: var(--kbq-states-icon-disabled);
59
- }
60
-
61
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
10
+ /* THEME TOKENS */
62
11
  --kbq-toggle-theme-default-border: var(--kbq-line-contrast-fade);
63
12
  --kbq-toggle-theme-default-background: var(--kbq-background-bg);
64
13
  --kbq-toggle-theme-default-circle-background: var(--kbq-icon-contrast);
@@ -4,27 +4,7 @@
4
4
  --kbq-tooltip-size-padding-horizontal: var(--kbq-size-m);
5
5
  --kbq-tooltip-size-padding-vertical: var(--kbq-size-s);
6
6
  --kbq-tooltip-size-arrow-size: var(--kbq-size-m);
7
- }
8
-
9
- :where(.kbq-light, .theme-light, .kbq-theme-light) {
10
- --kbq-tooltip-contrast-fade-on-background: var(--kbq-background-card);
11
- --kbq-tooltip-contrast-fade-on-text: var(--kbq-foreground-contrast);
12
- --kbq-tooltip-contrast-fade-on-shadow: var(--kbq-shadow-popup);
13
- --kbq-tooltip-contrast-fade-off-background: var(--kbq-background-night);
14
- --kbq-tooltip-contrast-fade-off-text: var(--kbq-foreground-white);
15
- --kbq-tooltip-contrast-fade-off-shadow: var(--kbq-shadow-popup);
16
- --kbq-tooltip-theme-fade-off-background: var(--kbq-background-theme);
17
- --kbq-tooltip-theme-fade-off-text: var(--kbq-foreground-white);
18
- --kbq-tooltip-theme-fade-off-shadow: var(--kbq-shadow-popup);
19
- --kbq-tooltip-warning-fade-off-background: var(--kbq-background-warning);
20
- --kbq-tooltip-warning-fade-off-text: var(--kbq-foreground-white);
21
- --kbq-tooltip-warning-fade-off-shadow: var(--kbq-shadow-popup);
22
- --kbq-tooltip-error-fade-off-background: var(--kbq-background-error);
23
- --kbq-tooltip-error-fade-off-text: var(--kbq-foreground-white);
24
- --kbq-tooltip-error-fade-off-shadow: var(--kbq-shadow-popup);
25
- }
26
-
27
- :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
7
+ /* THEME TOKENS */
28
8
  --kbq-tooltip-contrast-fade-on-background: var(--kbq-background-card);
29
9
  --kbq-tooltip-contrast-fade-on-text: var(--kbq-foreground-contrast);
30
10
  --kbq-tooltip-contrast-fade-on-shadow: var(--kbq-shadow-popup);
@@ -16,6 +16,7 @@
16
16
  border-width: var(--kbq-tree-size-container-focus-outline-width);
17
17
  border-style: solid;
18
18
  border-color: transparent;
19
+ border-radius: var(--kbq-size-border-radius);
19
20
 
20
21
  padding-top: kbq-difference-series-css-variables(
21
22
  [ tree-size-container-padding-vertical,
@@ -67,4 +68,14 @@
67
68
  display: flex;
68
69
  }
69
70
  }
71
+
72
+ &:is(.kbq-selected, .kbq-focused, .kbq-active):has(+ :is(.kbq-selected, .kbq-focused, .kbq-active)) {
73
+ border-bottom-left-radius: 0;
74
+ border-bottom-right-radius: 0;
75
+ }
76
+
77
+ &:is(.kbq-selected, .kbq-focused, .kbq-active) + :is(.kbq-selected, .kbq-focused, .kbq-active) {
78
+ border-top-left-radius: 0;
79
+ border-top-right-radius: 0;
80
+ }
70
81
  }