@oh-just-another/react-ui 0.58.0 → 0.60.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/CHANGELOG.md +177 -0
- package/README.md +7 -4
- package/dist/.tsbuildinfo +1 -1
- package/dist/color-swatch-picker.d.ts +8 -1
- package/dist/color-swatch-picker.d.ts.map +1 -1
- package/dist/color-swatch-picker.js +7 -3
- package/dist/color-swatch-picker.js.map +1 -1
- package/dist/constants.d.ts +43 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +43 -0
- package/dist/constants.js.map +1 -1
- package/dist/context-menu.d.ts.map +1 -1
- package/dist/context-menu.js +8 -4
- package/dist/context-menu.js.map +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/context.js +1 -1
- package/dist/diagram-canvas.d.ts +4 -2
- package/dist/diagram-canvas.d.ts.map +1 -1
- package/dist/diagram-canvas.js +1 -1
- package/dist/diagram-canvas.js.map +1 -1
- package/dist/diagram-root.d.ts +8 -2
- package/dist/diagram-root.d.ts.map +1 -1
- package/dist/diagram-root.js +11 -2
- package/dist/diagram-root.js.map +1 -1
- package/dist/drawing-panel.d.ts +14 -0
- package/dist/drawing-panel.d.ts.map +1 -0
- package/dist/drawing-panel.js +54 -0
- package/dist/drawing-panel.js.map +1 -0
- package/dist/help-dialog.d.ts.map +1 -1
- package/dist/help-dialog.js +11 -4
- package/dist/help-dialog.js.map +1 -1
- package/dist/hooks.d.ts +19 -3
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +21 -3
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/link-caption-editor.d.ts +3 -3
- package/dist/link-caption-editor.d.ts.map +1 -1
- package/dist/link-caption-editor.js +8 -5
- package/dist/link-caption-editor.js.map +1 -1
- package/dist/minimap.d.ts +25 -0
- package/dist/minimap.d.ts.map +1 -0
- package/dist/minimap.js +196 -0
- package/dist/minimap.js.map +1 -0
- package/dist/property-panel.d.ts.map +1 -1
- package/dist/property-panel.js +166 -26
- package/dist/property-panel.js.map +1 -1
- package/dist/search-overlay.d.ts +18 -0
- package/dist/search-overlay.d.ts.map +1 -0
- package/dist/search-overlay.js +162 -0
- package/dist/search-overlay.js.map +1 -0
- package/dist/selection-floating-panel.d.ts.map +1 -1
- package/dist/selection-floating-panel.js +5 -2
- package/dist/selection-floating-panel.js.map +1 -1
- package/dist/stats-panel.d.ts +14 -0
- package/dist/stats-panel.d.ts.map +1 -0
- package/dist/stats-panel.js +104 -0
- package/dist/stats-panel.js.map +1 -0
- package/dist/toolbar.d.ts +2 -2
- package/dist/toolbar.d.ts.map +1 -1
- package/dist/toolbar.js +26 -12
- package/dist/toolbar.js.map +1 -1
- package/dist/zen-mode.d.ts +30 -0
- package/dist/zen-mode.d.ts.map +1 -0
- package/dist/zen-mode.js +62 -0
- package/dist/zen-mode.js.map +1 -0
- package/package.json +8 -8
- package/src/styles.css +4 -1
package/dist/help-dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-dialog.js","sourceRoot":"","sources":["../src/help-dialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAyC,MAAM,OAAO,CAAC;AAC5F,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,GAKN,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AA4CnC,MAAM,eAAe,GAAmC;IACtD,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,MAAM,cAAc,GAAqB;IACvC,MAAM;IACN,MAAM;IACN,WAAW;IACX,WAAW;IACX,SAAS;IACT,SAAS;IACT,UAAU;IACV,QAAQ;IACR,MAAM;IACN,OAAO;CACR,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAgB,EAAQ,EAAE;IAC5D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,CAAC,EAAiB,EAAQ,EAAE;YACxC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;YACpB,IAAI,CAAC,YAAY,gBAAgB,IAAI,CAAC,YAAY,mBAAmB;gBAAE,OAAO;YAC9E,MAAM,UAAU,GAAG,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;YACrE,IAAI,CAAC,UAAU;gBAAE,OAAO;YACxB,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACb,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,MAAc,EAAyB,EAAE;IAC3D,MAAM,MAAM,GAA0B,EAAE,CAAC;IACzC,
|
|
1
|
+
{"version":3,"file":"help-dialog.js","sourceRoot":"","sources":["../src/help-dialog.tsx"],"names":[],"mappings":"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"}
|
package/dist/hooks.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Annotation, type Layer, type Scene } from "@oh-just-another/scene";
|
|
2
2
|
import { type AnnotationId, type LinkId, type LayerId } from "@oh-just-another/types";
|
|
3
|
-
import { type Editor, type
|
|
3
|
+
import { type BrushSettings, type Editor, type ActiveTool, type Selection } from "@oh-just-another/state";
|
|
4
4
|
/**
|
|
5
5
|
* Live `Editor` instance. Use for imperative actions (`addElement`,
|
|
6
6
|
* `loadScene`, `screenToWorld`). Throws if not inside a provider.
|
|
@@ -21,8 +21,24 @@ export declare const useDiagramOptional: () => Editor | null;
|
|
|
21
21
|
export declare const useScene: () => Scene;
|
|
22
22
|
/** Selected shape ids. Returns the canonical `EMPTY` set pre-mount. */
|
|
23
23
|
export declare const useSelection: () => Selection;
|
|
24
|
-
/**
|
|
25
|
-
|
|
24
|
+
/**
|
|
25
|
+
* The active tool as one value object (`{ type, locked, lastActiveTool }`).
|
|
26
|
+
* Re-renders on any tool change — a type switch or a lock flip.
|
|
27
|
+
*/
|
|
28
|
+
export declare const useActiveTool: () => ActiveTool;
|
|
29
|
+
/**
|
|
30
|
+
* Live brush paint settings (line colour, fill, opacity, width) — what the
|
|
31
|
+
* drawing panel edits via {@link Editor.setBrushSettings}. Defaults to
|
|
32
|
+
* {@link DEFAULT_BRUSH_SETTINGS} pre-mount.
|
|
33
|
+
*/
|
|
34
|
+
export declare const useBrushSettings: () => BrushSettings;
|
|
35
|
+
/**
|
|
36
|
+
* `true` when the editor is in read-only / view mode. Chrome uses it to
|
|
37
|
+
* disable creation tools and edit controls while keeping navigation live.
|
|
38
|
+
* Reactive — re-renders when {@link Editor.setReadOnly} flips. Defaults to
|
|
39
|
+
* `false` pre-mount.
|
|
40
|
+
*/
|
|
41
|
+
export declare const useReadOnly: () => boolean;
|
|
26
42
|
/**
|
|
27
43
|
* History introspection and actions. Returns no-op callbacks (and `false`
|
|
28
44
|
* flags) while the editor is being created so toolbar buttons can render
|
package/dist/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,KAAK,EACX,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,MAAM,EAEX,KAAK,OAAO,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,KAAK,EACX,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,MAAM,EAEX,KAAK,OAAO,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAGhC;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,QAAO,MAA6B,CAAC;AAc5D,eAAO,MAAM,eAAe,QAAO,OAehC,CAAC;AAEJ;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAAmC,CAAC;AAInF,iFAAiF;AACjF,eAAO,MAAM,QAAQ,QAAO,KAAgE,CAAC;AAE7F,uEAAuE;AACvE,eAAO,MAAM,YAAY,QAAO,SACqC,CAAC;AAKtE;;;GAGG;AACH,eAAO,MAAM,aAAa,QAAO,UACgD,CAAC;AAElF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAO,aAC+B,CAAC;AAEpE;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QAAO,OAAsD,CAAC;AAEtF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,QAAO;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;CAc3B,CAAC;AAIF,8EAA8E;AAC9E,eAAO,MAAM,SAAS,QAAO,SAAS,KAAK,EACwB,CAAC;AAIpE,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,QAAO,OAC6B,CAAC;AAIlE;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,SAAS,UAAU,EAC2B,CAAC;AAEjF,sEAAsE;AACtE,eAAO,MAAM,qBAAqB,QAAO,YAAY,GAAG,IACmB,CAAC;AAE5E,oEAAoE;AACpE,eAAO,MAAM,eAAe,QAAO,MAAM,GAAG,IACmB,CAAC"}
|
package/dist/hooks.js
CHANGED
|
@@ -2,7 +2,7 @@ import { useCallback, useSyncExternalStore } from "react";
|
|
|
2
2
|
import { DEFAULT_LAYER_ID, emptyScene, getLayersInOrder, } from "@oh-just-another/scene";
|
|
3
3
|
import { MOBILE_MAX_WIDTH_PX } from "./constants.js";
|
|
4
4
|
import { layerId as castLayerId, } from "@oh-just-another/types";
|
|
5
|
-
import { selection } from "@oh-just-another/state";
|
|
5
|
+
import { DEFAULT_BRUSH_SETTINGS, selection, } from "@oh-just-another/state";
|
|
6
6
|
import { useDiagramContext, useDiagramContextOptional, useEditorSelector } from "./context.js";
|
|
7
7
|
/**
|
|
8
8
|
* Live `Editor` instance. Use for imperative actions (`addElement`,
|
|
@@ -45,8 +45,26 @@ const EMPTY_SCENE = emptyScene();
|
|
|
45
45
|
export const useScene = () => useEditorSelector((e) => e.scene, EMPTY_SCENE, "scene");
|
|
46
46
|
/** Selected shape ids. Returns the canonical `EMPTY` set pre-mount. */
|
|
47
47
|
export const useSelection = () => useEditorSelector((e) => e.selection, selection.EMPTY, "selection");
|
|
48
|
-
/**
|
|
49
|
-
|
|
48
|
+
/** Pre-mount fallback for {@link useActiveTool} — the editor's initial tool state. */
|
|
49
|
+
const DEFAULT_ACTIVE_TOOL = { type: "select", locked: false, lastActiveTool: null };
|
|
50
|
+
/**
|
|
51
|
+
* The active tool as one value object (`{ type, locked, lastActiveTool }`).
|
|
52
|
+
* Re-renders on any tool change — a type switch or a lock flip.
|
|
53
|
+
*/
|
|
54
|
+
export const useActiveTool = () => useEditorSelector((e) => e.activeTool, DEFAULT_ACTIVE_TOOL, "tool");
|
|
55
|
+
/**
|
|
56
|
+
* Live brush paint settings (line colour, fill, opacity, width) — what the
|
|
57
|
+
* drawing panel edits via {@link Editor.setBrushSettings}. Defaults to
|
|
58
|
+
* {@link DEFAULT_BRUSH_SETTINGS} pre-mount.
|
|
59
|
+
*/
|
|
60
|
+
export const useBrushSettings = () => useEditorSelector((e) => e.brushSettings, DEFAULT_BRUSH_SETTINGS);
|
|
61
|
+
/**
|
|
62
|
+
* `true` when the editor is in read-only / view mode. Chrome uses it to
|
|
63
|
+
* disable creation tools and edit controls while keeping navigation live.
|
|
64
|
+
* Reactive — re-renders when {@link Editor.setReadOnly} flips. Defaults to
|
|
65
|
+
* `false` pre-mount.
|
|
66
|
+
*/
|
|
67
|
+
export const useReadOnly = () => useEditorSelector((e) => e.readOnly, false);
|
|
50
68
|
/**
|
|
51
69
|
* History introspection and actions. Returns no-op callbacks (and `false`
|
|
52
70
|
* flags) while the editor is being created so toolbar buttons can render
|
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,gBAAgB,GAIjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAGL,OAAO,IAAI,WAAW,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -14,7 +14,9 @@ export { ColorSwatchPicker, type ColorSwatchPickerProps } from "./color-swatch-p
|
|
|
14
14
|
export { ELEMENT_PALETTE_LIGHT, ELEMENT_PALETTE_DARK, CANVAS_PALETTE_LIGHT, CANVAS_PALETTE_DARK, resolvePaletteTheme, } from "./color-palette.js";
|
|
15
15
|
export { DiagramRoot, DiagramSurface, type DiagramRootProps, type DiagramSurfaceProps, } from "./diagram-root.js";
|
|
16
16
|
export { DiagramCanvas, type DiagramCanvasProps } from "./diagram-canvas.js";
|
|
17
|
-
export {
|
|
17
|
+
export { Minimap, type MinimapProps } from "./minimap.js";
|
|
18
|
+
export { DrawingPanel } from "./drawing-panel.js";
|
|
19
|
+
export { useDiagram, useDiagramOptional, useScene, useSelection, useActiveTool, useBrushSettings, useReadOnly, useHistory, useLayers, useActiveLayerId, useAnnotations, useSelectedAnnotation, useSelectedLink, useMobileLayout, } from "./hooks.js";
|
|
18
20
|
export { LayerPanel, type LayerPanelProps } from "./layer-panel.js";
|
|
19
21
|
export { CommentsPanel, CommentsPopover, type CommentsPanelProps, type CommentsPopoverProps, } from "./comments-panel.js";
|
|
20
22
|
export { VersionPanel, useSnapshotStore, type VersionPanelProps } from "./versioning.js";
|
|
@@ -36,11 +38,14 @@ export { ContextMenu, DEFAULT_CONTEXT_MENU, type ContextMenuItem, type ContextMe
|
|
|
36
38
|
export { ContextMenuControllerProvider, useContextMenuController, type ContextMenuController, type ContextMenuOpenRequest, } from "./context-menu-controller.js";
|
|
37
39
|
export { HelpDialog, useHelpDialogHotkey, type HelpDialogProps, type HelpRow, type HelpSection, } from "./help-dialog.js";
|
|
38
40
|
export { CommandPalette } from "./command-palette.js";
|
|
41
|
+
export { SearchOverlay } from "./search-overlay.js";
|
|
42
|
+
export { StatsPanel } from "./stats-panel.js";
|
|
43
|
+
export { ZenModeProvider, useZenMode, useZenModeOptional, type ZenModeApi } from "./zen-mode.js";
|
|
39
44
|
export { ToastHost, useToast, useToastOptional, useEphemeralToast, type Toast, type ToastApi, type ToastKind, type ToastHostProps, } from "./toast.js";
|
|
40
45
|
export { MainMenu, type MainMenuProps, type MainMenuItemProps, type MainMenuItemLinkProps, type MainMenuSubmenuProps, } from "./main-menu.js";
|
|
41
46
|
export { Modal, type ModalProps } from "./modal.js";
|
|
42
47
|
export { Sidebar, type SidebarProps } from "./sidebar.js";
|
|
43
48
|
export { Tooltip, TooltipProvider, type TooltipProps, type TooltipSide } from "./tooltip.js";
|
|
44
49
|
export { PortalContainerProvider, usePortalContainer } from "./portal-container.js";
|
|
45
|
-
export { PALETTE_WIDTH, PALETTE_ITEM_SIZE, PROPERTY_PANEL_WIDTH, PROPERTY_SWATCH_SIZE, LAYER_PANEL_WIDTH, LAYER_TOGGLE_ICON_SIZE, LAYER_SWATCH_SIZE, COMMENTS_PANEL_WIDTH, TOOLBAR_SEPARATOR_HEIGHT, } from "./constants.js";
|
|
50
|
+
export { PALETTE_WIDTH, PALETTE_ITEM_SIZE, PROPERTY_PANEL_WIDTH, PROPERTY_SWATCH_SIZE, LAYER_PANEL_WIDTH, LAYER_TOGGLE_ICON_SIZE, LAYER_SWATCH_SIZE, COMMENTS_PANEL_WIDTH, TOOLBAR_SEPARATOR_HEIGHT, MINIMAP_WIDTH_PX, MINIMAP_HEIGHT_PX, MINIMAP_PADDING_PX, MINIMAP_THROTTLE_MS, SEARCH_ZOOM_PADDING_PX, } from "./constants.js";
|
|
46
51
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,gBAAgB,EAChB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,sBAAsB,EACtB,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,9 @@ export { ColorSwatchPicker } from "./color-swatch-picker.js";
|
|
|
14
14
|
export { ELEMENT_PALETTE_LIGHT, ELEMENT_PALETTE_DARK, CANVAS_PALETTE_LIGHT, CANVAS_PALETTE_DARK, resolvePaletteTheme, } from "./color-palette.js";
|
|
15
15
|
export { DiagramRoot, DiagramSurface, } from "./diagram-root.js";
|
|
16
16
|
export { DiagramCanvas } from "./diagram-canvas.js";
|
|
17
|
-
export {
|
|
17
|
+
export { Minimap } from "./minimap.js";
|
|
18
|
+
export { DrawingPanel } from "./drawing-panel.js";
|
|
19
|
+
export { useDiagram, useDiagramOptional, useScene, useSelection, useActiveTool, useBrushSettings, useReadOnly, useHistory, useLayers, useActiveLayerId, useAnnotations, useSelectedAnnotation, useSelectedLink, useMobileLayout, } from "./hooks.js";
|
|
18
20
|
export { LayerPanel } from "./layer-panel.js";
|
|
19
21
|
export { CommentsPanel, CommentsPopover, } from "./comments-panel.js";
|
|
20
22
|
export { VersionPanel, useSnapshotStore } from "./versioning.js";
|
|
@@ -36,6 +38,9 @@ export { ContextMenu, DEFAULT_CONTEXT_MENU, } from "./context-menu.js";
|
|
|
36
38
|
export { ContextMenuControllerProvider, useContextMenuController, } from "./context-menu-controller.js";
|
|
37
39
|
export { HelpDialog, useHelpDialogHotkey, } from "./help-dialog.js";
|
|
38
40
|
export { CommandPalette } from "./command-palette.js";
|
|
41
|
+
export { SearchOverlay } from "./search-overlay.js";
|
|
42
|
+
export { StatsPanel } from "./stats-panel.js";
|
|
43
|
+
export { ZenModeProvider, useZenMode, useZenModeOptional } from "./zen-mode.js";
|
|
39
44
|
export { ToastHost, useToast, useToastOptional, useEphemeralToast, } from "./toast.js";
|
|
40
45
|
export { MainMenu, } from "./main-menu.js";
|
|
41
46
|
export { Modal } from "./modal.js";
|
|
@@ -43,5 +48,5 @@ export { Sidebar } from "./sidebar.js";
|
|
|
43
48
|
export { Tooltip, TooltipProvider } from "./tooltip.js";
|
|
44
49
|
export { PortalContainerProvider, usePortalContainer } from "./portal-container.js";
|
|
45
50
|
// Tunable layout sizes for the built-in panels and toolbar.
|
|
46
|
-
export { PALETTE_WIDTH, PALETTE_ITEM_SIZE, PROPERTY_PANEL_WIDTH, PROPERTY_SWATCH_SIZE, LAYER_PANEL_WIDTH, LAYER_TOGGLE_ICON_SIZE, LAYER_SWATCH_SIZE, COMMENTS_PANEL_WIDTH, TOOLBAR_SEPARATOR_HEIGHT, } from "./constants.js";
|
|
51
|
+
export { PALETTE_WIDTH, PALETTE_ITEM_SIZE, PROPERTY_PANEL_WIDTH, PROPERTY_SWATCH_SIZE, LAYER_PANEL_WIDTH, LAYER_TOGGLE_ICON_SIZE, LAYER_SWATCH_SIZE, COMMENTS_PANEL_WIDTH, TOOLBAR_SEPARATOR_HEIGHT, MINIMAP_WIDTH_PX, MINIMAP_HEIGHT_PX, MINIMAP_PADDING_PX, MINIMAP_THROTTLE_MS, SEARCH_ZOOM_PADDING_PX, } from "./constants.js";
|
|
47
52
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAwB,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,gBAAgB,GAGjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAoB,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,OAAO,EAAqB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAwB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAwB,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAA0B,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EACL,sBAAsB,GAEvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAA+B,MAAM,0BAA0B,CAAC;AAC1F,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,cAAc,GAGf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAA2B,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Inline editor for a link's caption. Opens on double-click of a link
|
|
3
|
-
* (state layer sets `editor.editingLinkCaption`). Renders a small
|
|
4
|
-
* the link's label
|
|
5
|
-
* Escape cancels. Empty text removes the label. Portaled
|
|
3
|
+
* (state layer sets `editor.editingLinkCaption`). Renders a small multiline
|
|
4
|
+
* textarea at the link's label anchor. Enter / blur commits, Shift+Enter
|
|
5
|
+
* inserts a newline, Escape cancels. Empty text removes the label. Portaled.
|
|
6
6
|
*/
|
|
7
7
|
export declare const LinkCaptionEditor: () => import("react").ReactPortal | null;
|
|
8
8
|
//# sourceMappingURL=link-caption-editor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-caption-editor.d.ts","sourceRoot":"","sources":["../src/link-caption-editor.tsx"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"link-caption-editor.d.ts","sourceRoot":"","sources":["../src/link-caption-editor.tsx"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,0CAgF7B,CAAC"}
|
|
@@ -5,9 +5,9 @@ import { useDiagramOptional } from "./hooks.js";
|
|
|
5
5
|
import { usePortalContainer } from "./portal-container.js";
|
|
6
6
|
/**
|
|
7
7
|
* Inline editor for a link's caption. Opens on double-click of a link
|
|
8
|
-
* (state layer sets `editor.editingLinkCaption`). Renders a small
|
|
9
|
-
* the link's label
|
|
10
|
-
* Escape cancels. Empty text removes the label. Portaled
|
|
8
|
+
* (state layer sets `editor.editingLinkCaption`). Renders a small multiline
|
|
9
|
+
* textarea at the link's label anchor. Enter / blur commits, Shift+Enter
|
|
10
|
+
* inserts a newline, Escape cancels. Empty text removes the label. Portaled.
|
|
11
11
|
*/
|
|
12
12
|
export const LinkCaptionEditor = () => {
|
|
13
13
|
const editor = useDiagramOptional();
|
|
@@ -52,7 +52,10 @@ export const LinkCaptionEditor = () => {
|
|
|
52
52
|
const commit = () => {
|
|
53
53
|
editor.commitLinkCaptionEdit(value);
|
|
54
54
|
};
|
|
55
|
-
|
|
55
|
+
// Grow with the content: one visual row per line, capped so a long caption
|
|
56
|
+
// doesn't cover half the canvas while being edited.
|
|
57
|
+
const rows = Math.min(5, value.split("\n").length);
|
|
58
|
+
return createPortal(_jsx("textarea", { ref: inputRef, className: "du-link-caption-input", value: value, placeholder: "Label", rows: rows, style: {
|
|
56
59
|
position: "fixed",
|
|
57
60
|
left: sx,
|
|
58
61
|
top: sy,
|
|
@@ -61,7 +64,7 @@ export const LinkCaptionEditor = () => {
|
|
|
61
64
|
}, onChange: (e) => {
|
|
62
65
|
setValue(e.target.value);
|
|
63
66
|
}, onBlur: commit, onKeyDown: (e) => {
|
|
64
|
-
if (e.key === "Enter") {
|
|
67
|
+
if (e.key === "Enter" && !e.shiftKey) {
|
|
65
68
|
e.preventDefault();
|
|
66
69
|
commit();
|
|
67
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-caption-editor.js","sourceRoot":"","sources":["../src/link-caption-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"link-caption-editor.js","sourceRoot":"","sources":["../src/link-caption-editor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type CSSProperties } from "react";
|
|
2
|
+
import type { Editor } from "@oh-just-another/state";
|
|
3
|
+
export interface MinimapProps {
|
|
4
|
+
/** Canvas width in CSS pixels. Defaults to {@link MINIMAP_WIDTH_PX}. */
|
|
5
|
+
readonly width?: number;
|
|
6
|
+
/** Canvas height in CSS pixels. Defaults to {@link MINIMAP_HEIGHT_PX}. */
|
|
7
|
+
readonly height?: number;
|
|
8
|
+
readonly className?: string;
|
|
9
|
+
readonly style?: CSSProperties;
|
|
10
|
+
/**
|
|
11
|
+
* Editor to preview. Defaults to the one provided by the enclosing
|
|
12
|
+
* `<DiagramRoot>` (via context). Pass explicitly when the minimap lives
|
|
13
|
+
* outside the provider tree (e.g. next to a high-level `<Diagram>`).
|
|
14
|
+
*/
|
|
15
|
+
readonly editor?: Editor;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Small overview canvas: renders the whole scene scaled to fit, overlays a
|
|
19
|
+
* frame for the current viewport, and pans the main view on click / drag.
|
|
20
|
+
*
|
|
21
|
+
* Repaints are throttled to {@link MINIMAP_THROTTLE_MS} and driven by the
|
|
22
|
+
* editor's change subscription (scene edits *and* pan / zoom both notify).
|
|
23
|
+
*/
|
|
24
|
+
export declare const Minimap: ({ width, height, className, style, editor: editorProp, }: MinimapProps) => import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
//# sourceMappingURL=minimap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimap.d.ts","sourceRoot":"","sources":["../src/minimap.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,aAAa,EAAqB,MAAM,OAAO,CAAC;AAM9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAcrD,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AA+BD;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,GAAI,0DAMrB,YAAY,4CAsLd,CAAC"}
|
package/dist/minimap.js
ADDED
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useRef } from "react";
|
|
3
|
+
import { getElementWorldBounds } from "@oh-just-another/scene";
|
|
4
|
+
import { renderScene, renderLinks } from "@oh-just-another/renderer-core";
|
|
5
|
+
import { Canvas2DTarget, setupHiDpi } from "@oh-just-another/renderer-canvas";
|
|
6
|
+
import { bounds as B } from "@oh-just-another/math";
|
|
7
|
+
import { useDiagramOptional } from "./hooks.js";
|
|
8
|
+
import { MINIMAP_FRAME_COLOR, MINIMAP_FRAME_FILL, MINIMAP_FRAME_LINE_WIDTH, MINIMAP_HEIGHT_PX, MINIMAP_PADDING_PX, MINIMAP_THROTTLE_MS, MINIMAP_WHEEL_ZOOM_MAX_STEP, MINIMAP_WHEEL_ZOOM_SPEED, MINIMAP_WIDTH_PX, } from "./constants.js";
|
|
9
|
+
/** Union of every element's world AABB, or `null` for an empty scene. */
|
|
10
|
+
const sceneContentBounds = (scene) => {
|
|
11
|
+
let acc = null;
|
|
12
|
+
for (const el of scene.elements.values()) {
|
|
13
|
+
if (el.hidden === true)
|
|
14
|
+
continue;
|
|
15
|
+
const bb = getElementWorldBounds(el);
|
|
16
|
+
acc = acc ? B.union(acc, bb) : bb;
|
|
17
|
+
}
|
|
18
|
+
return acc;
|
|
19
|
+
};
|
|
20
|
+
/** Fit `content` into a `w`×`h` canvas with {@link MINIMAP_PADDING_PX} margin. */
|
|
21
|
+
const fitContent = (content, w, h) => {
|
|
22
|
+
const availW = w - MINIMAP_PADDING_PX * 2;
|
|
23
|
+
const availH = h - MINIMAP_PADDING_PX * 2;
|
|
24
|
+
if (availW <= 0 || availH <= 0 || content.width <= 0 || content.height <= 0)
|
|
25
|
+
return null;
|
|
26
|
+
const zoom = Math.min(availW / content.width, availH / content.height);
|
|
27
|
+
const cx = content.x + content.width / 2;
|
|
28
|
+
const cy = content.y + content.height / 2;
|
|
29
|
+
return { zoom, pan: { x: cx - w / 2 / zoom, y: cy - h / 2 / zoom } };
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Small overview canvas: renders the whole scene scaled to fit, overlays a
|
|
33
|
+
* frame for the current viewport, and pans the main view on click / drag.
|
|
34
|
+
*
|
|
35
|
+
* Repaints are throttled to {@link MINIMAP_THROTTLE_MS} and driven by the
|
|
36
|
+
* editor's change subscription (scene edits *and* pan / zoom both notify).
|
|
37
|
+
*/
|
|
38
|
+
export const Minimap = ({ width = MINIMAP_WIDTH_PX, height = MINIMAP_HEIGHT_PX, className, style, editor: editorProp, }) => {
|
|
39
|
+
const contextEditor = useDiagramOptional();
|
|
40
|
+
const editor = editorProp ?? contextEditor;
|
|
41
|
+
const canvasRef = useRef(null);
|
|
42
|
+
// Latest fit used for the last paint — read by pointer handlers to map a
|
|
43
|
+
// minimap pixel back to a world point without recomputing.
|
|
44
|
+
const fitRef = useRef(null);
|
|
45
|
+
const draggingRef = useRef(false);
|
|
46
|
+
const draw = useCallback(() => {
|
|
47
|
+
const canvas = canvasRef.current;
|
|
48
|
+
if (!canvas || !editor)
|
|
49
|
+
return;
|
|
50
|
+
const scene = editor.scene;
|
|
51
|
+
const dpr = setupHiDpi(canvas, width, height);
|
|
52
|
+
const ctx = canvas.getContext("2d");
|
|
53
|
+
if (!ctx)
|
|
54
|
+
return;
|
|
55
|
+
const target = new Canvas2DTarget(ctx, width, height, dpr);
|
|
56
|
+
target.clear();
|
|
57
|
+
const content = sceneContentBounds(scene);
|
|
58
|
+
const fit = content ? fitContent(content, width, height) : null;
|
|
59
|
+
fitRef.current = fit;
|
|
60
|
+
if (!fit)
|
|
61
|
+
return;
|
|
62
|
+
const miniScene = {
|
|
63
|
+
...scene,
|
|
64
|
+
viewport: {
|
|
65
|
+
...scene.viewport,
|
|
66
|
+
pan: fit.pan,
|
|
67
|
+
zoom: fit.zoom,
|
|
68
|
+
rotation: 0,
|
|
69
|
+
size: { width, height },
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
renderScene(miniScene, target);
|
|
73
|
+
renderLinks(miniScene, target);
|
|
74
|
+
// Viewport frame — the world rect currently visible in the main view,
|
|
75
|
+
// projected into minimap pixels. Drawn in CSS px on the dpr-scaled ctx.
|
|
76
|
+
const vp = scene.viewport;
|
|
77
|
+
if (vp.zoom > 0 && vp.size.width > 0 && vp.size.height > 0) {
|
|
78
|
+
const fx = (vp.pan.x - fit.pan.x) * fit.zoom;
|
|
79
|
+
const fy = (vp.pan.y - fit.pan.y) * fit.zoom;
|
|
80
|
+
const fw = (vp.size.width / vp.zoom) * fit.zoom;
|
|
81
|
+
const fh = (vp.size.height / vp.zoom) * fit.zoom;
|
|
82
|
+
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
83
|
+
ctx.fillStyle = MINIMAP_FRAME_FILL;
|
|
84
|
+
ctx.fillRect(fx, fy, fw, fh);
|
|
85
|
+
ctx.strokeStyle = MINIMAP_FRAME_COLOR;
|
|
86
|
+
ctx.lineWidth = MINIMAP_FRAME_LINE_WIDTH;
|
|
87
|
+
ctx.strokeRect(fx, fy, fw, fh);
|
|
88
|
+
}
|
|
89
|
+
}, [editor, width, height]);
|
|
90
|
+
// Throttled repaint on every editor change. A leading draw runs immediately;
|
|
91
|
+
// bursts within the window collapse into a single trailing draw.
|
|
92
|
+
useEffect(() => {
|
|
93
|
+
if (!editor)
|
|
94
|
+
return undefined;
|
|
95
|
+
draw();
|
|
96
|
+
let last = Date.now();
|
|
97
|
+
let timer = null;
|
|
98
|
+
const schedule = () => {
|
|
99
|
+
const elapsed = Date.now() - last;
|
|
100
|
+
if (elapsed >= MINIMAP_THROTTLE_MS) {
|
|
101
|
+
last = Date.now();
|
|
102
|
+
draw();
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
timer ??= setTimeout(() => {
|
|
106
|
+
timer = null;
|
|
107
|
+
last = Date.now();
|
|
108
|
+
draw();
|
|
109
|
+
}, MINIMAP_THROTTLE_MS - elapsed);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
const unsubscribe = editor.subscribe(schedule);
|
|
113
|
+
return () => {
|
|
114
|
+
unsubscribe();
|
|
115
|
+
if (timer !== null)
|
|
116
|
+
clearTimeout(timer);
|
|
117
|
+
};
|
|
118
|
+
}, [editor, draw]);
|
|
119
|
+
// Center the main viewport on the world point under a minimap pixel.
|
|
120
|
+
const panToPixel = useCallback((px, py) => {
|
|
121
|
+
const fit = fitRef.current;
|
|
122
|
+
if (!editor || !fit)
|
|
123
|
+
return;
|
|
124
|
+
const world = { x: px / fit.zoom + fit.pan.x, y: py / fit.zoom + fit.pan.y };
|
|
125
|
+
const vp = editor.scene.viewport;
|
|
126
|
+
const centerX = vp.pan.x + vp.size.width / 2 / vp.zoom;
|
|
127
|
+
const centerY = vp.pan.y + vp.size.height / 2 / vp.zoom;
|
|
128
|
+
editor.panBy({ x: (centerX - world.x) * vp.zoom, y: (centerY - world.y) * vp.zoom });
|
|
129
|
+
}, [editor]);
|
|
130
|
+
// Wheel over the minimap zooms the MAIN view into the world spot under the
|
|
131
|
+
// cursor: recenter there (matching click-to-pan), then zoom around it. Same
|
|
132
|
+
// delta→factor curve as the main canvas. Bound as a non-passive native
|
|
133
|
+
// listener (below) so `preventDefault` can stop the page from scrolling.
|
|
134
|
+
const zoomAtPixel = useCallback((px, py, deltaY) => {
|
|
135
|
+
const fit = fitRef.current;
|
|
136
|
+
if (!editor || !fit || deltaY === 0)
|
|
137
|
+
return;
|
|
138
|
+
const world = { x: px / fit.zoom + fit.pan.x, y: py / fit.zoom + fit.pan.y };
|
|
139
|
+
const clamped = Math.abs(deltaY) > MINIMAP_WHEEL_ZOOM_MAX_STEP
|
|
140
|
+
? MINIMAP_WHEEL_ZOOM_MAX_STEP * Math.sign(deltaY)
|
|
141
|
+
: deltaY;
|
|
142
|
+
const factor = 1 - (clamped * MINIMAP_WHEEL_ZOOM_SPEED) / 100;
|
|
143
|
+
if (factor <= 0)
|
|
144
|
+
return;
|
|
145
|
+
const vp = editor.scene.viewport;
|
|
146
|
+
const centerX = vp.pan.x + vp.size.width / 2 / vp.zoom;
|
|
147
|
+
const centerY = vp.pan.y + vp.size.height / 2 / vp.zoom;
|
|
148
|
+
editor.panBy({ x: (centerX - world.x) * vp.zoom, y: (centerY - world.y) * vp.zoom });
|
|
149
|
+
editor.zoomAt(factor, world);
|
|
150
|
+
}, [editor]);
|
|
151
|
+
// Native non-passive wheel listener (React's onWheel is passive, so its
|
|
152
|
+
// preventDefault is a no-op). Zooms the main view; stops page scroll.
|
|
153
|
+
useEffect(() => {
|
|
154
|
+
const canvas = canvasRef.current;
|
|
155
|
+
if (!canvas)
|
|
156
|
+
return undefined;
|
|
157
|
+
const onWheel = (e) => {
|
|
158
|
+
e.preventDefault();
|
|
159
|
+
const rect = canvas.getBoundingClientRect();
|
|
160
|
+
zoomAtPixel(e.clientX - rect.left, e.clientY - rect.top, e.deltaY);
|
|
161
|
+
};
|
|
162
|
+
canvas.addEventListener("wheel", onWheel, { passive: false });
|
|
163
|
+
return () => {
|
|
164
|
+
canvas.removeEventListener("wheel", onWheel);
|
|
165
|
+
};
|
|
166
|
+
}, [zoomAtPixel]);
|
|
167
|
+
const localPoint = (e) => {
|
|
168
|
+
const rect = e.currentTarget.getBoundingClientRect();
|
|
169
|
+
return { x: e.clientX - rect.left, y: e.clientY - rect.top };
|
|
170
|
+
};
|
|
171
|
+
const handlePointerDown = useCallback((e) => {
|
|
172
|
+
draggingRef.current = true;
|
|
173
|
+
e.currentTarget.setPointerCapture(e.pointerId);
|
|
174
|
+
const p = localPoint(e);
|
|
175
|
+
panToPixel(p.x, p.y);
|
|
176
|
+
}, [panToPixel]);
|
|
177
|
+
const handlePointerMove = useCallback((e) => {
|
|
178
|
+
if (!draggingRef.current)
|
|
179
|
+
return;
|
|
180
|
+
const p = localPoint(e);
|
|
181
|
+
panToPixel(p.x, p.y);
|
|
182
|
+
}, [panToPixel]);
|
|
183
|
+
const handlePointerUp = useCallback((e) => {
|
|
184
|
+
draggingRef.current = false;
|
|
185
|
+
e.currentTarget.releasePointerCapture(e.pointerId);
|
|
186
|
+
}, []);
|
|
187
|
+
return (_jsx("canvas", { ref: canvasRef, className: className, "aria-label": "Diagram minimap", onPointerDown: handlePointerDown, onPointerMove: handlePointerMove, onPointerUp: handlePointerUp, style: {
|
|
188
|
+
display: "block",
|
|
189
|
+
width,
|
|
190
|
+
height,
|
|
191
|
+
cursor: "pointer",
|
|
192
|
+
touchAction: "none",
|
|
193
|
+
...style,
|
|
194
|
+
} }));
|
|
195
|
+
};
|
|
196
|
+
//# sourceMappingURL=minimap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimap.js","sourceRoot":"","sources":["../src/minimap.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-panel.d.ts","sourceRoot":"","sources":["../src/property-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,aAAa,EAAkB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"property-panel.d.ts","sourceRoot":"","sources":["../src/property-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,aAAa,EAAkB,MAAM,OAAO,CAAC;AAqFxF;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,GAAI,8BAAsC,kBAAkB,mDA+GrF,CAAC"}
|