@floegence/floe-webapp-core 0.86.23 → 0.86.25

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.
@@ -2,7 +2,7 @@ import { type WorkbenchCompositionMessages } from './workbenchCompositionMessage
2
2
  import { type UIFirstSelectionEvent } from '../../utils/uiFirstSelection';
3
3
  import { type WorkbenchContextMenuItem } from './WorkbenchContextMenu';
4
4
  import { type WorkbenchDockItemActivation, type WorkbenchDockItemActivationMode, type WorkbenchDockAction, type WorkbenchDockModeIcons, type WorkbenchExternalDockDragController, type WorkbenchHostDockItem } from './WorkbenchFilterBar';
5
- import type { WorkbenchState, WorkbenchAnnotationItem, WorkbenchBackgroundLayer, WorkbenchBackgroundLayerDefaults, WorkbenchBackgroundLayerPatch, WorkbenchContextMenuState, WorkbenchInteractionAdapter, WorkbenchStickyNoteItem, WorkbenchStickyNotePatch, WorkbenchTextAnnotationDefaults, WorkbenchTextAnnotationPatch, WorkbenchWidgetDefinition, WorkbenchWidgetItem, WorkbenchWidgetType } from './types';
5
+ import type { WorkbenchState, WorkbenchAnnotationItem, WorkbenchBackgroundLayer, WorkbenchBackgroundLayerDefaults, WorkbenchBackgroundLayerPatch, WorkbenchContextMenuState, WorkbenchDockToolId, WorkbenchInteractionAdapter, WorkbenchStickyNoteItem, WorkbenchStickyNotePatch, WorkbenchTextAnnotationDefaults, WorkbenchTextAnnotationPatch, WorkbenchWidgetDefinition, WorkbenchWidgetItem, WorkbenchWidgetType } from './types';
6
6
  export interface WorkbenchCreateAtOptions {
7
7
  worldX?: number;
8
8
  worldY?: number;
@@ -74,6 +74,8 @@ export interface WorkbenchSurfaceProps {
74
74
  * backward compatibility. Drag-to-create and host Dock items are unchanged.
75
75
  */
76
76
  dockItemActivationMode?: WorkbenchDockItemActivationMode;
77
+ /** Orders work-mode Dock widgets and tools; unlisted entries follow in their existing order. */
78
+ dockComponentOrder?: readonly (WorkbenchWidgetType | WorkbenchDockToolId)[];
77
79
  onDockItemClick?: (item: WorkbenchDockItemActivation) => boolean | void;
78
80
  /** Host artwork for the Dock mode trigger and its menu. */
79
81
  dockModeIcons?: WorkbenchDockModeIcons;
@@ -1,7 +1,7 @@
1
1
  import { createComponent as l, use as at, spread as dt, mergeProps as st, insert as C, Portal as ut, addEventListener as lt, template as P, delegateEvents as gt } from "solid-js/web";
2
2
  import { WorkbenchCompositionActionsContext as ft, WorkbenchCompositionMessagesContext as wt } from "./workbenchCompositionMessages.js";
3
3
  import { createMemo as k, createSignal as I, untrack as h, createEffect as b, onCleanup as W, Show as kt } from "solid-js";
4
- import { clientToCanvasWorld as O } from "../ui/canvasGeometry.js";
4
+ import { clientToCanvasWorld as E } from "../ui/canvasGeometry.js";
5
5
  import { createUIFirstSelection as mt } from "../../utils/uiFirstSelection.js";
6
6
  import { WorkbenchCanvas as vt } from "./WorkbenchCanvas.js";
7
7
  import { WorkbenchContextMenu as yt } from "./WorkbenchContextMenu.js";
@@ -15,8 +15,8 @@ import { useWorkbenchModel as Dt } from "./useWorkbenchModel.js";
15
15
  import { sortWorkbenchDockFocusCandidates as Mt, workbenchDockFocusCandidateKey as R, resolveWorkbenchDockFocusCycle as Lt } from "./workbenchDockFocusCycle.js";
16
16
  import { resolveWorkbenchInteractionAdapter as Ft } from "./workbenchInteractionAdapter.js";
17
17
  import { SURFACE_PORTAL_LAYER_ATTR as Tt, DIALOG_SURFACE_HOST_ATTR as Bt } from "../ui/dialogSurfaceScope.js";
18
- var _t = /* @__PURE__ */ P("<div class=workbench-menu-backdrop data-floe-workbench-boundary=true>"), Et = /* @__PURE__ */ P("<div><div class=workbench-surface__body data-floe-workbench-canvas-frame=true>");
19
- const Ot = "F1";
18
+ var _t = /* @__PURE__ */ P("<div class=workbench-menu-backdrop data-floe-workbench-boundary=true>"), Ot = /* @__PURE__ */ P("<div><div class=workbench-surface__body data-floe-workbench-canvas-frame=true>");
19
+ const Et = "F1";
20
20
  function N(c) {
21
21
  if (c)
22
22
  try {
@@ -290,7 +290,7 @@ function ee(c) {
290
290
  c.onApiReady?.(null);
291
291
  });
292
292
  });
293
- const E = () => c.lockShortcut === void 0 ? Ot : c.lockShortcut;
293
+ const O = () => c.lockShortcut === void 0 ? Et : c.lockShortcut;
294
294
  b(() => {
295
295
  if (typeof window > "u" || !e.contextMenu.state()) return;
296
296
  const t = bt({
@@ -315,7 +315,7 @@ function ee(c) {
315
315
  });
316
316
  }), b(() => {
317
317
  if (c.enableKeyboard === !1 || typeof document > "u") return;
318
- const t = E(), n = (o) => {
318
+ const t = O(), n = (o) => {
319
319
  if (!(o.defaultPrevented || o.isComposing)) {
320
320
  if (t !== null && o.key === t) {
321
321
  o.preventDefault(), e.lock.toggle();
@@ -353,14 +353,14 @@ function ee(c) {
353
353
  if (o?.worldPoint)
354
354
  return o.worldPoint;
355
355
  if (o?.canvasFrame)
356
- return O(o.canvasFrame, e.viewport(), {
356
+ return E(o.canvasFrame, e.viewport(), {
357
357
  clientX: t,
358
358
  clientY: n
359
359
  });
360
360
  const r = g()?.querySelector('[data-floe-workbench-canvas-frame="true"]');
361
361
  if (!r) return null;
362
362
  const i = r.getBoundingClientRect();
363
- return O(i, e.viewport(), {
363
+ return E(i, e.viewport(), {
364
364
  clientX: t,
365
365
  clientY: n
366
366
  });
@@ -423,7 +423,7 @@ function ee(c) {
423
423
  return l(wt.Provider, {
424
424
  value: X,
425
425
  get children() {
426
- var t = Et(), n = t.firstChild;
426
+ var t = Ot(), n = t.firstChild;
427
427
  return at(z, t), dt(t, st({
428
428
  get class() {
429
429
  return `workbench-surface${c.class ? ` ${c.class}` : ""}`;
@@ -596,7 +596,7 @@ function ee(c) {
596
596
  return e.lock.toggle;
597
597
  },
598
598
  get shortcutLabel() {
599
- return E() ?? void 0;
599
+ return O() ?? void 0;
600
600
  }
601
601
  }), null), C(t, l(At, {
602
602
  get widgetDefinitions() {
@@ -641,6 +641,9 @@ function ee(c) {
641
641
  get dockActions() {
642
642
  return c.dockActions;
643
643
  },
644
+ get componentOrder() {
645
+ return c.dockComponentOrder;
646
+ },
644
647
  get dockItems() {
645
648
  return c.dockItems;
646
649
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@floegence/floe-webapp-core",
3
- "version": "0.86.23",
3
+ "version": "0.86.25",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",