@floegence/floe-webapp-core 0.36.17 → 0.36.19
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/components/ui/InfiniteCanvas.d.ts +17 -0
- package/dist/components/ui/InfiniteCanvas.js +38 -38
- package/dist/components/ui/index.d.ts +1 -1
- package/dist/components/ui/localInteractionSurface.d.ts +2 -0
- package/dist/components/ui/localInteractionSurface.js +51 -26
- package/dist/components/workbench/WorkbenchCanvas.d.ts +5 -1
- package/dist/components/workbench/WorkbenchCanvas.js +79 -40
- package/dist/components/workbench/WorkbenchCanvasField.d.ts +5 -1
- package/dist/components/workbench/WorkbenchCanvasField.js +82 -63
- package/dist/components/workbench/WorkbenchSurface.d.ts +13 -1
- package/dist/components/workbench/WorkbenchSurface.js +222 -130
- package/dist/components/workbench/WorkbenchWidget.d.ts +5 -1
- package/dist/components/workbench/WorkbenchWidget.js +155 -123
- package/dist/components/workbench/types.d.ts +66 -0
- package/dist/components/workbench/workbenchInteractionAdapter.d.ts +39 -0
- package/dist/components/workbench/workbenchInteractionAdapter.js +103 -0
- package/dist/full.js +463 -462
- package/dist/ui.js +102 -101
- package/package.json +1 -1
|
@@ -1,156 +1,175 @@
|
|
|
1
|
-
import { insert as
|
|
2
|
-
import { createMemo as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
if (
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { insert as a, createComponent as g, template as c } from "solid-js/web";
|
|
2
|
+
import { createMemo as r, For as m } from "solid-js";
|
|
3
|
+
import { resolveWorkbenchInteractionAdapter as l } from "./workbenchInteractionAdapter.js";
|
|
4
|
+
import { createWorkbenchRenderLayerMap as w } from "./workbenchHelpers.js";
|
|
5
|
+
import { getWidgetEntry as I } from "./widgets/widgetRegistry.js";
|
|
6
|
+
import { WorkbenchWidget as y } from "./WorkbenchWidget.js";
|
|
7
|
+
var v = /* @__PURE__ */ c("<div class=workbench-canvas__field><div class=workbench-canvas__grid aria-hidden=true>");
|
|
8
|
+
function f(t) {
|
|
9
|
+
const e = r((i) => {
|
|
10
|
+
const o = t.widgetById().get(t.widgetId);
|
|
11
|
+
if (o) return o;
|
|
12
|
+
if (i) return i;
|
|
13
|
+
throw new Error(`Workbench widget ${t.widgetId} is missing from the render map.`);
|
|
14
|
+
}), d = r(() => I(e().type, t.widgetDefinitions));
|
|
15
|
+
return g(y, {
|
|
15
16
|
get definition() {
|
|
16
17
|
return d();
|
|
17
18
|
},
|
|
18
19
|
get widgetId() {
|
|
19
|
-
return
|
|
20
|
+
return t.widgetId;
|
|
20
21
|
},
|
|
21
22
|
get widgetTitle() {
|
|
22
|
-
return
|
|
23
|
+
return e().title;
|
|
23
24
|
},
|
|
24
25
|
get widgetType() {
|
|
25
|
-
return
|
|
26
|
+
return e().type;
|
|
26
27
|
},
|
|
27
28
|
get x() {
|
|
28
|
-
return
|
|
29
|
+
return e().x;
|
|
29
30
|
},
|
|
30
31
|
get y() {
|
|
31
|
-
return
|
|
32
|
+
return e().y;
|
|
32
33
|
},
|
|
33
34
|
get width() {
|
|
34
|
-
return
|
|
35
|
+
return e().width;
|
|
35
36
|
},
|
|
36
37
|
get height() {
|
|
37
|
-
return
|
|
38
|
+
return e().height;
|
|
38
39
|
},
|
|
39
40
|
get renderLayer() {
|
|
40
|
-
return
|
|
41
|
+
return t.renderLayers().byWidgetId.get(t.widgetId) ?? 1;
|
|
41
42
|
},
|
|
42
|
-
itemSnapshot:
|
|
43
|
+
itemSnapshot: e,
|
|
43
44
|
get selected() {
|
|
44
|
-
return
|
|
45
|
+
return t.selectedWidgetId === t.widgetId;
|
|
45
46
|
},
|
|
46
47
|
get optimisticFront() {
|
|
47
|
-
return
|
|
48
|
+
return t.optimisticFrontWidgetId === t.widgetId;
|
|
48
49
|
},
|
|
49
50
|
get topRenderLayer() {
|
|
50
|
-
return
|
|
51
|
+
return t.renderLayers().topRenderLayer;
|
|
51
52
|
},
|
|
52
53
|
get viewportScale() {
|
|
53
|
-
return
|
|
54
|
+
return t.viewportScale;
|
|
54
55
|
},
|
|
55
56
|
get locked() {
|
|
56
|
-
return
|
|
57
|
+
return t.locked;
|
|
57
58
|
},
|
|
58
59
|
get filtered() {
|
|
59
|
-
return !
|
|
60
|
+
return !t.filters[e().type];
|
|
61
|
+
},
|
|
62
|
+
get interactionAdapter() {
|
|
63
|
+
return t.interactionAdapter;
|
|
60
64
|
},
|
|
61
65
|
get onSelect() {
|
|
62
|
-
return
|
|
66
|
+
return t.onSelectWidget;
|
|
63
67
|
},
|
|
64
68
|
get onContextMenu() {
|
|
65
|
-
return
|
|
69
|
+
return t.onWidgetContextMenu;
|
|
66
70
|
},
|
|
67
71
|
get onStartOptimisticFront() {
|
|
68
|
-
return
|
|
72
|
+
return t.onStartOptimisticFront;
|
|
69
73
|
},
|
|
70
74
|
get onCommitFront() {
|
|
71
|
-
return
|
|
75
|
+
return t.onCommitFront;
|
|
72
76
|
},
|
|
73
77
|
get onCommitMove() {
|
|
74
|
-
return
|
|
78
|
+
return t.onCommitMove;
|
|
75
79
|
},
|
|
76
80
|
get onCommitResize() {
|
|
77
|
-
return
|
|
81
|
+
return t.onCommitResize;
|
|
78
82
|
},
|
|
79
83
|
get onRequestOverview() {
|
|
80
|
-
return
|
|
84
|
+
return t.onRequestOverview;
|
|
81
85
|
},
|
|
82
86
|
get onRequestFit() {
|
|
83
|
-
return
|
|
87
|
+
return t.onRequestFit;
|
|
84
88
|
},
|
|
85
89
|
get onRequestDelete() {
|
|
86
|
-
return
|
|
90
|
+
return t.onRequestDelete;
|
|
91
|
+
},
|
|
92
|
+
get onLayoutInteractionStart() {
|
|
93
|
+
return t.onLayoutInteractionStart;
|
|
94
|
+
},
|
|
95
|
+
get onLayoutInteractionEnd() {
|
|
96
|
+
return t.onLayoutInteractionEnd;
|
|
87
97
|
}
|
|
88
98
|
});
|
|
89
99
|
}
|
|
90
|
-
function
|
|
91
|
-
const t =
|
|
100
|
+
function s(t) {
|
|
101
|
+
const e = r(() => l(t.interactionAdapter)), d = r(() => t.widgets.map((n) => n.id)), i = r(() => new Map(t.widgets.map((n) => [n.id, n]))), o = r(() => w(t.widgets));
|
|
92
102
|
return (() => {
|
|
93
103
|
var n = v();
|
|
94
|
-
return n.firstChild,
|
|
104
|
+
return n.firstChild, a(n, g(m, {
|
|
95
105
|
get each() {
|
|
96
|
-
return
|
|
106
|
+
return d();
|
|
97
107
|
},
|
|
98
|
-
children: (
|
|
99
|
-
widgetId:
|
|
108
|
+
children: (u) => g(f, {
|
|
109
|
+
widgetId: u,
|
|
100
110
|
get widgetDefinitions() {
|
|
101
|
-
return
|
|
111
|
+
return t.widgetDefinitions;
|
|
102
112
|
},
|
|
103
113
|
get widgets() {
|
|
104
|
-
return
|
|
114
|
+
return t.widgets;
|
|
105
115
|
},
|
|
106
|
-
widgetById:
|
|
107
|
-
renderLayers:
|
|
116
|
+
widgetById: i,
|
|
117
|
+
renderLayers: o,
|
|
108
118
|
get selectedWidgetId() {
|
|
109
|
-
return
|
|
119
|
+
return t.selectedWidgetId;
|
|
110
120
|
},
|
|
111
121
|
get optimisticFrontWidgetId() {
|
|
112
|
-
return
|
|
122
|
+
return t.optimisticFrontWidgetId;
|
|
113
123
|
},
|
|
114
124
|
get viewportScale() {
|
|
115
|
-
return
|
|
125
|
+
return t.viewportScale;
|
|
116
126
|
},
|
|
117
127
|
get locked() {
|
|
118
|
-
return
|
|
128
|
+
return t.locked;
|
|
119
129
|
},
|
|
120
130
|
get filters() {
|
|
121
|
-
return
|
|
131
|
+
return t.filters;
|
|
132
|
+
},
|
|
133
|
+
get interactionAdapter() {
|
|
134
|
+
return e();
|
|
122
135
|
},
|
|
123
136
|
get onSelectWidget() {
|
|
124
|
-
return
|
|
137
|
+
return t.onSelectWidget;
|
|
125
138
|
},
|
|
126
139
|
get onWidgetContextMenu() {
|
|
127
|
-
return
|
|
140
|
+
return t.onWidgetContextMenu;
|
|
128
141
|
},
|
|
129
142
|
get onStartOptimisticFront() {
|
|
130
|
-
return
|
|
143
|
+
return t.onStartOptimisticFront;
|
|
131
144
|
},
|
|
132
145
|
get onCommitFront() {
|
|
133
|
-
return
|
|
146
|
+
return t.onCommitFront;
|
|
134
147
|
},
|
|
135
148
|
get onCommitMove() {
|
|
136
|
-
return
|
|
149
|
+
return t.onCommitMove;
|
|
137
150
|
},
|
|
138
151
|
get onCommitResize() {
|
|
139
|
-
return
|
|
152
|
+
return t.onCommitResize;
|
|
140
153
|
},
|
|
141
154
|
get onRequestOverview() {
|
|
142
|
-
return
|
|
155
|
+
return t.onRequestOverview;
|
|
143
156
|
},
|
|
144
157
|
get onRequestFit() {
|
|
145
|
-
return
|
|
158
|
+
return t.onRequestFit;
|
|
146
159
|
},
|
|
147
160
|
get onRequestDelete() {
|
|
148
|
-
return
|
|
161
|
+
return t.onRequestDelete;
|
|
162
|
+
},
|
|
163
|
+
get onLayoutInteractionStart() {
|
|
164
|
+
return t.onLayoutInteractionStart;
|
|
165
|
+
},
|
|
166
|
+
get onLayoutInteractionEnd() {
|
|
167
|
+
return t.onLayoutInteractionEnd;
|
|
149
168
|
}
|
|
150
169
|
})
|
|
151
170
|
}), null), n;
|
|
152
171
|
})();
|
|
153
172
|
}
|
|
154
173
|
export {
|
|
155
|
-
|
|
174
|
+
s as WorkbenchCanvasField
|
|
156
175
|
};
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import type { WorkbenchState, WorkbenchWidgetDefinition, WorkbenchWidgetItem, WorkbenchWidgetType } from './types';
|
|
1
|
+
import type { WorkbenchState, WorkbenchInteractionAdapter, WorkbenchWidgetDefinition, WorkbenchWidgetItem, WorkbenchWidgetType } from './types';
|
|
2
2
|
export interface WorkbenchSurfaceApi {
|
|
3
3
|
ensureWidget: (type: WorkbenchWidgetType, options?: {
|
|
4
4
|
centerViewport?: boolean;
|
|
5
5
|
worldX?: number;
|
|
6
6
|
worldY?: number;
|
|
7
7
|
}) => WorkbenchWidgetItem | null;
|
|
8
|
+
createWidget: (type: WorkbenchWidgetType, options?: {
|
|
9
|
+
centerViewport?: boolean;
|
|
10
|
+
worldX?: number;
|
|
11
|
+
worldY?: number;
|
|
12
|
+
}) => WorkbenchWidgetItem | null;
|
|
8
13
|
clearSelection: () => void;
|
|
9
14
|
focusWidget: (widget: WorkbenchWidgetItem, options?: {
|
|
10
15
|
centerViewport?: boolean;
|
|
@@ -12,6 +17,8 @@ export interface WorkbenchSurfaceApi {
|
|
|
12
17
|
fitWidget: (widget: WorkbenchWidgetItem) => WorkbenchWidgetItem;
|
|
13
18
|
overviewWidget: (widget: WorkbenchWidgetItem) => WorkbenchWidgetItem;
|
|
14
19
|
findWidgetByType: (type: WorkbenchWidgetType) => WorkbenchWidgetItem | null;
|
|
20
|
+
findWidgetById: (widgetId: string) => WorkbenchWidgetItem | null;
|
|
21
|
+
updateWidgetTitle: (widgetId: string, title: string) => void;
|
|
15
22
|
}
|
|
16
23
|
export interface WorkbenchSurfaceProps {
|
|
17
24
|
state: () => WorkbenchState;
|
|
@@ -32,6 +39,11 @@ export interface WorkbenchSurfaceProps {
|
|
|
32
39
|
*/
|
|
33
40
|
class?: string;
|
|
34
41
|
widgetDefinitions?: readonly WorkbenchWidgetDefinition[];
|
|
42
|
+
launcherWidgetTypes?: readonly WorkbenchWidgetType[];
|
|
43
|
+
interactionAdapter?: WorkbenchInteractionAdapter;
|
|
35
44
|
onApiReady?: (api: WorkbenchSurfaceApi | null) => void;
|
|
45
|
+
onRequestDelete?: (widgetId: string) => void;
|
|
46
|
+
onLayoutInteractionStart?: () => void;
|
|
47
|
+
onLayoutInteractionEnd?: () => void;
|
|
36
48
|
}
|
|
37
49
|
export declare function WorkbenchSurface(props: WorkbenchSurfaceProps): import("solid-js").JSX.Element;
|