@koobiq/components 18.12.1 → 18.13.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 (102) hide show
  1. package/alert/alert-tokens.scss +4 -4
  2. package/breadcrumbs/breadcrumbs-tokens.scss +9 -0
  3. package/breadcrumbs/breadcrumbs.d.ts +117 -0
  4. package/breadcrumbs/breadcrumbs.module.d.ts +7 -0
  5. package/breadcrumbs/breadcrumbs.scss +149 -0
  6. package/breadcrumbs/index.d.ts +1 -0
  7. package/breadcrumbs/public-api.d.ts +2 -0
  8. package/checkbox/checkbox-tokens.scss +2 -2
  9. package/core/common-behaviors/index.d.ts +1 -0
  10. package/core/common-behaviors/size.d.ts +4 -0
  11. package/core/option/_optgroup-theme.scss +5 -4
  12. package/core/option/optgroup.d.ts +1 -0
  13. package/core/option/optgroup.scss +4 -1
  14. package/core/option/option-tokens.scss +1 -0
  15. package/core/option/option.scss +1 -0
  16. package/core/pop-up/constants.d.ts +5 -0
  17. package/core/selection/pseudo-checkbox/pseudo-checkbox-tokens.scss +2 -2
  18. package/core/styles/common/_list.scss +0 -1
  19. package/core/styles/theming/_theming.scss +1 -3
  20. package/dropdown/_dropdown-theme.scss +2 -0
  21. package/dropdown/dropdown-item.scss +2 -0
  22. package/dropdown/dropdown-tokens.scss +1 -0
  23. package/dropdown/dropdown.scss +0 -2
  24. package/ellipsis-center/ellipsis-center.directive.d.ts +2 -1
  25. package/esm2022/alert/alert.component.mjs +2 -2
  26. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +4 -6
  27. package/esm2022/breadcrumbs/breadcrumbs.mjs +218 -0
  28. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +31 -0
  29. package/esm2022/breadcrumbs/index.mjs +2 -0
  30. package/esm2022/breadcrumbs/koobiq-components-breadcrumbs.mjs +5 -0
  31. package/esm2022/breadcrumbs/public-api.mjs +3 -0
  32. package/esm2022/checkbox/checkbox.mjs +2 -2
  33. package/esm2022/core/common-behaviors/index.mjs +1 -1
  34. package/esm2022/core/common-behaviors/size.mjs +2 -0
  35. package/esm2022/core/option/optgroup.mjs +4 -3
  36. package/esm2022/core/option/option.mjs +2 -2
  37. package/esm2022/core/pop-up/constants.mjs +6 -1
  38. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +2 -2
  39. package/esm2022/core/version.mjs +2 -2
  40. package/esm2022/datepicker/datepicker.component.mjs +6 -4
  41. package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
  42. package/esm2022/dropdown/dropdown-trigger.directive.mjs +3 -1
  43. package/esm2022/dropdown/dropdown.component.mjs +3 -3
  44. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +6 -3
  45. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  46. package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
  47. package/esm2022/form-field/form-field.mjs +2 -2
  48. package/esm2022/list/list-selection.component.mjs +2 -2
  49. package/esm2022/list/list.component.mjs +2 -2
  50. package/esm2022/progress-spinner/progress-spinner.component.mjs +1 -1
  51. package/esm2022/radio/radio.component.mjs +2 -2
  52. package/esm2022/select/select.component.mjs +3 -3
  53. package/esm2022/timezone/timezone-option.component.mjs +2 -2
  54. package/esm2022/toggle/toggle.component.mjs +3 -3
  55. package/esm2022/tree/toggle.mjs +2 -2
  56. package/esm2022/tree/tree-option.component.mjs +2 -2
  57. package/esm2022/tree/tree-selection.component.mjs +2 -2
  58. package/esm2022/tree/tree.mjs +2 -2
  59. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  60. package/fesm2022/koobiq-components-alert.mjs +2 -2
  61. package/fesm2022/koobiq-components-autocomplete.mjs +3 -5
  62. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  63. package/fesm2022/koobiq-components-breadcrumbs.mjs +253 -0
  64. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -0
  65. package/fesm2022/koobiq-components-checkbox.mjs +2 -2
  66. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  67. package/fesm2022/koobiq-components-core.mjs +14 -8
  68. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  69. package/fesm2022/koobiq-components-datepicker.mjs +5 -3
  70. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  71. package/fesm2022/koobiq-components-dropdown.mjs +6 -5
  72. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  73. package/fesm2022/koobiq-components-ellipsis-center.mjs +5 -2
  74. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  75. package/fesm2022/koobiq-components-file-upload.mjs +4 -4
  76. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  77. package/fesm2022/koobiq-components-form-field.mjs +2 -2
  78. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  79. package/fesm2022/koobiq-components-list.mjs +4 -4
  80. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  81. package/fesm2022/koobiq-components-radio.mjs +2 -2
  82. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  83. package/fesm2022/koobiq-components-select.mjs +2 -2
  84. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  85. package/fesm2022/koobiq-components-timezone.mjs +2 -2
  86. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  87. package/fesm2022/koobiq-components-toggle.mjs +2 -2
  88. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  89. package/fesm2022/koobiq-components-tree-select.mjs +4 -4
  90. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  91. package/fesm2022/koobiq-components-tree.mjs +8 -8
  92. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  93. package/file-upload/file-upload-tokens.scss +2 -2
  94. package/form-field/form-field-tokens.scss +5 -1
  95. package/list/list.scss +2 -0
  96. package/package.json +12 -6
  97. package/radio/radio-tokens.scss +1 -1
  98. package/schematics/ng-add/index.js +4 -4
  99. package/toggle/toggle-tokens.scss +1 -1
  100. package/tree/tree-option.scss +1 -1
  101. package/tree/tree-tokens.scss +1 -0
  102. package/tree-select/tree-select-tokens.scss +4 -0
