@koobiq/components 16.0.0-beta.2 → 16.0.0-beta.6

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 (191) hide show
  1. package/autocomplete/autocomplete.scss +0 -3
  2. package/button/_button-theme.scss +20 -9
  3. package/button/button.scss +5 -2
  4. package/core/common-behaviors/color.d.ts +1 -1
  5. package/core/forms/_forms-theme.scss +4 -4
  6. package/core/forms/_forms.scss +1 -3
  7. package/core/option/_option-theme.scss +39 -16
  8. package/core/option/action.scss +3 -4
  9. package/core/option/option.scss +6 -51
  10. package/core/styles/_koobiq-theme.scss +3 -0
  11. package/core/styles/common/_list.scss +123 -0
  12. package/core/styles/common/_select.scss +218 -0
  13. package/core/styles/theming/_components-theming.scss +414 -47
  14. package/dropdown/_dropdown-theme.scss +30 -37
  15. package/dropdown/dropdown-item.component.d.ts +1 -1
  16. package/dropdown/dropdown-item.scss +18 -40
  17. package/dropdown/dropdown.scss +16 -39
  18. package/esm2022/alert/alert.component.mjs +1 -1
  19. package/esm2022/autocomplete/autocomplete.component.mjs +2 -2
  20. package/esm2022/badge/badge.component.mjs +1 -1
  21. package/esm2022/button/button.component.mjs +2 -2
  22. package/esm2022/code-block/code-block.component.mjs +3 -3
  23. package/esm2022/core/common-behaviors/color.mjs +1 -1
  24. package/esm2022/core/option/action.mjs +5 -5
  25. package/esm2022/core/option/option.mjs +3 -3
  26. package/esm2022/core/overlay/overlay-position-map.mjs +2 -1
  27. package/esm2022/core/version.mjs +2 -2
  28. package/esm2022/dropdown/dropdown-item.component.mjs +3 -3
  29. package/esm2022/dropdown/dropdown.component.mjs +3 -3
  30. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  31. package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
  32. package/esm2022/form-field/form-field.mjs +6 -9
  33. package/esm2022/form-field/password-hint.mjs +13 -4
  34. package/esm2022/form-field/password-toggle.mjs +7 -3
  35. package/esm2022/icon/icon.component.mjs +3 -3
  36. package/esm2022/list/list-selection.component.mjs +20 -7
  37. package/esm2022/list/list.component.mjs +2 -2
  38. package/esm2022/list/list.module.mjs +8 -4
  39. package/esm2022/loader-overlay/loader-overlay.component.mjs +20 -19
  40. package/esm2022/modal/modal.component.mjs +8 -21
  41. package/esm2022/modal/modal.module.mjs +13 -7
  42. package/esm2022/navbar/navbar-item.component.mjs +13 -13
  43. package/esm2022/progress-spinner/progress-spinner.component.mjs +1 -1
  44. package/esm2022/radio/radio.component.mjs +3 -2
  45. package/esm2022/risk-level/index.mjs +2 -0
  46. package/esm2022/risk-level/koobiq-components-risk-level.mjs +5 -0
  47. package/esm2022/risk-level/public-api.mjs +3 -0
  48. package/esm2022/risk-level/risk-level.component.mjs +40 -0
  49. package/esm2022/risk-level/risk-level.module.mjs +28 -0
  50. package/esm2022/select/select.component.mjs +7 -8
  51. package/esm2022/sidepanel/sidepanel-container.component.mjs +3 -3
  52. package/esm2022/sidepanel/sidepanel-directives.mjs +7 -9
  53. package/esm2022/sidepanel/sidepanel.module.mjs +10 -4
  54. package/esm2022/tabs/paginated-tab-header.mjs +11 -2
  55. package/esm2022/tabs/tab-group.component.mjs +16 -21
  56. package/esm2022/tabs/tab-header.component.mjs +2 -2
  57. package/esm2022/tabs/tab-label-wrapper.directive.mjs +3 -3
  58. package/esm2022/tabs/tab-label.directive.mjs +3 -3
  59. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +17 -7
  60. package/esm2022/tabs/tabs.module.mjs +2 -6
  61. package/esm2022/tags/tag-default-options.mjs +1 -1
  62. package/esm2022/tags/tag-input.mjs +10 -8
  63. package/esm2022/tags/tag-list.component.mjs +10 -6
  64. package/esm2022/tags/tag.component.mjs +5 -5
  65. package/esm2022/timezone/timezone-option.component.mjs +3 -3
  66. package/esm2022/timezone/timezone-select.component.mjs +2 -2
  67. package/esm2022/title/title.directive.mjs +2 -2
  68. package/esm2022/toast/toast-container.component.mjs +2 -2
  69. package/esm2022/toast/toast.component.mjs +25 -13
  70. package/esm2022/toast/toast.module.mjs +14 -5
  71. package/esm2022/toast/toast.type.mjs +6 -1
  72. package/esm2022/tree/padding.directive.mjs +4 -4
  73. package/esm2022/tree/toggle.mjs +5 -4
  74. package/esm2022/tree/tree-option.component.mjs +5 -7
  75. package/esm2022/tree/tree.module.mjs +13 -4
  76. package/esm2022/tree-select/tree-select.component.mjs +16 -10
  77. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  78. package/fesm2022/koobiq-components-autocomplete.mjs +2 -2
  79. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  80. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  81. package/fesm2022/koobiq-components-button.mjs +2 -2
  82. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  83. package/fesm2022/koobiq-components-code-block.mjs +2 -2
  84. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  85. package/fesm2022/koobiq-components-core.mjs +8 -7
  86. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  87. package/fesm2022/koobiq-components-dropdown.mjs +4 -4
  88. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  89. package/fesm2022/koobiq-components-file-upload.mjs +4 -4
  90. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  91. package/fesm2022/koobiq-components-form-field.mjs +22 -13
  92. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  93. package/fesm2022/koobiq-components-icon.mjs +2 -2
  94. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  95. package/fesm2022/koobiq-components-list.mjs +28 -11
  96. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  97. package/fesm2022/koobiq-components-loader-overlay.mjs +19 -18
  98. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  99. package/fesm2022/koobiq-components-modal.mjs +18 -25
  100. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  101. package/fesm2022/koobiq-components-navbar.mjs +12 -12
  102. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  103. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-radio.mjs +2 -1
  105. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-risk-level.mjs +72 -0
  107. package/fesm2022/koobiq-components-risk-level.mjs.map +1 -0
  108. package/fesm2022/koobiq-components-select.mjs +6 -7
  109. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-sidepanel.mjs +18 -13
  111. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-tabs.mjs +48 -38
  113. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-tags.mjs +22 -16
  115. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-timezone.mjs +4 -4
  117. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-title.mjs +1 -1
  119. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  120. package/fesm2022/koobiq-components-toast.mjs +41 -15
  121. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-tree-select.mjs +15 -9
  123. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  124. package/fesm2022/koobiq-components-tree.mjs +28 -20
  125. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  126. package/form-field/_form-field-theme.scss +2 -2
  127. package/form-field/form-field.d.ts +0 -1
  128. package/form-field/password-hint.d.ts +6 -3
  129. package/form-field/password-toggle.d.ts +1 -0
  130. package/input/_input-theme.scss +2 -1
  131. package/input/input.scss +3 -1
  132. package/link/_link-theme.scss +1 -3
  133. package/list/_list-theme.scss +35 -15
  134. package/list/list-selection.component.d.ts +5 -1
  135. package/list/list.module.d.ts +1 -1
  136. package/list/list.scss +3 -12
  137. package/loader-overlay/_loader-overlay-theme.scss +43 -11
  138. package/loader-overlay/loader-overlay.component.d.ts +6 -5
  139. package/loader-overlay/loader-overlay.scss +53 -22
  140. package/modal/_modal-confirm.scss +20 -28
  141. package/modal/_modal-theme.scss +5 -35
  142. package/modal/modal.component.d.ts +3 -6
  143. package/modal/modal.module.d.ts +2 -1
  144. package/modal/modal.scss +38 -35
  145. package/navbar/navbar-item.component.d.ts +3 -2
  146. package/package.json +9 -3
  147. package/prebuilt-themes/dark-theme.css +1 -1
  148. package/prebuilt-themes/light-theme.css +1 -1
  149. package/progress-spinner/progress-spinner.component.d.ts +2 -2
  150. package/risk-level/README.md +0 -0
  151. package/risk-level/_risk-level-theme.scss +88 -0
  152. package/risk-level/index.d.ts +1 -0
  153. package/risk-level/public-api.d.ts +2 -0
  154. package/risk-level/risk-level.component.d.ts +18 -0
  155. package/risk-level/risk-level.component.scss +26 -0
  156. package/risk-level/risk-level.module.d.ts +10 -0
  157. package/select/_select-theme.scss +8 -0
  158. package/select/select.scss +6 -190
  159. package/sidepanel/_sidepanel-theme.scss +6 -41
  160. package/sidepanel/sidepanel-directives.d.ts +0 -2
  161. package/sidepanel/sidepanel.scss +33 -35
  162. package/tabs/_tabs-common.scss +27 -146
  163. package/tabs/_tabs-theme.scss +81 -175
  164. package/tabs/paginated-tab-header.d.ts +1 -0
  165. package/tabs/tab-group.component.d.ts +5 -8
  166. package/tabs/tab-group.scss +10 -10
  167. package/tabs/tab-header.scss +2 -24
  168. package/tabs/tab-label-wrapper.directive.d.ts +1 -1
  169. package/tabs/tab-label.directive.d.ts +1 -1
  170. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +3 -1
  171. package/tabs/tab-nav-bar/tab-nav-bar.scss +9 -16
  172. package/tabs/tabs.module.d.ts +1 -1
  173. package/tags/_tag-theme.scss +0 -24
  174. package/tags/tag-default-options.d.ts +4 -0
  175. package/tags/tag-list.component.d.ts +1 -0
  176. package/tags/tag-list.scss +20 -16
  177. package/tags/tag.component.d.ts +1 -1
  178. package/toast/_toast-theme.scss +21 -33
  179. package/toast/toast-container.component.scss +2 -1
  180. package/toast/toast.component.d.ts +4 -1
  181. package/toast/toast.component.scss +41 -34
  182. package/toast/toast.module.d.ts +1 -1
  183. package/toast/toast.type.d.ts +8 -5
  184. package/tree/_tree-theme.scss +46 -34
  185. package/tree/tree-option.component.d.ts +0 -1
  186. package/tree/tree-option.scss +34 -23
  187. package/tree/tree.module.d.ts +2 -1
  188. package/tree-select/_tree-select-theme.scss +9 -1
  189. package/tree-select/tree-select.component.d.ts +5 -3
  190. package/tree-select/tree-select.scss +5 -194
  191. package/list/_list-base.scss +0 -54
