@floegence/floe-webapp-core 0.41.4 → 0.42.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/dist/components/workbench/WorkbenchDockPopoverSurface.d.ts +20 -0
- package/dist/components/workbench/WorkbenchDockPopoverSurface.js +90 -0
- package/dist/components/workbench/WorkbenchFilterBar.d.ts +20 -2
- package/dist/components/workbench/WorkbenchFilterBar.js +332 -337
- package/dist/components/workbench/WorkbenchSurface.d.ts +1 -2
- package/dist/components/workbench/WorkbenchSurface.js +57 -54
- package/dist/components/workbench/index.d.ts +4 -3
- package/dist/styles.css +1 -1
- package/dist/workbench-themes.css +34 -17
- package/dist/workbench.css +46 -7
- package/dist/workbench.js +38 -36
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type UIFirstSelectionEvent } from '../../utils/uiFirstSelection';
|
|
2
2
|
import { type WorkbenchContextMenuItem } from './WorkbenchContextMenu';
|
|
3
|
-
import { type WorkbenchDockItemActivation, type WorkbenchDockAction, type WorkbenchExternalDockDragController, type
|
|
3
|
+
import { type WorkbenchDockItemActivation, type WorkbenchDockAction, type WorkbenchExternalDockDragController, type WorkbenchHostDockItem } from './WorkbenchFilterBar';
|
|
4
4
|
import type { WorkbenchState, WorkbenchAnnotationItem, WorkbenchBackgroundLayer, WorkbenchBackgroundLayerDefaults, WorkbenchBackgroundLayerPatch, WorkbenchContextMenuState, WorkbenchInteractionAdapter, WorkbenchStickyNoteItem, WorkbenchStickyNotePatch, WorkbenchTextAnnotationDefaults, WorkbenchTextAnnotationPatch, WorkbenchWidgetDefinition, WorkbenchWidgetItem, WorkbenchWidgetType } from './types';
|
|
5
5
|
export interface WorkbenchCreateAtOptions {
|
|
6
6
|
worldX?: number;
|
|
@@ -71,7 +71,6 @@ export interface WorkbenchSurfaceProps {
|
|
|
71
71
|
dockActions?: readonly WorkbenchDockAction[];
|
|
72
72
|
dockItems?: readonly WorkbenchHostDockItem[];
|
|
73
73
|
registerExternalDockDragController?: (controller: WorkbenchExternalDockDragController | null) => void;
|
|
74
|
-
onExternalDockDrop?: (item: WorkbenchExternalDockDragItem) => void;
|
|
75
74
|
onLayoutInteractionStart?: () => void;
|
|
76
75
|
onLayoutInteractionEnd?: () => void;
|
|
77
76
|
/** Defer pointer/focus widget activation until the visual selection has painted. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { use as j, spread as K, mergeProps as
|
|
2
|
-
import { createSignal as W, createMemo as w, untrack as h, createEffect as k, onCleanup as
|
|
3
|
-
import { clientToCanvasWorld as
|
|
1
|
+
import { use as j, spread as K, mergeProps as G, insert as v, createComponent as l, Portal as Z, addEventListener as J, template as R, delegateEvents as Q } from "solid-js/web";
|
|
2
|
+
import { createSignal as W, createMemo as w, untrack as h, createEffect as k, onCleanup as y, Show as ee } from "solid-js";
|
|
3
|
+
import { clientToCanvasWorld as T } from "../ui/canvasGeometry.js";
|
|
4
4
|
import { createUIFirstSelection as te } from "../../utils/uiFirstSelection.js";
|
|
5
5
|
import { WorkbenchCanvas as ne } from "./WorkbenchCanvas.js";
|
|
6
6
|
import { WorkbenchContextMenu as oe } from "./WorkbenchContextMenu.js";
|
|
@@ -12,9 +12,10 @@ import { createContextMenuPosition as de, WORKBENCH_CONTEXT_MENU_WIDTH_PX as ue,
|
|
|
12
12
|
import { resolveWorkbenchWidgetPlacementPreview as le, resolveWorkbenchToolPlacementPreview as ge } from "./workbenchPlacement.js";
|
|
13
13
|
import { useWorkbenchModel as we } from "./useWorkbenchModel.js";
|
|
14
14
|
import { resolveWorkbenchInteractionAdapter as me } from "./workbenchInteractionAdapter.js";
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
import { SURFACE_PORTAL_LAYER_ATTR as fe, DIALOG_SURFACE_HOST_ATTR as ve } from "../ui/dialogSurfaceScope.js";
|
|
16
|
+
var ke = /* @__PURE__ */ R("<div class=workbench-menu-backdrop data-floe-workbench-boundary=true>"), Ae = /* @__PURE__ */ R("<div><div class=workbench-surface__body data-floe-workbench-canvas-frame=true>");
|
|
17
|
+
const ye = "F1";
|
|
18
|
+
function B(i) {
|
|
18
19
|
if (i)
|
|
19
20
|
try {
|
|
20
21
|
i.focus({
|
|
@@ -24,7 +25,7 @@ function T(i) {
|
|
|
24
25
|
i.focus();
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
|
-
function
|
|
28
|
+
function Fe(i) {
|
|
28
29
|
const t = we({
|
|
29
30
|
state: () => i.state(),
|
|
30
31
|
setState: (e) => i.setState(e),
|
|
@@ -44,7 +45,7 @@ function Ee(i) {
|
|
|
44
45
|
t.canvas.selectWidget(e), n?.bringToFront && t.canvas.commitFront(e);
|
|
45
46
|
},
|
|
46
47
|
onEvent: (e) => i.onWidgetActivationEvent?.(e)
|
|
47
|
-
}),
|
|
48
|
+
}), E = () => i.widgetActivationMode === "after-paint" ? u.visual() : t.selectedWidgetId(), O = () => {
|
|
48
49
|
if (i.widgetActivationMode !== "after-paint" || !u.pending())
|
|
49
50
|
return t.selectedObject();
|
|
50
51
|
const e = u.visual();
|
|
@@ -52,7 +53,7 @@ function Ee(i) {
|
|
|
52
53
|
kind: "widget",
|
|
53
54
|
id: e
|
|
54
55
|
} : null;
|
|
55
|
-
},
|
|
56
|
+
}, F = (e) => {
|
|
56
57
|
if (i.widgetActivationMode === "after-paint") {
|
|
57
58
|
if (u.pending() && u.visual() === e) return;
|
|
58
59
|
u.request(e, {
|
|
@@ -61,7 +62,7 @@ function Ee(i) {
|
|
|
61
62
|
return;
|
|
62
63
|
}
|
|
63
64
|
t.canvas.selectWidget(e);
|
|
64
|
-
},
|
|
65
|
+
}, N = (e) => {
|
|
65
66
|
if (i.widgetActivationMode === "after-paint") {
|
|
66
67
|
if (u.pending() && u.visual() === e) return;
|
|
67
68
|
u.request(e, {
|
|
@@ -70,14 +71,14 @@ function Ee(i) {
|
|
|
70
71
|
return;
|
|
71
72
|
}
|
|
72
73
|
t.canvas.selectWidget(e), t.canvas.commitFront(e);
|
|
73
|
-
}, [s,
|
|
74
|
+
}, [s, _] = W(null), [P, X] = W(null), c = w(() => me(i.interactionAdapter)), [S, g] = W(h(() => c().createInitialInputOwner())), p = w(() => {
|
|
74
75
|
const e = i.launcherWidgetTypes;
|
|
75
76
|
return !e || e.length <= 0 ? null : new Set(e);
|
|
76
77
|
}), Y = w(() => {
|
|
77
|
-
const e = t.widgetDefinitions(), n =
|
|
78
|
+
const e = t.widgetDefinitions(), n = p();
|
|
78
79
|
return n ? e.filter((o) => n.has(o.type)) : e;
|
|
79
80
|
}), b = w(() => {
|
|
80
|
-
const e = t.contextMenu.state(), n = t.contextMenu.items(), o =
|
|
81
|
+
const e = t.contextMenu.state(), n = t.contextMenu.items(), o = p(), r = o ? n.filter((f) => {
|
|
81
82
|
if (f.kind !== "action")
|
|
82
83
|
return !0;
|
|
83
84
|
const L = /^add-(.+)$/.exec(String(f.id ?? ""));
|
|
@@ -103,7 +104,7 @@ function Ee(i) {
|
|
|
103
104
|
menuWidth: ue,
|
|
104
105
|
menuHeight: se(o, r)
|
|
105
106
|
});
|
|
106
|
-
}),
|
|
107
|
+
}), I = (e, n, o) => {
|
|
107
108
|
const r = c(), a = r.findWidgetRoot(e), d = r.readWidgetId(a);
|
|
108
109
|
if (d) {
|
|
109
110
|
if (t.queries.findStickyNoteById(d)) {
|
|
@@ -115,19 +116,19 @@ function Ee(i) {
|
|
|
115
116
|
}
|
|
116
117
|
const f = s();
|
|
117
118
|
f && e instanceof Node && f.contains(e) && g(r.createCanvasInputOwner(o));
|
|
118
|
-
},
|
|
119
|
+
}, M = (e = "selection_cleared") => {
|
|
119
120
|
const n = c(), o = s();
|
|
120
121
|
t.selection.clear(), g(n.createCanvasInputOwner(e)), queueMicrotask(() => {
|
|
121
122
|
if (!o || typeof document > "u") return;
|
|
122
123
|
const r = document.activeElement;
|
|
123
124
|
if (!(r instanceof HTMLElement) || !o.contains(r)) {
|
|
124
|
-
|
|
125
|
+
B(o);
|
|
125
126
|
return;
|
|
126
127
|
}
|
|
127
128
|
const a = n.findWidgetRoot(r);
|
|
128
|
-
|
|
129
|
+
B(o), a && document.activeElement === r && r.isConnected && r.blur();
|
|
129
130
|
});
|
|
130
|
-
},
|
|
131
|
+
}, A = () => {
|
|
131
132
|
const e = s()?.querySelector('[data-floe-workbench-canvas-frame="true"]'), n = t.viewport(), o = e?.getBoundingClientRect(), r = o?.width ?? 0, a = o?.height ?? 0;
|
|
132
133
|
return {
|
|
133
134
|
worldX: r > 0 ? (r / 2 - n.x) / n.scale : 240,
|
|
@@ -138,7 +139,7 @@ function Ee(i) {
|
|
|
138
139
|
queueMicrotask(() => {
|
|
139
140
|
n.focusWidgetElement(o, e), g(n.createWidgetInputOwner(e, "activation"));
|
|
140
141
|
});
|
|
141
|
-
},
|
|
142
|
+
}, q = (e) => {
|
|
142
143
|
const n = t.navigation.fitWidget(e);
|
|
143
144
|
m(n.id);
|
|
144
145
|
}, V = (e) => {
|
|
@@ -149,22 +150,22 @@ function Ee(i) {
|
|
|
149
150
|
i.onApiReady?.({
|
|
150
151
|
ensureWidget: (e, n) => t.widgetActions.ensureWidget(e, n) ?? null,
|
|
151
152
|
createWidget: (e, n) => {
|
|
152
|
-
const o =
|
|
153
|
+
const o = A(), r = t.widgetActions.addWidgetAtWorldCenter(e, n?.worldX ?? o.worldX, n?.worldY ?? o.worldY) ?? null;
|
|
153
154
|
return r && n?.centerViewport !== !1 && t.navigation.centerOnWidget(r), r;
|
|
154
155
|
},
|
|
155
156
|
createTextAnnotation: (e) => {
|
|
156
|
-
const n =
|
|
157
|
+
const n = A();
|
|
157
158
|
return t.widgetActions.addTextAnnotationAtCursor(e?.worldX ?? n.worldX, e?.worldY ?? n.worldY) ?? null;
|
|
158
159
|
},
|
|
159
160
|
createStickyNote: (e) => {
|
|
160
|
-
const n =
|
|
161
|
+
const n = A();
|
|
161
162
|
return t.widgetActions.addStickyNoteAtCursor(e?.worldX ?? n.worldX, e?.worldY ?? n.worldY) ?? null;
|
|
162
163
|
},
|
|
163
164
|
createBackgroundLayer: (e) => {
|
|
164
|
-
const n =
|
|
165
|
+
const n = A();
|
|
165
166
|
return t.widgetActions.addBackgroundLayerAtCursor(e?.worldX ?? n.worldX, e?.worldY ?? n.worldY) ?? null;
|
|
166
167
|
},
|
|
167
|
-
clearSelection: () =>
|
|
168
|
+
clearSelection: () => M("selection_cleared"),
|
|
168
169
|
focusWidget: (e, n) => {
|
|
169
170
|
const o = t.navigation.focusWidget(e, n);
|
|
170
171
|
return m(o.id), o;
|
|
@@ -198,36 +199,36 @@ function Ee(i) {
|
|
|
198
199
|
deleteStickyNote: (e) => t.widgetActions.deleteStickyNote(e),
|
|
199
200
|
deleteAnnotation: (e) => t.widgetActions.deleteAnnotation(e),
|
|
200
201
|
deleteBackgroundLayer: (e) => t.widgetActions.deleteBackgroundLayer(e)
|
|
201
|
-
}),
|
|
202
|
+
}), y(() => {
|
|
202
203
|
i.onApiReady?.(null);
|
|
203
204
|
});
|
|
204
205
|
});
|
|
205
|
-
const
|
|
206
|
+
const x = () => i.lockShortcut === void 0 ? ye : i.lockShortcut;
|
|
206
207
|
k(() => {
|
|
207
208
|
if (typeof window > "u" || !t.contextMenu.state()) return;
|
|
208
209
|
const e = ce({
|
|
209
210
|
ownerWindow: window,
|
|
210
211
|
onDismiss: t.contextMenu.close
|
|
211
212
|
});
|
|
212
|
-
|
|
213
|
+
y(() => e());
|
|
213
214
|
}), k(() => {
|
|
214
|
-
const e =
|
|
215
|
+
const e = S();
|
|
215
216
|
if (e.kind !== "widget") return;
|
|
216
217
|
t.widgets().some((o) => o.id === e.widgetId) || g(c().createCanvasInputOwner("widget_removed"));
|
|
217
218
|
}), k(() => {
|
|
218
219
|
const e = s();
|
|
219
220
|
if (!e) return;
|
|
220
221
|
const n = (r) => {
|
|
221
|
-
|
|
222
|
+
I(r.target, "pointer", "background_pointer");
|
|
222
223
|
}, o = (r) => {
|
|
223
|
-
|
|
224
|
+
I(r.target, "focus", "background_focus");
|
|
224
225
|
};
|
|
225
|
-
e.addEventListener("pointerdown", n, !0), e.addEventListener("focusin", o),
|
|
226
|
+
e.addEventListener("pointerdown", n, !0), e.addEventListener("focusin", o), y(() => {
|
|
226
227
|
e.removeEventListener("pointerdown", n, !0), e.removeEventListener("focusin", o);
|
|
227
228
|
});
|
|
228
229
|
}), k(() => {
|
|
229
230
|
if (i.enableKeyboard === !1 || typeof document > "u") return;
|
|
230
|
-
const e =
|
|
231
|
+
const e = x(), n = (o) => {
|
|
231
232
|
if (!(o.defaultPrevented || o.isComposing)) {
|
|
232
233
|
if (e !== null && o.key === e) {
|
|
233
234
|
o.preventDefault(), t.lock.toggle();
|
|
@@ -236,7 +237,7 @@ function Ee(i) {
|
|
|
236
237
|
if (!c().shouldBypassGlobalHotkeys({
|
|
237
238
|
root: s(),
|
|
238
239
|
target: o.target,
|
|
239
|
-
owner:
|
|
240
|
+
owner: S(),
|
|
240
241
|
interactiveSelector: c().interactiveSelector
|
|
241
242
|
}))
|
|
242
243
|
switch (o.key) {
|
|
@@ -259,18 +260,20 @@ function Ee(i) {
|
|
|
259
260
|
}
|
|
260
261
|
}
|
|
261
262
|
};
|
|
262
|
-
document.addEventListener("keydown", n, !0),
|
|
263
|
+
document.addEventListener("keydown", n, !0), y(() => document.removeEventListener("keydown", n, !0));
|
|
263
264
|
});
|
|
264
265
|
const C = (e, n, o) => {
|
|
266
|
+
if (o?.worldPoint)
|
|
267
|
+
return o.worldPoint;
|
|
265
268
|
if (o?.canvasFrame)
|
|
266
|
-
return
|
|
269
|
+
return T(o.canvasFrame, t.viewport(), {
|
|
267
270
|
clientX: e,
|
|
268
271
|
clientY: n
|
|
269
272
|
});
|
|
270
273
|
const r = s()?.querySelector('[data-floe-workbench-canvas-frame="true"]');
|
|
271
274
|
if (!r) return null;
|
|
272
275
|
const a = r.getBoundingClientRect();
|
|
273
|
-
return
|
|
276
|
+
return T(a, t.viewport(), {
|
|
274
277
|
clientX: e,
|
|
275
278
|
clientY: n
|
|
276
279
|
});
|
|
@@ -291,9 +294,9 @@ function Ee(i) {
|
|
|
291
294
|
e === "background-region" && t.widgetActions.addBackgroundLayerAtCursor(a.worldX, a.worldY);
|
|
292
295
|
}
|
|
293
296
|
}, U = (e) => {
|
|
294
|
-
e.button === 0 && (c().findWidgetRoot(e.target) ||
|
|
297
|
+
e.button === 0 && (c().findWidgetRoot(e.target) || M("background_pointer"));
|
|
295
298
|
}, $ = w(() => {
|
|
296
|
-
const e =
|
|
299
|
+
const e = P();
|
|
297
300
|
if (!e) return null;
|
|
298
301
|
const n = C(e.clientX, e.clientY, e);
|
|
299
302
|
return n ? e.kind === "widget" ? le({
|
|
@@ -313,13 +316,16 @@ function Ee(i) {
|
|
|
313
316
|
}) : null;
|
|
314
317
|
});
|
|
315
318
|
return (() => {
|
|
316
|
-
var e =
|
|
317
|
-
return j(
|
|
319
|
+
var e = Ae(), n = e.firstChild;
|
|
320
|
+
return j(_, e), K(e, G({
|
|
318
321
|
get class() {
|
|
319
322
|
return `workbench-surface${i.class ? ` ${i.class}` : ""}`;
|
|
320
323
|
}
|
|
321
324
|
}, () => ({
|
|
322
|
-
[c().surfaceRootAttr]: "true"
|
|
325
|
+
[c().surfaceRootAttr]: "true",
|
|
326
|
+
[c().dialogSurfaceHostAttr]: "true",
|
|
327
|
+
[ve]: "true",
|
|
328
|
+
[fe]: "true"
|
|
323
329
|
}), {
|
|
324
330
|
get "data-workbench-theme"() {
|
|
325
331
|
return t.theme();
|
|
@@ -354,10 +360,10 @@ function Ee(i) {
|
|
|
354
360
|
return t.canvasFrameSize();
|
|
355
361
|
},
|
|
356
362
|
get selectedWidgetId() {
|
|
357
|
-
return
|
|
363
|
+
return E();
|
|
358
364
|
},
|
|
359
365
|
get selectedObject() {
|
|
360
|
-
return
|
|
366
|
+
return O();
|
|
361
367
|
},
|
|
362
368
|
get mode() {
|
|
363
369
|
return t.mode();
|
|
@@ -387,8 +393,8 @@ function Ee(i) {
|
|
|
387
393
|
return t.canvas.openCanvasContextMenu;
|
|
388
394
|
},
|
|
389
395
|
onCanvasPointerDown: U,
|
|
390
|
-
onSelectWidget:
|
|
391
|
-
onActivateWidget:
|
|
396
|
+
onSelectWidget: F,
|
|
397
|
+
onActivateWidget: N,
|
|
392
398
|
get onWidgetContextMenu() {
|
|
393
399
|
return t.canvas.openWidgetContextMenu;
|
|
394
400
|
},
|
|
@@ -465,7 +471,7 @@ function Ee(i) {
|
|
|
465
471
|
return t.widgetActions.deleteBackgroundLayer;
|
|
466
472
|
},
|
|
467
473
|
onRequestOverview: V,
|
|
468
|
-
onRequestFit:
|
|
474
|
+
onRequestFit: q,
|
|
469
475
|
get onRequestDelete() {
|
|
470
476
|
return i.onRequestDelete ?? t.widgetActions.deleteWidget;
|
|
471
477
|
},
|
|
@@ -483,7 +489,7 @@ function Ee(i) {
|
|
|
483
489
|
return t.lock.toggle;
|
|
484
490
|
},
|
|
485
491
|
get shortcutLabel() {
|
|
486
|
-
return
|
|
492
|
+
return x() ?? void 0;
|
|
487
493
|
}
|
|
488
494
|
}), null), v(e, l(re, {
|
|
489
495
|
get widgetDefinitions() {
|
|
@@ -525,10 +531,7 @@ function Ee(i) {
|
|
|
525
531
|
get registerExternalDockDragController() {
|
|
526
532
|
return i.registerExternalDockDragController;
|
|
527
533
|
},
|
|
528
|
-
|
|
529
|
-
return i.onExternalDockDrop;
|
|
530
|
-
},
|
|
531
|
-
onDragPreviewChange: q
|
|
534
|
+
onDragPreviewChange: X
|
|
532
535
|
}), null), v(e, l(ie, {
|
|
533
536
|
get scaleLabel() {
|
|
534
537
|
return t.scaleLabel();
|
|
@@ -548,10 +551,10 @@ function Ee(i) {
|
|
|
548
551
|
return t.contextMenu.state();
|
|
549
552
|
},
|
|
550
553
|
get children() {
|
|
551
|
-
return l(
|
|
554
|
+
return l(Z, {
|
|
552
555
|
get children() {
|
|
553
556
|
return [(() => {
|
|
554
|
-
var o =
|
|
557
|
+
var o = ke();
|
|
555
558
|
return J(o, "contextmenu", t.contextMenu.retarget, !0), o;
|
|
556
559
|
})(), l(oe, {
|
|
557
560
|
get x() {
|
|
@@ -572,5 +575,5 @@ function Ee(i) {
|
|
|
572
575
|
}
|
|
573
576
|
Q(["contextmenu"]);
|
|
574
577
|
export {
|
|
575
|
-
|
|
578
|
+
Fe as WorkbenchSurface
|
|
576
579
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export { WorkbenchOverlay, type WorkbenchOverlayProps
|
|
1
|
+
export { WorkbenchOverlay, type WorkbenchOverlayProps } from './WorkbenchOverlay';
|
|
2
|
+
export { WorkbenchDockPopoverSurface, type WorkbenchDockPopoverSurfaceProps, } from './WorkbenchDockPopoverSurface';
|
|
2
3
|
export { WorkbenchSurface, type WorkbenchSurfaceApi, type WorkbenchCreateAtOptions, type WorkbenchCreateWidgetOptions, type WorkbenchContextMenuItemsResolver, type WorkbenchSurfaceProps, } from './WorkbenchSurface';
|
|
3
|
-
export type { WorkbenchDockAction, WorkbenchDockItemActivation, WorkbenchExternalDockDragController, WorkbenchExternalDockDragItem, WorkbenchHostDockItem, } from './WorkbenchFilterBar';
|
|
4
|
+
export type { WorkbenchDockAction, WorkbenchCanvasWidgetPlacement, WorkbenchDockCanvasPlacement, WorkbenchDockDropContext, WorkbenchDockItemActivation, WorkbenchExternalDockDragController, WorkbenchExternalDockDragItem, WorkbenchHostDockItem, } from './WorkbenchFilterBar';
|
|
4
5
|
export { WorkbenchContextMenu, type WorkbenchContextMenuItem, type WorkbenchContextMenuProps, } from './WorkbenchContextMenu';
|
|
5
6
|
export { useWorkbenchModel, type UseWorkbenchModelOptions } from './useWorkbenchModel';
|
|
6
7
|
export { WIDGET_REGISTRY, createWorkbenchFilterState, getWidgetEntry, isValidWorkbenchWidgetType, resolveWorkbenchWidgetDefinitions, type WidgetRegistryEntry, } from './widgets/widgetRegistry';
|
|
@@ -8,4 +9,4 @@ export * from './types';
|
|
|
8
9
|
export { sanitizeWorkbenchState, createDefaultWorkbenchState, createWorkbenchId, createWorkbenchProjectedRect, createWorkbenchRenderLayerMap, createWorkbenchViewportCenteredOnWidget, createWorkbenchViewportFitForWidget, createWorkbenchWidgetFrame, createWorkbenchWidgetSurfaceMetrics, resolveWorkbenchProjectedSurfaceScaleBehavior, resolveWorkbenchWidgetRenderMode, type WorkbenchRenderLayerMap, type WorkbenchWidgetFrame, type WorkbenchWidgetPlacement, } from './workbenchHelpers';
|
|
9
10
|
export { WORKBENCH_BACKGROUND_MATERIALS, WORKBENCH_DEFAULT_BACKGROUND_MATERIAL, WORKBENCH_DEFAULT_REGION_FILL, WORKBENCH_DEFAULT_STICKY_NOTE_COLOR, WORKBENCH_DEFAULT_TEXT_COLOR, WORKBENCH_DEFAULT_TEXT_FONT, WORKBENCH_REGION_FILL_OPTIONS, WORKBENCH_STICKY_NOTE_COLORS, WORKBENCH_TEXT_COLOR_OPTIONS, WORKBENCH_TEXT_EMOJI_OPTIONS, WORKBENCH_TEXT_FONT_OPTIONS, } from './workbenchOptions';
|
|
10
11
|
export { DEFAULT_WORKBENCH_THEME, WORKBENCH_THEME_IDS, WORKBENCH_THEMES, isWorkbenchThemeId, workbenchThemeMeta, type WorkbenchThemeId, type WorkbenchThemeMeta, type WorkbenchThemePreview, } from './workbenchThemes';
|
|
11
|
-
export { WorkbenchThemeSelector, type WorkbenchThemeSelectorProps
|
|
12
|
+
export { WorkbenchThemeSelector, type WorkbenchThemeSelectorProps } from './WorkbenchThemeSelector';
|