@@ -58,16 +58,16 @@
58
58
  --kbq-alert-colored-contrast-container-background: var(--kbq-background-contrast-fade);
59
59
  --kbq-alert-colored-contrast-container-title: var(--kbq-foreground-contrast);
60
60
  --kbq-alert-colored-contrast-container-text: var(--kbq-foreground-contrast);
61
- --kbq-alert-colored-error-container-background: var(--kbq-background-error-fade);
61
+ --kbq-alert-colored-error-container-background: var(--kbq-background-error-less);
62
62
  --kbq-alert-colored-error-container-title: var(--kbq-foreground-contrast);
63
63
  --kbq-alert-colored-error-container-text: var(--kbq-foreground-contrast);
64
- --kbq-alert-colored-warning-container-background: var(--kbq-background-warning-fade);
64
+ --kbq-alert-colored-warning-container-background: var(--kbq-background-warning-less);
65
65
  --kbq-alert-colored-warning-container-title: var(--kbq-foreground-contrast);
66
66
  --kbq-alert-colored-warning-container-text: var(--kbq-foreground-contrast);
67
- --kbq-alert-colored-success-container-background: var(--kbq-background-success-fade);
67
+ --kbq-alert-colored-success-container-background: var(--kbq-background-success-less);
68
68
  --kbq-alert-colored-success-container-title: var(--kbq-foreground-contrast);
69
69
  --kbq-alert-colored-success-container-text: var(--kbq-foreground-contrast);
70
- --kbq-alert-colored-theme-container-background: var(--kbq-background-theme-fade);
70
+ --kbq-alert-colored-theme-container-background: var(--kbq-background-theme-less);
71
71
  --kbq-alert-colored-theme-container-title: var(--kbq-foreground-contrast);
72
72
  --kbq-alert-colored-theme-container-text: var(--kbq-foreground-contrast);
73
73
  }
