@vuu-ui/vuu-protocol-types 4.1.0 → 5.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.d.ts +85 -17
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -1,13 +1,3 @@
1
- /**
2
- * VuuUser is not used in any websocket messages. It represents the user structure returned
3
- * encoded within the auth token used to LOGIN. The auti token is returned by the authn REST
4
- * service call.
5
- */
6
- export interface VuuUser {
7
- authorizations: string[];
8
- name: string;
9
- }
10
-
11
1
  export type InvalidSessionReason =
12
2
  | "Invalid session"
13
3
  | "User session limit exceeded";
@@ -52,8 +42,80 @@ export interface VuuLoginRequest {
52
42
  type: "LOGIN";
53
43
  }
54
44
 
45
+ /**
46
+ * How a module can be added to a workspace. A module is listed in the
47
+ * workspace palette only if its descriptor includes this.
48
+ */
49
+ export interface VuuModuleWorkspaceDescriptor {
50
+ /** Heading of the palette group the module is listed under. */
51
+ paletteGroup: string;
52
+ /** Palette icon as a data URL. Defaults to `navIconUrl`. */
53
+ iconUrl?: string;
54
+ /** Initial size, in grid tracks, of an item added to a workspace. */
55
+ defaultSize?: { cols?: number; rows?: number };
56
+ }
57
+
58
+ export interface VuuModuleDescriptor {
59
+ clientIdentifier: string;
60
+ description: string;
61
+ enabled?: boolean;
62
+ id: number | string;
63
+ /**
64
+ * Identifier for an icon that must be provided through CSS.
65
+ */
66
+ navIconName?: string;
67
+ /**
68
+ * Full icon encapsulated in a data URL, represented as SVG or base64-encoded SVG.
69
+ */
70
+ navIconUrl?: string;
71
+ /**
72
+ * Key of a live badge source, e.g. `"workingOrders"`. The application maps
73
+ * it to a value; the portal does not interpret it.
74
+ */
75
+ navBadge?: string;
76
+ /**
77
+ * Where the module appears in the navigation. Optional for a palette-only
78
+ * module, i.e. one with `workspace` metadata that is only added to
79
+ * workspaces from the Panels palette.
80
+ */
81
+ navLocation?: string;
82
+ /**
83
+ * Order within the module's navigation section, lowest first. Modules
84
+ * without a value follow those with one, in registration order.
85
+ */
86
+ navOrder?: number;
87
+ /**
88
+ * Notification topics the module claims, e.g. `["orders"]`.
89
+ */
90
+ notificationTopics?: string[];
91
+ accessRole: string;
92
+ mfComponent: string;
93
+ mfScope: string;
94
+ mfUrl: string;
95
+ name: string;
96
+ /**
97
+ * The module's route. Optional for a palette-only module, which has no
98
+ * route and no navigation entry.
99
+ */
100
+ path?: string;
101
+ title: string;
102
+ version: number;
103
+ /** Set to make the module available in the workspace palette. */
104
+ workspace?: VuuModuleWorkspaceDescriptor;
105
+ }
106
+
107
+ export interface VuuModuleRecord extends VuuModuleDescriptor {
108
+ enabled: boolean;
109
+ id: number;
110
+ }
111
+
112
+ export interface VuuModuleRegistry {
113
+ modules: VuuModuleRecord[];
114
+ }
115
+
55
116
  // There is no LOGIN_FAIL
56
117
  export interface VuuLoginSuccessResponse {
118
+ moduleRegistry?: VuuModuleRegistry;
57
119
  type: "LOGIN_SUCCESS";
58
120
  vuuServerId: string;
59
121
  }
@@ -218,7 +280,9 @@ export interface VuuViewportRangeReject {
218
280
  viewPortId: string;
219
281
  }
220
282
 
221
- export type VuuViewportRangeResponse = VuuViewportRangeSuccess | VuuViewportRangeReject
283
+ export type VuuViewportRangeResponse =
284
+ | VuuViewportRangeSuccess
285
+ | VuuViewportRangeReject;
222
286
 
223
287
  export interface VuuViewportDisableRequest {
224
288
  type: "DISABLE_VP";
@@ -315,11 +379,11 @@ export declare type SelectRowResponse = SelectRowSuccess | SelectRowReject;
315
379
  export declare interface SelectSuccessWithRowCount {
316
380
  selectedRowCount: number;
317
381
  type:
318
- | "SELECT_ROW_SUCCESS"
319
- | "DESELECT_ROW_SUCCESS"
320
- | "SELECT_ROW_RANGE_SUCCESS"
321
- | "SELECT_ALL_SUCCESS"
322
- | "DESELECT_ALL_SUCCESS";
382
+ | "SELECT_ROW_SUCCESS"
383
+ | "DESELECT_ROW_SUCCESS"
384
+ | "SELECT_ROW_RANGE_SUCCESS"
385
+ | "SELECT_ALL_SUCCESS"
386
+ | "DESELECT_ALL_SUCCESS";
323
387
  }
324
388
 
325
389
  export interface SelectRowSuccess extends SelectSuccessWithRowCount {
@@ -585,7 +649,11 @@ export declare type EditCellRpcServiceRequest = {
585
649
  };
586
650
 
587
651
  export declare type BeginEditSessionParams = {
588
- editSessionMode?: "inline-all-rows" | "all-rows" | "selected-rows" | "empty-session-table";
652
+ editSessionMode?:
653
+ | "inline-all-rows"
654
+ | "all-rows"
655
+ | "selected-rows"
656
+ | "empty-session-table";
589
657
  };
590
658
  export declare type BeginEditSessionRpcServiceRequest = {
591
659
  context: ViewportRpcContext;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vuu-ui/vuu-protocol-types",
3
- "version": "4.1.0",
3
+ "version": "5.0.0-alpha.2",
4
4
  "author": "heswell",
5
5
  "license": "Apache-2.0",
6
6
  "dependencies": {},