@@ -1,43 +1,59 @@
1
1
  @use 'sass:meta';
2
2
  @use 'sass:map';
3
3
 
4
+ @use '../core/styles/common';
4
5
  @use '../core/styles/tokens';
5
6
 
6
7
 
7
8
  $tokens: meta.module-variables(tokens) !default;
8
9
 
10
+
9
11
  .kbq-tree-option {
12
+ $padding-vertical: map.get($tokens, tree-size-container-padding-vertical);
13
+ $padding-right: map.get($tokens, tree-size-container-padding-right);
14
+
15
+ $outline-width: map.get($tokens, tree-size-container-focus-outline-width);
16
+
10
17
  box-sizing: border-box;
11
18
 
12
19
  display: flex;
13
20
  align-items: center;
14
21
 
15
- height: var(--kbq-tree-size-node-height, map.get($tokens, tree-size-node-height));
22
+ min-height: 32px;
16
23
 
17
24
  word-wrap: break-word;
18
25
 
19
- border: 2px solid transparent;
26
+ border-width: var(--kbq-tree-size-container-focus-outline-width, $outline-width);
27
+ border-style: solid;
28
+ border-color: transparent;
29
+
30
+ padding-top: calc(
31
+ var(--kbq-tree-size-container-padding-vertical, $padding-vertical) -
32
+ var(--kbq-tree-size-container-focus-outline-width, $outline-width)
33
+ );
34
+ padding-right: calc(
35
+ var(--kbq-tree-size-container-padding-right, $padding-right) -
36
+ var(--kbq-tree-size-container-focus-outline-width, $outline-width)
37
+ );
38
+ padding-bottom: calc(
39
+ var(--kbq-tree-size-container-padding-vertical, $padding-vertical) -
40
+ var(--kbq-tree-size-container-focus-outline-width, $outline-width)
41
+ );
42
+
43
+ gap: var(
44
+ --kbq-tree-size-container-content-gap-horizontal, map.get($tokens, tree-size-container-content-gap-horizontal)
45
+ );
20
46
 
21
47
  & .kbq-option-text {
22
- display: inline-block;
23
- flex-grow: 1;
48
+ $tokens: meta.module-variables(tokens) !default;
24
49
 
25
- overflow: hidden;
26
-
27
- white-space: nowrap;
28
- text-overflow: ellipsis;
29
-
30
- margin-right: var(--kbq-tree-size-padding-right, map.get($tokens, tree-size-padding-right));
31
- }
32
-
33
- & > .kbq-icon, > .toggle-wrapper > .kbq-icon {
34
- margin-right: var(--kbq-tree-size-icon-padding, map.get($tokens, tree-size-icon-padding));
50
+ @include common.kbq-line-wrapper-base();
51
+ display: inline-block;
35
52
 
36
- cursor: pointer;
37
- }
53
+ @include common.kbq-truncate-line();
38
54
 
39
- & > .kbq-progress-spinner {
40
- margin-right: 8px;
55
+ padding-top: var(--kbq-list-size-text-padding-vertical, map.get($tokens, list-size-text-padding-vertical));
56
+ padding-bottom: var(--kbq-list-size-text-padding-vertical, map.get($tokens, list-size-text-padding-vertical));
41
57
  }
42
58
 
43
59
  &:focus {
@@ -48,11 +64,6 @@ $tokens: meta.module-variables(tokens) !default;
48
64
  cursor: pointer;
49
65
  }
50
66
 
51
- & > .kbq-pseudo-checkbox,
52
- & > .kbq-checkbox {
53
- margin-right: var(--kbq-tree-size-icon-padding, map.get($tokens, tree-size-icon-padding));
54
- }
55
-
56
67
  & .kbq-option-action {
57
68
  display: none;
58
69
  }
@@ -9,8 +9,9 @@ import * as i7 from "./tree-option.component";
9
9
  import * as i8 from "./toggle";
10
10
  import * as i9 from "@angular/common";
11
11
  import * as i10 from "@koobiq/components/core";
12
+ import * as i11 from "@koobiq/components/icon";
12
13
  export declare class KbqTreeModule {
13
14
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeModule, never>;
14
- static ɵmod: i0.ɵɵNgModuleDeclaration<KbqTreeModule, [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective], [typeof i9.CommonModule, typeof i10.KbqPseudoCheckboxModule], [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective]>;
15
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KbqTreeModule, [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective], [typeof i9.CommonModule, typeof i10.KbqPseudoCheckboxModule, typeof i11.KbqIconModule], [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective]>;
15
16
  static ɵinj: i0.ɵɵInjectorDeclaration<KbqTreeModule>;
16
17
  }
@@ -22,12 +22,20 @@
22
22
  }
