@oh-just-another/editor 0.58.1 → 0.59.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/Diagram.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState, } from "react";
3
3
  import { Clipboard, Copy, Delete, Download, FileDown, FileUp, Grid3x3, Grip, HelpCircle, ImageDown, Library as LibraryIcon, Magnet, Maximize, Minus, Monitor, Moon, MousePointer, Plus, Redo2, RotateCcw, Scissors, Sun, Undo2, ZoomIn, ZoomOut, } from "lucide-react";
4
- import { BottomBar, BottomSheet, ButtonGroup, ContextMenu, DEFAULT_CONTEXT_MENU, DEFAULT_VERTICAL_TOOLBAR, DiagramRoot, CommandPalette, DiagramSurface, HelpButton, HelpDialog, IconButton, LibraryPanel, MainMenu, ResetToContentButton, LinkHoverPopup, LinkDropShapeMenu, LinkCaptionEditor, SelectionFloatingPanel, TextEditorOverlay, FrameNameEditorOverlay, ToastHost, Toolbar, Tooltip, TooltipProvider, TopBar, UILayer, useDiagramOptional, useHelpDialogHotkey, useMobileLayout, usePalettePlacement, useScene, } from "@oh-just-another/react-ui";
4
+ import { BottomBar, BottomSheet, ButtonGroup, ContextMenu, DEFAULT_CONTEXT_MENU, DEFAULT_VERTICAL_TOOLBAR, DiagramRoot, CommandPalette, DiagramSurface, HelpButton, HelpDialog, IconButton, LibraryPanel, MainMenu, ResetToContentButton, LinkHoverPopup, LinkDropShapeMenu, LinkCaptionEditor, SelectionFloatingPanel, TextEditorOverlay, FrameNameEditorOverlay, PortalContainerProvider, ToastHost, Toolbar, Tooltip, TooltipProvider, TopBar, UILayer, useDiagramOptional, useHelpDialogHotkey, useMobileLayout, usePalettePlacement, useScene, } from "@oh-just-another/react-ui";
5
5
  /**
6
6
  * Lucide icon sizing — `MENU_ICON_SIZE` is for in-row icons of
7
7
  * `MainMenu.Item`, `TOGGLE_ICON_SIZE` is for the segmented Theme /
@@ -19,20 +19,23 @@ const buttonIcon = { size: BUTTON_ICON_SIZE, strokeWidth: BUTTON_ICON_STROKE };
19
19
  /** Default target for the Help-menu "GitHub" link (overridable / hideable via the `repositoryUrl` prop). */
20
20
  const DEFAULT_REPOSITORY_URL = "https://github.com/oh-just-another/diagram";
21
21
  import { formatHotkey } from "@oh-just-another/state";
22
- import { emptyScene } from "@oh-just-another/scene";
22
+ import { hydrateScene, isText, } from "@oh-just-another/scene";
23
23
  import { parseScene, stringifyScene } from "@oh-just-another/serialization";
24
24
  import { renderSceneToSvg } from "@oh-just-another/renderer-svg";
25
25
  import { WasmTextShaper } from "@oh-just-another/text-wasm";
26
26
  import { WasmRasterizer } from "@oh-just-another/raster-wasm";
27
+ import { registerBundledFonts } from "@oh-just-another/fonts";
27
28
  import { createRenderWorker } from "@oh-just-another/renderer-canvas";
28
29
  import { registerAnimationAdapter, setActiveRasterizer, setActiveTextShaper, } from "@oh-just-another/renderer-core";
29
30
  import { registerLayoutKind } from "@oh-just-another/scene";
30
31
  import { defaultRegistry } from "@oh-just-another/templates";
31
32
  import { detectCapabilities, logCapabilities, } from "./capabilities";
33
+ import { installGifAnimationAdapter } from "./gif-animation.js";
34
+ import { useThemedPortalContainer } from "./themed-portal-container.js";
32
35
  import { exportSceneToPng } from "./png-export";
33
36
  import { isEditableTarget } from "./dom-focus";
