@floegence/floe-webapp-core 0.36.48 → 0.36.50

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.
@@ -14,6 +14,18 @@ export declare function createWorkbenchProjectedRect(input: CreateWorkbenchProje
14
14
  export declare function createWorkbenchWidgetSurfaceMetrics(input: CreateWorkbenchProjectedRectInput & {
15
15
  ready: boolean;
16
16
  }): WorkbenchWidgetSurfaceMetrics;
17
+ export type WorkbenchWidgetPlacement = Readonly<{
18
+ anchor: 'top_left' | 'center';
19
+ worldX: number;
20
+ worldY: number;
21
+ }>;
22
+ export type WorkbenchWidgetFrame = Readonly<{
23
+ x: number;
24
+ y: number;
25
+ width: number;
26
+ height: number;
27
+ }>;
28
+ export declare function createWorkbenchWidgetFrame(definition: Pick<WorkbenchWidgetDefinition, 'defaultSize'>, placement: WorkbenchWidgetPlacement): WorkbenchWidgetFrame;
17
29
  export declare function sanitizeViewport(viewport: Partial<WorkbenchViewport> | undefined): WorkbenchViewport;
18
30
  export declare function sanitizeWorkbenchViewportForMode(viewport: Partial<WorkbenchViewport> | undefined, mode: WorkbenchInteractionMode): WorkbenchViewport;
19
31
  export declare function sanitizeFilters(filters: Partial<Record<string, boolean>> | undefined, widgetDefinitions?: readonly WorkbenchWidgetDefinition[]): Record<string, boolean>;
@@ -1,6 +1,6 @@
1
1
  import { DEFAULT_WORKBENCH_VIEWPORT as O, WORKBENCH_BACKGROUND_REGION_FILTER_ID as D, WORKBENCH_LAYER_COMPONENT_FILTER_IDS as K } from "./types.js";
2
- import { WORKBENCH_DEFAULT_BACKGROUND_MATERIAL as E, WORKBENCH_DEFAULT_REGION_FILL as S, WORKBENCH_DEFAULT_TEXT_COLOR as R, WORKBENCH_DEFAULT_TEXT_FONT as N, WORKBENCH_DEFAULT_STICKY_NOTE_COLOR as T, resolveWorkbenchTextFontOption as P, WORKBENCH_BACKGROUND_MATERIALS as U, WORKBENCH_STICKY_NOTE_COLORS as X, WORKBENCH_TEXT_COLOR_OPTIONS as j, WORKBENCH_REGION_FILL_OPTIONS as V } from "./workbenchOptions.js";
3
- import { resolveWorkbenchWidgetDefinitions as z, getWidgetEntry as C, createWorkbenchFilterState as A, isValidWorkbenchWidgetType as Y } from "./widgets/widgetRegistry.js";
2
+ import { WORKBENCH_DEFAULT_BACKGROUND_MATERIAL as E, WORKBENCH_DEFAULT_REGION_FILL as S, WORKBENCH_DEFAULT_TEXT_COLOR as R, WORKBENCH_DEFAULT_TEXT_FONT as N, WORKBENCH_DEFAULT_STICKY_NOTE_COLOR as z, resolveWorkbenchTextFontOption as P, WORKBENCH_BACKGROUND_MATERIALS as U, WORKBENCH_STICKY_NOTE_COLORS as X, WORKBENCH_TEXT_COLOR_OPTIONS as Y, WORKBENCH_REGION_FILL_OPTIONS as j } from "./workbenchOptions.js";
3
+ import { resolveWorkbenchWidgetDefinitions as T, getWidgetEntry as C, createWorkbenchFilterState as A, isValidWorkbenchWidgetType as V } from "./widgets/widgetRegistry.js";
4
4
  import { DEFAULT_WORKBENCH_THEME as H, isWorkbenchThemeId as G } from "./workbenchThemes.js";
5
5
  function $() {
6
6
  const e = globalThis.crypto;
@@ -33,6 +33,25 @@ function Me(e) {
33
33
  rect: q(e)
34
34
  };
35
35
  }
36
+ function Ne(e, t) {
37
+ const { width: n, height: o } = e.defaultSize;
38
+ switch (t.anchor) {
39
+ case "center":
40
+ return {
41
+ x: t.worldX - n / 2,
42
+ y: t.worldY - o / 2,
43
+ width: n,
44
+ height: o
45
+ };
46
+ case "top_left":
47
+ return {
48
+ x: t.worldX,
49
+ y: t.worldY,
50
+ width: n,
51
+ height: o
52
+ };
53
+ }
54
+ }
36
55
  function Z(e) {
37
56
  return e ? {
38
57
  x: Number.isFinite(e.x) ? e.x : 0,
@@ -72,7 +91,7 @@ function W(e, t) {
72
91
  return n.length > 0 && n.length <= 128 ? n : `${t}-${$()}`;
73
92
  }
74
93
  function v(e) {
75
- return p(e);
94
+ return F(e);
76
95
  }
77
96
  function ee(e, t) {
78
97
  const n = f(e);
@@ -83,7 +102,7 @@ function w(e, t, n) {
83
102
  return t.includes(o) ? o : n;
84
103
  }
85
104
  function te(e) {
86
- return w(e, X, T);
105
+ return w(e, X, z);
87
106
  }
88
107
  function ne(e) {
89
108
  if (!y(e)) return null;
@@ -121,7 +140,7 @@ function ae(e) {
121
140
  font_family: n.fontFamily,
122
141
  font_size: Math.max(8, Math.min(160, Math.round(d(e.font_size, 28)))),
123
142
  font_weight: n.fontWeight,
124
- color: w(e.color, j, R),
143
+ color: w(e.color, Y, R),
125
144
  align: oe(e.align),
126
145
  x: d(e.x, 0),
127
146
  y: d(e.y, 0),
@@ -150,7 +169,7 @@ function se(e) {
150
169
  return {
151
170
  id: W(e.id, "region"),
152
171
  name: f(e.name) || "Canvas region",
153
- fill: w(e.fill, V, S),
172
+ fill: w(e.fill, j, S),
154
173
  opacity: Math.max(0.08, Math.min(1, d(e.opacity, 0.72))),
155
174
  material: de(e.material),
156
175
  x: d(e.x, 0),
@@ -178,30 +197,30 @@ function le(e, t, n, o, i, a) {
178
197
  }
179
198
  return a ? { kind: "widget", id: a } : null;
180
199
  }
181
- function Ne(e, t = {}) {
182
- const n = z(t.widgetDefinitions), o = t.createFallbackState ?? (() => _e(n)), i = e;
200
+ function Oe(e, t = {}) {
201
+ const n = T(t.widgetDefinitions), o = t.createFallbackState ?? (() => ue(n)), i = e;
183
202
  if (!i || i.version !== 1 || !Array.isArray(i.widgets))
184
203
  return o();
185
204
  const a = i.widgets.filter(
186
- (r) => !!r && typeof r.id == "string" && Y(r.type, n) && typeof r.title == "string"
205
+ (r) => !!r && typeof r.id == "string" && V(r.type, n) && typeof r.title == "string"
187
206
  ).map((r) => {
188
- const u = C(r.type, n);
207
+ const _ = C(r.type, n);
189
208
  return {
190
209
  id: r.id,
191
210
  type: r.type,
192
211
  title: r.title,
193
212
  x: Number.isFinite(r.x) ? r.x : 0,
194
213
  y: Number.isFinite(r.y) ? r.y : 0,
195
- width: Number.isFinite(r.width) && r.width > 0 ? r.width : u.defaultSize.width,
196
- height: Number.isFinite(r.height) && r.height > 0 ? r.height : u.defaultSize.height,
214
+ width: Number.isFinite(r.width) && r.width > 0 ? r.width : _.defaultSize.width,
215
+ height: Number.isFinite(r.height) && r.height > 0 ? r.height : _.defaultSize.height,
197
216
  z_index: Number.isFinite(r.z_index) && r.z_index >= 0 ? r.z_index : 1,
198
217
  created_at_unix_ms: Number.isFinite(r.created_at_unix_ms) ? r.created_at_unix_ms : Date.now()
199
218
  };
200
- }), c = typeof i.selectedWidgetId == "string" && a.some((r) => r.id === i.selectedWidgetId) ? i.selectedWidgetId : null, s = ie(i.stickyNotes), l = ce(i.annotations), x = he(i.backgroundLayers), h = v(i.mode), _ = J(i.viewport, h);
219
+ }), c = typeof i.selectedWidgetId == "string" && a.some((r) => r.id === i.selectedWidgetId) ? i.selectedWidgetId : null, s = ie(i.stickyNotes), l = ce(i.annotations), x = he(i.backgroundLayers), h = v(i.mode), u = J(i.viewport, h);
201
220
  return {
202
221
  version: 1,
203
222
  widgets: a,
204
- viewport: _,
223
+ viewport: u,
205
224
  locked: typeof i.locked == "boolean" ? i.locked : !1,
206
225
  filters: Q(i.filters, n),
207
226
  selectedWidgetId: c,
@@ -221,8 +240,8 @@ function Ne(e, t = {}) {
221
240
  backgroundLayers: x
222
241
  };
223
242
  }
224
- function _e(e) {
225
- const t = z(e), n = Date.now(), o = [
243
+ function ue(e) {
244
+ const t = T(e), n = Date.now(), o = [
226
245
  { type: "terminal", title: "dev · terminal", x: 80, y: 80 },
227
246
  { type: "file-browser", title: "project · files", x: 600, y: 80 },
228
247
  { type: "system-monitor", title: "host · system monitor", x: 80, y: 420 },
@@ -258,7 +277,7 @@ function _e(e) {
258
277
  id: "wb-seed-sticky-1",
259
278
  kind: "sticky_note",
260
279
  body: "Confirm the rollout checklist before touching production.",
261
- color: T,
280
+ color: z,
262
281
  x: 930,
263
282
  y: 620,
264
283
  width: 270,
@@ -305,12 +324,12 @@ function _e(e) {
305
324
  ]
306
325
  };
307
326
  }
308
- const Oe = 1.18, Ee = 200, I = 0.35, L = 0.2, k = I, g = 2.2, ue = 48;
309
- function p(e) {
327
+ const Ee = 1.18, Se = 200, I = 0.35, L = 0.2, k = I, g = 2.2, _e = 48;
328
+ function F(e) {
310
329
  return e === "annotation" || e === "background" ? "background" : "work";
311
330
  }
312
331
  function fe(e) {
313
- return p(e) === "background" ? {
332
+ return F(e) === "background" ? {
314
333
  mode: "background",
315
334
  label: "Composition Mode",
316
335
  minScale: L,
@@ -324,7 +343,7 @@ function fe(e) {
324
343
  layerEditingEnabled: !1
325
344
  };
326
345
  }
327
- function Se(e) {
346
+ function Re(e) {
328
347
  const t = b(
329
348
  e.scale,
330
349
  e.minScale ?? L,
@@ -347,8 +366,8 @@ function me(e) {
347
366
  scale: t
348
367
  };
349
368
  }
350
- function Re(e) {
351
- const t = e.minScale ?? k, n = e.maxScale ?? g, o = e.paddingPx ?? ue, i = Math.max(e.frameWidth - o * 2, 1), a = Math.max(e.frameHeight - o * 2, 1), c = b(
369
+ function ze(e) {
370
+ const t = e.minScale ?? k, n = e.maxScale ?? g, o = e.paddingPx ?? _e, i = Math.max(e.frameWidth - o * 2, 1), a = Math.max(e.frameHeight - o * 2, 1), c = b(
352
371
  Math.min(
353
372
  i / Math.max(e.widget.width, 1),
354
373
  a / Math.max(e.widget.height, 1)
@@ -375,12 +394,12 @@ function Te(e) {
375
394
  topRenderLayer: Math.max(t.length, 1)
376
395
  };
377
396
  }
378
- function ze(e) {
397
+ function Ce(e) {
379
398
  const t = typeof window < "u" ? window.innerWidth : 1280, n = typeof window < "u" ? window.innerHeight : 800;
380
399
  let o = e.clientX, i = e.clientY;
381
400
  return o + e.menuWidth > t && (o = Math.max(0, t - e.menuWidth - 8)), i + e.menuHeight > n && (i = Math.max(0, n - e.menuHeight - 8)), { left: o, top: i };
382
401
  }
383
- function Ce(e, t, n, o) {
402
+ function Ae(e, t, n, o) {
384
403
  const i = e.filter((h) => o[h.type]);
385
404
  if (i.length === 0) return null;
386
405
  if (!t) return i[0] ?? null;
@@ -390,27 +409,27 @@ function Ce(e, t, n, o) {
390
409
  let l = null, x = 1 / 0;
391
410
  for (const h of i) {
392
411
  if (h.id === t) continue;
393
- const _ = h.x + h.width / 2 - c, r = h.y + h.height / 2 - s;
394
- let u = !1;
412
+ const u = h.x + h.width / 2 - c, r = h.y + h.height / 2 - s;
413
+ let _ = !1;
395
414
  switch (n) {
396
415
  case "up":
397
- u = r < -10;
416
+ _ = r < -10;
398
417
  break;
399
418
  case "down":
400
- u = r > 10;
419
+ _ = r > 10;
401
420
  break;
402
421
  case "left":
403
- u = _ < -10;
422
+ _ = u < -10;
404
423
  break;
405
424
  case "right":
406
- u = _ > 10;
425
+ _ = u > 10;
407
426
  break;
408
427
  }
409
- if (!u) continue;
410
- const F = Math.sqrt(_ * _ + r * r), B = Math.atan2(
411
- Math.abs(n === "up" || n === "down" ? _ : r),
412
- Math.abs(n === "up" || n === "down" ? r : _)
413
- ), M = F * (1 + B * 1.5);
428
+ if (!_) continue;
429
+ const p = Math.sqrt(u * u + r * r), B = Math.atan2(
430
+ Math.abs(n === "up" || n === "down" ? u : r),
431
+ Math.abs(n === "up" || n === "down" ? r : u)
432
+ ), M = p * (1 + B * 1.5);
414
433
  M < x && (x = M, l = h);
415
434
  }
416
435
  return l;
@@ -418,35 +437,36 @@ function Ce(e, t, n, o) {
418
437
  function b(e, t = k, n = g) {
419
438
  return Math.max(t, Math.min(n, e));
420
439
  }
421
- function Ae(e, t = 0) {
440
+ function He(e, t = 0) {
422
441
  return 16 + Math.max(1, e) * 32 + Math.max(0, t) * 9;
423
442
  }
424
443
  export {
425
- Oe as WORKBENCH_CANVAS_ZOOM_STEP,
444
+ Ee as WORKBENCH_CANVAS_ZOOM_STEP,
426
445
  L as WORKBENCH_COMPOSITION_MIN_SCALE,
427
- Ee as WORKBENCH_CONTEXT_MENU_WIDTH_PX,
446
+ Se as WORKBENCH_CONTEXT_MENU_WIDTH_PX,
428
447
  g as WORKBENCH_MAX_SCALE,
429
448
  k as WORKBENCH_MIN_SCALE,
430
- ue as WORKBENCH_VIEWPORT_FIT_PADDING_PX,
449
+ _e as WORKBENCH_VIEWPORT_FIT_PADDING_PX,
431
450
  I as WORKBENCH_WORK_MIN_SCALE,
432
451
  b as clampScale,
433
- ze as createContextMenuPosition,
434
- _e as createDefaultWorkbenchState,
452
+ Ce as createContextMenuPosition,
453
+ ue as createDefaultWorkbenchState,
435
454
  $ as createWorkbenchId,
436
455
  q as createWorkbenchProjectedRect,
437
456
  Te as createWorkbenchRenderLayerMap,
438
- Se as createWorkbenchViewportAtScale,
457
+ Re as createWorkbenchViewportAtScale,
439
458
  me as createWorkbenchViewportCenteredOnWidget,
440
- Re as createWorkbenchViewportFitForWidget,
459
+ ze as createWorkbenchViewportFitForWidget,
460
+ Ne as createWorkbenchWidgetFrame,
441
461
  Me as createWorkbenchWidgetSurfaceMetrics,
442
- Ae as estimateContextMenuHeight,
443
- Ce as findNearestWidget,
444
- p as normalizeWorkbenchInteractionMode,
462
+ He as estimateContextMenuHeight,
463
+ Ae as findNearestWidget,
464
+ F as normalizeWorkbenchInteractionMode,
445
465
  fe as resolveWorkbenchModeStrategy,
446
466
  ke as resolveWorkbenchProjectedSurfaceScaleBehavior,
447
467
  We as resolveWorkbenchWidgetRenderMode,
448
468
  Q as sanitizeFilters,
449
469
  Z as sanitizeViewport,
450
- Ne as sanitizeWorkbenchState,
470
+ Oe as sanitizeWorkbenchState,
451
471
  J as sanitizeWorkbenchViewportForMode
452
472
  };
package/dist/workbench.js CHANGED
@@ -1,20 +1,20 @@
1
1
  import { DEFAULT_WORKBENCH_THEME as E, WORKBENCH_THEMES as _, WORKBENCH_THEME_IDS as o, isWorkbenchThemeId as O, workbenchThemeMeta as t } from "./components/workbench/workbenchThemes.js";
2
- import { DEFAULT_WORKBENCH_VIEWPORT as W, WORKBENCH_BACKGROUND_REGION_FILTER_ID as R, WORKBENCH_LAYER_COMPONENT_FILTER_IDS as c, WORKBENCH_STICKY_FILTER_ID as N, WORKBENCH_TEXT_FILTER_ID as C, WORKBENCH_WIDGET_TYPES as n } from "./components/workbench/types.js";
3
- import { WIDGET_REGISTRY as K, createWorkbenchFilterState as h, getWidgetEntry as B, isValidWorkbenchWidgetType as a, resolveWorkbenchWidgetDefinitions as H } from "./components/workbench/widgets/widgetRegistry.js";
4
- import { WORKBENCH_BACKGROUND_MATERIALS as S, WORKBENCH_DEFAULT_BACKGROUND_MATERIAL as i, WORKBENCH_DEFAULT_REGION_FILL as b, WORKBENCH_DEFAULT_STICKY_NOTE_COLOR as k, WORKBENCH_DEFAULT_TEXT_COLOR as D, WORKBENCH_DEFAULT_TEXT_FONT as F, WORKBENCH_REGION_FILL_OPTIONS as d, WORKBENCH_STICKY_NOTE_COLORS as f, WORKBENCH_TEXT_COLOR_OPTIONS as A, WORKBENCH_TEXT_EMOJI_OPTIONS as p, WORKBENCH_TEXT_FONT_OPTIONS as m } from "./components/workbench/workbenchOptions.js";
2
+ import { DEFAULT_WORKBENCH_VIEWPORT as T, WORKBENCH_BACKGROUND_REGION_FILTER_ID as R, WORKBENCH_LAYER_COMPONENT_FILTER_IDS as c, WORKBENCH_STICKY_FILTER_ID as N, WORKBENCH_TEXT_FILTER_ID as C, WORKBENCH_WIDGET_TYPES as n } from "./components/workbench/types.js";
3
+ import { WIDGET_REGISTRY as K, createWorkbenchFilterState as a, getWidgetEntry as h, isValidWorkbenchWidgetType as B, resolveWorkbenchWidgetDefinitions as H } from "./components/workbench/widgets/widgetRegistry.js";
4
+ import { WORKBENCH_BACKGROUND_MATERIALS as i, WORKBENCH_DEFAULT_BACKGROUND_MATERIAL as S, WORKBENCH_DEFAULT_REGION_FILL as b, WORKBENCH_DEFAULT_STICKY_NOTE_COLOR as k, WORKBENCH_DEFAULT_TEXT_COLOR as D, WORKBENCH_DEFAULT_TEXT_FONT as F, WORKBENCH_REGION_FILL_OPTIONS as d, WORKBENCH_STICKY_NOTE_COLORS as f, WORKBENCH_TEXT_COLOR_OPTIONS as A, WORKBENCH_TEXT_EMOJI_OPTIONS as m, WORKBENCH_TEXT_FONT_OPTIONS as p } from "./components/workbench/workbenchOptions.js";
5
5
  import { WorkbenchContextMenu as x } from "./components/workbench/WorkbenchContextMenu.js";
6
6
  import { WorkbenchOverlay as U } from "./components/workbench/WorkbenchOverlay.js";
7
- import { WorkbenchSurface as G } from "./components/workbench/WorkbenchSurface.js";
8
- import { WorkbenchThemeSelector as g } from "./components/workbench/WorkbenchThemeSelector.js";
9
- import { createDefaultWorkbenchState as X, createWorkbenchId as Y, createWorkbenchProjectedRect as v, createWorkbenchRenderLayerMap as y, createWorkbenchViewportCenteredOnWidget as V, createWorkbenchViewportFitForWidget as w, createWorkbenchWidgetSurfaceMetrics as j, resolveWorkbenchProjectedSurfaceScaleBehavior as z, resolveWorkbenchWidgetRenderMode as J, sanitizeWorkbenchState as q } from "./components/workbench/workbenchHelpers.js";
10
- import { useWorkbenchModel as Z } from "./components/workbench/useWorkbenchModel.js";
7
+ import { WorkbenchSurface as s } from "./components/workbench/WorkbenchSurface.js";
8
+ import { WorkbenchThemeSelector as P } from "./components/workbench/WorkbenchThemeSelector.js";
9
+ import { createDefaultWorkbenchState as X, createWorkbenchId as Y, createWorkbenchProjectedRect as v, createWorkbenchRenderLayerMap as y, createWorkbenchViewportCenteredOnWidget as V, createWorkbenchViewportFitForWidget as w, createWorkbenchWidgetFrame as j, createWorkbenchWidgetSurfaceMetrics as z, resolveWorkbenchProjectedSurfaceScaleBehavior as J, resolveWorkbenchWidgetRenderMode as q, sanitizeWorkbenchState as Q } from "./components/workbench/workbenchHelpers.js";
10
+ import { useWorkbenchModel as $ } from "./components/workbench/useWorkbenchModel.js";
11
11
  export {
12
12
  E as DEFAULT_WORKBENCH_THEME,
13
- W as DEFAULT_WORKBENCH_VIEWPORT,
13
+ T as DEFAULT_WORKBENCH_VIEWPORT,
14
14
  K as WIDGET_REGISTRY,
15
- S as WORKBENCH_BACKGROUND_MATERIALS,
15
+ i as WORKBENCH_BACKGROUND_MATERIALS,
16
16
  R as WORKBENCH_BACKGROUND_REGION_FILTER_ID,
17
- i as WORKBENCH_DEFAULT_BACKGROUND_MATERIAL,
17
+ S as WORKBENCH_DEFAULT_BACKGROUND_MATERIAL,
18
18
  b as WORKBENCH_DEFAULT_REGION_FILL,
19
19
  k as WORKBENCH_DEFAULT_STICKY_NOTE_COLOR,
20
20
  D as WORKBENCH_DEFAULT_TEXT_COLOR,
@@ -24,31 +24,32 @@ export {
24
24
  N as WORKBENCH_STICKY_FILTER_ID,
25
25
  f as WORKBENCH_STICKY_NOTE_COLORS,
26
26
  A as WORKBENCH_TEXT_COLOR_OPTIONS,
27
- p as WORKBENCH_TEXT_EMOJI_OPTIONS,
27
+ m as WORKBENCH_TEXT_EMOJI_OPTIONS,
28
28
  C as WORKBENCH_TEXT_FILTER_ID,
29
- m as WORKBENCH_TEXT_FONT_OPTIONS,
29
+ p as WORKBENCH_TEXT_FONT_OPTIONS,
30
30
  _ as WORKBENCH_THEMES,
31
31
  o as WORKBENCH_THEME_IDS,
32
32
  n as WORKBENCH_WIDGET_TYPES,
33
33
  x as WorkbenchContextMenu,
34
34
  U as WorkbenchOverlay,
35
- G as WorkbenchSurface,
36
- g as WorkbenchThemeSelector,
35
+ s as WorkbenchSurface,
36
+ P as WorkbenchThemeSelector,
37
37
  X as createDefaultWorkbenchState,
38
- h as createWorkbenchFilterState,
38
+ a as createWorkbenchFilterState,
39
39
  Y as createWorkbenchId,
40
40
  v as createWorkbenchProjectedRect,
41
41
  y as createWorkbenchRenderLayerMap,
42
42
  V as createWorkbenchViewportCenteredOnWidget,
43
43
  w as createWorkbenchViewportFitForWidget,
44
- j as createWorkbenchWidgetSurfaceMetrics,
45
- B as getWidgetEntry,
46
- a as isValidWorkbenchWidgetType,
44
+ j as createWorkbenchWidgetFrame,
45
+ z as createWorkbenchWidgetSurfaceMetrics,
46
+ h as getWidgetEntry,
47
+ B as isValidWorkbenchWidgetType,
47
48
  O as isWorkbenchThemeId,
48
- z as resolveWorkbenchProjectedSurfaceScaleBehavior,
49
+ J as resolveWorkbenchProjectedSurfaceScaleBehavior,
49
50
  H as resolveWorkbenchWidgetDefinitions,
50
- J as resolveWorkbenchWidgetRenderMode,
51
- q as sanitizeWorkbenchState,
52
- Z as useWorkbenchModel,
51
+ q as resolveWorkbenchWidgetRenderMode,
52
+ Q as sanitizeWorkbenchState,
53
+ $ as useWorkbenchModel,
53
54
  t as workbenchThemeMeta
54
55
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@floegence/floe-webapp-core",
3
- "version": "0.36.48",
3
+ "version": "0.36.50",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",