@koobiq/components 19.0.0 → 19.1.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/app-switcher/app-switcher.d.ts +4 -3
- package/checkbox/checkbox.scss +5 -21
- package/core/locales/en-US.d.ts +8 -0
- package/core/locales/es-LA.d.ts +8 -0
- package/core/locales/locale-service.d.ts +40 -0
- package/core/locales/pt-BR.d.ts +8 -0
- package/core/locales/ru-RU.d.ts +8 -0
- package/core/locales/tk-TM.d.ts +8 -0
- package/core/locales/types.d.ts +21 -0
- package/core/option/option.d.ts +1 -0
- package/core/styles/common/_visually-hidden.scss +1 -0
- package/core/styles/theming/_scrollbar-theme.scss +1 -0
- package/datepicker/datepicker-input.directive.d.ts +1 -1
- package/fesm2022/koobiq-components-app-switcher.mjs +19 -16
- package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +2 -2
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +54 -12
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +0 -1
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +106 -64
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +75 -38
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +2 -2
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +4 -4
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-spinner.mjs +3 -2
- package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
- package/fesm2022/koobiq-components-risk-level.mjs +6 -0
- package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +4 -2
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs +3 -4
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-title.mjs +15 -2
- package/fesm2022/koobiq-components-title.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +2 -2
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +2 -2
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/file-upload.d.ts +22 -3
- package/file-upload/multiple-file-upload.component.d.ts +15 -27
- package/file-upload/single-file-upload.component.d.ts +16 -12
- package/filter-bar/pipes/pipe-multi-select.d.ts +4 -1
- package/filter-bar/pipes/pipe-multi-tree-select.d.ts +5 -0
- package/loader-overlay/loader-overlay.scss +22 -31
- package/modal/modal.scss +1 -1
- package/package.json +6 -6
- package/popover/_popover-theme.scss +2 -2
- package/progress-spinner/_progress-spinner-theme.scss +14 -4
- package/progress-spinner/progress-spinner-tokens.scss +2 -0
- package/progress-spinner/progress-spinner.scss +1 -1
- package/risk-level/risk-level.component.d.ts +3 -0
- package/risk-level/risk-level.module.d.ts +3 -0
- package/schematics/migrations/new-icons-pack/README.md +52 -4
- package/schematics/migrations/new-icons-pack/data.js +1142 -1142
- package/schematics/migrations/new-icons-pack/index.js +18 -7
- package/schematics/migrations/new-icons-pack/migration.json +4570 -0
- package/schematics/migrations/new-icons-pack/replacement.json +18 -0
- package/schematics/migrations/new-icons-pack/schema.json +13 -0
- package/schematics/ng-add/index.js +4 -4
- package/timepicker/timepicker.directive.d.ts +2 -2
- package/title/title.directive.d.ts +3 -0
- package/tooltip/_tooltip-theme.scss +5 -6
- package/tooltip/tooltip.scss +1 -0
- package/tree/tree-option.scss +1 -1
|
@@ -116,8 +116,7 @@ export declare class KbqAppSwitcherTrigger extends KbqPopUpTrigger<KbqAppSwitche
|
|
|
116
116
|
/** Whether the sites are used or not
|
|
117
117
|
* @docs-private */
|
|
118
118
|
get sitesMode(): boolean;
|
|
119
|
-
/**
|
|
120
|
-
* @docs-private */
|
|
119
|
+
/** @docs-private */
|
|
121
120
|
get currentApps(): KbqAppSwitcherApp[];
|
|
122
121
|
/** Selected application */
|
|
123
122
|
selectedApp: KbqAppSwitcherApp;
|
|
@@ -131,7 +130,9 @@ export declare class KbqAppSwitcherTrigger extends KbqPopUpTrigger<KbqAppSwitche
|
|
|
131
130
|
get sites(): KbqAppSwitcherSite[];
|
|
132
131
|
set sites(value: KbqAppSwitcherSite[]);
|
|
133
132
|
private _parsedSites;
|
|
134
|
-
/**
|
|
133
|
+
/**
|
|
134
|
+
* @deprecated Will be removed in next major release, use `sites` with one element instead.
|
|
135
|
+
*/
|
|
135
136
|
get apps(): KbqAppSwitcherApp[];
|
|
136
137
|
set apps(apps: KbqAppSwitcherApp[]);
|
|
137
138
|
private makeGroupsForApps;
|
package/checkbox/checkbox.scss
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
@use '../core/styles/common/tokens' as *;
|
|
2
1
|
@use './checkbox-theme' as *;
|
|
3
2
|
|
|
4
3
|
.kbq-checkbox-checkmark,
|
|
@@ -27,10 +26,7 @@
|
|
|
27
26
|
}
|
|
28
27
|
|
|
29
28
|
.kbq-checkbox__layout {
|
|
30
|
-
|
|
31
|
-
[checkbox-size-normal-width,
|
|
32
|
-
checkbox-size-normal-horizontal-content-padding]
|
|
33
|
-
);
|
|
29
|
+
--padding: calc(var(--kbq-checkbox-size-normal-width) + var(--kbq-checkbox-size-normal-horizontal-content-padding));
|
|
34
30
|
|
|
35
31
|
box-sizing: initial;
|
|
36
32
|
|
|
@@ -39,7 +35,7 @@
|
|
|
39
35
|
|
|
40
36
|
display: inline-flex;
|
|
41
37
|
|
|
42
|
-
max-width: calc(100% -
|
|
38
|
+
max-width: calc(100% - var(--padding));
|
|
43
39
|
|
|
44
40
|
// `cursor: inherit` ensures that the wrapper element gets the same cursor as the kbq-checkbox
|
|
45
41
|
// (e.g. pointer by default, regular when disabled), instead of the browser default.
|
|
@@ -49,7 +45,7 @@
|
|
|
49
45
|
|
|
50
46
|
padding-bottom: var(--kbq-checkbox-size-normal-padding-bottom);
|
|
51
47
|
|
|
52
|
-
padding-left:
|
|
48
|
+
padding-left: var(--padding);
|
|
53
49
|
|
|
54
50
|
vertical-align: top;
|
|
55
51
|
}
|
|
@@ -104,16 +100,7 @@
|
|
|
104
100
|
}
|
|
105
101
|
|
|
106
102
|
.kbq-checkbox.kbq-checkbox_big {
|
|
107
|
-
|
|
108
|
-
$padding-left: kbq-sum-series-css-variables(
|
|
109
|
-
[ checkbox-size-normal-width,
|
|
110
|
-
checkbox-size-normal-horizontal-content-padding]
|
|
111
|
-
);
|
|
112
|
-
|
|
113
|
-
max-width: calc(100% - $padding-left);
|
|
114
|
-
|
|
115
|
-
padding-left: $padding-left;
|
|
116
|
-
}
|
|
103
|
+
--padding: calc(var(--kbq-checkbox-size-big-width) + var(--kbq-checkbox-size-big-horizontal-content-padding));
|
|
117
104
|
|
|
118
105
|
& .kbq-checkbox__inner-container {
|
|
119
106
|
top: var(--kbq-checkbox-size-big-top);
|
|
@@ -152,10 +139,7 @@
|
|
|
152
139
|
.kbq-checkbox_label-before {
|
|
153
140
|
.kbq-checkbox__layout {
|
|
154
141
|
padding-left: 0;
|
|
155
|
-
padding-right:
|
|
156
|
-
[ checkbox-size-normal-width,
|
|
157
|
-
checkbox-size-normal-horizontal-content-padding]
|
|
158
|
-
);
|
|
142
|
+
padding-right: var(--padding);
|
|
159
143
|
}
|
|
160
144
|
|
|
161
145
|
.kbq-checkbox__inner-container {
|
package/core/locales/en-US.d.ts
CHANGED
|
@@ -15,13 +15,21 @@ export declare const enUSLocaleData: {
|
|
|
15
15
|
fileUpload: {
|
|
16
16
|
single: {
|
|
17
17
|
captionText: string;
|
|
18
|
+
captionTextOnlyFolder: string;
|
|
19
|
+
captionTextWithFolder: string;
|
|
18
20
|
browseLink: string;
|
|
21
|
+
browseLinkFolder: string;
|
|
22
|
+
browseLinkFolderMixed: string;
|
|
19
23
|
};
|
|
20
24
|
multiple: {
|
|
21
25
|
captionText: string;
|
|
26
|
+
captionTextOnlyFolder: string;
|
|
27
|
+
captionTextWithFolder: string;
|
|
22
28
|
captionTextWhenSelected: string;
|
|
23
29
|
captionTextForCompactSize: string;
|
|
24
30
|
browseLink: string;
|
|
31
|
+
browseLinkFolder: string;
|
|
32
|
+
browseLinkFolderMixed: string;
|
|
25
33
|
title: string;
|
|
26
34
|
gridHeaders: {
|
|
27
35
|
file: string;
|
package/core/locales/es-LA.d.ts
CHANGED
|
@@ -14,13 +14,21 @@ export declare const esLALocaleData: {
|
|
|
14
14
|
fileUpload: {
|
|
15
15
|
single: {
|
|
16
16
|
captionText: string;
|
|
17
|
+
captionTextOnlyFolder: string;
|
|
18
|
+
captionTextWithFolder: string;
|
|
17
19
|
browseLink: string;
|
|
20
|
+
browseLinkFolder: string;
|
|
21
|
+
browseLinkFolderMixed: string;
|
|
18
22
|
};
|
|
19
23
|
multiple: {
|
|
20
24
|
captionText: string;
|
|
25
|
+
captionTextOnlyFolder: string;
|
|
26
|
+
captionTextWithFolder: string;
|
|
21
27
|
captionTextWhenSelected: string;
|
|
22
28
|
captionTextForCompactSize: string;
|
|
23
29
|
browseLink: string;
|
|
30
|
+
browseLinkFolder: string;
|
|
31
|
+
browseLinkFolderMixed: string;
|
|
24
32
|
title: string;
|
|
25
33
|
gridHeaders: {
|
|
26
34
|
file: string;
|
|
@@ -60,13 +60,21 @@ export declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
|
|
|
60
60
|
fileUpload: {
|
|
61
61
|
single: {
|
|
62
62
|
captionText: string;
|
|
63
|
+
captionTextOnlyFolder: string;
|
|
64
|
+
captionTextWithFolder: string;
|
|
63
65
|
browseLink: string;
|
|
66
|
+
browseLinkFolder: string;
|
|
67
|
+
browseLinkFolderMixed: string;
|
|
64
68
|
};
|
|
65
69
|
multiple: {
|
|
66
70
|
captionText: string;
|
|
71
|
+
captionTextOnlyFolder: string;
|
|
72
|
+
captionTextWithFolder: string;
|
|
67
73
|
captionTextWhenSelected: string;
|
|
68
74
|
captionTextForCompactSize: string;
|
|
69
75
|
browseLink: string;
|
|
76
|
+
browseLinkFolder: string;
|
|
77
|
+
browseLinkFolderMixed: string;
|
|
70
78
|
title: string;
|
|
71
79
|
gridHeaders: {
|
|
72
80
|
file: string;
|
|
@@ -266,13 +274,21 @@ export declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
|
|
|
266
274
|
fileUpload: {
|
|
267
275
|
single: {
|
|
268
276
|
captionText: string;
|
|
277
|
+
captionTextOnlyFolder: string;
|
|
278
|
+
captionTextWithFolder: string;
|
|
269
279
|
browseLink: string;
|
|
280
|
+
browseLinkFolder: string;
|
|
281
|
+
browseLinkFolderMixed: string;
|
|
270
282
|
};
|
|
271
283
|
multiple: {
|
|
272
284
|
captionText: string;
|
|
285
|
+
captionTextOnlyFolder: string;
|
|
286
|
+
captionTextWithFolder: string;
|
|
273
287
|
captionTextWhenSelected: string;
|
|
274
288
|
captionTextForCompactSize: string;
|
|
275
289
|
browseLink: string;
|
|
290
|
+
browseLinkFolder: string;
|
|
291
|
+
browseLinkFolderMixed: string;
|
|
276
292
|
title: string;
|
|
277
293
|
gridHeaders: {
|
|
278
294
|
file: string;
|
|
@@ -468,13 +484,21 @@ export declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
|
|
|
468
484
|
fileUpload: {
|
|
469
485
|
single: {
|
|
470
486
|
captionText: string;
|
|
487
|
+
captionTextOnlyFolder: string;
|
|
488
|
+
captionTextWithFolder: string;
|
|
471
489
|
browseLink: string;
|
|
490
|
+
browseLinkFolder: string;
|
|
491
|
+
browseLinkFolderMixed: string;
|
|
472
492
|
};
|
|
473
493
|
multiple: {
|
|
474
494
|
captionText: string;
|
|
495
|
+
captionTextOnlyFolder: string;
|
|
496
|
+
captionTextWithFolder: string;
|
|
475
497
|
captionTextWhenSelected: string;
|
|
476
498
|
captionTextForCompactSize: string;
|
|
477
499
|
browseLink: string;
|
|
500
|
+
browseLinkFolder: string;
|
|
501
|
+
browseLinkFolderMixed: string;
|
|
478
502
|
title: string;
|
|
479
503
|
gridHeaders: {
|
|
480
504
|
file: string;
|
|
@@ -676,13 +700,21 @@ export declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
|
|
|
676
700
|
fileUpload: {
|
|
677
701
|
single: {
|
|
678
702
|
captionText: string;
|
|
703
|
+
captionTextOnlyFolder: string;
|
|
704
|
+
captionTextWithFolder: string;
|
|
679
705
|
browseLink: string;
|
|
706
|
+
browseLinkFolder: string;
|
|
707
|
+
browseLinkFolderMixed: string;
|
|
680
708
|
};
|
|
681
709
|
multiple: {
|
|
682
710
|
captionText: string;
|
|
711
|
+
captionTextOnlyFolder: string;
|
|
712
|
+
captionTextWithFolder: string;
|
|
683
713
|
captionTextWhenSelected: string;
|
|
684
714
|
captionTextForCompactSize: string;
|
|
685
715
|
browseLink: string;
|
|
716
|
+
browseLinkFolder: string;
|
|
717
|
+
browseLinkFolderMixed: string;
|
|
686
718
|
title: string;
|
|
687
719
|
gridHeaders: {
|
|
688
720
|
file: string;
|
|
@@ -880,13 +912,21 @@ export declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
|
|
|
880
912
|
fileUpload: {
|
|
881
913
|
single: {
|
|
882
914
|
captionText: string;
|
|
915
|
+
captionTextOnlyFolder: string;
|
|
916
|
+
captionTextWithFolder: string;
|
|
883
917
|
browseLink: string;
|
|
918
|
+
browseLinkFolder: string;
|
|
919
|
+
browseLinkFolderMixed: string;
|
|
884
920
|
};
|
|
885
921
|
multiple: {
|
|
886
922
|
captionText: string;
|
|
923
|
+
captionTextOnlyFolder: string;
|
|
924
|
+
captionTextWithFolder: string;
|
|
887
925
|
captionTextWhenSelected: string;
|
|
888
926
|
captionTextForCompactSize: string;
|
|
889
927
|
browseLink: string;
|
|
928
|
+
browseLinkFolder: string;
|
|
929
|
+
browseLinkFolderMixed: string;
|
|
890
930
|
title: string;
|
|
891
931
|
gridHeaders: {
|
|
892
932
|
file: string;
|
package/core/locales/pt-BR.d.ts
CHANGED
|
@@ -14,13 +14,21 @@ export declare const ptBRLocaleData: {
|
|
|
14
14
|
fileUpload: {
|
|
15
15
|
single: {
|
|
16
16
|
captionText: string;
|
|
17
|
+
captionTextOnlyFolder: string;
|
|
18
|
+
captionTextWithFolder: string;
|
|
17
19
|
browseLink: string;
|
|
20
|
+
browseLinkFolder: string;
|
|
21
|
+
browseLinkFolderMixed: string;
|
|
18
22
|
};
|
|
19
23
|
multiple: {
|
|
20
24
|
captionText: string;
|
|
25
|
+
captionTextOnlyFolder: string;
|
|
26
|
+
captionTextWithFolder: string;
|
|
21
27
|
captionTextWhenSelected: string;
|
|
22
28
|
captionTextForCompactSize: string;
|
|
23
29
|
browseLink: string;
|
|
30
|
+
browseLinkFolder: string;
|
|
31
|
+
browseLinkFolderMixed: string;
|
|
24
32
|
title: string;
|
|
25
33
|
gridHeaders: {
|
|
26
34
|
file: string;
|
package/core/locales/ru-RU.d.ts
CHANGED
|
@@ -15,13 +15,21 @@ export declare const ruRULocaleData: {
|
|
|
15
15
|
fileUpload: {
|
|
16
16
|
single: {
|
|
17
17
|
captionText: string;
|
|
18
|
+
captionTextOnlyFolder: string;
|
|
19
|
+
captionTextWithFolder: string;
|
|
18
20
|
browseLink: string;
|
|
21
|
+
browseLinkFolder: string;
|
|
22
|
+
browseLinkFolderMixed: string;
|
|
19
23
|
};
|
|
20
24
|
multiple: {
|
|
21
25
|
captionText: string;
|
|
26
|
+
captionTextOnlyFolder: string;
|
|
27
|
+
captionTextWithFolder: string;
|
|
22
28
|
captionTextWhenSelected: string;
|
|
23
29
|
captionTextForCompactSize: string;
|
|
24
30
|
browseLink: string;
|
|
31
|
+
browseLinkFolder: string;
|
|
32
|
+
browseLinkFolderMixed: string;
|
|
25
33
|
title: string;
|
|
26
34
|
gridHeaders: {
|
|
27
35
|
file: string;
|
package/core/locales/tk-TM.d.ts
CHANGED
|
@@ -15,13 +15,21 @@ export declare const tkTMLocaleData: {
|
|
|
15
15
|
fileUpload: {
|
|
16
16
|
single: {
|
|
17
17
|
captionText: string;
|
|
18
|
+
captionTextOnlyFolder: string;
|
|
19
|
+
captionTextWithFolder: string;
|
|
18
20
|
browseLink: string;
|
|
21
|
+
browseLinkFolder: string;
|
|
22
|
+
browseLinkFolderMixed: string;
|
|
19
23
|
};
|
|
20
24
|
multiple: {
|
|
21
25
|
captionText: string;
|
|
26
|
+
captionTextOnlyFolder: string;
|
|
27
|
+
captionTextWithFolder: string;
|
|
22
28
|
captionTextWhenSelected: string;
|
|
23
29
|
captionTextForCompactSize: string;
|
|
24
30
|
browseLink: string;
|
|
31
|
+
browseLinkFolder: string;
|
|
32
|
+
browseLinkFolderMixed: string;
|
|
25
33
|
title: string;
|
|
26
34
|
gridHeaders: {
|
|
27
35
|
file: string;
|
package/core/locales/types.d.ts
CHANGED
|
@@ -56,3 +56,24 @@ export type KbqTimeRangeLocaleConfig = {
|
|
|
56
56
|
option: FormatterDurationTemplate;
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
|
+
export interface KbqBaseFileUploadLocaleConfig {
|
|
60
|
+
captionText: string;
|
|
61
|
+
captionTextOnlyFolder: string;
|
|
62
|
+
captionTextWithFolder: string;
|
|
63
|
+
browseLink: string;
|
|
64
|
+
browseLinkFolder: string;
|
|
65
|
+
browseLinkFolderMixed?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface KbqMultipleFileUploadLocaleConfig extends KbqBaseFileUploadLocaleConfig {
|
|
68
|
+
captionTextWhenSelected: string;
|
|
69
|
+
captionTextForCompactSize: string;
|
|
70
|
+
title: string;
|
|
71
|
+
gridHeaders: {
|
|
72
|
+
file: string;
|
|
73
|
+
size: string;
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export type KbqFileUploadLocaleConfig = {
|
|
77
|
+
single: KbqBaseFileUploadLocaleConfig;
|
|
78
|
+
multiple: KbqMultipleFileUploadLocaleConfig;
|
|
79
|
+
};
|
package/core/option/option.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export declare class KbqOptionSelectionChange<T = KbqOption> {
|
|
|
17
17
|
export interface KbqOptionParentComponent {
|
|
18
18
|
multiple?: boolean;
|
|
19
19
|
multiSelection?: boolean;
|
|
20
|
+
withVirtualScroll?: boolean;
|
|
20
21
|
setSelectedOptionsByClick: (option: KbqOption) => void;
|
|
21
22
|
}
|
|
22
23
|
/**
|
|
@@ -2,7 +2,7 @@ import { AfterContentInit, DoCheck, ElementRef, EventEmitter, InjectionToken, On
|
|
|
2
2
|
import { AbstractControl, ControlValueAccessor, ValidationErrors, Validator } from '@angular/forms';
|
|
3
3
|
import { DateAdapter, ErrorStateMatcher, KbqDateFormats } from '@koobiq/components/core';
|
|
4
4
|
import { KbqFormFieldControl } from '@koobiq/components/form-field';
|
|
5
|
-
import { KbqWarningTooltipTrigger } from '@koobiq/components/tooltip';
|
|
5
|
+
import type { KbqWarningTooltipTrigger } from '@koobiq/components/tooltip';
|
|
6
6
|
import { Subject } from 'rxjs';
|
|
7
7
|
import { KbqCalendar } from './calendar.component';
|
|
8
8
|
import { KbqDatepicker } from './datepicker.component';
|
|
@@ -355,7 +355,7 @@ class KbqAppSwitcherComponent extends KbqPopUp {
|
|
|
355
355
|
this.configuration = KBQ_APP_SWITCHER_DEFAULT_CONFIGURATION;
|
|
356
356
|
}
|
|
357
357
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqAppSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
358
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: KbqAppSwitcherComponent, isStandalone: true, selector: "kbq-app-switcher", inputs: { trigger: "trigger" }, host: { classAttribute: "kbq-app-switcher" }, viewQueries: [{ propertyName: "input", first: true, predicate: KbqInput, descendants: true }, { propertyName: "otherSites", first: true, predicate: ["otherSites"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (trigger.withSearch) {\n <div class=\"kbq-app-switcher__search-container\" (mouseenter)=\"otherSites?.close()\">\n <kbq-form-field noBorders>\n <i kbq-icon=\"kbq-magnifying-glass_16\" kbqPrefix></i>\n <input\n placeholder=\"{{ localeData.searchPlaceholder }}\"\n autocomplete=\"off\"\n kbqInput\n [formControl]=\"searchControl\"\n (keydown.escape)=\"escapeHandler()\"\n />\n <kbq-cleaner />\n </kbq-form-field>\n </div>\n\n <kbq-divider />\n}\n\n<div kbq-scrollbar>\n @if (!searchControl.getRawValue()) {\n <div class=\"kbq-app-switcher__app-container\" (mouseenter)=\"otherSites?.close()\">\n @if (trigger.sitesMode) {\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ trigger.selectedSite?.name }}</div>\n @if (trigger.selectedSite?.status) {\n <kbq-badge class=\"kbq-app-switcher-group-header__badge\" [compact]=\"true\">\n {{ trigger.selectedSite.status }}\n </kbq-badge>\n }\n </div>\n }\n\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (app of trigger.currentApps; track app) {\n @if (!app.aliases) {\n <a\n href=\"{{ app.link }}\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"app.id === trigger.selectedApp?.id\"\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></a>\n } @else {\n <div\n #appSwitcherApp=\"kbqAppSwitcherApp\"\n kbq-app-switcher-list-item\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></div>\n\n @if (!appSwitcherApp.collapsed) {\n @for (alias of app.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n class=\"kbq-app-switcher-site_nested\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"alias.id === trigger.selectedApp?.id\"\n [app]=\"alias\"\n ></a>\n }\n }\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n @if (trigger.sitesMode) {\n <kbq-divider />\n\n <div class=\"kbq-app-switcher__sites-container\">\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ localeData.sitesHeader }}</div>\n </div>\n\n <kbq-dropdown #otherSites=\"kbqDropdown\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-sites\">\n @for (site of trigger.sites; track site) {\n @if (site.id !== trigger.selectedSite?.id) {\n <div\n [kbq-app-switcher-dropdown-site]=\"site\"\n [kbqDropdownTriggerFor]=\"dropdownWithSelectedSite\"\n [offsetX]=\"0\"\n (mouseenter)=\"activeSite = site\"\n ></div>\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n <kbq-dropdown #dropdownWithSelectedSite=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (app of activeSite?.apps; track app) {\n @if (app.aliases) {\n <div\n #dropdownWithGroupedAppsTrigger=\"kbqDropdownTrigger\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n [kbqDropdownTriggerFor]=\"dropdownWithGroupedApps\"\n [offsetX]=\"0\"\n [class.kbq-pressed]=\"dropdownWithGroupedAppsTrigger.opened\"\n (mouseenter)=\"activeApp = app\"\n ></div>\n } @else {\n <a\n href=\"{{ app.link }}\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n (click)=\"selectAppInSite(activeSite, app)\"\n ></a>\n }\n }\n </kbq-dropdown>\n\n <kbq-dropdown #dropdownWithGroupedApps=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (alias of activeApp?.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n [kbq-app-switcher-dropdown-app]=\"alias\"\n (click)=\"selectAppInSite(activeSite, alias)\"\n ></a>\n }\n </kbq-dropdown>\n }\n } @else {\n <div class=\"kbq-app-switcher__search-result\">\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (site of filteredSites; track site) {\n @if (site.apps) {\n <kbq-optgroup label=\"{{ site.name }}\" />\n }\n\n @for (app of site.apps; track app) {\n <a href=\"{{ app.link }}\" kbq-app-switcher-list-item [app]=\"app\"></a>\n }\n } @empty {\n <div class=\"kbq-app-switcher__empty-search-result\">{{ localeData.searchEmptyResult }}</div>\n }\n </div>\n </kbq-dropdown>\n </div>\n }\n</div>\n", styles: [".kbq-app-switcher{position:relative;display:flex;flex-direction:column;margin-top:var(--kbq-size-xxs);margin-bottom:var(--kbq-size-xxs);width:320px;border-radius:var(--kbq-size-xs);box-shadow:var(--kbq-shadow-popup);box-sizing:border-box;z-index:1}.kbq-app-switcher__search-container{padding-top:var(--kbq-size-xxs)}.kbq-app-switcher__search-result{max-width:320px;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher__empty-search-result{display:flex;justify-content:center;align-items:center;height:96px}.kbq-app-switcher__app-container{display:flex;flex-direction:column;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher-group-header{padding:var(--kbq-size-s) var(--kbq-size-m);display:flex;flex-direction:row;justify-content:space-between}.kbq-app-switcher__sites-container{padding:var(--kbq-size-xxs)}.kbq-app-switcher{background:var(--kbq-background-card)}.kbq-app-switcher .kbq-app-switcher-group-header,.kbq-app-switcher__empty-search-result{color:var(--kbq-foreground-contrast-secondary)}.kbq-app-switcher,.kbq-app-switcher__empty-search-result{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-app-switcher-group-header__text{font-size:var(--kbq-typography-caps-compact-strong-font-size);font-style:var(--kbq-typography-caps-compact-strong-font-style);font-weight:var(--kbq-typography-caps-compact-strong-font-weight);line-height:var(--kbq-typography-caps-compact-strong-line-height);font-family:var(--kbq-typography-caps-compact-strong-font-family);text-transform:var(--kbq-typography-caps-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-caps-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-caps-compact-strong-letter-spacing)}.kbq-app-switcher-group-header__badge{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-app-switch-tree-option__text{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: KbqFormFieldModule }, { kind: "component", type: i2.KbqCleaner, selector: "kbq-cleaner", exportAs: ["kbqCleaner"] }, { kind: "component", type: i2.KbqFormField, selector: "kbq-form-field", inputs: ["noBorders"], exportAs: ["kbqFormField"] }, { kind: "directive", type: i2.KbqPrefix, selector: "[kbqPrefix]", exportAs: ["kbqPrefix"] }, { kind: "directive", type: i2.KbqValidateDirective, selector: " input[kbqInput], input[kbqNumberInput], input[kbqInputPassword], input[kbqTimepicker], input[kbqDatepicker], textarea[kbqTextarea], kbq-select, kbq-tree-select, kbq-tag-list ", exportAs: ["KbqValidate"] }, { kind: "directive", type: i2.KbqTrim, selector: "[kbqInput], [kbqTextarea]", exportAs: ["KbqTrim"] }, { kind: "ngmodule", type: KbqInputModule }, { kind: "directive", type: i3.KbqInput, selector: "input[kbqInput],input[kbqNumberInput]", inputs: ["errorStateMatcher", "placeholder", "disabled", "id", "required", "type", "value"], exportAs: ["kbqInput"] }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "component", type: i5.KbqDivider, selector: "kbq-divider", inputs: ["vertical", "inset", "paddings"] }, { kind: "ngmodule", type: KbqBadgeModule }, { kind: "component", type: i1.KbqBadge, selector: "kbq-badge", inputs: ["compact", "outline", "badgeColor"] }, { kind: "directive", type: i1.KbqBadgeCssStyler, selector: "kbq-badge" }, { kind: "ngmodule", type: KbqDropdownModule }, { kind: "component", type: i7.KbqDropdown, selector: "kbq-dropdown", inputs: ["navigationWithWrap", "xPosition", "yPosition", "overlapTriggerY", "overlapTriggerX", "hasBackdrop", "class", "backdropClass"], outputs: ["closed"], exportAs: ["kbqDropdown"] }, { kind: "directive", type: i7.KbqDropdownTrigger, selector: "[kbqDropdownTriggerFor]", inputs: ["offsetX", "offsetY", "kbqDropdownTriggerData", "openByArrowDown", "kbqDropdownTriggerRestoreFocus", "kbqDropdownTriggerFor"], outputs: ["dropdownOpened", "dropdownClosed"], exportAs: ["kbqDropdownTrigger"] }, { kind: "directive", type: i7.KbqDropdownStaticContent, selector: "[kbqDropdownStaticContent]" }, { kind: "ngmodule", type: KbqScrollbarModule }, { kind: "component", type: i8.KbqScrollbar, selector: "kbq-scrollbar, [kbq-scrollbar]", inputs: ["initializationTarget", "options", "events", "defer"], outputs: ["onInitialize", "onUpdate", "onDestroy", "onScroll"], exportAs: ["kbqScrollbar"] }, { kind: "ngmodule", type: KbqOptionModule }, { kind: "component", type: i9.KbqOptgroup, selector: "kbq-optgroup", inputs: ["label", "disabled"], exportAs: ["kbqOptgroup"] }, { kind: "component", type: KbqAppSwitcherDropdownApp, selector: "[kbq-app-switcher-dropdown-app]", inputs: ["kbq-app-switcher-dropdown-app"], exportAs: ["kbqAppSwitcherDropdownApp"] }, { kind: "component", type: KbqAppSwitcherDropdownSite, selector: "[kbq-app-switcher-dropdown-site]", inputs: ["kbq-app-switcher-dropdown-site"], exportAs: ["kbqAppSwitcherDropdownSite"] }, { kind: "component", type: KbqAppSwitcherListItem, selector: "[kbq-app-switcher-list-item]", inputs: ["app", "toggle", "collapsed"], exportAs: ["kbqAppSwitcherApp"] }], animations: [kbqAppSwitcherAnimations.state], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
358
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: KbqAppSwitcherComponent, isStandalone: true, selector: "kbq-app-switcher", inputs: { trigger: "trigger" }, host: { classAttribute: "kbq-app-switcher" }, viewQueries: [{ propertyName: "input", first: true, predicate: KbqInput, descendants: true }, { propertyName: "otherSites", first: true, predicate: ["otherSites"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (trigger.withSearch) {\n <div class=\"kbq-app-switcher__search-container\" (mouseenter)=\"otherSites?.close()\">\n <kbq-form-field noBorders>\n <i kbq-icon=\"kbq-magnifying-glass_16\" kbqPrefix></i>\n <input\n placeholder=\"{{ localeData.searchPlaceholder }}\"\n autocomplete=\"off\"\n kbqInput\n [formControl]=\"searchControl\"\n (keydown.escape)=\"escapeHandler()\"\n />\n <kbq-cleaner />\n </kbq-form-field>\n </div>\n\n <kbq-divider />\n}\n\n<div kbq-scrollbar>\n @if (!searchControl.getRawValue()) {\n <div class=\"kbq-app-switcher__app-container\" (mouseenter)=\"otherSites?.close()\">\n @if (trigger.sitesMode) {\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ trigger.selectedSite?.name }}</div>\n @if (trigger.selectedSite?.status) {\n <kbq-badge class=\"kbq-app-switcher-group-header__badge\" [compact]=\"true\">\n {{ trigger.selectedSite.status }}\n </kbq-badge>\n }\n </div>\n }\n\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (app of trigger.currentApps; track app) {\n @if (!app.aliases) {\n <a\n href=\"{{ app.link }}\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"app.id === trigger.selectedApp?.id\"\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></a>\n } @else {\n <div\n #appSwitcherApp=\"kbqAppSwitcherApp\"\n kbq-app-switcher-list-item\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></div>\n\n @if (!appSwitcherApp.collapsed) {\n @for (alias of app.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n class=\"kbq-app-switcher-site_nested\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"alias.id === trigger.selectedApp?.id\"\n [app]=\"alias\"\n ></a>\n }\n }\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n @if (trigger.sitesMode) {\n <kbq-divider />\n\n <div class=\"kbq-app-switcher__sites-container\">\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ localeData.sitesHeader }}</div>\n </div>\n\n <kbq-dropdown #otherSites=\"kbqDropdown\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-sites\">\n @for (site of trigger.sites; track site) {\n @if (site.id !== trigger.selectedSite?.id) {\n <div\n [kbq-app-switcher-dropdown-site]=\"site\"\n [kbqDropdownTriggerFor]=\"dropdownWithSelectedSite\"\n [offsetX]=\"0\"\n (mouseenter)=\"activeSite = site\"\n ></div>\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n <kbq-dropdown #dropdownWithSelectedSite=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (app of activeSite?.apps; track app) {\n @if (app.aliases) {\n <div\n #dropdownWithGroupedAppsTrigger=\"kbqDropdownTrigger\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n [kbqDropdownTriggerFor]=\"dropdownWithGroupedApps\"\n [offsetX]=\"0\"\n [class.kbq-pressed]=\"dropdownWithGroupedAppsTrigger.opened\"\n (mouseenter)=\"activeApp = app\"\n ></div>\n } @else {\n <a\n href=\"{{ app.link }}\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n (click)=\"selectAppInSite(activeSite, app)\"\n ></a>\n }\n }\n </kbq-dropdown>\n\n <kbq-dropdown #dropdownWithGroupedApps=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (alias of activeApp?.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n [kbq-app-switcher-dropdown-app]=\"alias\"\n (click)=\"selectAppInSite(activeSite, alias)\"\n ></a>\n }\n </kbq-dropdown>\n }\n } @else {\n <div class=\"kbq-app-switcher__search-result\">\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (site of filteredSites; track site) {\n @if (trigger.sitesMode && site.apps) {\n <kbq-optgroup label=\"{{ site.name }}\" />\n }\n\n @for (app of site.apps; track app) {\n <a href=\"{{ app.link }}\" kbq-app-switcher-list-item [app]=\"app\"></a>\n }\n } @empty {\n <div class=\"kbq-app-switcher__empty-search-result\">{{ localeData.searchEmptyResult }}</div>\n }\n </div>\n </kbq-dropdown>\n </div>\n }\n</div>\n", styles: [".kbq-app-switcher{position:relative;display:flex;flex-direction:column;margin-top:var(--kbq-size-xxs);margin-bottom:var(--kbq-size-xxs);width:320px;border-radius:var(--kbq-size-xs);box-shadow:var(--kbq-shadow-popup);box-sizing:border-box;z-index:1}.kbq-app-switcher__search-container{padding-top:var(--kbq-size-xxs)}.kbq-app-switcher__search-result{max-width:320px;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher__empty-search-result{display:flex;justify-content:center;align-items:center;height:96px}.kbq-app-switcher__app-container{display:flex;flex-direction:column;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher-group-header{padding:var(--kbq-size-s) var(--kbq-size-m);display:flex;flex-direction:row;justify-content:space-between}.kbq-app-switcher__sites-container{padding:var(--kbq-size-xxs)}.kbq-app-switcher{background:var(--kbq-background-card)}.kbq-app-switcher .kbq-app-switcher-group-header,.kbq-app-switcher__empty-search-result{color:var(--kbq-foreground-contrast-secondary)}.kbq-app-switcher,.kbq-app-switcher__empty-search-result{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-app-switcher-group-header__text{font-size:var(--kbq-typography-caps-compact-strong-font-size);font-style:var(--kbq-typography-caps-compact-strong-font-style);font-weight:var(--kbq-typography-caps-compact-strong-font-weight);line-height:var(--kbq-typography-caps-compact-strong-line-height);font-family:var(--kbq-typography-caps-compact-strong-font-family);text-transform:var(--kbq-typography-caps-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-caps-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-caps-compact-strong-letter-spacing)}.kbq-app-switcher-group-header__badge{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-app-switch-tree-option__text{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: KbqFormFieldModule }, { kind: "component", type: i2.KbqCleaner, selector: "kbq-cleaner", exportAs: ["kbqCleaner"] }, { kind: "component", type: i2.KbqFormField, selector: "kbq-form-field", inputs: ["noBorders"], exportAs: ["kbqFormField"] }, { kind: "directive", type: i2.KbqPrefix, selector: "[kbqPrefix]", exportAs: ["kbqPrefix"] }, { kind: "directive", type: i2.KbqValidateDirective, selector: " input[kbqInput], input[kbqNumberInput], input[kbqInputPassword], input[kbqTimepicker], input[kbqDatepicker], textarea[kbqTextarea], kbq-select, kbq-tree-select, kbq-tag-list ", exportAs: ["KbqValidate"] }, { kind: "directive", type: i2.KbqTrim, selector: "[kbqInput], [kbqTextarea]", exportAs: ["KbqTrim"] }, { kind: "ngmodule", type: KbqInputModule }, { kind: "directive", type: i3.KbqInput, selector: "input[kbqInput],input[kbqNumberInput]", inputs: ["errorStateMatcher", "placeholder", "disabled", "id", "required", "type", "value"], exportAs: ["kbqInput"] }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "component", type: i5.KbqDivider, selector: "kbq-divider", inputs: ["vertical", "inset", "paddings"] }, { kind: "ngmodule", type: KbqBadgeModule }, { kind: "component", type: i1.KbqBadge, selector: "kbq-badge", inputs: ["compact", "outline", "badgeColor"] }, { kind: "directive", type: i1.KbqBadgeCssStyler, selector: "kbq-badge" }, { kind: "ngmodule", type: KbqDropdownModule }, { kind: "component", type: i7.KbqDropdown, selector: "kbq-dropdown", inputs: ["navigationWithWrap", "xPosition", "yPosition", "overlapTriggerY", "overlapTriggerX", "hasBackdrop", "class", "backdropClass"], outputs: ["closed"], exportAs: ["kbqDropdown"] }, { kind: "directive", type: i7.KbqDropdownTrigger, selector: "[kbqDropdownTriggerFor]", inputs: ["offsetX", "offsetY", "kbqDropdownTriggerData", "openByArrowDown", "kbqDropdownTriggerRestoreFocus", "kbqDropdownTriggerFor"], outputs: ["dropdownOpened", "dropdownClosed"], exportAs: ["kbqDropdownTrigger"] }, { kind: "directive", type: i7.KbqDropdownStaticContent, selector: "[kbqDropdownStaticContent]" }, { kind: "ngmodule", type: KbqScrollbarModule }, { kind: "component", type: i8.KbqScrollbar, selector: "kbq-scrollbar, [kbq-scrollbar]", inputs: ["initializationTarget", "options", "events", "defer"], outputs: ["onInitialize", "onUpdate", "onDestroy", "onScroll"], exportAs: ["kbqScrollbar"] }, { kind: "ngmodule", type: KbqOptionModule }, { kind: "component", type: i9.KbqOptgroup, selector: "kbq-optgroup", inputs: ["label", "disabled"], exportAs: ["kbqOptgroup"] }, { kind: "component", type: KbqAppSwitcherDropdownApp, selector: "[kbq-app-switcher-dropdown-app]", inputs: ["kbq-app-switcher-dropdown-app"], exportAs: ["kbqAppSwitcherDropdownApp"] }, { kind: "component", type: KbqAppSwitcherDropdownSite, selector: "[kbq-app-switcher-dropdown-site]", inputs: ["kbq-app-switcher-dropdown-site"], exportAs: ["kbqAppSwitcherDropdownSite"] }, { kind: "component", type: KbqAppSwitcherListItem, selector: "[kbq-app-switcher-list-item]", inputs: ["app", "toggle", "collapsed"], exportAs: ["kbqAppSwitcherApp"] }], animations: [kbqAppSwitcherAnimations.state], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
359
359
|
}
|
|
360
360
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: KbqAppSwitcherComponent, decorators: [{
|
|
361
361
|
type: Component,
|
|
@@ -375,7 +375,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImpo
|
|
|
375
375
|
KbqAppSwitcherListItem
|
|
376
376
|
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, host: {
|
|
377
377
|
class: 'kbq-app-switcher'
|
|
378
|
-
}, animations: [kbqAppSwitcherAnimations.state], template: "@if (trigger.withSearch) {\n <div class=\"kbq-app-switcher__search-container\" (mouseenter)=\"otherSites?.close()\">\n <kbq-form-field noBorders>\n <i kbq-icon=\"kbq-magnifying-glass_16\" kbqPrefix></i>\n <input\n placeholder=\"{{ localeData.searchPlaceholder }}\"\n autocomplete=\"off\"\n kbqInput\n [formControl]=\"searchControl\"\n (keydown.escape)=\"escapeHandler()\"\n />\n <kbq-cleaner />\n </kbq-form-field>\n </div>\n\n <kbq-divider />\n}\n\n<div kbq-scrollbar>\n @if (!searchControl.getRawValue()) {\n <div class=\"kbq-app-switcher__app-container\" (mouseenter)=\"otherSites?.close()\">\n @if (trigger.sitesMode) {\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ trigger.selectedSite?.name }}</div>\n @if (trigger.selectedSite?.status) {\n <kbq-badge class=\"kbq-app-switcher-group-header__badge\" [compact]=\"true\">\n {{ trigger.selectedSite.status }}\n </kbq-badge>\n }\n </div>\n }\n\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (app of trigger.currentApps; track app) {\n @if (!app.aliases) {\n <a\n href=\"{{ app.link }}\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"app.id === trigger.selectedApp?.id\"\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></a>\n } @else {\n <div\n #appSwitcherApp=\"kbqAppSwitcherApp\"\n kbq-app-switcher-list-item\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></div>\n\n @if (!appSwitcherApp.collapsed) {\n @for (alias of app.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n class=\"kbq-app-switcher-site_nested\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"alias.id === trigger.selectedApp?.id\"\n [app]=\"alias\"\n ></a>\n }\n }\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n @if (trigger.sitesMode) {\n <kbq-divider />\n\n <div class=\"kbq-app-switcher__sites-container\">\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ localeData.sitesHeader }}</div>\n </div>\n\n <kbq-dropdown #otherSites=\"kbqDropdown\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-sites\">\n @for (site of trigger.sites; track site) {\n @if (site.id !== trigger.selectedSite?.id) {\n <div\n [kbq-app-switcher-dropdown-site]=\"site\"\n [kbqDropdownTriggerFor]=\"dropdownWithSelectedSite\"\n [offsetX]=\"0\"\n (mouseenter)=\"activeSite = site\"\n ></div>\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n <kbq-dropdown #dropdownWithSelectedSite=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (app of activeSite?.apps; track app) {\n @if (app.aliases) {\n <div\n #dropdownWithGroupedAppsTrigger=\"kbqDropdownTrigger\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n [kbqDropdownTriggerFor]=\"dropdownWithGroupedApps\"\n [offsetX]=\"0\"\n [class.kbq-pressed]=\"dropdownWithGroupedAppsTrigger.opened\"\n (mouseenter)=\"activeApp = app\"\n ></div>\n } @else {\n <a\n href=\"{{ app.link }}\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n (click)=\"selectAppInSite(activeSite, app)\"\n ></a>\n }\n }\n </kbq-dropdown>\n\n <kbq-dropdown #dropdownWithGroupedApps=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (alias of activeApp?.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n [kbq-app-switcher-dropdown-app]=\"alias\"\n (click)=\"selectAppInSite(activeSite, alias)\"\n ></a>\n }\n </kbq-dropdown>\n }\n } @else {\n <div class=\"kbq-app-switcher__search-result\">\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (site of filteredSites; track site) {\n @if (site.apps) {\n <kbq-optgroup label=\"{{ site.name }}\" />\n }\n\n @for (app of site.apps; track app) {\n <a href=\"{{ app.link }}\" kbq-app-switcher-list-item [app]=\"app\"></a>\n }\n } @empty {\n <div class=\"kbq-app-switcher__empty-search-result\">{{ localeData.searchEmptyResult }}</div>\n }\n </div>\n </kbq-dropdown>\n </div>\n }\n</div>\n", styles: [".kbq-app-switcher{position:relative;display:flex;flex-direction:column;margin-top:var(--kbq-size-xxs);margin-bottom:var(--kbq-size-xxs);width:320px;border-radius:var(--kbq-size-xs);box-shadow:var(--kbq-shadow-popup);box-sizing:border-box;z-index:1}.kbq-app-switcher__search-container{padding-top:var(--kbq-size-xxs)}.kbq-app-switcher__search-result{max-width:320px;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher__empty-search-result{display:flex;justify-content:center;align-items:center;height:96px}.kbq-app-switcher__app-container{display:flex;flex-direction:column;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher-group-header{padding:var(--kbq-size-s) var(--kbq-size-m);display:flex;flex-direction:row;justify-content:space-between}.kbq-app-switcher__sites-container{padding:var(--kbq-size-xxs)}.kbq-app-switcher{background:var(--kbq-background-card)}.kbq-app-switcher .kbq-app-switcher-group-header,.kbq-app-switcher__empty-search-result{color:var(--kbq-foreground-contrast-secondary)}.kbq-app-switcher,.kbq-app-switcher__empty-search-result{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-app-switcher-group-header__text{font-size:var(--kbq-typography-caps-compact-strong-font-size);font-style:var(--kbq-typography-caps-compact-strong-font-style);font-weight:var(--kbq-typography-caps-compact-strong-font-weight);line-height:var(--kbq-typography-caps-compact-strong-line-height);font-family:var(--kbq-typography-caps-compact-strong-font-family);text-transform:var(--kbq-typography-caps-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-caps-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-caps-compact-strong-letter-spacing)}.kbq-app-switcher-group-header__badge{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-app-switch-tree-option__text{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}\n"] }]
|
|
378
|
+
}, animations: [kbqAppSwitcherAnimations.state], template: "@if (trigger.withSearch) {\n <div class=\"kbq-app-switcher__search-container\" (mouseenter)=\"otherSites?.close()\">\n <kbq-form-field noBorders>\n <i kbq-icon=\"kbq-magnifying-glass_16\" kbqPrefix></i>\n <input\n placeholder=\"{{ localeData.searchPlaceholder }}\"\n autocomplete=\"off\"\n kbqInput\n [formControl]=\"searchControl\"\n (keydown.escape)=\"escapeHandler()\"\n />\n <kbq-cleaner />\n </kbq-form-field>\n </div>\n\n <kbq-divider />\n}\n\n<div kbq-scrollbar>\n @if (!searchControl.getRawValue()) {\n <div class=\"kbq-app-switcher__app-container\" (mouseenter)=\"otherSites?.close()\">\n @if (trigger.sitesMode) {\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ trigger.selectedSite?.name }}</div>\n @if (trigger.selectedSite?.status) {\n <kbq-badge class=\"kbq-app-switcher-group-header__badge\" [compact]=\"true\">\n {{ trigger.selectedSite.status }}\n </kbq-badge>\n }\n </div>\n }\n\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (app of trigger.currentApps; track app) {\n @if (!app.aliases) {\n <a\n href=\"{{ app.link }}\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"app.id === trigger.selectedApp?.id\"\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></a>\n } @else {\n <div\n #appSwitcherApp=\"kbqAppSwitcherApp\"\n kbq-app-switcher-list-item\n [app]=\"app\"\n [toggle]=\"!!app.aliases\"\n ></div>\n\n @if (!appSwitcherApp.collapsed) {\n @for (alias of app.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n class=\"kbq-app-switcher-site_nested\"\n kbq-app-switcher-list-item\n [class.kbq-selected]=\"alias.id === trigger.selectedApp?.id\"\n [app]=\"alias\"\n ></a>\n }\n }\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n @if (trigger.sitesMode) {\n <kbq-divider />\n\n <div class=\"kbq-app-switcher__sites-container\">\n <div class=\"kbq-app-switcher-group-header\">\n <div class=\"kbq-app-switcher-group-header__text\">{{ localeData.sitesHeader }}</div>\n </div>\n\n <kbq-dropdown #otherSites=\"kbqDropdown\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-sites\">\n @for (site of trigger.sites; track site) {\n @if (site.id !== trigger.selectedSite?.id) {\n <div\n [kbq-app-switcher-dropdown-site]=\"site\"\n [kbqDropdownTriggerFor]=\"dropdownWithSelectedSite\"\n [offsetX]=\"0\"\n (mouseenter)=\"activeSite = site\"\n ></div>\n }\n }\n </div>\n </kbq-dropdown>\n </div>\n\n <kbq-dropdown #dropdownWithSelectedSite=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (app of activeSite?.apps; track app) {\n @if (app.aliases) {\n <div\n #dropdownWithGroupedAppsTrigger=\"kbqDropdownTrigger\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n [kbqDropdownTriggerFor]=\"dropdownWithGroupedApps\"\n [offsetX]=\"0\"\n [class.kbq-pressed]=\"dropdownWithGroupedAppsTrigger.opened\"\n (mouseenter)=\"activeApp = app\"\n ></div>\n } @else {\n <a\n href=\"{{ app.link }}\"\n [kbq-app-switcher-dropdown-app]=\"app\"\n (click)=\"selectAppInSite(activeSite, app)\"\n ></a>\n }\n }\n </kbq-dropdown>\n\n <kbq-dropdown #dropdownWithGroupedApps=\"kbqDropdown\" [class]=\"'kbq-app-switcher-sites'\">\n @for (alias of activeApp?.aliases; track alias) {\n <a\n href=\"{{ alias.link }}\"\n [kbq-app-switcher-dropdown-app]=\"alias\"\n (click)=\"selectAppInSite(activeSite, alias)\"\n ></a>\n }\n </kbq-dropdown>\n }\n } @else {\n <div class=\"kbq-app-switcher__search-result\">\n <kbq-dropdown [class]=\"'kbq-app-switcher-sites'\">\n <div kbqDropdownStaticContent class=\"kbq-app-switcher-site\">\n @for (site of filteredSites; track site) {\n @if (trigger.sitesMode && site.apps) {\n <kbq-optgroup label=\"{{ site.name }}\" />\n }\n\n @for (app of site.apps; track app) {\n <a href=\"{{ app.link }}\" kbq-app-switcher-list-item [app]=\"app\"></a>\n }\n } @empty {\n <div class=\"kbq-app-switcher__empty-search-result\">{{ localeData.searchEmptyResult }}</div>\n }\n </div>\n </kbq-dropdown>\n </div>\n }\n</div>\n", styles: [".kbq-app-switcher{position:relative;display:flex;flex-direction:column;margin-top:var(--kbq-size-xxs);margin-bottom:var(--kbq-size-xxs);width:320px;border-radius:var(--kbq-size-xs);box-shadow:var(--kbq-shadow-popup);box-sizing:border-box;z-index:1}.kbq-app-switcher__search-container{padding-top:var(--kbq-size-xxs)}.kbq-app-switcher__search-result{max-width:320px;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher__empty-search-result{display:flex;justify-content:center;align-items:center;height:96px}.kbq-app-switcher__app-container{display:flex;flex-direction:column;min-height:0;padding:var(--kbq-size-s) var(--kbq-size-xxs)}.kbq-app-switcher-group-header{padding:var(--kbq-size-s) var(--kbq-size-m);display:flex;flex-direction:row;justify-content:space-between}.kbq-app-switcher__sites-container{padding:var(--kbq-size-xxs)}.kbq-app-switcher{background:var(--kbq-background-card)}.kbq-app-switcher .kbq-app-switcher-group-header,.kbq-app-switcher__empty-search-result{color:var(--kbq-foreground-contrast-secondary)}.kbq-app-switcher,.kbq-app-switcher__empty-search-result{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-app-switcher-group-header__text{font-size:var(--kbq-typography-caps-compact-strong-font-size);font-style:var(--kbq-typography-caps-compact-strong-font-style);font-weight:var(--kbq-typography-caps-compact-strong-font-weight);line-height:var(--kbq-typography-caps-compact-strong-line-height);font-family:var(--kbq-typography-caps-compact-strong-font-family);text-transform:var(--kbq-typography-caps-compact-strong-text-transform);font-feature-settings:var(--kbq-typography-caps-compact-strong-font-feature-settings);letter-spacing:var(--kbq-typography-caps-compact-strong-letter-spacing)}.kbq-app-switcher-group-header__badge{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-app-switch-tree-option__text{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}\n"] }]
|
|
379
379
|
}], ctorParameters: () => [], propDecorators: { trigger: [{
|
|
380
380
|
type: Input
|
|
381
381
|
}], input: [{
|
|
@@ -436,18 +436,14 @@ class KbqAppSwitcherTrigger extends KbqPopUpTrigger {
|
|
|
436
436
|
/** Number of applications to choose from
|
|
437
437
|
* @docs-private */
|
|
438
438
|
get appsCount() {
|
|
439
|
-
|
|
440
|
-
return this.originalSites.reduce((acc, site) => acc + site.apps.length, 0);
|
|
441
|
-
}
|
|
442
|
-
return this.originalApps.length;
|
|
439
|
+
return this.originalSites.reduce((acc, site) => acc + site.apps.length, 0);
|
|
443
440
|
}
|
|
444
441
|
/** Whether the sites are used or not
|
|
445
442
|
* @docs-private */
|
|
446
443
|
get sitesMode() {
|
|
447
|
-
return this.originalSites
|
|
444
|
+
return this.originalSites.length > 1;
|
|
448
445
|
}
|
|
449
|
-
/**
|
|
450
|
-
* @docs-private */
|
|
446
|
+
/** @docs-private */
|
|
451
447
|
get currentApps() {
|
|
452
448
|
return this.sitesMode ? this.selectedSite.apps : this._parsedApps;
|
|
453
449
|
}
|
|
@@ -457,14 +453,21 @@ class KbqAppSwitcherTrigger extends KbqPopUpTrigger {
|
|
|
457
453
|
}
|
|
458
454
|
set sites(value) {
|
|
459
455
|
this.originalSites = value;
|
|
460
|
-
this.
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
this._parsedSites
|
|
465
|
-
|
|
456
|
+
if (this.originalSites.length === 1) {
|
|
457
|
+
this._parsedApps = this.makeGroupsForApps(this.originalSites[0].apps, KBQ_MIN_NUMBER_OF_APPS_TO_ENABLE_GROUPING);
|
|
458
|
+
}
|
|
459
|
+
else {
|
|
460
|
+
this._parsedSites = [];
|
|
461
|
+
value.forEach((site) => {
|
|
462
|
+
const newSite = { ...site, apps: [] };
|
|
463
|
+
newSite.apps = this.makeGroupsForApps(site.apps, KBQ_MIN_NUMBER_OF_APPS_TO_ENABLE_GROUPING);
|
|
464
|
+
this._parsedSites.push(newSite);
|
|
465
|
+
});
|
|
466
|
+
}
|
|
466
467
|
}
|
|
467
|
-
/**
|
|
468
|
+
/**
|
|
469
|
+
* @deprecated Will be removed in next major release, use `sites` with one element instead.
|
|
470
|
+
*/
|
|
468
471
|
get apps() {
|
|
469
472
|
return this._parsedApps;
|
|
470
473
|
}
|