34
37
  export const Diagram = forwardRef(function Diagram(props, ref) {
35
- const { initialScene, initialMode = "select", templates, fileDropHandlers, layoutKinds, animationAdapters, onReady, onSceneChange, onSelectionChange, capabilities: capabilityOverrides, workerFactory, hideTopBar, hideBottomBar, hideToolbar, hideLibraryButton, hideMainMenu, hideZoomControls, hideResetToContent, hideHelpButton, hideContextMenu, hideSelectionPanel, renderTopBarLeft, renderTopBarCenter, renderTopBarRight, renderBottomBarLeft, renderBottomBarCenter, renderBottomBarRight, renderMainMenuExtras, onImportTemplates, theme: themeProp, defaultTheme = "system", onThemeChange, persistTheme, repositoryUrl, onConfirm, onNotify, className, style, } = props;
38
+ const { initialScene, initialMode = "select", grid, snap, templates, fileDropHandlers, layoutKinds, animationAdapters, onReady, onSceneChange, onSelectionChange, capabilities: capabilityOverrides, workerFactory, hideTopBar, hideBottomBar, hideToolbar, hideLibraryButton, hideMainMenu, hideZoomControls, hideResetToContent, hideHelpButton, hideContextMenu, hideSelectionPanel, renderTopBarLeft, renderTopBarCenter, renderTopBarRight, renderBottomBarLeft, renderBottomBarCenter, renderBottomBarRight, renderMainMenuExtras, onImportTemplates, theme: themeProp, defaultTheme = "system", onThemeChange, persistTheme, repositoryUrl, onConfirm, onNotify, className, style, } = props;
36
39
  // Theme: controlled when `themeProp` is provided, otherwise
37
40
  // self-managed via `internalTheme`. The lazy `useState` initializer
38
41
  // reads from `localStorage` once when `persistTheme` is on.
@@ -52,6 +55,9 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
52
55
  return defaultTheme;
53
56
  });
54
57
  const theme = themeProp ?? internalTheme;
58
+ // Floating UI portals here (a body-level wrapper that mirrors `theme`) so it
59
+ // inherits the app theme instead of the OS `prefers-color-scheme` fallback.
60
+ const portalContainer = useThemedPortalContainer(theme);
55
61
  const changeTheme = useCallback((next) => {
56
62
  if (themeProp === undefined)
57
63
  setInternalTheme(next);
@@ -60,17 +66,30 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
60
66
  }
61
67
  onThemeChange?.(next);
62
68
  }, [themeProp, onThemeChange, storageKey]);
63
- const seed = useMemo(() => initialScene ?? emptyScene(), [initialScene]);
69
+ // Seed scene: host grid/snap props are merged over the defaults; a persisted
70
+ // `initialScene` (user data) wins over them. Depend on primitives so an
71
+ // inline `grid` object prop doesn't re-seed the editor every render.
72
+ const gridEnabled = grid?.enabled;
73
+ const gridStyle = grid?.style;
74
+ const seed = useMemo(() => hydrateScene({
75
+ ...(initialScene ? { saved: initialScene } : {}),
76
+ hostSettings: buildHostSettings(gridEnabled, gridStyle, snap),
77
+ }), [initialScene, gridEnabled, gridStyle, snap]);
64
78
  // Does the initial scene contain any text? Drives whether first paint
65
79
  // waits for the MSDF shaper (see the mount gate below).
66
80
  const sceneHasText = useMemo(() => {
67
81
  for (const s of seed.elements.values())
68
- if (s.type === "text")
82
+ if (isText(s))
69
83
  return true;
70
84
  return false;
71
85
  }, [seed]);
72
86
  // --- Plugin registration ---
