@genesislcap/foundation-ui 14.406.0-workspaces.3 → 14.406.0-workspaces.5
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/dist/custom-elements.json +2141 -1197
- package/dist/dts/components/grid-register/grid-register.d.ts +19 -0
- package/dist/dts/components/grid-register/grid-register.d.ts.map +1 -0
- package/dist/dts/components/grid-register/grid-register.template.d.ts +4 -0
- package/dist/dts/components/grid-register/grid-register.template.d.ts.map +1 -0
- package/dist/dts/components/layout-wrapper/layout-wrapper.d.ts +10 -0
- package/dist/dts/components/layout-wrapper/layout-wrapper.d.ts.map +1 -0
- package/dist/dts/components/layout-wrapper/layout-wrapper.template.d.ts +4 -0
- package/dist/dts/components/layout-wrapper/layout-wrapper.template.d.ts.map +1 -0
- package/dist/dts/workspace/filter-registry.d.ts +34 -0
- package/dist/dts/workspace/filter-registry.d.ts.map +1 -0
- package/dist/dts/workspace/grid-registry.d.ts +47 -0
- package/dist/dts/workspace/grid-registry.d.ts.map +1 -0
- package/dist/dts/workspace/index.d.ts +4 -2
- package/dist/dts/workspace/index.d.ts.map +1 -1
- package/dist/dts/workspace/layout-registry.d.ts +27 -0
- package/dist/dts/workspace/layout-registry.d.ts.map +1 -0
- package/dist/dts/workspace/workspace-state.d.ts +45 -0
- package/dist/dts/workspace/workspace-state.d.ts.map +1 -0
- package/dist/dts/workspace/workspace-state.types.d.ts +0 -11
- package/dist/dts/workspace/workspace-state.types.d.ts.map +1 -1
- package/dist/dts/workspace/workspace.types.d.ts +1 -1
- package/dist/dts/workspace/workspace.types.d.ts.map +1 -1
- package/dist/dts/workspace-manager/workspace-manager.d.ts +5 -5
- package/dist/dts/workspace-manager/workspace-manager.d.ts.map +1 -1
- package/dist/esm/components/grid-register/grid-register.js +137 -0
- package/dist/esm/components/grid-register/grid-register.template.js +4 -0
- package/dist/esm/components/layout-wrapper/layout-wrapper.js +62 -0
- package/dist/esm/components/layout-wrapper/layout-wrapper.template.js +4 -0
- package/dist/esm/workspace/filter-registry.js +47 -0
- package/dist/esm/workspace/grid-registry.js +113 -0
- package/dist/esm/workspace/index.js +4 -2
- package/dist/esm/workspace/layout-registry.js +46 -0
- package/dist/esm/workspace/workspace-state.js +193 -0
- package/package.json +19 -19
- package/dist/dts/workspace/workspace-di.d.ts +0 -13
- package/dist/dts/workspace/workspace-di.d.ts.map +0 -1
- package/dist/dts/workspace/workspace-registry.types.d.ts +0 -34
- package/dist/dts/workspace/workspace-registry.types.d.ts.map +0 -1
- package/dist/esm/workspace/workspace-di.js +0 -9
- package/dist/esm/workspace/workspace-registry.types.js +0 -1
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { DI } from '@microsoft/fast-foundation';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export class DefaultGridRegistry {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.grids = new Map();
|
|
9
|
+
this.cachedSettings = new Map();
|
|
10
|
+
}
|
|
11
|
+
// Note: StatePersistence is not wired here to avoid a hard dependency on grid-pro.
|
|
12
|
+
registerGrid(gridKey, gridApi, columnApi) {
|
|
13
|
+
this.grids.set(gridKey, {
|
|
14
|
+
gridKey,
|
|
15
|
+
gridApi: gridApi,
|
|
16
|
+
columnApi: columnApi,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
getGrid(gridKey) {
|
|
20
|
+
return this.grids.get(gridKey) || null;
|
|
21
|
+
}
|
|
22
|
+
unregisterGrid(gridKey) {
|
|
23
|
+
const grid = this.grids.get(gridKey);
|
|
24
|
+
if (grid) {
|
|
25
|
+
const settings = this.getGridSettings(gridKey, grid);
|
|
26
|
+
if (settings) {
|
|
27
|
+
this.cachedSettings.set(gridKey, settings);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
this.grids.delete(gridKey);
|
|
31
|
+
}
|
|
32
|
+
getAllGridsSettings() {
|
|
33
|
+
Array.from(this.grids).forEach(([key, grid]) => {
|
|
34
|
+
const settings = this.getGridSettings(key, grid);
|
|
35
|
+
if (settings) {
|
|
36
|
+
this.cachedSettings.set(key, settings);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
return Array.from(this.cachedSettings.values()).filter((s) => !!s);
|
|
40
|
+
}
|
|
41
|
+
applyGridSettings(gridSetting, options) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
const gridRegistration = this.grids.get(gridSetting.gridKey);
|
|
44
|
+
if (!gridRegistration || !gridRegistration.columnApi || !gridRegistration.gridApi) {
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
const hasColumnState = gridSetting.columnState && gridSetting.columnState.length > 0;
|
|
48
|
+
const applyColumns = !options || options.applyColumns !== false;
|
|
49
|
+
const shouldApplyColumns = applyColumns && !!hasColumnState;
|
|
50
|
+
if (!shouldApplyColumns) {
|
|
51
|
+
// No column state to apply; treat as a no-op.
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
55
|
+
if (shouldApplyColumns) {
|
|
56
|
+
gridRegistration.columnApi.applyColumnState({
|
|
57
|
+
state: gridSetting.columnState,
|
|
58
|
+
applyOrder: true,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
// eslint-disable-next-line no-console
|
|
65
|
+
console.warn(`Failed to apply settings for grid ${gridSetting.gridKey}:`, error);
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
applyAllGridsSettings(gridSettings_1) {
|
|
71
|
+
return __awaiter(this, arguments, void 0, function* (gridSettings, maxRetries = 3, delayMs = 200) {
|
|
72
|
+
// eslint-disable-next-line no-plusplus
|
|
73
|
+
for (let attempt = 0; attempt < maxRetries; attempt++) {
|
|
74
|
+
const remainingSettings = [];
|
|
75
|
+
for (const gridSetting of gridSettings) {
|
|
76
|
+
// eslint-disable-next-line no-await-in-loop
|
|
77
|
+
const applied = yield this.applyGridSettings(gridSetting);
|
|
78
|
+
if (!applied) {
|
|
79
|
+
remainingSettings.push(gridSetting);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (remainingSettings.length === 0 || attempt >= maxRetries - 1) {
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
// eslint-disable-next-line no-await-in-loop
|
|
86
|
+
// await new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
87
|
+
gridSettings = remainingSettings;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
getGridSettings(gridKey, grid) {
|
|
92
|
+
var _a;
|
|
93
|
+
if (grid) {
|
|
94
|
+
const columnState = (_a = grid.columnApi) === null || _a === void 0 ? void 0 : _a.getColumnState();
|
|
95
|
+
const columnCount = (columnState === null || columnState === void 0 ? void 0 : columnState.length) || 0;
|
|
96
|
+
// eslint-disable-next-line no-console
|
|
97
|
+
console.log(`Saved grid settings for ${gridKey}: ${columnCount} columns`);
|
|
98
|
+
return {
|
|
99
|
+
gridKey: grid.gridKey,
|
|
100
|
+
columnState: columnState || [],
|
|
101
|
+
savedAt: new Date().toISOString(),
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
// eslint-disable-next-line no-console
|
|
105
|
+
console.warn(`No grid found for ${gridKey}`);
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* DI token for grid registry.
|
|
111
|
+
* @public
|
|
112
|
+
*/
|
|
113
|
+
export const GridRegistry = DI.createInterface((x) => x.singleton(DefaultGridRegistry));
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * from './workspace.types';
|
|
2
2
|
export * from './workspace-state.types';
|
|
3
|
-
export * from './workspace-
|
|
4
|
-
export * from './
|
|
3
|
+
export * from './workspace-state';
|
|
4
|
+
export * from './layout-registry';
|
|
5
|
+
export * from './grid-registry';
|
|
6
|
+
export * from './filter-registry';
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { DI } from '@microsoft/fast-foundation';
|
|
3
|
+
/**
|
|
4
|
+
* Default layout registry implementation.
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export class DefaultLayoutRegistry {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.layouts = new Map();
|
|
10
|
+
}
|
|
11
|
+
registerLayout(layoutKey, layout) {
|
|
12
|
+
if (!layoutKey) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
this.layouts.set(layoutKey, layout);
|
|
16
|
+
}
|
|
17
|
+
unregisterLayout(layoutKey) {
|
|
18
|
+
this.layouts.delete(layoutKey);
|
|
19
|
+
}
|
|
20
|
+
getLayoutsConfigs() {
|
|
21
|
+
return Array.from(this.layouts).map(([key, layout]) => ({
|
|
22
|
+
layoutKey: key,
|
|
23
|
+
layout: layout.getLayout(),
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
applySavedLayouts(savedLayouts) {
|
|
27
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
savedLayouts.forEach((s) => {
|
|
29
|
+
const layout = this.layouts.get(s.layoutKey);
|
|
30
|
+
if (layout) {
|
|
31
|
+
layout.loadLayout(s.layout, 'placeholder', true);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
// eslint-disable-next-line no-console
|
|
35
|
+
console.warn(`layout for ${s.layoutKey} not found`);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
// await new Promise((resolve) => setTimeout(resolve, 300));
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* DI token for layout registry.
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
46
|
+
export const LayoutRegistry = DI.createInterface((x) => x.singleton(DefaultLayoutRegistry));
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { __awaiter, __decorate, __param } from "tslib";
|
|
2
|
+
import { Auth, KVStorage, } from '@genesislcap/foundation-comms';
|
|
3
|
+
import { DI } from '@microsoft/fast-foundation';
|
|
4
|
+
/**
|
|
5
|
+
* Default workspace persistence implementation backed by KVStorage.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
let DefaultWorkspaceState = class DefaultWorkspaceState {
|
|
10
|
+
constructor(kvStorage, auth) {
|
|
11
|
+
this.kvStorage = kvStorage;
|
|
12
|
+
this.auth = auth;
|
|
13
|
+
this.STORAGE_PREFIX = 'workspace_';
|
|
14
|
+
this.WORKSPACES_LIST_KEY = 'workspaces_list';
|
|
15
|
+
this.currentWorkspace = null;
|
|
16
|
+
}
|
|
17
|
+
getCurrentUsername() {
|
|
18
|
+
var _a, _b;
|
|
19
|
+
return ((_b = (_a = this.auth) === null || _a === void 0 ? void 0 : _a.loggedUserResult) === null || _b === void 0 ? void 0 : _b.username) || 'anonymous';
|
|
20
|
+
}
|
|
21
|
+
getWorkspaceStorageKey(workspaceName) {
|
|
22
|
+
const username = this.getCurrentUsername();
|
|
23
|
+
return `${this.STORAGE_PREFIX}${username}_${workspaceName}`;
|
|
24
|
+
}
|
|
25
|
+
getWorkspacesListKey() {
|
|
26
|
+
const username = this.getCurrentUsername();
|
|
27
|
+
return `${this.STORAGE_PREFIX}${username}_${this.WORKSPACES_LIST_KEY}`;
|
|
28
|
+
}
|
|
29
|
+
saveWorkspace(workspaceName, layouts, grids, filters, description) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const storageKey = this.getWorkspaceStorageKey(workspaceName);
|
|
32
|
+
const username = this.getCurrentUsername();
|
|
33
|
+
const workspace = {
|
|
34
|
+
name: workspaceName,
|
|
35
|
+
username,
|
|
36
|
+
description: (description === null || description === void 0 ? void 0 : description.trim()) || undefined,
|
|
37
|
+
layouts,
|
|
38
|
+
grids,
|
|
39
|
+
filters,
|
|
40
|
+
savedAt: new Date().toISOString(),
|
|
41
|
+
};
|
|
42
|
+
yield this.kvStorage.put([
|
|
43
|
+
{
|
|
44
|
+
key: storageKey,
|
|
45
|
+
value: JSON.stringify(workspace),
|
|
46
|
+
},
|
|
47
|
+
]);
|
|
48
|
+
yield this.updateWorkspacesList(workspaceName);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
loadWorkspace(workspaceName) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
const workspace = yield this.getWorkspace(workspaceName);
|
|
54
|
+
this.currentWorkspace = workspace !== null && workspace !== void 0 ? workspace : null;
|
|
55
|
+
return this.currentWorkspace;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
getWorkspace(workspaceName) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
var _a;
|
|
61
|
+
const storageKey = this.getWorkspaceStorageKey(workspaceName);
|
|
62
|
+
const existing = yield this.kvStorage.get(storageKey);
|
|
63
|
+
if (!((_a = existing === null || existing === void 0 ? void 0 : existing.kv) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
try {
|
|
67
|
+
const workspace = typeof existing.kv.value === 'string' ? JSON.parse(existing.kv.value) : existing.kv.value;
|
|
68
|
+
const currentUsername = this.getCurrentUsername();
|
|
69
|
+
if (workspace.username && workspace.username !== currentUsername) {
|
|
70
|
+
console.warn(`Workspace ${workspaceName} does not belong to current user`);
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
if (!workspace.username) {
|
|
74
|
+
workspace.username = currentUsername;
|
|
75
|
+
}
|
|
76
|
+
return workspace || null;
|
|
77
|
+
}
|
|
78
|
+
catch (e) {
|
|
79
|
+
console.warn('Failed to parse saved workspace', e);
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
getCurrentWorkspace() {
|
|
85
|
+
return this.currentWorkspace;
|
|
86
|
+
}
|
|
87
|
+
setCurrentWorkspace(workspace) {
|
|
88
|
+
this.currentWorkspace = workspace;
|
|
89
|
+
}
|
|
90
|
+
getSavedWorkspaces() {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
var _a;
|
|
93
|
+
const listKey = this.getWorkspaceStorageKey(this.WORKSPACES_LIST_KEY);
|
|
94
|
+
const existing = yield this.kvStorage.get(listKey);
|
|
95
|
+
if (!((_a = existing === null || existing === void 0 ? void 0 : existing.kv) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
96
|
+
return [];
|
|
97
|
+
}
|
|
98
|
+
try {
|
|
99
|
+
const workspaceNames = typeof existing.kv.value === 'string' ? JSON.parse(existing.kv.value) : existing.kv.value;
|
|
100
|
+
if (!Array.isArray(workspaceNames)) {
|
|
101
|
+
return [];
|
|
102
|
+
}
|
|
103
|
+
const workspaces = [];
|
|
104
|
+
const currentUsername = this.getCurrentUsername();
|
|
105
|
+
for (const name of workspaceNames) {
|
|
106
|
+
// eslint-disable-next-line no-await-in-loop
|
|
107
|
+
const workspace = yield this.getWorkspace(name);
|
|
108
|
+
if (workspace && (!workspace.username || workspace.username === currentUsername)) {
|
|
109
|
+
workspaces.push(workspace);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return workspaces;
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
console.warn('Failed to parse saved workspaces list', e);
|
|
116
|
+
return [];
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
deleteWorkspace(workspaceName) {
|
|
121
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
122
|
+
const storageKey = this.getWorkspaceStorageKey(workspaceName);
|
|
123
|
+
yield this.kvStorage.delete([storageKey]);
|
|
124
|
+
yield this.removeFromWorkspacesList(workspaceName);
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
updateWorkspacesList(workspaceName) {
|
|
128
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
+
var _a;
|
|
130
|
+
const listKey = this.getWorkspacesListKey();
|
|
131
|
+
const existing = yield this.kvStorage.get(listKey);
|
|
132
|
+
let workspaceNames = [];
|
|
133
|
+
if ((_a = existing === null || existing === void 0 ? void 0 : existing.kv) === null || _a === void 0 ? void 0 : _a.value) {
|
|
134
|
+
try {
|
|
135
|
+
workspaceNames =
|
|
136
|
+
typeof existing.kv.value === 'string' ? JSON.parse(existing.kv.value) : existing.kv.value;
|
|
137
|
+
}
|
|
138
|
+
catch (e) {
|
|
139
|
+
console.warn('Failed to parse workspaces list', e);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
workspaceNames = workspaceNames.filter((name) => name !== workspaceName);
|
|
143
|
+
workspaceNames.push(workspaceName);
|
|
144
|
+
yield this.kvStorage.put([
|
|
145
|
+
{
|
|
146
|
+
key: listKey,
|
|
147
|
+
value: JSON.stringify(workspaceNames),
|
|
148
|
+
},
|
|
149
|
+
]);
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
removeFromWorkspacesList(workspaceName) {
|
|
153
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
154
|
+
var _a;
|
|
155
|
+
const listKey = this.getWorkspacesListKey();
|
|
156
|
+
const existing = yield this.kvStorage.get(listKey);
|
|
157
|
+
if (!((_a = existing === null || existing === void 0 ? void 0 : existing.kv) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
let workspaceNames = [];
|
|
161
|
+
try {
|
|
162
|
+
workspaceNames =
|
|
163
|
+
typeof existing.kv.value === 'string' ? JSON.parse(existing.kv.value) : existing.kv.value;
|
|
164
|
+
}
|
|
165
|
+
catch (e) {
|
|
166
|
+
console.warn('Failed to parse workspaces list for deletion', e);
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
workspaceNames = workspaceNames.filter((name) => name !== workspaceName);
|
|
170
|
+
if (workspaceNames.length === 0) {
|
|
171
|
+
yield this.kvStorage.delete([listKey]);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
yield this.kvStorage.put([
|
|
175
|
+
{
|
|
176
|
+
key: listKey,
|
|
177
|
+
value: JSON.stringify(workspaceNames),
|
|
178
|
+
},
|
|
179
|
+
]);
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
DefaultWorkspaceState = __decorate([
|
|
185
|
+
__param(0, KVStorage),
|
|
186
|
+
__param(1, Auth)
|
|
187
|
+
], DefaultWorkspaceState);
|
|
188
|
+
export { DefaultWorkspaceState };
|
|
189
|
+
/**
|
|
190
|
+
* DI token for workspace state.
|
|
191
|
+
* @public
|
|
192
|
+
*/
|
|
193
|
+
export const WorkspaceState = DI.createInterface((x) => x.singleton(DefaultWorkspaceState));
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/foundation-ui",
|
|
3
3
|
"description": "Genesis Foundation UI",
|
|
4
|
-
"version": "14.406.0-workspaces.
|
|
4
|
+
"version": "14.406.0-workspaces.5",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -85,13 +85,13 @@
|
|
|
85
85
|
}
|
|
86
86
|
},
|
|
87
87
|
"devDependencies": {
|
|
88
|
-
"@genesislcap/foundation-testing": "14.406.0-workspaces.
|
|
89
|
-
"@genesislcap/genx": "14.406.0-workspaces.
|
|
90
|
-
"@genesislcap/rollup-builder": "14.406.0-workspaces.
|
|
91
|
-
"@genesislcap/ts-builder": "14.406.0-workspaces.
|
|
92
|
-
"@genesislcap/uvu-playwright-builder": "14.406.0-workspaces.
|
|
93
|
-
"@genesislcap/vite-builder": "14.406.0-workspaces.
|
|
94
|
-
"@genesislcap/webpack-builder": "14.406.0-workspaces.
|
|
88
|
+
"@genesislcap/foundation-testing": "14.406.0-workspaces.5",
|
|
89
|
+
"@genesislcap/genx": "14.406.0-workspaces.5",
|
|
90
|
+
"@genesislcap/rollup-builder": "14.406.0-workspaces.5",
|
|
91
|
+
"@genesislcap/ts-builder": "14.406.0-workspaces.5",
|
|
92
|
+
"@genesislcap/uvu-playwright-builder": "14.406.0-workspaces.5",
|
|
93
|
+
"@genesislcap/vite-builder": "14.406.0-workspaces.5",
|
|
94
|
+
"@genesislcap/webpack-builder": "14.406.0-workspaces.5",
|
|
95
95
|
"copyfiles": "^2.4.1"
|
|
96
96
|
},
|
|
97
97
|
"dependencies": {
|
|
@@ -100,16 +100,16 @@
|
|
|
100
100
|
"@fortawesome/free-regular-svg-icons": "^6.2.1",
|
|
101
101
|
"@fortawesome/free-solid-svg-icons": "^6.2.1",
|
|
102
102
|
"@genesiscommunitysuccess/analyzer-import-alias-plugin": "^5.0.3",
|
|
103
|
-
"@genesislcap/expression-builder": "14.406.0-workspaces.
|
|
104
|
-
"@genesislcap/foundation-ai": "14.406.0-workspaces.
|
|
105
|
-
"@genesislcap/foundation-comms": "14.406.0-workspaces.
|
|
106
|
-
"@genesislcap/foundation-criteria": "14.406.0-workspaces.
|
|
107
|
-
"@genesislcap/foundation-errors": "14.406.0-workspaces.
|
|
108
|
-
"@genesislcap/foundation-events": "14.406.0-workspaces.
|
|
109
|
-
"@genesislcap/foundation-logger": "14.406.0-workspaces.
|
|
110
|
-
"@genesislcap/foundation-notifications": "14.406.0-workspaces.
|
|
111
|
-
"@genesislcap/foundation-user": "14.406.0-workspaces.
|
|
112
|
-
"@genesislcap/foundation-utils": "14.406.0-workspaces.
|
|
103
|
+
"@genesislcap/expression-builder": "14.406.0-workspaces.5",
|
|
104
|
+
"@genesislcap/foundation-ai": "14.406.0-workspaces.5",
|
|
105
|
+
"@genesislcap/foundation-comms": "14.406.0-workspaces.5",
|
|
106
|
+
"@genesislcap/foundation-criteria": "14.406.0-workspaces.5",
|
|
107
|
+
"@genesislcap/foundation-errors": "14.406.0-workspaces.5",
|
|
108
|
+
"@genesislcap/foundation-events": "14.406.0-workspaces.5",
|
|
109
|
+
"@genesislcap/foundation-logger": "14.406.0-workspaces.5",
|
|
110
|
+
"@genesislcap/foundation-notifications": "14.406.0-workspaces.5",
|
|
111
|
+
"@genesislcap/foundation-user": "14.406.0-workspaces.5",
|
|
112
|
+
"@genesislcap/foundation-utils": "14.406.0-workspaces.5",
|
|
113
113
|
"@microsoft/fast-colors": "5.3.1",
|
|
114
114
|
"@microsoft/fast-components": "2.30.6",
|
|
115
115
|
"@microsoft/fast-element": "1.14.0",
|
|
@@ -131,5 +131,5 @@
|
|
|
131
131
|
"access": "public"
|
|
132
132
|
},
|
|
133
133
|
"customElements": "dist/custom-elements.json",
|
|
134
|
-
"gitHead": "
|
|
134
|
+
"gitHead": "e356977906cce29d0a9ebf7722bca9dde4fbf417"
|
|
135
135
|
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { ILayoutRegistry } from './workspace-registry.types';
|
|
2
|
-
import type { IGridRegistry } from './workspace-registry.types';
|
|
3
|
-
import type { IFilterRegistry } from './workspace-registry.types';
|
|
4
|
-
import type { IWorkspaceState } from './workspace-state.types';
|
|
5
|
-
/** DI token for layout registry. Host app must register an implementation. */
|
|
6
|
-
export declare const LayoutRegistry: import("@microsoft/fast-foundation").InterfaceSymbol<ILayoutRegistry>;
|
|
7
|
-
/** DI token for grid registry. Host app must register an implementation. */
|
|
8
|
-
export declare const GridRegistry: import("@microsoft/fast-foundation").InterfaceSymbol<IGridRegistry>;
|
|
9
|
-
/** DI token for filter registry. Host app must register an implementation. */
|
|
10
|
-
export declare const FilterRegistry: import("@microsoft/fast-foundation").InterfaceSymbol<IFilterRegistry>;
|
|
11
|
-
/** DI token for workspace state. Host app must register an implementation. */
|
|
12
|
-
export declare const WorkspaceState: import("@microsoft/fast-foundation").InterfaceSymbol<IWorkspaceState>;
|
|
13
|
-
//# sourceMappingURL=workspace-di.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-di.d.ts","sourceRoot":"","sources":["../../../src/workspace/workspace-di.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,8EAA8E;AAC9E,eAAO,MAAM,cAAc,uEAAwD,CAAC;AAEpF,4EAA4E;AAC5E,eAAO,MAAM,YAAY,qEAAoD,CAAC;AAE9E,8EAA8E;AAC9E,eAAO,MAAM,cAAc,uEAAwD,CAAC;AAEpF,8EAA8E;AAC9E,eAAO,MAAM,cAAc,uEAAwD,CAAC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import type { SavedFilterValue, SavedGridSettings, SavedLayout } from './workspace.types';
|
|
2
|
-
/**
|
|
3
|
-
* @public
|
|
4
|
-
*/
|
|
5
|
-
export interface ILayoutRegistry {
|
|
6
|
-
registerLayout(layoutKey: string, layout: unknown): void;
|
|
7
|
-
unregisterLayout(layoutKey: string): void;
|
|
8
|
-
getLayoutsConfigs(): SavedLayout[];
|
|
9
|
-
applySavedLayouts(savedLayouts: SavedLayout[]): Promise<void>;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* @public
|
|
13
|
-
*/
|
|
14
|
-
export interface IGridRegistry {
|
|
15
|
-
registerGrid(gridKey: string, gridApi: unknown, columnApi: unknown): void;
|
|
16
|
-
getGrid(gridKey: string): unknown;
|
|
17
|
-
unregisterGrid(gridKey: string): void;
|
|
18
|
-
getAllGridsSettings(): SavedGridSettings[];
|
|
19
|
-
applyGridSettings(gridSetting: SavedGridSettings, options?: {
|
|
20
|
-
applyColumns?: boolean;
|
|
21
|
-
applyFilters?: boolean;
|
|
22
|
-
}): Promise<boolean>;
|
|
23
|
-
applyAllGridsSettings(gridsSettings: SavedGridSettings[]): Promise<void>;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* @public
|
|
27
|
-
*/
|
|
28
|
-
export interface IFilterRegistry {
|
|
29
|
-
registerFilter(filterKey: string, getFilterValue: () => SavedFilterValue | null, setFilterValue: (value: string) => void): void;
|
|
30
|
-
getAllFiltersValues(): SavedFilterValue[];
|
|
31
|
-
unregisterFilter(filterKey: string): void;
|
|
32
|
-
applyFiltersValues(savedFilters: SavedFilterValue[]): void;
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=workspace-registry.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-registry.types.d.ts","sourceRoot":"","sources":["../../../src/workspace/workspace-registry.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE1F;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACzD,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,iBAAiB,IAAI,WAAW,EAAE,CAAC;IACnC,iBAAiB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1E,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,mBAAmB,IAAI,iBAAiB,EAAE,CAAC;IAC3C,iBAAiB,CACf,WAAW,EAAE,iBAAiB,EAC9B,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3D,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,CACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,gBAAgB,GAAG,IAAI,EAC7C,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GACtC,IAAI,CAAC;IACR,mBAAmB,IAAI,gBAAgB,EAAE,CAAC;IAC1C,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,kBAAkB,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;CAC5D"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { DI } from '@microsoft/fast-foundation';
|
|
2
|
-
/** DI token for layout registry. Host app must register an implementation. */
|
|
3
|
-
export const LayoutRegistry = DI.createInterface('LayoutRegistry');
|
|
4
|
-
/** DI token for grid registry. Host app must register an implementation. */
|
|
5
|
-
export const GridRegistry = DI.createInterface('GridRegistry');
|
|
6
|
-
/** DI token for filter registry. Host app must register an implementation. */
|
|
7
|
-
export const FilterRegistry = DI.createInterface('FilterRegistry');
|
|
8
|
-
/** DI token for workspace state. Host app must register an implementation. */
|
|
9
|
-
export const WorkspaceState = DI.createInterface('WorkspaceState');
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|