23
23
  }
24
24
 
25
- .kbq-tree-select__placeholder {
25
+ .kbq-select__placeholder {
26
+ text-overflow: ellipsis;
27
+
26
28
  color: map.get($foreground, text-disabled);
27
29
  }
28
30
 
29
31
  .kbq-tree-select__panel {
30
32
  @include popup-params($theme);
33
+
34
+ & .kbq-tree-select__footer {
35
+ $popup: map.get(map.get($theme, components), popup);
36
+
37
+ border-color: map.get($popup, border);
38
+ }
31
39
  }
32
40
  }
33
41
 
@@ -1,11 +1,11 @@
1
1
  import { Directionality } from '@angular/cdk/bidi';
2
2
  import { SelectionModel } from '@angular/cdk/collections';
3
3
  import { CdkConnectedOverlay, ConnectedPosition, ViewportRuler } from '@angular/cdk/overlay';
4
- import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges } from '@angular/core';
4
+ import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
5
5
  import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
6
6
  import { CanDisable, CanUpdateErrorState, ErrorStateMatcher, HasTabIndex, CanDisableCtor, HasTabIndexCtor, CanUpdateErrorStateCtor } from '@koobiq/components/core';
7
7
  import { KbqCleaner, KbqFormField, KbqFormFieldControl } from '@koobiq/components/form-field';