73
87
  useEffect(() => {
88
+ // Built-in GIF decoder, registered by default so dropped / pasted GIFs play
89
+ // out of the box. Idempotent + lazy (gifuct-js loads on first decode). A
90
+ // host `animationAdapters` entry with kind "gif" overrides it (those are
91
+ // registered after).
92
+ installGifAnimationAdapter();
74
93
  if (templates)
75
94
  for (const t of templates)
76
95
  defaultRegistry.register(t);
@@ -90,6 +109,9 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
90
109
  // font is ready, so text doesn't render in a fallback font and then
91
110
  // snap to the WASM font ("jump" on load — a FOUT).
92
111
  const [wasmTextSettled, setWasmTextSettled] = useState(false);
112
+ // Flipped once the bundled web fonts finish loading, so the canvas can
113
+ // redraw text in them (the browser doesn't auto-repaint canvas text).
114
+ const [fontsReady, setFontsReady] = useState(false);
93
115
  const detectionRef = useRef(null);
94
116
  const loggedRef = useRef(false);
95
117
  useEffect(() => {
@@ -106,6 +128,18 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
106
128
  }
107
129
  setProfile(detected);
108
130
  const loads = [];
131
+ // Load the bundled fonts so every backend draws the same faces; redraw
132
+ // once they settle.
133
+ loads.push(registerBundledFonts(document).then(() => {
134
+ if (!cancelled)
135
+ setFontsReady(true);
136
+ }, (err) => {
137
+ // Settle even on failure so a text scene still mounts (in the
138
+ // fallback font) instead of hanging on the first-paint gate.
139
+ if (!cancelled)
140
+ setFontsReady(true);
141
+ console.warn("[diagram] bundled fonts load failed", err);
142
+ }));
109
143
  if (detected.wasmText) {
110
144
  loads.push(WasmTextShaper.loadBundled().then((shaper) => {
111
145
  if (cancelled)
@@ -156,19 +190,24 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
156
190
  editor.setMode(editor.mode);
157
191
  return undefined;
158
192
  }, [editor, wasmShaper, wasmRaster]);
159
- // Animation adapters (GIF decoder) are registered in the plugin
160
- // effect above, which runs AFTER the editor's first paint (child
161
- // effects fire before parent ones). Force one render once both the
162
- // editor and the adapters are in place so each animated shape's first
163
- // `getFrameAt` runs — that kicks off the async decode, after which the
164
- // decode→re-render nudge (`onAnimationContentReady`) paints the frame.
165
- // Without this, a paused GIF restored from storage never even starts
166
- // decoding and stays blank.
193
+ // Animation adapters (GIF decoder) are registered in the plugin effect above,
194
+ // which runs AFTER the editor's first paint (child effects fire before parent
195
+ // ones). Force one render once the editor is ready so each animated shape's
196
+ // first `getFrameAt` runs that kicks off the async decode, after which the
197
+ // decode→re-render nudge (`onAnimationContentReady`) paints the frame. The
198
+ // built-in GIF adapter is always registered, so this nudge is unconditional
199
+ // (also re-runs if a host swaps `animationAdapters`). Without it, a paused GIF
200
+ // restored from storage never even starts decoding and stays blank.
167
201
  useEffect(() => {
168
- if (editor && animationAdapters && animationAdapters.length > 0) {
202
+ if (editor)
169
203
  editor.forceRender();
170
- }
171
204
  }, [editor, animationAdapters]);
205
+ // Redraw once the bundled fonts load so canvas text switches from the
206
+ // fallback face to the bundled one.
207
+ useEffect(() => {
208
+ if (editor && fontsReady)
209
+ editor.forceRender();
210
+ }, [editor, fontsReady]);
172
211
  useEffect(() => {
173
212
  if (!editor || (!onSceneChange && !onSelectionChange))
174
213
  return undefined;
@@ -185,21 +224,24 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
185
224
  }
186
225
  });
187
226
  }, [editor, onSceneChange, onSelectionChange]);
188
- // Hold Cmd / Ctrl to temporarily pull a shape off the grid during a
189
- // drag (standard). We read the modifier state off every key event
190
- // (and reset on blur) so a missed keyup can't leave snapping stuck off.
227
+ // Track transform modifiers off every key event (and reset on blur) so a
228
+ // missed keyup can't leave a flag stuck: Cmd/Ctrl pulls a shape off the grid
229
+ // for one drag; Alt resizes about the centre; Shift locks the resize aspect
230
+ // ratio or constrains a move to one axis.
191
231
  useEffect(() => {
192
232
  if (!editor)
193
233
  return undefined;
194
234
  const sync = (e) => {
195
- // Don't track the modifier (or touch snap state) while typing in a
196
- // field — keep the editor's snap-suppress flag inert there.
235
+ // Don't track modifiers (or touch snap state) while typing in a field —
236
+ // keep the editor's transform flags inert there.
197
237
  if (isEditableTarget(e.target))
198
238
  return;
199
239
  editor.setSnapSuppressed(e.metaKey || e.ctrlKey);
240
+ editor.setTransformModifiers({ alt: e.altKey, shift: e.shiftKey });
200
241
  };
201
242
  const reset = () => {
202
243
  editor.setSnapSuppressed(false);
244
+ editor.setTransformModifiers({ alt: false, shift: false });
203
245
  };
204
246
  window.addEventListener("keydown", sync);
205
247
  window.addEventListener("keyup", sync);
@@ -209,6 +251,7 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
209
251
  window.removeEventListener("keyup", sync);
210
252
  window.removeEventListener("blur", reset);
211
253
  editor.setSnapSuppressed(false);
254
+ editor.setTransformModifiers({ alt: false, shift: false });
212
255
  };
213
256
  }, [editor]);
214
257
  useImperativeHandle(ref, () => ({
@@ -233,24 +276,26 @@ export const Diagram = forwardRef(function Diagram(props, ref) {
233
276
  if (!profile) {
234
277
  return _jsx("div", { className: className, style: style });
235
278
  }
236
- // Hold the first paint of a text-bearing scene until the MSDF shaper
237
- // has settled, so text renders in its final font from frame one (no
238
- // fallback-font WASM-font jump). Only the WebGL2 MSDF path swaps
239
- // fonts like this; Canvas2D always draws system fonts (no jump), and
240
- // text-free scenes have nothing to jump — both mount immediately, so
241
- // we don't pay shaper-load latency on first paint.
279
+ // Hold the first paint of a text-bearing scene until its font is ready, so
280
+ // text renders in its final face from frame one (no fallback-font jump).
281
+ // Every backend now draws the bundled fonts, so all wait on `fontsReady`;
282
+ // the WebGL2 MSDF path also waits on the shaper. Text-free scenes mount
283
+ // immediately and don't pay the load latency.
284
+ if (sceneHasText && !fontsReady) {
285
+ return _jsx("div", { className: className, style: style });
286
+ }
242
287
  if (profile.renderer === "webgl2" && profile.wasmText && !wasmTextSettled && sceneHasText) {
243
288
  return _jsx("div", { className: className, style: style });
244
289
  }
245
- return (_jsx(ToastHost, { children: _jsx(TooltipProvider, { children: _jsx("div", { className: className, "data-diagram-root": true, ...(theme === "system" ? {} : { "data-theme": theme }), style: {
246
- position: "relative",
247
- width: "100%",
248
- height: "100%",
249
- background: "var(--du-canvas-bg)",
250
- ...style,
251
- }, children: _jsx(DiagramRoot, { initialScene: seed, initialMode: initialMode, onReady: handleReady, renderer: profile.renderer, ...(profile.renderer === "offscreen"
252
- ? { workerFactory: workerFactory ?? createRenderWorker }
253
- : {}), ...(wasmShaper ? { textShaper: wasmShaper } : {}), ...(wasmRaster ? { rasterizer: wasmRaster } : {}), children: _jsx(EditorShell, { hideTopBar: hideTopBar, hideBottomBar: hideBottomBar, hideToolbar: hideToolbar, hideLibraryButton: hideLibraryButton, hideMainMenu: hideMainMenu, hideZoomControls: hideZoomControls, hideResetToContent: hideResetToContent, hideHelpButton: hideHelpButton, hideContextMenu: hideContextMenu, hideSelectionPanel: hideSelectionPanel, renderTopBarLeft: renderTopBarLeft, renderTopBarCenter: renderTopBarCenter, renderTopBarRight: renderTopBarRight, renderBottomBarLeft: renderBottomBarLeft, renderBottomBarCenter: renderBottomBarCenter, renderBottomBarRight: renderBottomBarRight, renderMainMenuExtras: renderMainMenuExtras, onImportTemplates: onImportTemplates, repositoryUrl: repositoryUrl, onConfirm: onConfirm, onNotify: onNotify, theme: theme, changeTheme: changeTheme }) }) }) }) }));
290
+ return (_jsx(PortalContainerProvider, { container: portalContainer, children: _jsx(ToastHost, { children: _jsx(TooltipProvider, { children: _jsx("div", { className: className, "data-diagram-root": true, ...(theme === "system" ? {} : { "data-theme": theme }), style: {
291
+ position: "relative",
292
+ width: "100%",
293
+ height: "100%",
294
+ background: "var(--du-canvas-bg)",
295
+ ...style,
296
+ }, children: _jsx(DiagramRoot, { initialScene: seed, initialMode: initialMode, onReady: handleReady, renderer: profile.renderer, ...(profile.renderer === "offscreen"
297
+ ? { workerFactory: workerFactory ?? createRenderWorker }
298
+ : {}), ...(wasmShaper ? { textShaper: wasmShaper } : {}), ...(wasmRaster ? { rasterizer: wasmRaster } : {}), children: _jsx(EditorShell, { hideTopBar: hideTopBar, hideBottomBar: hideBottomBar, hideToolbar: hideToolbar, hideLibraryButton: hideLibraryButton, hideMainMenu: hideMainMenu, hideZoomControls: hideZoomControls, hideResetToContent: hideResetToContent, hideHelpButton: hideHelpButton, hideContextMenu: hideContextMenu, hideSelectionPanel: hideSelectionPanel, renderTopBarLeft: renderTopBarLeft, renderTopBarCenter: renderTopBarCenter, renderTopBarRight: renderTopBarRight, renderBottomBarLeft: renderBottomBarLeft, renderBottomBarCenter: renderBottomBarCenter, renderBottomBarRight: renderBottomBarRight, renderMainMenuExtras: renderMainMenuExtras, onImportTemplates: onImportTemplates, repositoryUrl: repositoryUrl, onConfirm: onConfirm, onNotify: onNotify, theme: theme, changeTheme: changeTheme }) }) }) }) }) }));
254
299
  });
255
300
  // Match the primary public name (`<Editor>`) in DevTools / stack traces,
256
301
  // even though the internal forwardRef function is named `Diagram`.
@@ -272,7 +317,7 @@ const EditorShell = ({ hideTopBar, hideBottomBar, hideToolbar, hideLibraryButton
272
317
  window.alert(message);
273
318
  });
274
319
  // Subscribe to scene changes so the Grid toggle in MainMenu reads
275
- // the latest viewport.gridSize / gridStyle. `useScene` is a thin
320
+ // the latest viewport.gridEnabled / gridStyle. `useScene` is a thin
276
321
  // selector hook — re-renders only on scene identity flips.
277
322
  void useScene();
278
323
  const paletteDropHandlers = usePalettePlacement();
@@ -348,10 +393,10 @@ const EditorShell = ({ hideTopBar, hideBottomBar, hideToolbar, hideLibraryButton
348
393
  return;
349
394
  if (confirmDialog("Reset canvas? This clears all shapes.")) {
350
395
  // editor.clear() keeps viewport (zoom /
351
- // pan / gridSize) and layers — only
396
+ // pan / gridEnabled) and layers — only
352
397
  // shapes / edges go. loadScene(emptyScene())
353
- // would also drop the grid because
354
- // DEFAULT_VIEWPORT has no gridSize.
398
+ // would also reset the grid because
399
+ // DEFAULT_VIEWPORT has it disabled.
355
400
  editor.clear();
356
401
  }
357
402
  }, disabled: !editor, children: "Reset canvas" })] }), _jsx(MainMenu.Separator, {}), _jsxs(MainMenu.Group, { title: "Edit", children: [_jsx(MainMenu.Item, { icon: _jsx(Undo2, { ...menuIcon }), shortcut: "\u2318Z", onClick: () => editor?.undo(), disabled: !editor, children: "Undo" }), _jsx(MainMenu.Item, { icon: _jsx(Redo2, { ...menuIcon }), shortcut: "\u21E7\u2318Z", onClick: () => editor?.redo(), disabled: !editor, children: "Redo" }), _jsx(MainMenu.Item, { icon: _jsx(Scissors, { ...menuIcon }), shortcut: "\u2318X", onClick: () => editor?.cutSelected(), disabled: !editor, children: "Cut" }), _jsx(MainMenu.Item, { icon: _jsx(Copy, { ...menuIcon }), shortcut: "\u2318C", onClick: () => editor?.copySelected(), disabled: !editor, children: "Copy" }), _jsx(MainMenu.Item, { icon: _jsx(Clipboard, { ...menuIcon }), shortcut: "\u2318V", onClick: () => editor?.paste(), disabled: !editor, children: "Paste" }), _jsx(MainMenu.Item, { icon: _jsx(MousePointer, { ...menuIcon }), shortcut: "\u2318A", onClick: () => editor?.selectAll(), disabled: !editor, children: "Select all" }), _jsx(MainMenu.Item, { icon: _jsx(Delete, { ...menuIcon }), shortcut: "\u232B", onClick: () => editor?.deleteSelected(), disabled: !editor, children: "Delete selected" })] }), _jsx(MainMenu.Separator, {}), _jsxs(MainMenu.Group, { title: "View", children: [_jsx(MainMenu.Item, { icon: _jsx(Maximize, { ...menuIcon }), shortcut: "\u21E7F", onClick: () => editor?.zoomToFit(), disabled: !editor, children: "Fit to screen" }), _jsx(MainMenu.Item, { icon: _jsx(ZoomIn, { ...menuIcon }), shortcut: "\u2318+", onClick: () => editor?.zoomIn(), disabled: !editor, children: "Zoom in" }), _jsx(MainMenu.Item, { icon: _jsx(ZoomOut, { ...menuIcon }), shortcut: "\u2318\u2212", onClick: () => editor?.zoomOut(), disabled: !editor, children: "Zoom out" })] }), _jsx(MainMenu.Separator, {}), _jsx(MainMenu.Group, { title: "Theme", children: _jsx(MainMenu.Toggle, { value: theme, onChange: changeTheme, options: [
@@ -387,8 +432,8 @@ const EditorShell = ({ hideTopBar, hideBottomBar, hideToolbar, hideLibraryButton
387
432
  /**
388
433
  * Platform-correct hotkey labels for the zoom-control tooltips — ⌘
389
434
  * glyphs on macOS, "Ctrl+…" elsewhere, mirroring the top toolbar's
390
- * tool tooltips. Descriptors mirror the bound zoom hotkeys in
391
- * `actionZoom.ts` (display uses the minus/plus glyphs).
435
+ * tool tooltips. Mirror the bound zoom hotkeys (display uses the
436
+ * minus/plus glyphs).
392
437
  */
393
438
  const ZOOM_OUT_HOTKEY = formatHotkey({ meta: true, key: "−" });
394
439
  const ZOOM_IN_HOTKEY = formatHotkey({ meta: true, key: "+" });
@@ -493,12 +538,9 @@ const openSceneFile = (editor, notify) => {
493
538
  * • color — solid background fill (host canvas colour)
494
539
  * • color-and-grid — solid fill + same grid the user sees
495
540
  *
496
- * Scale fixed at 2× for retina-quality output (matches the standard /
497
- * standard default). The full-scene contract makes this symmetric with
498
- * SVG export, which always emits the whole scene.
499
- *
500
- * Implementation lives in `./png-export.ts` so this file stays
501
- * focused on UI wiring.
541
+ * Scale fixed at 2× for retina-quality output. The full-scene
542
+ * contract makes this symmetric with SVG export, which always emits
543
+ * the whole scene.
502
544
  */
503
545
  const PNG_EXPORT_SCALE = 2;
504
546
  const downloadPng = async (editor, background, notify) => {
@@ -527,26 +569,32 @@ const readCanvasBackgroundColor = () => {
527
569
  return value || "#ffffff";
528
570
  };
529
571
  /**
530
- * "Export as SVG" — uses `@renderer-svg.renderSceneToSvg` so the
531
- * output is identical to the headless render path (vector, no
532
- * bitmap fall-back, works in any browser). One file per scene.
572
+ * "Export as SVG" — renders the scene to vector SVG (no bitmap
573
+ * fall-back, works in any browser). One file per scene.
533
574
  */
534
575
  const downloadSvg = (scene) => {
535
576
  const svg = renderSceneToSvg(scene);
536
577
  downloadBlob(new Blob([svg], { type: "image/svg+xml" }), "scene.svg");
537
578
  };
538
579
  // --- Grid toggle helpers ----------------------------------------------------
539
- const DEFAULT_GRID_SIZE = 20;
580
+ /** Translate the `grid` / `snap` props into a partial settings override. */
581
+ const buildHostSettings = (gridEnabled, gridStyle, snap) => ({
582
+ viewport: {
583
+ ...(gridEnabled !== undefined ? { gridEnabled } : {}),
584
+ ...(gridStyle !== undefined ? { gridStyle } : {}),
585
+ ...(snap !== undefined ? { snapToGrid: snap } : {}),
586
+ },
587
+ });
540
588
  /**
541
- * Map the current viewport state to the segmented Grid toggle's
542
- * value. `"off"` when the user hid the grid (gridSize 0 / unset);
543
- * otherwise the stored gridStyle (default `"lines"`).
589
+ * Map the current viewport state to the segmented Grid toggle's value.
590
+ * `"off"` when the grid is disabled; otherwise the stored gridStyle
591
+ * (default `"lines"`).
544
592
  */
545
593
  const gridSelection = (editor) => {
546
594
  if (!editor)
547
595
  return "lines";
548
596
  const vp = editor.scene.viewport;
549
- if (!vp.gridSize || vp.gridSize <= 0)
597
+ if (!vp.gridEnabled)
550
598
  return "off";
551
599
  return vp.gridStyle ?? "lines";
552
600
  };
@@ -556,21 +604,14 @@ const gridSelection = (editor) => {
556
604
  * visibility).
557
605
  */
558
606
  const snapSelection = (editor) => (editor?.snapToGridEnabled ?? true) ? "on" : "off";
559
- /**
560
- * Inverse — translate the toggle's value back into a `setGrid`
561
- * call. Switching from "off" to lines/dots restores the default
562
- * grid size so the user doesn't have to also re-enter it
563
- * separately.
564
- */
607
+ /** Inverse — translate the toggle's value back into a `setGrid` call. */
565
608
  const applyGridSelection = (editor, next) => {
566
609
  if (!editor)
567
610
  return;
568
611
  if (next === "off") {
569
- editor.setGrid({ size: 0 });
612
+ editor.setGrid({ enabled: false });
570
613
  return;
571
614
  }
572
- const vp = editor.scene.viewport;
573
- const size = vp.gridSize && vp.gridSize > 0 ? vp.gridSize : DEFAULT_GRID_SIZE;
574
- editor.setGrid({ size, style: next });
615
+ editor.setGrid({ enabled: true, style: next });
575
616
  };
576
617
  //# sourceMappingURL=Diagram.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Diagram.js","sourceRoot":"","sources":["../src/Diagram.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Diagram.js","sourceRoot":"","sources":["../src/Diagram.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAE1C;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACnC;AAmCD;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAW,mBAAwB,KAClC,OAAO,CAAC,iBAAiB,CAoB3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,iBAAiB,KAAG,IAoB5D,CAAC"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAE1C;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACnC;AA6BD;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAC7B,YAAW,mBAAwB,KAClC,OAAO,CAAC,iBAAiB,CAoB3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,iBAAiB,KAAG,IAoB5D,CAAC"}
@@ -1,11 +1,4 @@
1
- import { isWebGL2Available, isWebGPUAvailable, } from "@oh-just-another/renderer-canvas";
2
- const supportsOffscreenCanvas = () => {
3
- if (typeof OffscreenCanvas === "undefined")
4
- return false;
5
- if (typeof HTMLCanvasElement === "undefined")
6
- return false;
7
- return typeof HTMLCanvasElement.prototype.transferControlToOffscreen === "function";
8
- };
1
+ import { isWebGL2Available, isWebGPUAvailable, supportsOffscreenCanvas, } from "@oh-just-another/renderer-canvas";
9
2
  const supportsWorkers = () => typeof Worker !== "undefined";
10
3
  const supportsWasm = () => typeof WebAssembly !== "undefined" && typeof WebAssembly.instantiate === "function";
11
4
  const isTouchPrimary = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,GAExB,MAAM,kCAAkC,CAAC;AAiE1C,MAAM,eAAe,GAAG,GAAY,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC;AAErE,MAAM,YAAY,GAAG,GAAY,EAAE,CACjC,OAAO,WAAW,KAAK,WAAW,IAAI,OAAO,WAAW,CAAC,WAAW,KAAK,UAAU,CAAC;AAEtF,MAAM,cAAc,GAAG,GAAY,EAAE;IACnC,IAAI,OAAO,UAAU,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,CAAC;QACH,OAAO,UAAU,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,cAAc,GAAG,KAAK,IAA8B,EAAE;IAC1D,IAAI,MAAM,iBAAiB,EAAE;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,iBAAiB,EAAE;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,uBAAuB,EAAE,IAAI,eAAe,EAAE;QAAE,OAAO,WAAW,CAAC;IACvE,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,YAAiC,EAAE,EACP,EAAE;IAC9B,MAAM,QAAQ,GACZ,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,KAAK,MAAM;QACjD,CAAC,CAAC,SAAS,CAAC,QAAQ;QACpB,CAAC,CAAC,MAAM,cAAc,EAAE,CAAC;IAC7B,MAAM,QAAQ,GACZ,SAAS,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,CAAC,QAAQ,KAAK,MAAM;QAC/D,CAAC,CAAC,SAAS,CAAC,QAAQ;QACpB,CAAC,CAAC,YAAY,EAAE,CAAC;IACrB,MAAM,UAAU,GACd,SAAS,CAAC,UAAU,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM;QACnE,CAAC,CAAC,SAAS,CAAC,UAAU;QACtB,CAAC,CAAC,YAAY,EAAE,IAAI,QAAQ,KAAK,QAAQ,CAAC;IAC9C,MAAM,OAAO,GACX,SAAS,CAAC,OAAO,KAAK,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,MAAM;QAC7D,CAAC,CAAC,SAAS,CAAC,OAAO;QACnB,CAAC,CAAC,uBAAuB,EAAE,IAAI,eAAe,EAAE,CAAC;IACrD,MAAM,KAAK,GACT,SAAS,CAAC,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACvF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC;AACrF,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAA0B,EAAQ,EAAE;IAClE,MAAM,MAAM,GACV,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,WAAW;YAChC,CAAC,CAAC,0BAA0B;YAC5B,CAAC,CAAC,UAAU,CAAC;IACnB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CACT,4FAA4F,EAC5F,kCAAkC,EAClC,gBAAgB,EAChB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Tunable constants for the editor host package (browser PNG export, GIF
3
+ * animation). Magic numbers live here per the repo's constants policy so a
4
+ * maintainer can tune framing / decode behaviour in one place.
5
+ */
6
+ /**
7
+ * Padding around the scene bbox when exporting a PNG, in world units. Matches
8
+ * the `zoomToFit` default so exported framing feels like an on-screen fit.
9
+ * Range: 0 (tight crop) to ~100 (generous border).
10
+ */
11
+ export declare const EXPORT_PADDING_WORLD = 20;
12
+ /**
13
+ * Fallback per-frame delay used when a decoded GIF frame reports 0 ms (some
14
+ * encoders do). Range: ~20–200 ms; lower plays faster, higher slower.
15
+ */
16
+ export declare const DEFAULT_FRAME_DELAY_MS = 100;
17
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;GAGG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Tunable constants for the editor host package (browser PNG export, GIF
3
+ * animation). Magic numbers live here per the repo's constants policy so a
4
+ * maintainer can tune framing / decode behaviour in one place.
5
+ */
6
+ /**
7
+ * Padding around the scene bbox when exporting a PNG, in world units. Matches
8
+ * the `zoomToFit` default so exported framing feels like an on-screen fit.
9
+ * Range: 0 (tight crop) to ~100 (generous border).
10
+ */
11
+ export const EXPORT_PADDING_WORLD = 20;
12
+ /**
13
+ * Fallback per-frame delay used when a decoded GIF frame reports 0 ms (some
14
+ * encoders do). Range: ~20–200 ms; lower plays faster, higher slower.
15
+ */
16
+ export const DEFAULT_FRAME_DELAY_MS = 100;
17
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC"}
@@ -1,8 +1,11 @@
1
1
  /**
2
2
  * True when the keyboard event is aimed at an editable element — a text
3
- * field, `<select>`, or any `contenteditable` host. Global keyboard
4
- * handlers (hotkeys, snap-suppress modifier tracking) must bail when this
5
- * is true so the user's typing isn't hijacked by canvas shortcuts.
3
+ * field, `<select>`, or any `contenteditable` host. Global keyboard handlers
4
+ * (hotkeys, snap-suppress modifier tracking) must bail when this is true so
5
+ * the user's typing isn't hijacked by canvas shortcuts.
6
+ *
7
+ * Canonical implementation lives in `@oh-just-another/state` — re-exported here
8
+ * so editor's public API keeps surfacing it.
6
9
  */
7
- export declare const isEditableTarget: (target: EventTarget | null) => boolean;
10
+ export { isEditableTarget } from "@oh-just-another/state";
8
11
  //# sourceMappingURL=dom-focus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom-focus.d.ts","sourceRoot":"","sources":["../src/dom-focus.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,WAAW,GAAG,IAAI,KAAG,OAI7D,CAAC"}
1
+ {"version":3,"file":"dom-focus.d.ts","sourceRoot":"","sources":["../src/dom-focus.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/dom-focus.js CHANGED
@@ -1,13 +1,11 @@
1
1
  /**
2
2
  * True when the keyboard event is aimed at an editable element — a text
3
- * field, `<select>`, or any `contenteditable` host. Global keyboard
4
- * handlers (hotkeys, snap-suppress modifier tracking) must bail when this
5
- * is true so the user's typing isn't hijacked by canvas shortcuts.
3
+ * field, `<select>`, or any `contenteditable` host. Global keyboard handlers
4
+ * (hotkeys, snap-suppress modifier tracking) must bail when this is true so
5
+ * the user's typing isn't hijacked by canvas shortcuts.
6
+ *
7
+ * Canonical implementation lives in `@oh-just-another/state` — re-exported here
8
+ * so editor's public API keeps surfacing it.
6
9
  */
7
- export const isEditableTarget = (target) => {
8
- if (!(target instanceof HTMLElement))
9
- return false;
10
- const tag = target.tagName;
11
- return tag === "INPUT" || tag === "TEXTAREA" || tag === "SELECT" || target.isContentEditable;
12
- };
10
+ export { isEditableTarget } from "@oh-just-another/state";
13
11
  //# sourceMappingURL=dom-focus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom-focus.js","sourceRoot":"","sources":["../src/dom-focus.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA0B,EAAW,EAAE;IACtE,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;IAC3B,OAAO,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,iBAAiB,CAAC;AAC/F,CAAC,CAAC"}
1
+ {"version":3,"file":"dom-focus.js","sourceRoot":"","sources":["../src/dom-focus.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Register the built-in GIF animation adapter once. Idempotent — `<Editor>`
3
+ * calls this by default on mount, but hosts can also call it explicitly (or
4
+ * register their own `kind: "gif"` adapter to override it).
5
+ */
6
+ export declare const installGifAnimationAdapter: () => void;
7
+ //# sourceMappingURL=gif-animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gif-animation.d.ts","sourceRoot":"","sources":["../src/gif-animation.ts"],"names":[],"mappings":"AA+HA;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAAO,IAI7C,CAAC"}