@yuuvis/client-framework 3.0.0-beta.21.2 → 3.0.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/fesm2022/yuuvis-client-framework-actions.mjs +82 -53
- package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs +4 -4
- package/fesm2022/yuuvis-client-framework-object-relationship.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +74 -75
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework.mjs +75 -19
- package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
- package/package.json +6 -6
- package/types/yuuvis-client-framework-actions.d.ts +37 -10
- package/types/yuuvis-client-framework-tile-list.d.ts +76 -75
- package/types/yuuvis-client-framework.d.ts +22 -16
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yuuvis/client-framework",
|
|
3
|
-
"version": "3.0.0
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"author": "OPTIMAL SYSTEMS GmbH <npm@optimal-systems.de>",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"peerDependencies": {
|
|
@@ -8,17 +8,17 @@
|
|
|
8
8
|
"@angular/common": "^21.2.9",
|
|
9
9
|
"@angular/core": "^21.2.9",
|
|
10
10
|
"angular-gridster2": "^21.0.1",
|
|
11
|
-
"@yuuvis/client-core": "^3.0.0
|
|
12
|
-
"@yuuvis/client-shell-core": "^3.0.0
|
|
13
|
-
"@yuuvis/client-components": "^3.0.0
|
|
11
|
+
"@yuuvis/client-core": "^3.0.0",
|
|
12
|
+
"@yuuvis/client-shell-core": "^3.0.0",
|
|
13
|
+
"@yuuvis/client-components": "^3.0.0",
|
|
14
14
|
"ng-dynamic-component": "^10.8.2",
|
|
15
15
|
"modern-normalize": "^3.0.1"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@angular/material": "^21.2.7",
|
|
19
19
|
"@ngrx/signals": "^21.1.0",
|
|
20
|
-
"@yuuvis/material": "3.0.0
|
|
21
|
-
"@yuuvis/media-viewer": "^3.0.0
|
|
20
|
+
"@yuuvis/material": "3.0.0",
|
|
21
|
+
"@yuuvis/media-viewer": "^3.0.0",
|
|
22
22
|
"angular-split": "^20.0.0",
|
|
23
23
|
"vis-network": "^10.0.2",
|
|
24
24
|
"tslib": "^2.3.0"
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Signal, TemplateRef } from '@angular/core';
|
|
3
|
-
import * as i1 from '@
|
|
4
|
-
import * as i2 from '@ngx-translate/core';
|
|
2
|
+
import { Injector, Signal, TemplateRef } from '@angular/core';
|
|
3
|
+
import * as i1 from '@ngx-translate/core';
|
|
5
4
|
import { MatIconRegistry } from '@angular/material/icon';
|
|
6
5
|
import { DmsObject } from '@yuuvis/client-core';
|
|
7
6
|
import { Observable } from 'rxjs';
|
|
@@ -12,7 +11,7 @@ import { CdkMenu, CdkMenuItem, CdkContextMenuTrigger } from '@angular/cdk/menu';
|
|
|
12
11
|
*/
|
|
13
12
|
declare class ActionsModule {
|
|
14
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<ActionsModule, never>;
|
|
15
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<ActionsModule, never, [typeof i1.
|
|
14
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ActionsModule, never, [typeof i1.TranslateModule], never>;
|
|
16
15
|
static ɵinj: i0.ɵɵInjectorDeclaration<ActionsModule>;
|
|
17
16
|
}
|
|
18
17
|
|
|
@@ -58,11 +57,25 @@ interface BaseAction {
|
|
|
58
57
|
*/
|
|
59
58
|
supports: ActionSupport;
|
|
60
59
|
/**
|
|
61
|
-
* Determining whether or not the action is executable for the given selection
|
|
60
|
+
* Determining whether or not the action is executable for the given selection.
|
|
61
|
+
* Controls visibility: when false, the action is hidden from the UI entirely.
|
|
62
62
|
* @param item Current selection
|
|
63
63
|
* @returns true if the action is executable for the current selection, false otherwise
|
|
64
64
|
*/
|
|
65
65
|
isExecutable: (items: DmsObject[]) => Observable<boolean>;
|
|
66
|
+
/**
|
|
67
|
+
* Optional check whether the action should be disabled for the given selection.
|
|
68
|
+
* Unlike isExecutable (which controls visibility), isDisabled controls whether
|
|
69
|
+
* a visible action can be triggered. When absent, the action is never disabled.
|
|
70
|
+
* @param items Current selection
|
|
71
|
+
* @returns true if the action should be disabled, false otherwise
|
|
72
|
+
*/
|
|
73
|
+
isDisabled?: (items: DmsObject[]) => Observable<boolean>;
|
|
74
|
+
/**
|
|
75
|
+
* Resolved disabled state for template binding. Set by ActionsService after
|
|
76
|
+
* evaluating isDisabled(). Do not set manually on action classes.
|
|
77
|
+
*/
|
|
78
|
+
disabled?: boolean;
|
|
66
79
|
}
|
|
67
80
|
interface ActionSupport {
|
|
68
81
|
types?: string[];
|
|
@@ -83,6 +96,12 @@ interface ActionContext {
|
|
|
83
96
|
}
|
|
84
97
|
interface Action extends BaseAction {
|
|
85
98
|
run: (items: DmsObject[]) => Observable<boolean>;
|
|
99
|
+
/**
|
|
100
|
+
* Optional child actions. When present, this action renders as a sub-menu
|
|
101
|
+
* trigger instead of executing `run`. Nesting can be arbitrarily deep.
|
|
102
|
+
* An empty array is treated as "no children" (leaf action).
|
|
103
|
+
*/
|
|
104
|
+
children?: Action[];
|
|
86
105
|
}
|
|
87
106
|
interface ActionOptions {
|
|
88
107
|
context?: ActionContext;
|
|
@@ -102,8 +121,8 @@ declare const BASE_ACTION: {
|
|
|
102
121
|
};
|
|
103
122
|
|
|
104
123
|
declare class ActionsService {
|
|
105
|
-
private
|
|
106
|
-
|
|
124
|
+
#private;
|
|
125
|
+
readonly injector: Injector;
|
|
107
126
|
readonly iconRegistry: MatIconRegistry;
|
|
108
127
|
private _registeredActions;
|
|
109
128
|
/**
|
|
@@ -111,7 +130,7 @@ declare class ActionsService {
|
|
|
111
130
|
* @param a Array of actions to register, each action must have an id and a
|
|
112
131
|
* class that extends ActionClass
|
|
113
132
|
*/
|
|
114
|
-
registerActions(
|
|
133
|
+
registerActions(actions: {
|
|
115
134
|
id: string;
|
|
116
135
|
action: ActionClass;
|
|
117
136
|
}[]): void;
|
|
@@ -138,11 +157,18 @@ declare class ActionsService {
|
|
|
138
157
|
getActionsForType(objectTypeId: string, context?: ActionContext): Action[];
|
|
139
158
|
getActionById(id: string, context?: ActionContext): Action | undefined;
|
|
140
159
|
getActionsById(ids: string[], context?: ActionContext): Action[];
|
|
160
|
+
/**
|
|
161
|
+
* Resolves the disabled state for the given actions against the given selection.
|
|
162
|
+
* Sets the `disabled` property on each action instance.
|
|
163
|
+
* @param actions Array of actions to resolve
|
|
164
|
+
* @param selection Array of DmsObjects to check against
|
|
165
|
+
* @returns Observable emitting the same actions with `disabled` set
|
|
166
|
+
*/
|
|
167
|
+
resolveDisabledState(actions: Action[], selection: DmsObject[]): Observable<Action[]>;
|
|
141
168
|
openContextMenu(actions: Signal<Action[]>, callback: (action: Action) => void, overlayOrigin: {
|
|
142
169
|
x: number;
|
|
143
170
|
y: number;
|
|
144
171
|
}): void;
|
|
145
|
-
private _actionsSupportsType;
|
|
146
172
|
/**
|
|
147
173
|
* Registers a set of default actions that are commonly used in the application.
|
|
148
174
|
* These actions include delete, download, copy and cut. This method can be called
|
|
@@ -150,6 +176,7 @@ declare class ActionsService {
|
|
|
150
176
|
* are available for use.
|
|
151
177
|
*/
|
|
152
178
|
registerDefaultActions(): void;
|
|
179
|
+
private _actionsSupportsType;
|
|
153
180
|
static ɵfac: i0.ɵɵFactoryDeclaration<ActionsService, never>;
|
|
154
181
|
static ɵprov: i0.ɵɵInjectableDeclaration<ActionsService>;
|
|
155
182
|
}
|
|
@@ -207,7 +234,7 @@ declare class ContextmenuComponent {
|
|
|
207
234
|
selection: i0.InputSignal<unknown[]>;
|
|
208
235
|
itemSelect: i0.OutputEmitterRef<ContextMenuItemSelectEvent>;
|
|
209
236
|
private translate;
|
|
210
|
-
cdkMenu: i0.Signal<CdkMenu
|
|
237
|
+
cdkMenu: i0.Signal<CdkMenu>;
|
|
211
238
|
menuItems: i0.Signal<readonly (CdkMenuItem | null)[]>;
|
|
212
239
|
sortedActions: i0.Signal<ContextMenuAction[]>;
|
|
213
240
|
constructor();
|
|
@@ -1,12 +1,22 @@
|
|
|
1
|
-
import { VirtualObjectType, ResolvedObjectConfig, DmsObject, SearchQuery, SearchResultItem, ObjectTypeField, ObjectConfig, ObjectConfigIcon, ObjectConfigProperty, ObjectConfigAction, ObjectConfigBadge } from '@yuuvis/client-core';
|
|
2
|
-
import { ActionContext, Action } from '@yuuvis/client-framework/actions';
|
|
3
|
-
import { ObjectFlavor, TileExtension, TileExtensionComponent, TileExtensionDirectiveInput } from '@yuuvis/client-shell-core';
|
|
4
|
-
import * as _angular_material_menu from '@angular/material/menu';
|
|
5
|
-
import { MatMenu, MatMenuTrigger } from '@angular/material/menu';
|
|
6
1
|
import * as _angular_core from '@angular/core';
|
|
7
2
|
import { OnInit, ElementRef, Signal, TemplateRef, ComponentRef } from '@angular/core';
|
|
3
|
+
import * as _angular_material_menu from '@angular/material/menu';
|
|
4
|
+
import { MatMenu, MatMenuTrigger } from '@angular/material/menu';
|
|
5
|
+
import { Action, ActionContext } from '@yuuvis/client-framework/actions';
|
|
6
|
+
import { VirtualObjectType, ResolvedObjectConfig, DmsObject, SearchQuery, SearchResultItem, ObjectTypeField, ObjectConfigProperty, ObjectConfig, ObjectConfigIcon, ObjectConfigAction, ObjectConfigBadge } from '@yuuvis/client-core';
|
|
8
7
|
import { BooleanInput } from '@angular/cdk/coercion';
|
|
9
8
|
import { QueryListComponent } from '@yuuvis/client-framework/query-list';
|
|
9
|
+
import { ObjectFlavor, TileExtensionComponent, TileExtensionDirectiveInput, TileExtension } from '@yuuvis/client-shell-core';
|
|
10
|
+
|
|
11
|
+
declare class TileActionsMenuComponent {
|
|
12
|
+
actions: _angular_core.InputSignal<Action[]>;
|
|
13
|
+
loading: _angular_core.InputSignal<boolean>;
|
|
14
|
+
itemSelect: _angular_core.OutputEmitterRef<Action>;
|
|
15
|
+
matMenu: _angular_core.Signal<MatMenu>;
|
|
16
|
+
itemClicked(event: Event, action: Action): void;
|
|
17
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TileActionsMenuComponent, never>;
|
|
18
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileActionsMenuComponent, "yuv-tile-actions-menu", never, { "actions": { "alias": "actions"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, { "itemSelect": "itemSelect"; }, never, never, true, never>;
|
|
19
|
+
}
|
|
10
20
|
|
|
11
21
|
type TileData = ResolvedObjectConfig & {
|
|
12
22
|
dmsObject: DmsObject;
|
|
@@ -24,15 +34,6 @@ interface TileListHighlight {
|
|
|
24
34
|
ids: string[];
|
|
25
35
|
}
|
|
26
36
|
|
|
27
|
-
declare class TileActionsMenuComponent {
|
|
28
|
-
actions: _angular_core.InputSignal<Action[]>;
|
|
29
|
-
itemSelect: _angular_core.OutputEmitterRef<Action>;
|
|
30
|
-
matMenu: _angular_core.Signal<MatMenu>;
|
|
31
|
-
itemClicked(event: Event, action: Action): void;
|
|
32
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TileActionsMenuComponent, never>;
|
|
33
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileActionsMenuComponent, "yuv-tile-actions-menu", never, { "actions": { "alias": "actions"; "required": true; "isSignal": true; }; }, { "itemSelect": "itemSelect"; }, never, never, true, never>;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
37
|
type InnerTileData = TileData & {
|
|
37
38
|
actions: any;
|
|
38
39
|
};
|
|
@@ -660,47 +661,14 @@ declare class TileListComponent implements OnInit {
|
|
|
660
661
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileListComponent, "yuv-tile-list", never, { "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "multiselect": { "alias": "multiselect"; "required": false; "isSignal": true; }; "dense": { "alias": "dense"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "flavor": { "alias": "flavor"; "required": false; "isSignal": true; }; "query": { "alias": "query"; "required": false; "isSignal": true; }; "preselect": { "alias": "preselect"; "required": false; "isSignal": true; }; "highlights": { "alias": "highlights"; "required": false; "isSignal": true; }; "preventChangeUntil": { "alias": "preventChangeUntil"; "required": false; "isSignal": true; }; "autoSelect": { "alias": "autoSelect"; "required": false; "isSignal": true; }; "disableCustomContextMenu": { "alias": "disableCustomContextMenu"; "required": false; "isSignal": true; }; }, { "itemSelect": "itemSelect"; "tileCopy": "tileCopy"; "tileCut": "tileCut"; "busy": "busy"; "queryResult": "queryResult"; "selectionChange": "selectionChange"; "itemDblClick": "itemDblClick"; "ctxMenu": "ctxMenu"; }, ["menuComponent", "emptyContent"], ["yuv-tile-actions-menu, [yuv-tile-actions-menu]", "*"], true, never>;
|
|
661
662
|
}
|
|
662
663
|
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
/**
|
|
672
|
-
* Tile configurations are stored globally for all apps. If you want a
|
|
673
|
-
* separate config for your app/component you can specify a bucket. A bucket
|
|
674
|
-
* is basically an ID where your custom tile config will be stored and
|
|
675
|
-
* retrieved. Buckets should be unique so be sure to use a unique namespace.
|
|
676
|
-
*/
|
|
677
|
-
bucket: _angular_core.InputSignal<string | undefined>;
|
|
678
|
-
bucketLabel: _angular_core.InputSignal<string | undefined>;
|
|
679
|
-
configTypes: _angular_core.InputSignal<VirtualObjectType[] | undefined>;
|
|
680
|
-
configFlavors: _angular_core.InputSignal<ObjectFlavor[]>;
|
|
681
|
-
get configChanged(): boolean;
|
|
682
|
-
types: Signal<InnerType[]>;
|
|
683
|
-
save: _angular_core.OutputEmitterRef<void>;
|
|
684
|
-
canceled: _angular_core.OutputEmitterRef<void>;
|
|
685
|
-
selectedType?: VirtualObjectType;
|
|
686
|
-
selectedTypeProperties: ObjectTypeField[];
|
|
687
|
-
objectConfig?: ObjectConfig;
|
|
688
|
-
selectedSlot?: string;
|
|
689
|
-
flavors: ObjectFlavor[];
|
|
690
|
-
changes: Record<string, ObjectConfig | undefined>;
|
|
691
|
-
getConfigValue(p: string): ObjectConfigIcon | ObjectConfigProperty | ObjectConfigAction | ObjectConfigBadge | undefined;
|
|
692
|
-
getConfigProperty(p: string): ObjectConfigProperty | undefined;
|
|
693
|
-
getSelectedActions(): string[];
|
|
694
|
-
slotSelect(item: string): void;
|
|
695
|
-
typeSelected(type: InnerType): void;
|
|
696
|
-
iconSelected(icon: string | null): void;
|
|
697
|
-
propertySelected(tileSlot: string, field?: Partial<ObjectTypeField>): void;
|
|
698
|
-
actionSelected(action: Action): void;
|
|
699
|
-
saveConfig(): void;
|
|
700
|
-
resetConfig(): void;
|
|
701
|
-
cancelConfig(): void;
|
|
702
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TileConfigComponent, never>;
|
|
703
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileConfigComponent, "yuv-tile-config", never, { "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "bucketLabel": { "alias": "bucketLabel"; "required": false; "isSignal": true; }; "configTypes": { "alias": "configTypes"; "required": false; "isSignal": true; }; "configFlavors": { "alias": "configFlavors"; "required": false; "isSignal": true; }; }, { "save": "save"; "canceled": "canceled"; }, never, never, true, never>;
|
|
664
|
+
declare class ActionSelectComponent {
|
|
665
|
+
private actionService;
|
|
666
|
+
objectType: _angular_core.InputSignal<VirtualObjectType>;
|
|
667
|
+
actions: Signal<Action[]>;
|
|
668
|
+
selectedActionIds: _angular_core.InputSignal<string[]>;
|
|
669
|
+
actionSelect: _angular_core.OutputEmitterRef<Action>;
|
|
670
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ActionSelectComponent, never>;
|
|
671
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ActionSelectComponent, "yuv-tile-action-select", never, { "objectType": { "alias": "objectType"; "required": true; "isSignal": true; }; "selectedActionIds": { "alias": "selectedActionIds"; "required": false; "isSignal": true; }; }, { "actionSelect": "actionSelect"; }, never, never, true, never>;
|
|
704
672
|
}
|
|
705
673
|
|
|
706
674
|
type TypeProperty = {
|
|
@@ -742,29 +710,47 @@ declare class TileConfigTriggerComponent {
|
|
|
742
710
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileConfigTriggerComponent, "yuv-tile-config-trigger", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "bucketLabel": { "alias": "bucketLabel"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "small": { "alias": "small"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
743
711
|
}
|
|
744
712
|
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
actionSelect: _angular_core.OutputEmitterRef<Action>;
|
|
751
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ActionSelectComponent, never>;
|
|
752
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ActionSelectComponent, "yuv-tile-action-select", never, { "objectType": { "alias": "objectType"; "required": true; "isSignal": true; }; "selectedActionIds": { "alias": "selectedActionIds"; "required": false; "isSignal": true; }; }, { "actionSelect": "actionSelect"; }, never, never, true, never>;
|
|
713
|
+
interface InnerType {
|
|
714
|
+
id: string;
|
|
715
|
+
icon?: string;
|
|
716
|
+
flavor?: boolean;
|
|
717
|
+
data: ObjectFlavor | VirtualObjectType;
|
|
753
718
|
}
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
private _extensions;
|
|
757
|
-
constructor();
|
|
758
|
-
registerTileExtension(ext: TileExtension): void;
|
|
759
|
-
hasTileExtension(objectTypeId: string): boolean;
|
|
719
|
+
declare class TileConfigComponent {
|
|
720
|
+
#private;
|
|
760
721
|
/**
|
|
761
|
-
*
|
|
762
|
-
*
|
|
763
|
-
*
|
|
722
|
+
* Tile configurations are stored globally for all apps. If you want a
|
|
723
|
+
* separate config for your app/component you can specify a bucket. A bucket
|
|
724
|
+
* is basically an ID where your custom tile config will be stored and
|
|
725
|
+
* retrieved. Buckets should be unique so be sure to use a unique namespace.
|
|
764
726
|
*/
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
727
|
+
bucket: _angular_core.InputSignal<string | undefined>;
|
|
728
|
+
bucketLabel: _angular_core.InputSignal<string | undefined>;
|
|
729
|
+
configTypes: _angular_core.InputSignal<VirtualObjectType[] | undefined>;
|
|
730
|
+
configFlavors: _angular_core.InputSignal<ObjectFlavor[]>;
|
|
731
|
+
get configChanged(): boolean;
|
|
732
|
+
types: Signal<InnerType[]>;
|
|
733
|
+
save: _angular_core.OutputEmitterRef<void>;
|
|
734
|
+
canceled: _angular_core.OutputEmitterRef<void>;
|
|
735
|
+
selectedType?: VirtualObjectType;
|
|
736
|
+
selectedTypeProperties: ObjectTypeField[];
|
|
737
|
+
objectConfig?: ObjectConfig;
|
|
738
|
+
selectedSlot?: string;
|
|
739
|
+
flavors: ObjectFlavor[];
|
|
740
|
+
changes: Record<string, ObjectConfig | undefined>;
|
|
741
|
+
getConfigValue(p: string): ObjectConfigIcon | ObjectConfigProperty | ObjectConfigAction | ObjectConfigBadge | undefined;
|
|
742
|
+
getConfigProperty(p: string): ObjectConfigProperty | undefined;
|
|
743
|
+
getSelectedActions(): string[];
|
|
744
|
+
slotSelect(item: string): void;
|
|
745
|
+
typeSelected(type: InnerType): void;
|
|
746
|
+
iconSelected(icon: string | null): void;
|
|
747
|
+
propertySelected(tileSlot: string, field?: Partial<ObjectTypeField>): void;
|
|
748
|
+
actionSelected(action: Action): void;
|
|
749
|
+
saveConfig(): void;
|
|
750
|
+
resetConfig(): void;
|
|
751
|
+
cancelConfig(): void;
|
|
752
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TileConfigComponent, never>;
|
|
753
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TileConfigComponent, "yuv-tile-config", never, { "bucket": { "alias": "bucket"; "required": false; "isSignal": true; }; "bucketLabel": { "alias": "bucketLabel"; "required": false; "isSignal": true; }; "configTypes": { "alias": "configTypes"; "required": false; "isSignal": true; }; "configFlavors": { "alias": "configFlavors"; "required": false; "isSignal": true; }; }, { "save": "save"; "canceled": "canceled"; }, never, never, true, never>;
|
|
768
754
|
}
|
|
769
755
|
|
|
770
756
|
declare class TileExtensionDirective {
|
|
@@ -785,5 +771,20 @@ declare class EmailTileExtensionComponent implements TileExtensionComponent {
|
|
|
785
771
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmailTileExtensionComponent, "yuv-email-tile-extension", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
786
772
|
}
|
|
787
773
|
|
|
774
|
+
declare class TileExtensionService {
|
|
775
|
+
private _extensions;
|
|
776
|
+
constructor();
|
|
777
|
+
registerTileExtension(ext: TileExtension): void;
|
|
778
|
+
hasTileExtension(objectTypeId: string): boolean;
|
|
779
|
+
/**
|
|
780
|
+
* Get tile extensions for a certain type
|
|
781
|
+
* @param typeId ID of the type to fetch extesion for (objectTypeID or secondaryObjectTypeID)
|
|
782
|
+
* @returns
|
|
783
|
+
*/
|
|
784
|
+
getTileExtension(typeId: string): TileExtension | undefined;
|
|
785
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TileExtensionService, never>;
|
|
786
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<TileExtensionService>;
|
|
787
|
+
}
|
|
788
|
+
|
|
788
789
|
export { ActionSelectComponent, EmailTileExtensionComponent, PropertySelectComponent, TileActionsMenuComponent, TileConfigComponent, TileConfigTriggerComponent, TileExtensionDirective, TileExtensionService, TileListComponent };
|
|
789
790
|
export type { TileData, TileListConfigOptions, TileListHighlight };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MatSnackBarHorizontalPosition, MatSnackBarVerticalPosition, MatSnackBarRef } from '@angular/material/snack-bar';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { EnvironmentProviders } from '@angular/core';
|
|
3
|
+
import { EnvironmentProviders, Signal } from '@angular/core';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -310,20 +310,24 @@ type ChannelPayload = {
|
|
|
310
310
|
|
|
311
311
|
type SnackBarLevel = 'info' | 'success' | 'warning' | 'danger';
|
|
312
312
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
}
|
|
318
|
-
|
|
313
|
+
type SnackBarMessage = string | {
|
|
314
|
+
key: string;
|
|
315
|
+
params?: Record<string, unknown>;
|
|
316
|
+
};
|
|
319
317
|
interface SnackBarOptions {
|
|
320
318
|
duration?: number;
|
|
321
319
|
horizontalPosition?: MatSnackBarHorizontalPosition;
|
|
322
320
|
verticalPosition?: MatSnackBarVerticalPosition;
|
|
323
|
-
action?:
|
|
321
|
+
action?: SnackBarMessage;
|
|
324
322
|
level?: SnackBarLevel;
|
|
325
323
|
}
|
|
326
324
|
|
|
325
|
+
interface SnackBarData {
|
|
326
|
+
level: SnackBarLevel;
|
|
327
|
+
message: SnackBarMessage;
|
|
328
|
+
action?: SnackBarMessage;
|
|
329
|
+
}
|
|
330
|
+
|
|
327
331
|
/**
|
|
328
332
|
* Provides and initializes the Halo Focus feature for the Angular application.
|
|
329
333
|
*
|
|
@@ -881,19 +885,21 @@ declare class SessionService {
|
|
|
881
885
|
|
|
882
886
|
declare class SnackBarService {
|
|
883
887
|
#private;
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
888
|
+
private translate;
|
|
889
|
+
constructor();
|
|
890
|
+
info(message: SnackBarMessage, action?: SnackBarMessage, duration?: number): MatSnackBarRef<SnackBarComponent>;
|
|
891
|
+
success(message: SnackBarMessage, action?: SnackBarMessage, duration?: number): MatSnackBarRef<SnackBarComponent>;
|
|
892
|
+
warning(message: SnackBarMessage, action?: SnackBarMessage, duration?: number): MatSnackBarRef<SnackBarComponent>;
|
|
893
|
+
danger(message: SnackBarMessage, action?: SnackBarMessage, duration?: number): MatSnackBarRef<SnackBarComponent>;
|
|
894
|
+
snack(message: SnackBarMessage, options: SnackBarOptions): MatSnackBarRef<SnackBarComponent>;
|
|
889
895
|
static ɵfac: i0.ɵɵFactoryDeclaration<SnackBarService, never>;
|
|
890
896
|
static ɵprov: i0.ɵɵInjectableDeclaration<SnackBarService>;
|
|
891
897
|
}
|
|
892
898
|
declare class SnackBarComponent {
|
|
893
899
|
#private;
|
|
894
900
|
level: i0.WritableSignal<SnackBarLevel>;
|
|
895
|
-
message:
|
|
896
|
-
action:
|
|
901
|
+
message: Signal<string>;
|
|
902
|
+
action: Signal<string | undefined>;
|
|
897
903
|
dismiss(withAction?: boolean): void;
|
|
898
904
|
static ɵfac: i0.ɵɵFactoryDeclaration<SnackBarComponent, never>;
|
|
899
905
|
static ɵcmp: i0.ɵɵComponentDeclaration<SnackBarComponent, "yuv-snack-bar-component", never, {}, {}, never, never, true, never>;
|
|
@@ -906,4 +912,4 @@ declare class YuuvisClientFrameworkModule {
|
|
|
906
912
|
}
|
|
907
913
|
|
|
908
914
|
export { ChannelMessage, HaloFocusService, HaloUtilityService, SessionService, SnackBarComponent, SnackBarService, YuuvisClientFrameworkModule, defaultHaloFocusOffset, haloExcludedElementsInMatFormField, haloFocusNavigationKeys, haloFocusStyles, provideHaloFocus, provideSession, sessionActivityWindowBeforeEnd, sessionDefaultDuration, sessionPopupBeforeEnd };
|
|
909
|
-
export type { ChannelPayload, HaloFocusConfig, SnackBarData, SnackBarLevel, SnackBarOptions };
|
|
915
|
+
export type { ChannelPayload, HaloFocusConfig, SnackBarData, SnackBarLevel, SnackBarMessage, SnackBarOptions };
|