8
- import { KbqSelectSearch } from '@koobiq/components/select';
8
+ import { KbqSelectMatcher, KbqSelectSearch } from '@koobiq/components/select';
9
9
  import { KbqTag } from '@koobiq/components/tags';
10
10
  import { KbqTreeSelection, KbqTreeOption } from '@koobiq/components/tree';
11
11
  import { Observable, Subject } from 'rxjs';
@@ -91,6 +91,8 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
91
91
  cleaner: KbqCleaner;
92
92
  /** User-supplied override of the trigger element. */
93
93
  customTrigger: KbqTreeSelectTrigger;
94
+ customMatcher: KbqSelectMatcher;
95
+ customTagTemplateRef: TemplateRef<any>;
94
96
  tree: KbqTreeSelection;
95
97
  search: KbqSelectSearch;
96
98
  hiddenItemsText: string;
@@ -278,6 +280,6 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
278
280
  private _compareWith;
279
281
  private subscribeOnSearchChanges;
280
282
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeSelect, [null, null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }]>;
281
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["mcTreeSelect"], { "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; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "tree", "search"], ["kbq-tree-select-trigger", "kbq-cleaner", "[mcSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-tree-select-footer,[kbq-tree-select-footer],[kbq-tree-selection-footer]"], false, never>;
283
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["mcTreeSelect"], { "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; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-tree-select-trigger", "kbq-cleaner", "[mcSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-tree-select-footer,[kbq-tree-select-footer],[kbq-tree-selection-footer]"], false, never>;
282
284
  }
283
285
  export {};
@@ -2,6 +2,7 @@
2
2
  @use 'sass:map';
3
3
 
4
4
  @use '../core/styles/common';
5
+ @use '../core/styles/common/select' as *;
5
6
 
6
7
  @use '../core/styles/tokens';
7
8
 
@@ -9,184 +10,19 @@
9
10
  $tokens: meta.module-variables(tokens) !default;
10
11
 
11
12
  .kbq-tree-select {
12
- box-sizing: border-box;
13
-
14
- display: inline-block;
15
-
16
- width: 100%;
17
-
18
- outline: none;
19
-
20
- &.kbq-disabled {
21
- & .kbq-tree-select__trigger {
22
- @include common.user-select(none);
23
-
24
- cursor: default;
25
- }
26
- }
27
- }
28
-
29
- /* stylelint-disable no-descending-specificity */
30
- .kbq-tree-select__trigger {
31
- display: flex;
32
- box-sizing: border-box;
33
- position: relative;
34
-
35
- height: var(--kbq-form-field-size-height, map.get($tokens, form-field-size-height));
36
-
37
- cursor: pointer;
38
-
39
- padding-left: calc(
40
- var(--kbq-select-size-left-padding, #{map.get($tokens, select-size-left-padding)}) -
41
- var(--kbq-form-field-size-border-width, #{map.get($tokens, form-field-size-border-width)})
42
- );
43
- padding-right: calc(
44
- var(--kbq-select-size-right-padding, #{map.get($tokens, select-size-right-padding)}) -
45
- var(--kbq-form-field-size-border-width, #{map.get($tokens, form-field-size-border-width)})
46
- );
47
-
48
- &.kbq-tree-select__trigger_multiple {
49
- padding-left: calc(
50
- var(--kbq-select-size-left-padding-multiple, #{map.get($tokens, select-size-left-padding-multiple)}) -
51
- var(--kbq-form-field-size-border-width, #{map.get($tokens, form-field-size-border-width)})
52
- );
53
-
54
- & .kbq-tree-select__placeholder {
55
- margin-left: 8px;
56
- }
57
-
58
- & .kbq-tag.kbq-disabled .kbq-tag__text {
59
- margin-right: 7px;
60
- }
61
- }
62
- }
63
- /* stylelint-enable no-descending-specificity */
64
-
65
- .kbq-tree-select__matcher {
66
- display: flex;
67
- align-items: center;
68
-
69
- width: 100%;
70
-
71
- overflow: hidden;
72
- text-overflow: ellipsis;
73
-
74
- white-space: nowrap;
75
-
76
- & > span {
77
- width: 100%;
78
- }
79
- }
80
-
81
- .kbq-tree-select__multiple-matcher {
82
- display: flex;
83
-
84
- width: 100%;
85
- }
86
-
87
- .kbq-tree-select__match-list {
88
- display: flex;
89
- flex-wrap: wrap;
90
-
91
- overflow: hidden;
92
-
93
- max-height: calc(
94
- var(--kbq-form-field-size-height, map.get($tokens, form-field-size-height)) -
95
- (var(--kbq-form-field-size-border-width, map.get($tokens, form-field-size-border-width)) * 2)
96
- );
97
-
98
- & .kbq-tag {
99
- margin-right: 4px;
100
- }
101
- }
102
-
103
- .kbq-tree-select__match-container {
104
- display: flex;
105
- flex-direction: row;
106
- justify-content: space-between;
107
-
108
- width: 100%;
109
-
110
- & .kbq-tree-select__match-hidden-text {
111
- flex: 0 0 70px;
112
- align-self: center;
113
- padding: 0 8px;
114
-
115
- text-align: right;
116
- }
117
- }
118
-
119
- .kbq-tree-select__match-item {
120
- display: flex;
121
-
122
- border: 1px solid transparent;
123
- border-radius: 3px;
124
-
125
- padding-left: 7px;
126
-
127
- margin-right: 4px;
128
-
129
- max-width: 100%;
130
- }
131
-
132
- .kbq-tree-select__arrow-wrapper {
133
- display: flex;
134
- align-self: center;
135
-
136
- // When used in a box or standard appearance form-field the arrow should be shifted up 50%.
137
- .kbq-form-field-appearance-fill &,
138
- .kbq-form-field-appearance-standard & {
139
- transform: translateY(-50%);
140
- }
141
-
142
- // When used in a outline form-field the arrow should be shifted up 25%.
143
- .kbq-form-field-appearance-outline & {
144
- transform: translateY(-25%);
145
- }
13
+ @extend %kbq-select-base;
146
14
  }
147
15
 
148
16
  .kbq-tree-select__panel {
149
- min-width: 100%; // prevents some animcion twitching and test inconsistencies in IE11
150
- max-width: var(--kbq-select-panel-size-max-width, map.get($tokens, select-panel-size-max-width));
151
-
152
- border: {
153
- width: var(--kbq-select-panel-size-border-width, map.get($tokens, select-panel-size-border-width));
154
- style: solid;
155
- }
156
-
157
- border-bottom-left-radius: var(
158
- --kbq-select-panel-size-border-radius, map.get($tokens, select-panel-size-border-radius)
159
- );
160
- border-bottom-right-radius: var(
161
- --kbq-select-panel-size-border-radius, map.get($tokens, select-panel-size-border-radius)
162
- );
163
-
164
- // Override optgroup and option to scale based on font-size of the trigger.
165
- .kbq-optgroup-label,
166
- .kbq-tree-select-option {
167
- font-size: inherit;
168
- line-height: var(--kbq-option-size-height, map.get($tokens, option-size-height));
169
- height: var(--kbq-option-size-height, map.get($tokens, option-size-height));
170
- }
17
+ @extend %kbq-select-panel;
171
18
 
172
19
  & .kbq-tree-select__footer {
173
- display: flex;
174
- align-items: center;
175
- box-sizing: border-box;
176
- padding: map.get($tokens, size-xxs) map.get($tokens, size-m);
177
- border-top-width: 1px;
178
- border-top-style: solid;
179
- min-height: var(
180
- --kbq-list-size-footer-min-height,
181
- map.get($tokens, list-size-footer-min-height)
182
- );
20
+ @extend %kbq-select-footer;
183
21
  }
184
22
  }
185
23
 
186
24
  .kbq-tree-select__content {
187
- max-height: var(--kbq-select-panel-size-max-height, map.get($tokens, select-panel-size-max-height));
188
-
189
- overflow: auto;
25
+ @extend %kbq-select-content;
190
26
 
191
27
  & .kbq-tree-selection {
192
28
  height: 100%;
@@ -198,28 +34,3 @@ $tokens: meta.module-variables(tokens) !default;
198
34
  cursor: pointer;
199
35
  }
200
36
  }
201
-
202
- .kbq-select__no-options-message {
203
- display: flex;
204
- flex-direction: row;
205
- align-items: center;
206
- box-sizing: border-box;
207
-
208
- position: relative;
209
-
210
- max-width: 100%;
211
- height: var(--kbq-option-size-height, map.get($tokens, option-size-height));
212
-
213
- cursor: default;
214
- outline: none;
215
-
216
- padding-left: var(--kbq-option-size-horizontal-padding, map.get($tokens, option-size-horizontal-padding));
217
- padding-right: var(--kbq-option-size-horizontal-padding, map.get($tokens, option-size-horizontal-padding));
218
- }
219
-
220
- .kbq-select__search-container {
221
- border-bottom: {
222
- width: 1px;
223
- style: solid;
224
- }
225
- }
@@ -1,54 +0,0 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
- @use '../core/styles/common/list';
5
-
6
- @use '../core/styles/tokens';
7
-
8
- @use '../core/styles/common';
9
-
10
-
11
- $tokens: meta.module-variables(tokens) !default;
12
-
13
- // This mixin provides all list-item styles, changing font size and height based on whether the list is in dense mode.
14
- @mixin kbq-list-item-base() {
15
- position: relative;
16
-
17
- display: flex;
18
- align-items: center;
19
-
20
- box-sizing: border-box;
21
- height: var(--kbq-list-size-item-height, map.get($tokens, list-size-item-height));
22
-
23
- border: 2px solid transparent;
24
-
25
- padding-left: var(--kbq-list-size-horizontal-padding, map.get($tokens, list-size-horizontal-padding));
26
-
27
- .kbq-list-text {
28
- @include list.kbq-line-wrapper-base();
29
-
30
- padding-right: var(--kbq-list-size-horizontal-padding, map.get($tokens, list-size-horizontal-padding));
31
- display: inline-block;
32
- @include common.kbq-truncate-line();
33
- }
34
-
35
- .kbq-divider {
36
- position: absolute;
37
-
38
- bottom: 0;
39
- left: 0;
40
-
41
- width: 100%;
42
-
43
- margin: 0;
44
-
45
- [dir='rtl'] & {
46
- margin-left: auto;
47
- margin-right: 0;
48
- }
49
-
50
- &.kbq-divider_inset {
51
- position: absolute; // necessary to override card styles
52
- }
53
- }
54
- }