@@ -0,0 +1,9 @@
1
+ :where(.kbq-breadcrumbs) {
2
+ --kbq-breadcrumb-item-horizontal-padding: var(--kbq-size-xs);
3
+ --kbq-breadcrumb-item-height: var(--kbq-size-3xl);
4
+ --kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-s);
5
+ --kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);
6
+ --kbq-breadcrumb-item-border-radius: var(--kbq-size-xs);
7
+ --kbq-breadcrumb-item-icon-color: var(--kbq-icon-contrast-fade);
8
+ --kbq-breadcrumbs-gap: 0;
9
+ }
@@ -0,0 +1,117 @@
1
+ import { AfterContentInit, InjectionToken, OnInit, Provider, QueryList, TemplateRef } from '@angular/core';
2
+ import { RouterLink } from '@angular/router';
3
+ import { KbqButtonStyles } from '@koobiq/components/button';
4
+ import { KbqComponentColors, KbqDefaultSizes, PopUpPlacements } from '@koobiq/components/core';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@radix-ng/primitives/roving-focus";
7
+ export type KbqBreadcrumbsConfiguration = {
8
+ /**
9
+ * Specifies the maximum number of breadcrumb items to display.
10
+ * - If a number is provided, only that many items will be shown.
11
+ * - If `null`, no limit is applied, and all breadcrumb items are displayed.
12
+ */
13
+ max: number | null;
14
+ size: KbqDefaultSizes;
15
+ };
16
+ /** Breadcrumbs options global configuration provider. */
17
+ export declare const KBQ_BREADCRUMBS_CONFIGURATION: InjectionToken<KbqBreadcrumbsConfiguration>;
18
+ /** Utility provider for `KBQ_BREADCRUMBS_CONFIGURATION`. */
19
+ export declare const provideKbqBreadcrumbsConfiguration: (configuration: KbqBreadcrumbsConfiguration) => Provider;
20
+ export declare class KbqBreadcrumbsSeparator {
21
+ readonly templateRef: TemplateRef<any>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbsSeparator, never>;
23
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqBreadcrumbsSeparator, "ng-template[kbqBreadcrumbsSeparator]", never, {}, {}, never, never, true, never>;
24
+ }
25
+ /**
26
+ * Directive to style and configure buttons used as breadcrumb items.
27
+ * - Inherits focus management behavior from `RdxRovingFocusItemDirective`.
28
+ * - Optionally injects `KbqButton` to customize its style for breadcrumb usage.
29
+ */
30
+ export declare class KbqBreadcrumbButton implements OnInit {
31
+ private readonly button;
32
+ ngOnInit(): void;
33
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbButton, never>;
34
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqBreadcrumbButton, "[kbq-button][kbqBreadcrumb]", never, {}, {}, never, never, true, [{ directive: typeof i1.RdxRovingFocusItemDirective; inputs: {}; outputs: {}; }]>;
35
+ }
36
+ /**
37
+ * Directive provides a way to define a custom template for breadcrumb rendering, leveraging TemplateRef
38
+ *
39
+ */
40
+ export declare class KbqBreadcrumbView {
41
+ readonly templateRef: TemplateRef<any>;
42
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbView, never>;
43
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqBreadcrumbView, "[kbqBreadcrumbView]", never, {}, {}, never, never, true, never>;
44
+ }
45
+ /**
46
+ * Component represents an individual breadcrumb item with optional support for router navigation and styling.
47
+ */
48
+ export declare class KbqBreadcrumbItem {
49
+ /**
50
+ * The text displayed for the breadcrumb item.
51
+ * This text will be shown if breadcrumb item is hidden in dropdown.
52
+ */
53
+ text: string;
54
+ /**
55
+ * Indicates whether the breadcrumb item is disabled.
56
+ */
57
+ disabled: boolean;
58
+ /**
59
+ * Indicates whether the breadcrumb item is the current/active item.
60
+ * Defaults to `false`.
61
+ */
62
+ current: boolean;
63
+ /**
64
+ * A reference to a custom template provided for the breadcrumb item content.
65
+ * The template can be used to override the default appearance of the breadcrumb.
66
+ */
67
+ customTemplateRef: TemplateRef<any>;
68
+ /**
69
+ * An optional `RouterLink` instance for navigating to a specific route.
70
+ * Injected from the host element, if available and projecting to the hidden breadcrumb item in dropdown.
71
+ */
72
+ readonly routerLink: RouterLink | null;
73
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbItem, never>;
74
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqBreadcrumbItem, "kbq-breadcrumb-item", never, { "text": { "alias": "text"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "current": { "alias": "current"; "required": false; }; }, {}, ["customTemplateRef"], ["*"], true, never>;
75
+ static ngAcceptInputType_disabled: unknown;
76
+ static ngAcceptInputType_current: unknown;
77
+ }
78
+ export declare class KbqBreadcrumbs implements AfterContentInit {
79
+ protected readonly configuration: KbqBreadcrumbsConfiguration;
80
+ /**
81
+ * Size of the breadcrumbs. Affects font size.
82
+ * Default value is taken from the global configuration.
83
+ */
84
+ size: KbqDefaultSizes;
85
+ /**
86
+ * Maximum number of visible breadcrumb items.
87
+ * Remaining items are collapsed into a dropdown if the total exceeds this value.
88
+ * Default value is taken from the global configuration.
89
+ */
90
+ max: number | null;
91
+ /**
92
+ * Indicates whether the breadcrumbs are disabled.
93
+ * When disabled, user interactions are blocked.
94
+ */
95
+ disabled: boolean;
96
+ protected readonly separator?: TemplateRef<any>;
97
+ protected readonly items: QueryList<KbqBreadcrumbItem>;
98
+ /**
99
+ * Ensures at least minimum number of breadcrumb items are shown.
100
+ *
101
+ * This prevents the appearance of unnecessary expand button that would hide only a single breadcrumb.
102
+ */
103
+ readonly minVisibleItems = 2;
104
+ private readonly destroyRef;
105
+ private readonly cdr;
106
+ protected readonly KbqComponentColors: typeof KbqComponentColors;
107
+ protected readonly KbqButtonStyles: typeof KbqButtonStyles;
108
+ protected readonly PopUpPlacements: typeof PopUpPlacements;
109
+ /** @docs-private */
110
+ protected get hiddenBreadcrumbItems(): KbqBreadcrumbItem[];
111
+ /** @docs-private */
112
+ protected get visibleBreadcrumbItems(): KbqBreadcrumbItem[];
113
+ ngAfterContentInit(): void;
114
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbs, never>;
115
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqBreadcrumbs, "kbq-breadcrumbs,[kbq-breadcrumbs]", never, { "size": { "alias": "size"; "required": false; }; "max": { "alias": "max"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, ["separator", "items"], never, true, [{ directive: typeof i1.RdxRovingFocusGroupDirective; inputs: {}; outputs: {}; }]>;
116
+ static ngAcceptInputType_disabled: unknown;
117
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./breadcrumbs";
3
+ export declare class KbqBreadcrumbsModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqBreadcrumbsModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KbqBreadcrumbsModule, never, [typeof i1.KbqBreadcrumbs, typeof i1.KbqBreadcrumbItem, typeof i1.KbqBreadcrumbView, typeof i1.KbqBreadcrumbsSeparator, typeof i1.KbqBreadcrumbButton], [typeof i1.KbqBreadcrumbs, typeof i1.KbqBreadcrumbItem, typeof i1.KbqBreadcrumbView, typeof i1.KbqBreadcrumbsSeparator, typeof i1.KbqBreadcrumbButton]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<KbqBreadcrumbsModule>;
7
+ }
@@ -0,0 +1,149 @@
1
+ @use '../core/styles/common/tokens';
2
+ @use '../core/styles/common/vendor-prefixes';
3
+
4
+ .kbq-breadcrumbs {
5
+ display: flex;
6
+ align-items: center;
7
+ gap: var(--kbq-breadcrumbs-gap);
8
+
9
+ .kbq-breadcrumb-item {
10
+ &.kbq-button,
11
+ &.kbq-button-icon {
12
+ --kbq-button-size-height: var(--kbq-breadcrumb-item-height);
13
+ --kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);
14
+ --kbq-button-size-border-radius: var(--kbq-breadcrumb-item-border-radius);
15
+ --kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast-secondary);
16
+ --kbq-button-transparent-contrast-fade-on-right-icon: var(--kbq-breadcrumb-item-icon-color);
17
+ --kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-item-icon-color);
18
+
19
+ &[aria-current='page'] {
20
+ --kbq-button-transparent-contrast-fade-on-states-disabled-foreground: var(--kbq-foreground-contrast);
21
+
22
+ &.kbq-disabled {
23
+ --kbq-button-transparent-contrast-fade-on-states-disabled-left-icon: var(
24
+ --kbq-breadcrumb-item-icon-color
25
+ );
26
+ --kbq-button-transparent-contrast-fade-on-states-disabled-right-icon: var(
27
+ --kbq-breadcrumb-item-icon-color
28
+ );
29
+ }
30
+ }
31
+ }
32
+
33
+ &.kbq-dropdown-trigger {
34
+ &.kbq-button,
35
+ &.kbq-button-icon {
36
+ &:not(.kbq-disabled) {
37
+ &:hover,
38
+ &.kbq-hover,
39
+ &.cdk-keyboard-focused {
40
+ .kbq-icon {
41
+ --kbq-button-transparent-contrast-fade-on-left-icon: var(
42
+ --kbq-states-icon-contrast-fade-hover
43
+ );
44
+ --kbq-button-transparent-contrast-fade-on-right-icon: var(
45
+ --kbq-states-icon-contrast-fade-hover
46
+ );
47
+ }
48
+ }
49
+
50
+ &:active,
51
+ &.kbq-active {
52
+ .kbq-icon {
53
+ --kbq-button-transparent-contrast-fade-on-left-icon: var(
54
+ --kbq-states-icon-contrast-fade-active
55
+ );
56
+ --kbq-button-transparent-contrast-fade-on-right-icon: var(
57
+ --kbq-states-icon-contrast-fade-active
58
+ );
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ }
65
+
66
+ .kbq-breadcrumb__expand {
67
+ &.kbq-button-icon {
68
+ --kbq-button-icon-size-horizontal-padding: var(--kbq-breadcrumb-item-expand-horizontal-padding);
69
+ --kbq-button-transparent-contrast-fade-on-left-icon: var(--kbq-breadcrumb-expand-icon-color);
70
+
71
+ .kbq-icon {
72
+ --kbq-breadcrumb-expand-icon-color: var(--kbq-icon-contrast-fade);
73
+ }
74
+
75
+ &:not(.kbq-disabled) {
76
+ &:hover,
77
+ &.kbq-hover,
78
+ &.cdk-keyboard-focused {
79
+ .kbq-icon {
80
+ --kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-hover);
81
+ }
82
+ }
83
+
84
+ &:active,
85
+ &.kbq-active {
86
+ .kbq-icon {
87
+ --kbq-breadcrumb-expand-icon-color: var(--kbq-states-icon-contrast-fade-active);
88
+ }
89
+ }
90
+ }
91
+ }
92
+ }
93
+
94
+ .kbq-breadcrumb_current {
95
+ .kbq-button,
96
+ .kbq-button-icon {
97
+ &.kbq-button_transparent.kbq-contrast {
98
+ --kbq-button-transparent-contrast-fade-on-foreground: var(--kbq-foreground-contrast);
99
+ }
100
+ }
101
+
102
+ color: var(--kbq-foreground-contrast);
103
+ }
104
+
105
+ // typography
106
+ .kbq-breadcrumb__separator {
107
+ @include vendor-prefixes.user-select(none);
108
+ @include tokens.kbq-typography-level-to-styles-css-variables(typography, text-big);
109
+ }
110
+
111
+ &.kbq-breadcrumbs_compact {
112
+ .kbq-breadcrumb-item {
113
+ &.kbq-button,
114
+ &.kbq-button-icon {
115
+ --kbq-breadcrumb-item-height: var(--kbq-size-xxl);
116
+ @include tokens.kbq-typography-level-to-styles-css-variables(typography, text-normal);
117
+ }
118
+ }
119
+
120
+ .kbq-breadcrumb__expand {
121
+ &.kbq-button-icon {
122
+ --kbq-breadcrumb-item-expand-horizontal-padding: var(--kbq-size-xxs);
123
+ }
124
+ }
125
+ }
126
+
127
+ &.kbq-breadcrumbs_normal {
128
+ .kbq-breadcrumb-item {
129
+ &.kbq-button,
130
+ &.kbq-button-icon {
131
+ --kbq-button-size-horizontal-padding: var(--kbq-breadcrumb-item-horizontal-padding);
132
+
133
+ @include tokens.kbq-typography-level-to-styles-css-variables(typography, text-big);
134
+ }
135
+ }
136
+ }
137
+
138
+ &.kbq-breadcrumbs_big {
139
+ .kbq-button,
140
+ .kbq-button-icon {
141
+ --kbq-button-size-height: var(--kbq-breadcrumb-item-height);
142
+ @include tokens.kbq-typography-level-to-styles-css-variables(typography, subheading);
143
+ }
144
+ }
145
+ }
146
+
147
+ .kbq-breadcrumb-item__link-behavior {
148
+ text-decoration: none;
149
+ }
@@ -0,0 +1 @@
1
+ export * from './public-api';
@@ -0,0 +1,2 @@
1
+ export * from './breadcrumbs';
2
+ export * from './breadcrumbs.module';
@@ -37,7 +37,7 @@
37
37
  --kbq-checkbox-error-default-border: var(--kbq-line-error);
38
38
  --kbq-checkbox-error-default-color: var(--kbq-icon-white);
39
39
  --kbq-checkbox-error-default-text: var(--kbq-foreground-contrast);
40
- --kbq-checkbox-error-default-background: var(--kbq-states-background-error-less);
40
+ --kbq-checkbox-error-default-background: var(--kbq-background-error-less);
41
41
  --kbq-checkbox-error-default-caption: var(--kbq-foreground-contrast-secondary);
42
42
  --kbq-checkbox-error-states-hover-border: var(--kbq-line-error);
43
43
  --kbq-checkbox-error-states-hover-background: var(--kbq-states-background-error-fade-hover);
@@ -46,7 +46,7 @@
46
46
  --kbq-checkbox-error-states-checked-hover-border: transparent;
47
47
  --kbq-checkbox-error-states-checked-hover-background: var(--kbq-states-background-error-hover);
48
48
  --kbq-checkbox-error-states-focused-border: var(--kbq-line-error);
49
- --kbq-checkbox-error-states-focused-background: var(--kbq-states-background-error-less);
49
+ --kbq-checkbox-error-states-focused-background: var(--kbq-background-error-less);
50
50
  --kbq-checkbox-error-states-focused-outline: 1px solid var(--kbq-states-line-focus-error);
51
51
  --kbq-checkbox-error-states-checked-focused-border: var(--kbq-states-line-focus-error);
52
52
  --kbq-checkbox-error-states-checked-focused-background: var(--kbq-background-error);
@@ -3,5 +3,6 @@ export { CanColor, CanColorCtor, KbqComponentColors, mixinColor, ThemePalette }
3
3
  export { KBQ_SANITY_CHECKS, KbqCommonModule } from './common-module';
4
4
  export { CanDisable, CanDisableCtor, mixinDisabled } from './disabled';
5
5
  export { CanUpdateErrorState, CanUpdateErrorStateCtor, mixinErrorState } from './error-state';
6
+ export { KbqDefaultSizes } from './size';
6
7
  export { HasTabIndex, HasTabIndexCtor, mixinTabIndex } from './tabindex';
7
8
  export declare const KBQ_PARENT_ANIMATION_COMPONENT: InjectionToken<any>;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Defines the available size options for Koobiq components.
3
+ */
4
+ export type KbqDefaultSizes = 'compact' | 'normal' | 'big';
@@ -1,17 +1,18 @@
1
- @use '../styles/common/tokens' as *;
1
+ @use '../styles/common/tokens';
2
2
 
3
3
  @mixin kbq-optgroup-theme() {
4
4
  .kbq-optgroup-label {
5
- color: var(--kbq-foreground-contrast);
5
+ --kbq-optgroup-label-color: var(--kbq-foreground-contrast-secondary);
6
+ color: var(--kbq-optgroup-label-color);
6
7
  }
7
8
 
8
9
  .kbq-disabled .kbq-optgroup-label {
9
- color: var(--kbq-states-foreground-disabled);
10
+ --kbq-optgroup-label-color: var(--kbq-states-foreground-disabled);
10
11
  }
11
12
  }
12
13
 
13
14
  @mixin kbq-optgroup-typography() {
14
15
  .kbq-optgroup-label {
15
- @include kbq-typography-level-to-styles-css-variables(typography, subheading);
16
+ @include tokens.kbq-typography-level-to-styles-css-variables(typography, caps-compact-strong);
16
17
  }
17
18
  }
@@ -6,6 +6,7 @@ export declare class KbqOptgroupBase {
6
6
  export declare const KbqOptgroupMixinBase: CanDisableCtor & typeof KbqOptgroupBase;
7
7
  /**
8
8
  * Component that is used to group instances of `kbq-option`.
9
+ * When options aren't provided as `ng-content`, used as a Group Header with styling.
9
10
  */
10
11
  export declare class KbqOptgroup extends KbqOptgroupMixinBase implements CanDisable {
11
12
  label: string;
@@ -4,7 +4,10 @@
4
4
  @use './optgroup-theme' as *;
5
5
 
6
6
  .kbq-optgroup-label {
7
- padding-left: var(--kbq-size-m);
7
+ display: flex;
8
+ align-items: center;
9
+ box-sizing: border-box;
10
+ padding: var(--kbq-size-s) var(--kbq-size-l) var(--kbq-size-s) var(--kbq-size-m);
8
11
 
9
12
  @include vendor-prefixes.user-select(none);
10
13
  cursor: default;
@@ -4,6 +4,7 @@
4
4
  --kbq-option-size-horizontal-padding: var(--kbq-size-m);
5
5
  --kbq-option-size-height: var(--kbq-size-3xl);
6
6
  --kbq-option-size-border-width: 2px;
7
+ --kbq-option-border-radius: var(--kbq-size-xs);
7
8
  /* LIST THEME TOKENS */
8
9
  @include list-tokens.list-theme-tokens;
9
10
  }
@@ -4,6 +4,7 @@
4
4
 
5
5
  .kbq-option {
6
6
  @include common.kbq-list-item-base();
7
+ border-radius: var(--kbq-option-border-radius);
7
8
 
8
9
  &:not(.kbq-disabled) {
9
10
  cursor: pointer;
@@ -38,3 +38,8 @@ export declare enum PopUpSizes {
38
38
  Normal = "medium",
39
39
  Large = "large"
40
40
  }
41
+ /**
42
+ * Default value when configuring overlay in popups (Autocomplete, Datepicker, Dropdown, Select, Tags Autocomplete,
43
+ * Tags Input, Timezone, TreeSelect).
44
+ */
45
+ export declare const defaultOffsetY: number;
@@ -37,7 +37,7 @@
37
37
  --kbq-checkbox-error-default-border: var(--kbq-line-error);
38
38
  --kbq-checkbox-error-default-color: var(--kbq-icon-white);
39
39
  --kbq-checkbox-error-default-text: var(--kbq-foreground-contrast);
40
- --kbq-checkbox-error-default-background: var(--kbq-states-background-error-less);
40
+ --kbq-checkbox-error-default-background: var(--kbq-background-error-less);
41
41
  --kbq-checkbox-error-default-caption: var(--kbq-foreground-contrast-secondary);
42
42
  --kbq-checkbox-error-states-hover-border: var(--kbq-line-error);
43
43
  --kbq-checkbox-error-states-hover-background: var(--kbq-states-background-error-fade-hover);
@@ -46,7 +46,7 @@
46
46
  --kbq-checkbox-error-states-checked-hover-border: transparent;
47
47
  --kbq-checkbox-error-states-checked-hover-background: var(--kbq-states-background-error-hover);
48
48
  --kbq-checkbox-error-states-focused-border: var(--kbq-line-error);
49
- --kbq-checkbox-error-states-focused-background: var(--kbq-states-background-error-less);
49
+ --kbq-checkbox-error-states-focused-background: var(--kbq-background-error-less);
50
50
  --kbq-checkbox-error-states-focused-outline: 1px solid var(--kbq-states-line-focus-error);
51
51
  --kbq-checkbox-error-states-checked-focused-border: var(--kbq-states-line-focus-error);
52
52
  --kbq-checkbox-error-states-checked-focused-background: var(--kbq-background-error);
@@ -64,7 +64,6 @@
64
64
  gap: var(--kbq-size-s);
65
65
 
66
66
  border: var(--kbq-size-3xs) solid transparent;
67
- border-radius: var(--kbq-size-border-radius);
68
67
 
69
68
  padding: var(--kbq-size-xxs) kbq-difference-series-css-variables([size-m, size-3xs]);
70
69
 
@@ -151,9 +151,7 @@
151
151
  error-hover: map.get($tokens, '#{$scheme}-states-background-error-hover'),
152
152
  error-active: map.get($tokens, '#{$scheme}-states-background-error-active'),
153
153
  error-fade-hover: map.get($tokens, '#{$scheme}-states-background-error-fade-hover'),
154
- error-fade-active: map.get($tokens, '#{$scheme}-states-background-error-fade-active'),
155
- // будет удалено, после удаления из компонентов ↓
156
- error-less: map.get($tokens, '#{$scheme}-states-background-error-less')
154
+ error-fade-active: map.get($tokens, '#{$scheme}-states-background-error-fade-active')
157
155
  );
158
156
  }
159
157
 
@@ -56,6 +56,7 @@
56
56
  }
57
57
 
58
58
  .kbq-dropdown__group-header {
59
+ // @deprecated, use <kbq-optgroup label="Label" /> instead. Will be removed in the next major release
59
60
  &.kbq-dropdown__group-header_small {
60
61
  color: var(--kbq-foreground-contrast-secondary);
61
62
  }
@@ -79,6 +80,7 @@
79
80
  .kbq-dropdown__group-header {
80
81
  @include kbq-typography-level-to-styles-css-variables(typography, big-strong);
81
82
 
83
+ // @deprecated, use <kbq-optgroup label="Label" /> instead. Will be removed in the next major release
82
84
  &.kbq-dropdown__group-header_small {
83
85
  @include kbq-typography-level-to-styles-css-variables(typography, caps-compact-strong);
84
86
  }
@@ -2,6 +2,7 @@
2
2
 
3
3
  .kbq-dropdown-item {
4
4
  width: 100%;
5
+ border-radius: var(--kbq-dropdown-item-border-radius);
5
6
 
6
7
  @include common.user-select(none);
7
8
  @include common.kbq-list-item-base();
@@ -45,6 +46,7 @@
45
46
  @include common.user-select(none);
46
47
  @include common.kbq-list-header-base();
47
48
 
49
+ // @deprecated, use <kbq-optgroup label="Label" /> instead. Will be removed in the next major release
48
50
  &.kbq-dropdown__group-header_small {
49
51
  @include common.kbq-list-subheading-base();
50
52
  }
@@ -8,6 +8,7 @@
8
8
  /* THEME TOKENS */
9
9
  --kbq-dropdown-container-background: var(--kbq-background-card);
10
10
  --kbq-dropdown-container-shadow: var(--kbq-shadow-popup);
11
+ --kbq-dropdown-item-border-radius: var(--kbq-size-xs);
11
12
  /* LIST THEME TOKENS */
12
13
  @include list-tokens.list-theme-tokens;
13
14
  }
@@ -15,8 +15,6 @@
15
15
  }
16
16
 
17
17
  .kbq-dropdown__panel {
18
- margin-top: 2px;
19
-
20
18
  min-width: var(--kbq-dropdown-size-container-width-min);
21
19
  max-width: var(--kbq-dropdown-size-container-width-max);
22
20
 
@@ -6,6 +6,7 @@ export declare class KbqEllipsisCenterDirective extends KbqTooltipTrigger implem
6
6
  private renderer;
7
7
  set kbqEllipsisCenter(value: string);
8
8
  minVisibleLength: number;
9
+ charWidth: number;
9
10
  readonly resizeStream: Subject<Event>;
10
11
  private _kbqEllipsisCenter;
11
12
  private resizeSubscription;
@@ -15,7 +16,7 @@ export declare class KbqEllipsisCenterDirective extends KbqTooltipTrigger implem
15
16
  ngOnDestroy(): void;
16
17
  private refresh;
17
18
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqEllipsisCenterDirective, never>;
18
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqEllipsisCenterDirective, "[kbqEllipsisCenter]", never, { "kbqEllipsisCenter": { "alias": "kbqEllipsisCenter"; "required": false; }; "minVisibleLength": { "alias": "minVisibleLength"; "required": false; }; }, {}, never, never, false, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqEllipsisCenterDirective, "[kbqEllipsisCenter]", never, { "kbqEllipsisCenter": { "alias": "kbqEllipsisCenter"; "required": false; }; "minVisibleLength": { "alias": "minVisibleLength"; "required": false; }; "charWidth": { "alias": "charWidth"; "required": false; }; }, {}, never, never, false, never>;
19
20
  }
20
21
  export declare class KbqEllipsisCenterModule {
21
22
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqEllipsisCenterModule, never>;