@koobiq/components 18.30.0 → 18.31.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.
- package/core/common-behaviors/error-state.d.ts +18 -0
- package/core/common-behaviors/index.d.ts +1 -1
- package/core/option/_option-theme.scss +24 -2
- package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +1 -1
- package/datepicker/datepicker-input.directive.d.ts +14 -5
- package/datepicker/datepicker-module.d.ts +1 -1
- package/datepicker/datepicker-toggle.component.d.ts +22 -0
- package/datepicker/datepicker-toggle.scss +6 -0
- package/esm2022/core/common-behaviors/error-state.mjs +28 -1
- package/esm2022/core/common-behaviors/index.mjs +2 -2
- package/esm2022/core/option/option.mjs +2 -2
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +1 -1
- package/esm2022/datepicker/datepicker-input.directive.mjs +66 -6
- package/esm2022/datepicker/datepicker-module.mjs +8 -3
- package/esm2022/datepicker/datepicker-toggle.component.mjs +94 -10
- package/esm2022/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/filter-bar/filter-bar.mjs +11 -3
- package/esm2022/filter-bar/filter-bar.types.mjs +1 -1
- package/esm2022/filter-bar/pipe-add.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-date.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +29 -9
- package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +30 -10
- package/esm2022/filter-bar/pipes/pipe-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +2 -2
- package/esm2022/icon/icon-button.component.mjs +2 -2
- package/esm2022/list/list-selection.component.mjs +5 -4
- package/esm2022/list/list.component.mjs +2 -2
- package/esm2022/select/select.component.mjs +30 -12
- package/esm2022/timezone/timezone-option.component.mjs +2 -2
- package/esm2022/timezone/timezone-select.component.mjs +2 -2
- package/esm2022/tree/toggle.mjs +2 -2
- package/esm2022/tree/tree-option.component.mjs +5 -4
- package/esm2022/tree/tree-selection.component.mjs +2 -2
- package/esm2022/tree/tree.mjs +2 -2
- package/esm2022/tree-select/tree-select.component.mjs +32 -13
- package/fesm2022/koobiq-components-core.mjs +33 -6
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +159 -11
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +2 -2
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +71 -23
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +2 -2
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +6 -5
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +29 -11
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +4 -4
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +31 -12
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +10 -9
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/filter-bar/filter-bar.d.ts +7 -1
- package/filter-bar/filter-bar.types.d.ts +5 -0
- package/filter-bar/pipes/pipe-multi-select.d.ts +5 -1
- package/filter-bar/pipes/pipe-multi-tree-select.d.ts +5 -1
- package/icon/_icon-button-theme.scss +67 -85
- package/list/_list-theme.scss +24 -2
- package/list/list-tokens.scss +5 -0
- package/package.json +6 -6
- package/schematics/ng-add/index.js +5 -5
- package/select/select.component.d.ts +8 -1
- package/tree/_tree-theme.scss +30 -7
- package/tree/tree-option.scss +5 -2
- package/tree/tree-tokens.scss +5 -0
- package/tree-select/tree-select.component.d.ts +8 -1
|
@@ -15,6 +15,11 @@ export declare class KbqFilterBar {
|
|
|
15
15
|
filters: KbqFilters;
|
|
16
16
|
/** @docs-private */
|
|
17
17
|
filterReset: KbqFilterReset;
|
|
18
|
+
/**
|
|
19
|
+
* This is special logic that unselect all items when all selected because "all selected = nothing selected".
|
|
20
|
+
* Default is true
|
|
21
|
+
* */
|
|
22
|
+
selectedAllEqualsSelectedNothing: boolean;
|
|
18
23
|
/** Filter that is currently selected */
|
|
19
24
|
get filter(): KbqFilter | null;
|
|
20
25
|
set filter(value: KbqFilter | null);
|
|
@@ -67,5 +72,6 @@ export declare class KbqFilterBar {
|
|
|
67
72
|
private updateLocaleParams;
|
|
68
73
|
private initDefaultParams;
|
|
69
74
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqFilterBar, never>;
|
|
70
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBar, "kbq-filter-bar, [kbq-filter-bar]", never, { "filter": { "alias": "filter"; "required": false; }; "pipeTemplates": { "alias": "pipeTemplates"; "required": false; }; }, { "filterChange": "filterChange"; "onChangePipe": "onChangePipe"; "onRemovePipe": "onRemovePipe"; "onClosePipe": "onClosePipe"; }, ["filters", "filterReset"], ["kbq-filters", "*", "kbq-pipe-add", "kbq-filter-reset", "kbq-filter-search, [kbq-filter-search]", "kbq-filter-refresher, [kbq-filter-refresher]"], true, never>;
|
|
75
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBar, "kbq-filter-bar, [kbq-filter-bar]", never, { "selectedAllEqualsSelectedNothing": { "alias": "selectedAllEqualsSelectedNothing"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "pipeTemplates": { "alias": "pipeTemplates"; "required": false; }; }, { "filterChange": "filterChange"; "onChangePipe": "onChangePipe"; "onRemovePipe": "onRemovePipe"; "onClosePipe": "onClosePipe"; }, ["filters", "filterReset"], ["kbq-filters", "*", "kbq-pipe-add", "kbq-filter-reset", "kbq-filter-search, [kbq-filter-search]", "kbq-filter-refresher, [kbq-filter-refresher]"], true, never>;
|
|
76
|
+
static ngAcceptInputType_selectedAllEqualsSelectedNothing: unknown;
|
|
71
77
|
}
|
|
@@ -88,6 +88,11 @@ export interface KbqPipe {
|
|
|
88
88
|
value: unknown | null;
|
|
89
89
|
search?: boolean;
|
|
90
90
|
selectAll?: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* This is special logic that unselect all items when all selected because "all selected = nothing selected".
|
|
93
|
+
* Default is true
|
|
94
|
+
* */
|
|
95
|
+
selectedAllEqualsSelectedNothing?: boolean;
|
|
91
96
|
/** @deprecated use cleanable = false and removable = false instead */
|
|
92
97
|
required?: boolean;
|
|
93
98
|
cleanable: boolean;
|
|
@@ -25,6 +25,7 @@ export declare class KbqPipeMultiSelectComponent extends KbqBasePipe<KbqSelectVa
|
|
|
25
25
|
get allVisibleOptionsSelected(): boolean;
|
|
26
26
|
/** true if all options selected */
|
|
27
27
|
get allOptionsSelected(): boolean;
|
|
28
|
+
get selectedAllEqualsSelectedNothing(): boolean;
|
|
28
29
|
private get visibleOptions();
|
|
29
30
|
private selectionAllInProgress;
|
|
30
31
|
/** @docs-private */
|
|
@@ -38,9 +39,12 @@ export declare class KbqPipeMultiSelectComponent extends KbqBasePipe<KbqSelectVa
|
|
|
38
39
|
/** @docs-private */
|
|
39
40
|
toggleSelectionAllByEnterKey(): void;
|
|
40
41
|
/** @docs-private */
|
|
41
|
-
toggleSelectionAll(): void;
|
|
42
|
+
toggleSelectionAll(emitEvent?: boolean): void;
|
|
43
|
+
private emitChangePipeEvent;
|
|
42
44
|
/** Comparator of selected options */
|
|
43
45
|
compareByValue: (o1: any, o2: any) => boolean;
|
|
46
|
+
/** handler for select all options in select */
|
|
47
|
+
selectAllHandler: (event: KeyboardEvent) => void;
|
|
44
48
|
onClose(): void;
|
|
45
49
|
/** opens select */
|
|
46
50
|
open(): void;
|
|
@@ -28,6 +28,7 @@ export declare class KbqPipeMultiTreeSelectComponent extends KbqBasePipe<KbqSele
|
|
|
28
28
|
get numberOfSelectedLeaves(): number;
|
|
29
29
|
/** true if all options selected */
|
|
30
30
|
get allOptionsSelected(): boolean;
|
|
31
|
+
get selectedAllEqualsSelectedNothing(): boolean;
|
|
31
32
|
/** true if all visible options selected */
|
|
32
33
|
get allVisibleOptionsSelected(): boolean;
|
|
33
34
|
constructor();
|
|
@@ -38,13 +39,16 @@ export declare class KbqPipeMultiTreeSelectComponent extends KbqBasePipe<KbqSele
|
|
|
38
39
|
value: any;
|
|
39
40
|
}): void;
|
|
40
41
|
searchKeydownHandler(): void;
|
|
41
|
-
toggleSelectAllNode(): void;
|
|
42
|
+
toggleSelectAllNode(emitEvent?: boolean): void;
|
|
42
43
|
/** updates values for selection and value template */
|
|
43
44
|
updateTemplates: (templates: KbqPipeTemplate[] | null) => void;
|
|
44
45
|
/** opens select */
|
|
45
46
|
open(): void;
|
|
46
47
|
onOpen(): void;
|
|
47
48
|
onClose(): void;
|
|
49
|
+
/** handler for select all options in select */
|
|
50
|
+
selectAllHandler: (event: KeyboardEvent) => void;
|
|
51
|
+
private emitChangePipeEvent;
|
|
48
52
|
private toggleParents;
|
|
49
53
|
private transformer;
|
|
50
54
|
private getLevel;
|
|
@@ -1,110 +1,92 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
@mixin _kbq-icon-button-color($map) {
|
|
4
|
+
color: map.get($map, default);
|
|
5
|
+
|
|
6
|
+
&:hover {
|
|
7
|
+
color: map.get($map, hover);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
&:active,
|
|
11
|
+
&.kbq-active {
|
|
12
|
+
color: map.get($map, active);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&.kbq-disabled {
|
|
16
|
+
color: map.get($map, disabled);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
1
20
|
@mixin kbq-icon-button-theme() {
|
|
2
21
|
.kbq-icon-button {
|
|
3
22
|
&:focus {
|
|
4
23
|
outline: none;
|
|
5
24
|
}
|
|
6
25
|
|
|
7
|
-
// FIXME: move to unified mixin
|
|
8
26
|
&.kbq-theme {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
color: var(--kbq-icon-button-theme-states-hover);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
&.kbq-disabled {
|
|
21
|
-
color: var(--kbq-icon-button-theme-states-disabled);
|
|
22
|
-
}
|
|
27
|
+
@include _kbq-icon-button-color(
|
|
28
|
+
(
|
|
29
|
+
default: var(--kbq-icon-button-theme-default),
|
|
30
|
+
hover: var(--kbq-icon-button-theme-states-hover),
|
|
31
|
+
active: var(--kbq-icon-button-theme-states-active),
|
|
32
|
+
disabled: var(--kbq-icon-button-theme-states-disabled)
|
|
33
|
+
)
|
|
34
|
+
);
|
|
23
35
|
}
|
|
24
36
|
|
|
25
37
|
&.kbq-contrast {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
color: var(--kbq-icon-button-contrast-states-hover);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
&.kbq-disabled {
|
|
38
|
-
color: var(--kbq-icon-button-contrast-states-disabled);
|
|
39
|
-
}
|
|
38
|
+
@include _kbq-icon-button-color(
|
|
39
|
+
(
|
|
40
|
+
default: var(--kbq-icon-button-contrast-default),
|
|
41
|
+
hover: var(--kbq-icon-button-contrast-states-hover),
|
|
42
|
+
active: var(--kbq-icon-button-contrast-states-active),
|
|
43
|
+
disabled: var(--kbq-icon-button-contrast-states-disabled)
|
|
44
|
+
)
|
|
45
|
+
);
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
&.kbq-contrast-fade {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
color: var(--kbq-icon-button-fade-contrast-states-hover);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
&.kbq-disabled {
|
|
55
|
-
color: var(--kbq-icon-button-fade-contrast-states-disabled);
|
|
56
|
-
}
|
|
49
|
+
@include _kbq-icon-button-color(
|
|
50
|
+
(
|
|
51
|
+
default: var(--kbq-icon-button-fade-contrast-default),
|
|
52
|
+
hover: var(--kbq-icon-button-fade-contrast-states-hover),
|
|
53
|
+
active: var(--kbq-icon-button-fade-contrast-states-active),
|
|
54
|
+
disabled: var(--kbq-icon-button-fade-contrast-states-disabled)
|
|
55
|
+
)
|
|
56
|
+
);
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
&.kbq-error {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
color: var(--kbq-icon-button-error-states-hover);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
&.kbq-disabled {
|
|
72
|
-
color: var(--kbq-icon-button-error-states-disabled);
|
|
73
|
-
}
|
|
60
|
+
@include _kbq-icon-button-color(
|
|
61
|
+
(
|
|
62
|
+
default: var(--kbq-icon-button-error-default),
|
|
63
|
+
hover: var(--kbq-icon-button-error-states-hover),
|
|
64
|
+
active: var(--kbq-icon-button-error-states-active),
|
|
65
|
+
disabled: var(--kbq-icon-button-error-states-disabled)
|
|
66
|
+
)
|
|
67
|
+
);
|
|
74
68
|
}
|
|
75
69
|
|
|
76
70
|
&.kbq-success {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
color: var(--kbq-icon-button-success-states-hover);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
&.kbq-disabled {
|
|
89
|
-
color: var(--kbq-icon-button-success-states-disabled);
|
|
90
|
-
}
|
|
71
|
+
@include _kbq-icon-button-color(
|
|
72
|
+
(
|
|
73
|
+
default: var(--kbq-icon-button-success-default),
|
|
74
|
+
hover: var(--kbq-icon-button-success-states-hover),
|
|
75
|
+
active: var(--kbq-icon-button-success-states-active),
|
|
76
|
+
disabled: var(--kbq-icon-button-success-states-disabled)
|
|
77
|
+
)
|
|
78
|
+
);
|
|
91
79
|
}
|
|
92
80
|
|
|
93
81
|
&.kbq-warning {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
color: var(--kbq-icon-button-warning-states-hover);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
&.kbq-disabled {
|
|
106
|
-
color: var(--kbq-icon-button-warning-states-disabled);
|
|
107
|
-
}
|
|
82
|
+
@include _kbq-icon-button-color(
|
|
83
|
+
(
|
|
84
|
+
default: var(--kbq-icon-button-warning-default),
|
|
85
|
+
hover: var(--kbq-icon-button-warning-states-hover),
|
|
86
|
+
active: var(--kbq-icon-button-warning-states-active),
|
|
87
|
+
disabled: var(--kbq-icon-button-warning-states-disabled)
|
|
88
|
+
)
|
|
89
|
+
);
|
|
108
90
|
}
|
|
109
91
|
|
|
110
92
|
&.cdk-keyboard-focused {
|
package/list/_list-theme.scss
CHANGED
|
@@ -28,12 +28,20 @@
|
|
|
28
28
|
@include _kbq-list-item(states-hover);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
&:active:not(.kbq-disabled) {
|
|
32
|
+
@include _kbq-list-item(states-active);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&.kbq-selected:not(.kbq-disabled) {
|
|
32
36
|
@include _kbq-list-item(states-selected);
|
|
33
37
|
|
|
34
|
-
&:hover
|
|
38
|
+
&:hover {
|
|
35
39
|
@include _kbq-list-item(states-selected-hover);
|
|
36
40
|
}
|
|
41
|
+
|
|
42
|
+
&:active {
|
|
43
|
+
@include _kbq-list-item(states-selected-active);
|
|
44
|
+
}
|
|
37
45
|
}
|
|
38
46
|
|
|
39
47
|
&.kbq-disabled {
|
|
@@ -41,6 +49,20 @@
|
|
|
41
49
|
}
|
|
42
50
|
}
|
|
43
51
|
|
|
52
|
+
.kbq-list-option.kbq-list-option_multiple {
|
|
53
|
+
&.kbq-selected:not(.kbq-disabled) {
|
|
54
|
+
@include _kbq-list-item(multiple-states-selected);
|
|
55
|
+
|
|
56
|
+
&:hover {
|
|
57
|
+
@include _kbq-list-item(multiple-states-selected-hover);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
&:active {
|
|
61
|
+
@include _kbq-list-item(multiple-states-selected-active);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
44
66
|
.kbq-list-selection.cdk-keyboard-focused {
|
|
45
67
|
& .kbq-list-option.kbq-focused {
|
|
46
68
|
border-color: var(--kbq-list-states-focused-focus-outline-color);
|
package/list/list-tokens.scss
CHANGED
|
@@ -5,14 +5,19 @@
|
|
|
5
5
|
--kbq-list-default-icon-button-color: var(--kbq-icon-contrast-fade);
|
|
6
6
|
--kbq-list-default-caption-color: var(--kbq-foreground-contrast-secondary);
|
|
7
7
|
--kbq-list-states-hover-container-background: var(--kbq-states-background-transparent-hover);
|
|
8
|
+
--kbq-list-states-active-container-background: var(--kbq-states-background-transparent-active);
|
|
8
9
|
--kbq-list-states-hover-text-color: var(--kbq-foreground-contrast);
|
|
9
10
|
--kbq-list-states-hover-icon-color: var(--kbq-icon-contrast);
|
|
10
11
|
--kbq-list-states-hover-icon-button-color: var(--kbq-icon-contrast-fade);
|
|
11
12
|
--kbq-list-states-selected-container-background: var(--kbq-background-theme-less);
|
|
13
|
+
--kbq-list-multiple-states-selected-container-background: var(--kbq-background-contrast-less);
|
|
12
14
|
--kbq-list-states-selected-text-color: var(--kbq-foreground-contrast);
|
|
13
15
|
--kbq-list-states-selected-icon-color: var(--kbq-icon-contrast);
|
|
14
16
|
--kbq-list-states-selected-icon-button-color: var(--kbq-icon-contrast-fade);
|
|
15
17
|
--kbq-list-states-selected-hover-container-background: var(--kbq-states-background-theme-less-hover);
|
|
18
|
+
--kbq-list-multiple-states-selected-hover-container-background: var(--kbq-states-background-contrast-less-hover);
|
|
19
|
+
--kbq-list-states-selected-active-container-background: var(--kbq-states-background-theme-less-active);
|
|
20
|
+
--kbq-list-multiple-states-selected-active-container-background: var(--kbq-states-background-contrast-less-active);
|
|
16
21
|
--kbq-list-states-selected-hover-text-color: var(--kbq-foreground-contrast);
|
|
17
22
|
--kbq-list-states-selected-hover-icon-color: var(--kbq-icon-contrast);
|
|
18
23
|
--kbq-list-states-selected-hover-icon-button-color: var(--kbq-icon-contrast-fade);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@koobiq/components",
|
|
3
|
-
"version": "18.
|
|
3
|
+
"version": "18.31.0",
|
|
4
4
|
"description": "koobiq",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
"@angular/cdk": "^18.0.0",
|
|
25
25
|
"@angular/core": "^18.0.0",
|
|
26
26
|
"@angular/forms": "^18.0.0",
|
|
27
|
-
"@koobiq/cdk": "18.
|
|
28
|
-
"@koobiq/angular-moment-adapter": "18.
|
|
29
|
-
"@koobiq/angular-luxon-adapter": "18.
|
|
27
|
+
"@koobiq/cdk": "18.31.0",
|
|
28
|
+
"@koobiq/angular-moment-adapter": "18.31.0",
|
|
29
|
+
"@koobiq/angular-luxon-adapter": "18.31.0",
|
|
30
30
|
"@koobiq/date-formatter": "^3.2.3",
|
|
31
|
-
"@koobiq/icons": "^10.
|
|
31
|
+
"@koobiq/icons": "^10.4.0",
|
|
32
32
|
"@koobiq/tokens-builder": "3.11.0",
|
|
33
|
-
"@koobiq/design-tokens": "3.
|
|
33
|
+
"@koobiq/design-tokens": "3.14.0",
|
|
34
34
|
"@radix-ng/primitives": "^0.23.0"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
@@ -27,13 +27,13 @@ function ngAdd(options) {
|
|
|
27
27
|
}
|
|
28
28
|
// Installing dependencies
|
|
29
29
|
utils_packageConfig.addPackageToPackageJson(tree, '@angular/cdk', "^18.2.14");
|
|
30
|
-
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.
|
|
31
|
-
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.
|
|
30
|
+
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.31.0");
|
|
31
|
+
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.31.0");
|
|
32
32
|
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.2.3");
|
|
33
33
|
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.2.3");
|
|
34
|
-
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^10.
|
|
35
|
-
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/tokens-builder', "^3.
|
|
36
|
-
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/design-tokens', "^3.
|
|
34
|
+
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^10.4.0");
|
|
35
|
+
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/tokens-builder', "^3.14.0");
|
|
36
|
+
utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/design-tokens', "^3.14.0");
|
|
37
37
|
utils_packageConfig.addPackageToPackageJson(tree, '@messageformat/core', "^3.4.0");
|
|
38
38
|
utils_packageConfig.addPackageToPackageJson(tree, '@radix-ng/primitives', "^0.23.0");
|
|
39
39
|
utils_packageConfig.addPackageToPackageJson(tree, 'luxon', "^3.6.1");
|
|
@@ -165,6 +165,11 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
165
165
|
*/
|
|
166
166
|
get compareWith(): (o1: any, o2: any) => boolean;
|
|
167
167
|
set compareWith(fn: (o1: any, o2: any) => boolean);
|
|
168
|
+
/**
|
|
169
|
+
* Function for handling the combination Ctrl + A (select all). By default, the internal handler is used.
|
|
170
|
+
*/
|
|
171
|
+
get selectAllHandler(): (event: KeyboardEvent, select: KbqSelect) => void;
|
|
172
|
+
set selectAllHandler(fn: (event: KeyboardEvent, select: KbqSelect) => void);
|
|
168
173
|
/**
|
|
169
174
|
* Width of the panel. If set to `auto`, the panel will match the trigger width.
|
|
170
175
|
* If set to null or an empty string, the panel will grow to match the longest option's text.
|
|
@@ -339,10 +344,12 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
339
344
|
private getOverlayWidth;
|
|
340
345
|
/** Comparison function to specify which option is displayed. Defaults to object equality. */
|
|
341
346
|
private _compareWith;
|
|
347
|
+
/** Function for handling the combination Ctrl + A (select all). By default, the internal handler is used. */
|
|
348
|
+
private _selectAllHandler;
|
|
342
349
|
private getTotalVisibleItems;
|
|
343
350
|
private buildTriggerClone;
|
|
344
351
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; host: true; }, { optional: true; self: true; }, null, { optional: true; }]>;
|
|
345
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "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; }; "panelMinWidth": { "alias": "panelMinWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "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>;
|
|
352
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "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; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "panelMinWidth": { "alias": "panelMinWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "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
353
|
static ngAcceptInputType_multiple: unknown;
|
|
347
354
|
static ngAcceptInputType_panelMinWidth: unknown;
|
|
348
355
|
static ngAcceptInputType_tabIndex: unknown;
|
package/tree/_tree-theme.scss
CHANGED
|
@@ -33,15 +33,38 @@
|
|
|
33
33
|
.kbq-tree-option {
|
|
34
34
|
@include kbq-tree-option(default);
|
|
35
35
|
|
|
36
|
-
&:
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
&:not(.kbq-disabled) {
|
|
37
|
+
&:hover {
|
|
38
|
+
@include kbq-tree-option(states-hover);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&:active {
|
|
42
|
+
background: var(--kbq-tree-states-active-container-background);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
&.kbq-selected {
|
|
46
|
+
@include kbq-tree-option(states-selected);
|
|
47
|
+
|
|
48
|
+
&:hover {
|
|
49
|
+
@include kbq-tree-option(states-selected-hover);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&:active {
|
|
53
|
+
background: var(--kbq-tree-states-selected-active-container-background);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&.kbq-checked:not(.kbq-selected),
|
|
58
|
+
&.kbq-tree-option_multiple.kbq-selected {
|
|
59
|
+
background: var(--kbq-tree-multiple-states-selected-container-background);
|
|
39
60
|
|
|
40
|
-
|
|
41
|
-
|
|
61
|
+
&:hover {
|
|
62
|
+
background: var(--kbq-tree-multiple-states-selected-hover-container-background);
|
|
63
|
+
}
|
|
42
64
|
|
|
43
|
-
|
|
44
|
-
|
|
65
|
+
&:active {
|
|
66
|
+
background: var(--kbq-tree-multiple-states-selected-active-container-background);
|
|
67
|
+
}
|
|
45
68
|
}
|
|
46
69
|
}
|
|
47
70
|
|
package/tree/tree-option.scss
CHANGED
|
@@ -70,12 +70,15 @@
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
&:is(.kbq-
|
|
73
|
+
&:is(.kbq-checked, .kbq-selected, .kbq-focused, .kbq-active):has(
|
|
74
|
+
+ :is(.kbq-checked, .kbq-selected, .kbq-focused, .kbq-active)
|
|
75
|
+
) {
|
|
74
76
|
border-bottom-left-radius: 0;
|
|
75
77
|
border-bottom-right-radius: 0;
|
|
76
78
|
}
|
|
77
79
|
|
|
78
|
-
&:is(.kbq-
|
|
80
|
+
&:is(.kbq-checked, .kbq-selected, .kbq-focused, .kbq-active)
|
|
81
|
+
+ :is(.kbq-checked, .kbq-selected, .kbq-focused, .kbq-active) {
|
|
79
82
|
border-top-left-radius: 0;
|
|
80
83
|
border-top-right-radius: 0;
|
|
81
84
|
}
|
package/tree/tree-tokens.scss
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
--kbq-tree-default-action-button-color: var(--kbq-icon-contrast-fade);
|
|
17
17
|
--kbq-tree-default-caption-color: var(--kbq-foreground-contrast-secondary);
|
|
18
18
|
--kbq-tree-states-hover-container-background: var(--kbq-states-background-transparent-hover);
|
|
19
|
+
--kbq-tree-states-active-container-background: var(--kbq-states-background-transparent-active);
|
|
19
20
|
--kbq-tree-states-hover-text-color: var(--kbq-foreground-contrast);
|
|
20
21
|
--kbq-tree-states-hover-icon-color: var(--kbq-icon-contrast);
|
|
21
22
|
--kbq-tree-states-hover-tree-toggle-color: var(--kbq-icon-contrast-fade);
|
|
@@ -23,12 +24,16 @@
|
|
|
23
24
|
--kbq-tree-states-hover-caption-color: var(--kbq-foreground-contrast-secondary);
|
|
24
25
|
--kbq-tree-states-focused-focus-outline-color: var(--kbq-states-line-focus-theme);
|
|
25
26
|
--kbq-tree-states-selected-container-background: var(--kbq-background-theme-less);
|
|
27
|
+
--kbq-tree-multiple-states-selected-container-background: var(--kbq-background-contrast-less);
|
|
26
28
|
--kbq-tree-states-selected-text-color: var(--kbq-foreground-contrast);
|
|
27
29
|
--kbq-tree-states-selected-icon-color: var(--kbq-icon-contrast);
|
|
28
30
|
--kbq-tree-states-selected-tree-toggle-color: var(--kbq-icon-contrast-fade);
|
|
29
31
|
--kbq-tree-states-selected-action-button-color: var(--kbq-icon-contrast-fade);
|
|
30
32
|
--kbq-tree-states-selected-caption-color: var(--kbq-foreground-contrast-secondary);
|
|
31
33
|
--kbq-tree-states-selected-hover-container-background: var(--kbq-states-background-theme-less-hover);
|
|
34
|
+
--kbq-tree-states-selected-active-container-background: var(--kbq-states-background-theme-less-active);
|
|
35
|
+
--kbq-tree-multiple-states-selected-hover-container-background: var(--kbq-states-background-contrast-less-hover);
|
|
36
|
+
--kbq-tree-multiple-states-selected-active-container-background: var(--kbq-states-background-contrast-less-active);
|
|
32
37
|
--kbq-tree-states-selected-hover-text-color: var(--kbq-foreground-contrast);
|
|
33
38
|
--kbq-tree-states-selected-hover-icon-color: var(--kbq-icon-contrast);
|
|
34
39
|
--kbq-tree-states-selected-hover-tree-toggle-color: var(--kbq-icon-contrast-fade);
|
|
@@ -164,6 +164,13 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
164
164
|
get disabled(): boolean;
|
|
165
165
|
set disabled(value: boolean);
|
|
166
166
|
private _disabled;
|
|
167
|
+
/**
|
|
168
|
+
* Function for handling the combination Ctrl + A (select all). By default, the internal handler is used.
|
|
169
|
+
*/
|
|
170
|
+
get selectAllHandler(): (event: KeyboardEvent, select: KbqTreeSelect) => void;
|
|
171
|
+
set selectAllHandler(fn: (event: KeyboardEvent, select: KbqTreeSelect) => void);
|
|
172
|
+
/** Function for handling the combination Ctrl + A (select all). By default, the internal handler is used. */
|
|
173
|
+
private _selectAllHandler;
|
|
167
174
|
/** Whether the select is focused. */
|
|
168
175
|
get focused(): boolean;
|
|
169
176
|
set focused(value: boolean);
|
|
@@ -295,7 +302,7 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
295
302
|
private scrollActiveOptionIntoView;
|
|
296
303
|
private subscribeOnSearchChanges;
|
|
297
304
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; host: true; }, { optional: true; self: true; }, { optional: true; }]>;
|
|
298
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "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; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
|
|
305
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "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; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
|
|
299
306
|
static ngAcceptInputType_tabIndex: unknown;
|
|
300
307
|
static ngAcceptInputType_disabled: unknown;
|
|
301
308
|
}
|