@markup-canvas/react 1.2.6 → 1.2.8

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/README.md CHANGED
@@ -141,6 +141,15 @@ The `MarkupCanvas` component accepts the following props:
141
141
  | `rulerTickColorDark` | `string` | `"#383838"` | Dark mode tick mark color |
142
142
  | `gridColorDark` | `string` | `"rgba(255, 255, 255, 0.1)"` | Dark mode grid line color |
143
143
 
144
+ **Initial Transform**
145
+
146
+ | Prop | Type | Default | Description |
147
+ |------|------|---------|-------------|
148
+ | `initialZoom` | `number` | `1` | Initial zoom level (scale factor) |
149
+ | `initialPan` | `{ x: number; y: number }` | `{ x: 0, y: 0 }` | Initial pan position |
150
+
151
+ These props set the initial view transform when the canvas is created. This is useful for setting a default zoom level and pan position without needing to do it in the `onReady` callback.
152
+
144
153
  **React-Specific Props**
145
154
 
146
155
  | Prop | Type | Default | Description |
@@ -179,6 +188,8 @@ The `MarkupCanvas` component accepts the following props:
179
188
  themeMode="light"
180
189
  enableClickToZoom={true}
181
190
  clickZoomLevel={2}
191
+ initialZoom={2}
192
+ initialPan={{ x: 400, y: 800 }}
182
193
  onZoomChange={(zoom) => console.log('Zoom:', zoom)}
183
194
  onPanChange={(pan) => console.log('Pan:', pan)}
184
195
  onReady={(canvas) => console.log('Canvas ready:', canvas)}
@@ -290,7 +301,7 @@ The `useMarkupCanvas` hook returns an object with the following properties and m
290
301
  | `zoomIn` | `(factor?: number) => void` | Zoom in by factor |
291
302
  | `zoomOut` | `(factor?: number) => void` | Zoom out by factor |
292
303
  | `resetZoom` | `() => void` | Reset zoom to 100% |
293
- | `panTo` | `(x: number, y: number) => void` | Pan to specific coordinates |
304
+ | `panToPoint` | `(x: number, y: number) => void` | Pan to specific coordinates |
294
305
  | `fitToContent` | `() => void` | Fit content to viewport |
295
306
  | `centerContent` | `() => void` | Center content on canvas |
296
307
  | `setTransitionMode` | `(enabled: boolean) => void` | Enable/disable transitions |
@@ -12,5 +12,10 @@ export interface MarkupCanvasProps extends Omit<MarkupCanvasConfig, "container">
12
12
  y: number;
13
13
  }) => void;
14
14
  onReady?: (canvas: CoreMarkupCanvas) => void;
15
+ initialZoom?: number;
16
+ initialPan?: {
17
+ x: number;
18
+ y: number;
19
+ };
15
20
  }
16
21
  export declare const MarkupCanvas: import("react").ForwardRefExoticComponent<MarkupCanvasProps & import("react").RefAttributes<MarkupCanvasRef>>;
@@ -1,44 +1,9 @@
1
- import type { Transform, WindowAPI } from "@markup-canvas/core";
2
- import type { UseMarkupCanvasOptions } from "../types/index.js";
1
+ import type { WindowAPI } from "@markup-canvas/core";
2
+ import type { UseMarkupCanvasOptions, UseMarkupCanvasReturn } from "../types/index.js";
3
3
  interface UseMarkupCanvasHookOptions extends Omit<UseMarkupCanvasOptions, "onReady"> {
4
4
  canvasName?: string;
5
5
  onError?: () => void;
6
6
  onReady?: (canvas: WindowAPI) => void;
7
7
  }
8
- export declare function useMarkupCanvas(options?: UseMarkupCanvasHookOptions): {
9
- canvas: WindowAPI | null;
10
- transform: Transform;
11
- zoom: number;
12
- pan: {
13
- x: number;
14
- y: number;
15
- };
16
- isReady: boolean;
17
- zoomIn: (factor?: number) => void;
18
- zoomOut: (factor?: number) => void;
19
- resetZoom: () => void;
20
- panLeft: (distance?: number) => void;
21
- panRight: (distance?: number) => void;
22
- panUp: (distance?: number) => void;
23
- panDown: (distance?: number) => void;
24
- panToPoint: (x: number, y: number) => void;
25
- fitToContent: () => void;
26
- centerContent: () => void;
27
- resetView: () => void;
28
- setTransitionMode: (enabled: boolean) => void;
29
- toggleTransitionMode: () => boolean;
30
- themeMode: "light" | "dark";
31
- updateThemeMode: (mode: "light" | "dark") => void;
32
- toggleThemeMode: () => void;
33
- toggleRulers: () => void;
34
- showRulers: () => void;
35
- hideRulers: () => void;
36
- areRulersVisible: () => boolean;
37
- showRulersState: boolean;
38
- toggleGrid: () => void;
39
- showGrid: () => void;
40
- hideGrid: () => void;
41
- isGridVisible: () => boolean;
42
- showGridState: boolean;
43
- };
8
+ export declare function useMarkupCanvas(options?: UseMarkupCanvasHookOptions): UseMarkupCanvasReturn;
44
9
  export {};
package/dist/index.cjs.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Markup Canvas React
3
3
  * React components and hooks for markup-canvas
4
- * @version 1.2.6
4
+ * @version 1.2.8
5
5
  */
6
6
  'use strict';
7
7
 
@@ -9,7 +9,7 @@ var jsxRuntime = require('react/jsx-runtime');
9
9
  var core = require('@markup-canvas/core');
10
10
  var react = require('react');
11
11
 
12
- const MarkupCanvas = react.forwardRef(({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, ...options }, ref) => {
12
+ const MarkupCanvas = react.forwardRef(({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, initialZoom, initialPan, ...options }, ref) => {
13
13
  const containerRef = react.useRef(null);
14
14
  const [canvasInstance, setCanvasInstance] = react.useState(null);
15
15
  react.useImperativeHandle(ref, () => ({
@@ -17,7 +17,7 @@ const MarkupCanvas = react.forwardRef(({ children, className, style, onTransform
17
17
  zoomIn: () => canvasInstance?.zoomIn(),
18
18
  zoomOut: () => canvasInstance?.zoomOut(),
19
19
  resetZoom: () => canvasInstance?.resetZoom(),
20
- panTo: (x, y) => canvasInstance?.scrollToPoint(x, y),
20
+ panToPoint: (x, y) => canvasInstance?.panToPoint(x, y),
21
21
  fitToContent: () => canvasInstance?.fitToScreen(),
22
22
  centerContent: () => canvasInstance?.centerContent(),
23
23
  getTransform: () => canvasInstance?.transform || { scale: 1, translateX: 0, translateY: 0 },
@@ -52,11 +52,15 @@ const MarkupCanvas = react.forwardRef(({ children, className, style, onTransform
52
52
  const handleReady = react.useCallback((canvas) => {
53
53
  onReadyRef.current?.(canvas);
54
54
  }, []);
55
- const stableConfigJson = react.useMemo(() => JSON.stringify(options), [options]);
55
+ const stableConfigJson = react.useMemo(() => JSON.stringify({ ...options, initialZoom, initialPan }), [options, initialZoom, initialPan]);
56
56
  react.useEffect(() => {
57
57
  if (!containerRef.current)
58
58
  return;
59
- const canvas = new core.MarkupCanvas(containerRef.current, options);
59
+ const canvas = new core.MarkupCanvas(containerRef.current, {
60
+ ...options,
61
+ initialZoom,
62
+ initialPan,
63
+ });
60
64
  setCanvasInstance(canvas);
61
65
  canvas.on("transform", handleTransformChange);
62
66
  canvas.on("zoom", handleZoomChange);
@@ -242,7 +246,8 @@ function useMarkupCanvas(options = {}) {
242
246
  canvas?.theme?.update?.(mode);
243
247
  }, [canvas]);
244
248
  const toggleThemeMode = react.useCallback(() => {
245
- canvas?.theme?.toggle?.();
249
+ const newMode = canvas?.theme?.toggle?.() ?? "light";
250
+ return newMode;
246
251
  }, [canvas]);
247
252
  const showRulers = react.useCallback(() => {
248
253
  canvas?.rulers?.show?.();
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/components/MarkupCanvas.tsx","../src/hooks/useMarkupCanvas.ts"],"sourcesContent":[null,null],"names":["forwardRef","useRef","useState","useImperativeHandle","useCallback","useMemo","useEffect","CoreMarkupCanvas","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/components/MarkupCanvas.tsx","../src/hooks/useMarkupCanvas.ts"],"sourcesContent":[null,null],"names":["forwardRef","useRef","useState","useImperativeHandle","useCallback","useMemo","useEffect","CoreMarkupCanvas","_jsx"],"mappings":";;;;;;;;;;;AA0BO,MAAM,YAAY,GAAGA,gBAAU,CACpC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,EAAE,GAAG,KAAI;AAClI,IAAA,MAAM,YAAY,GAAGC,YAAM,CAAiB,IAAI,CAAC;IACjD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAGC,cAAQ,CAA0B,IAAI,CAAC;AAEnF,IAAAC,yBAAmB,CACjB,GAAG,EACH,OAAO;AACL,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,MAAM,cAAc,EAAE,MAAM,EAAE;AACtC,QAAA,OAAO,EAAE,MAAM,cAAc,EAAE,OAAO,EAAE;AACxC,QAAA,SAAS,EAAE,MAAM,cAAc,EAAE,SAAS,EAAE;AAC5C,QAAA,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,cAAc,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;AACtD,QAAA,YAAY,EAAE,MAAM,cAAc,EAAE,WAAW,EAAE;AACjD,QAAA,aAAa,EAAE,MAAM,cAAc,EAAE,aAAa,EAAE;QACpD,YAAY,EAAE,MAAM,cAAc,EAAE,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;QAC3F,OAAO,EAAE,MAAM,cAAc,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;QACpD,eAAe,EAAE,CAAC,IAAsB,KAAK,cAAc,EAAE,eAAe,CAAC,IAAI,CAAC;AAClF,QAAA,YAAY,EAAE,MAAM,cAAc,EAAE,YAAY,EAAE;AAClD,QAAA,UAAU,EAAE,MAAM,cAAc,EAAE,UAAU,EAAE;AAC9C,QAAA,UAAU,EAAE,MAAM,cAAc,EAAE,UAAU,EAAE;QAC9C,gBAAgB,EAAE,MAAM,cAAc,EAAE,gBAAgB,EAAE,IAAI,KAAK;AACnE,QAAA,UAAU,EAAE,MAAM,cAAc,EAAE,UAAU,EAAE;AAC9C,QAAA,QAAQ,EAAE,MAAM,cAAc,EAAE,QAAQ,EAAE;AAC1C,QAAA,QAAQ,EAAE,MAAM,cAAc,EAAE,QAAQ,EAAE;QAC1C,aAAa,EAAE,MAAM,cAAc,EAAE,aAAa,EAAE,IAAI,KAAK;AAC9D,KAAA,CAAC,EACF,CAAC,cAAc,CAAC,CACjB;AAED,IAAA,MAAM,oBAAoB,GAAGF,YAAM,CAAC,iBAAiB,CAAC;AACtD,IAAA,MAAM,eAAe,GAAGA,YAAM,CAAC,YAAY,CAAC;AAC5C,IAAA,MAAM,cAAc,GAAGA,YAAM,CAAC,WAAW,CAAC;AAC1C,IAAA,MAAM,UAAU,GAAGA,YAAM,CAAC,OAAO,CAAC;AAElC,IAAA,oBAAoB,CAAC,OAAO,GAAG,iBAAiB;AAChD,IAAA,eAAe,CAAC,OAAO,GAAG,YAAY;AACtC,IAAA,cAAc,CAAC,OAAO,GAAG,WAAW;AACpC,IAAA,UAAU,CAAC,OAAO,GAAG,OAAO;AAE5B,IAAA,MAAM,qBAAqB,GAAGG,iBAAW,CAAC,CAAC,SAAoB,KAAI;AACjE,QAAA,oBAAoB,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3C,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,gBAAgB,GAAGA,iBAAW,CAAC,CAAC,IAAY,KAAI;AACpD,QAAA,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;IACjC,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,eAAe,GAAGA,iBAAW,CAAC,CAAC,GAA6B,KAAI;AACpE,QAAA,cAAc,CAAC,OAAO,GAAG,GAAG,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,WAAW,GAAGA,iBAAW,CAAC,CAAC,MAAwB,KAAI;AAC3D,QAAA,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC;IAC9B,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,gBAAgB,GAAGC,aAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAEnIC,eAAS,CAAC,MAAK;QACb,IAAI,CAAC,YAAY,CAAC,OAAO;YAAE;QAE3B,MAAM,MAAM,GAAG,IAAIC,iBAAgB,CAAC,YAAY,CAAC,OAAO,EAAE;AACxD,YAAA,GAAG,OAAO;YACV,WAAW;YACX,UAAU;AACW,SAAA,CAAC;QACxB,iBAAiB,CAAC,MAAM,CAAC;AAEzB,QAAA,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,qBAAqB,CAAC;AAC7C,QAAA,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;AACnC,QAAA,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC;AACjC,QAAA,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;AAE/B,QAAA,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,WAAW,CAAC,MAAM,CAAC;QACrB;AAEA,QAAA,IAAI,MAAM,CAAC,SAAS,IAAI,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,KAAK,UAAU,EAAE;AACpE,YAAA,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE;QAC1B;AAEA,QAAA,OAAO,MAAK;AACV,YAAA,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAC;AAC9C,YAAA,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;AACpC,YAAA,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC;AAClC,YAAA,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;YAChC,MAAM,CAAC,OAAO,EAAE;YAChB,iBAAiB,CAAC,IAAI,CAAC;AACzB,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;AAE7F,IAAA,QACEC,cAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAA,QAAA,EAC7F,QAAQ,EAAA,CACL;AAEV,CAAC;AAGH,YAAY,CAAC,WAAW,GAAG,cAAc;;ACnHnC,SAAU,eAAe,CAAC,OAAA,GAAsC,EAAE,EAAA;AACtE,IAAA,MAAM,EAAE,UAAU,GAAG,cAAc,EAAE,GAAG,OAAO;IAE/C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGN,cAAQ,CAAmB,IAAI,CAAC;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAGA,cAAQ,CAAY,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;IACjG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAGA,cAAQ,CAAC,CAAC,CAAC;AACnC,IAAA,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAGA,cAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC;IAC7C,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAAC,GAAGA,cAAQ,CAAmB,OAAO,CAAC;IAC1E,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC;IAC7D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC;AAEzD,IAAA,MAAM,UAAU,GAAGD,YAAM,CAAC,OAAO,CAAC;AAClC,IAAA,UAAU,CAAC,OAAO,GAAG,OAAO;AAE5B,IAAA,MAAM,oBAAoB,GAAGG,iBAAW,CAAC,CAAC,cAAyB,KAAI;QACrE,SAAS,CAAC,cAAc,CAAC;QACzB,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC;IAC9C,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,eAAe,GAAGA,iBAAW,CAAC,CAAC,YAAuB,KAAI;QAC9D,YAAY,CAAC,YAAY,CAAC;QAC1B,UAAU,CAAC,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC;IACtD,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,UAAU,GAAGA,iBAAW,CAAC,CAAC,OAAe,KAAI;QACjD,OAAO,CAAC,OAAO,CAAC;QAChB,UAAU,CAAC,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,SAAS,GAAGA,iBAAW,CAAC,CAAC,MAAgC,KAAI;QACjE,MAAM,CAAC,MAAM,CAAC;QACd,UAAU,CAAC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,WAAW,GAAGA,iBAAW,CAAC,CAAC,cAAyB,KAAI;QAC5D,UAAU,CAAC,IAAI,CAAC;QAChB,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC;IAC9C,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,4BAA4B,GAAGA,iBAAW,CAAC,CAAC,SAAkB,KAAI;QACtE,kBAAkB,CAAC,SAAS,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,0BAA0B,GAAGA,iBAAW,CAAC,CAAC,SAAkB,KAAI;QACpE,gBAAgB,CAAC,SAAS,CAAC;IAC7B,CAAC,EAAE,EAAE,CAAC;;IAGNE,eAAS,CAAC,MAAK;AACb,QAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACjC,YAAA,UAAU,CAAC,OAAO,CAAC,OAAO,IAAI;YAC9B;QACF;AAEA,QAAA,MAAM,YAAY,GAAI,MAA6C,CAAC,UAAU,CAAc;AAE5F,QAAA,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YACpD,oBAAoB,CAAC,YAAY,CAAC;YAClC,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;;AAG1C,YAAA,IAAI,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE;AACjC,gBAAA,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS;gBAC9C,YAAY,CAAC,SAAS,CAAC;AACvB,gBAAA,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;AACxB,gBAAA,MAAM,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC;YAC9D;AAEA,YAAA,IAAI,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE;gBAC/B,UAAU,CAAC,IAAI,CAAC;gBAChB,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC;YAC5C;YAEA,iBAAiB,CAAE,YAAY,EAAE,KAAK,EAAE,OAAwC,IAAI,OAAO,CAAC;YAE5F,IAAI,YAAY,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE;gBACtC,kBAAkB,CAAC,IAAI,CAAC;YAC1B;YACA,IAAI,YAAY,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE;gBACpC,gBAAgB,CAAC,IAAI,CAAC;YACxB;QACF;aAAO;AACL,YAAA,UAAU,CAAC,OAAO,CAAC,OAAO,IAAI;QAChC;AACF,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;;IAGtCA,eAAS,CAAC,MAAK;QACb,IAAI,CAAC,MAAM,EAAE;YACX;QACF;QAEA,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,EAAE,4BAA4B,CAAC;QACjE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;AAE7D,QAAA,OAAO,MAAK;YACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,eAAe,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,EAAE,4BAA4B,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;AAChE,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE,0BAA0B,CAAC,CAAC;;IAG3HA,eAAS,CAAC,MAAK;AACb,QAAA,MAAM,aAAa,GAAG,CAAC,KAAmB,KAAI;AAC5C,YAAA,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE;AACjF,gBAAA,QAAQ,KAAK,CAAC,IAAI,CAAC,MAAM;AACvB,oBAAA,KAAK,WAAW;AACd,wBAAA,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAChC;AACF,oBAAA,KAAK,MAAM;AACT,wBAAA,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAC3B;AACF,oBAAA,KAAK,KAAK;AACR,wBAAA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAC1B;AACF,oBAAA,KAAK,OAAO;AACV,wBAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAC5B;;YAIN;AACF,QAAA,CAAC;AAED,QAAA,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC;AAEjD,QAAA,OAAO,MAAK;AACV,YAAA,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC;AACtD,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;;IAGrE,MAAM,MAAM,GAAGF,iBAAW,CACxB,CAAC,MAAM,GAAG,GAAG,KAAI;QACf,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC;AAC5B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;IAED,MAAM,OAAO,GAAGA,iBAAW,CACzB,CAAC,MAAM,GAAG,GAAG,KAAI;QACf,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC;AAC7B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,SAAS,GAAGA,iBAAW,CAAC,MAAK;AACjC,QAAA,MAAM,EAAE,IAAI,EAAE,KAAK,IAAI;AACzB,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,OAAO,GAAGA,iBAAW,CACzB,CAAC,QAAiB,KAAI;QACpB,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,QAAQ,CAAC;AAC/B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,QAAQ,GAAGA,iBAAW,CAC1B,CAAC,QAAiB,KAAI;QACpB,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,QAAQ,CAAC;AAChC,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,KAAK,GAAGA,iBAAW,CACvB,CAAC,QAAiB,KAAI;QACpB,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;AAC7B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,OAAO,GAAGA,iBAAW,CACzB,CAAC,QAAiB,KAAI;QACpB,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,QAAQ,CAAC;AAC/B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,YAAY,GAAGA,iBAAW,CAAC,MAAK;AACpC,QAAA,MAAM,EAAE,IAAI,EAAE,WAAW,IAAI;AAC/B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,aAAa,GAAGA,iBAAW,CAAC,MAAK;AACrC,QAAA,MAAM,EAAE,GAAG,EAAE,QAAQ,IAAI;AAC3B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAEZ,MAAM,UAAU,GAAGA,iBAAW,CAC5B,CAAC,CAAS,EAAE,CAAS,KAAI;QACvB,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;AAC9B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,SAAS,GAAGA,iBAAW,CAAC,MAAK;AACjC,QAAA,MAAM,EAAE,IAAI,EAAE,aAAa,IAAI;AACjC,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,iBAAiB,GAAGA,iBAAW,CACnC,CAAC,OAAgB,KAAI;QACnB,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC;AACpC,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,oBAAoB,GAAGA,iBAAW,CAAC,MAAK;QAC5C,OAAO,MAAM,EAAE,UAAU,EAAE,MAAM,IAAI,IAAI,KAAK;AAChD,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,eAAe,GAAGA,iBAAW,CACjC,CAAC,IAAsB,KAAI;QACzB,iBAAiB,CAAC,IAAI,CAAC;QACvB,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;AAC/B,IAAA,CAAC,EACD,CAAC,MAAM,CAAC,CACT;AAED,IAAA,MAAM,eAAe,GAAGA,iBAAW,CAAC,MAAK;QACvC,MAAM,OAAO,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,OAAO;AACpD,QAAA,OAAO,OAAO;AAChB,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,UAAU,GAAGA,iBAAW,CAAC,MAAK;AAClC,QAAA,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI;AAC1B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,UAAU,GAAGA,iBAAW,CAAC,MAAK;AAClC,QAAA,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI;AAC1B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,YAAY,GAAGA,iBAAW,CAAC,MAAK;AACpC,QAAA,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI;AAC5B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,gBAAgB,GAAGA,iBAAW,CAAC,MAAK;QACxC,OAAO,MAAM,EAAE,MAAM,EAAE,SAAS,IAAI,IAAI,KAAK;AAC/C,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,QAAQ,GAAGA,iBAAW,CAAC,MAAK;AAChC,QAAA,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI;AACxB,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,QAAQ,GAAGA,iBAAW,CAAC,MAAK;AAChC,QAAA,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI;AACxB,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,UAAU,GAAGA,iBAAW,CAAC,MAAK;AAClC,QAAA,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI;AAC1B,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AAEZ,IAAA,MAAM,aAAa,GAAGA,iBAAW,CAAC,MAAK;QACrC,OAAO,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,KAAK;AAC7C,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAEZ,OAAO;AACL,QAAA,MAAM,EAAE,MAAM;QACd,SAAS;QACT,IAAI;QACJ,GAAG;QACH,OAAO;QACP,MAAM;QACN,OAAO;QACP,SAAS;QACT,OAAO;QACP,QAAQ;QACR,KAAK;QACL,OAAO;QACP,UAAU;QACV,YAAY;QACZ,aAAa;QACb,SAAS;QACT,iBAAiB;QACjB,oBAAoB;QACpB,SAAS;QACT,eAAe;QACf,eAAe;QACf,YAAY;QACZ,UAAU;QACV,UAAU;QACV,gBAAgB;QAChB,eAAe;QACf,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,aAAa;QACb,aAAa;KACd;AACH;;;;;"}
package/dist/index.esm.js CHANGED
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * Markup Canvas React
3
3
  * React components and hooks for markup-canvas
4
- * @version 1.2.6
4
+ * @version 1.2.8
5
5
  */
6
6
  import { jsx } from 'react/jsx-runtime';
7
7
  import { MarkupCanvas as MarkupCanvas$1 } from '@markup-canvas/core';
8
8
  import { forwardRef, useRef, useState, useImperativeHandle, useCallback, useMemo, useEffect } from 'react';
9
9
 
10
- const MarkupCanvas = forwardRef(({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, ...options }, ref) => {
10
+ const MarkupCanvas = forwardRef(({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, initialZoom, initialPan, ...options }, ref) => {
11
11
  const containerRef = useRef(null);
12
12
  const [canvasInstance, setCanvasInstance] = useState(null);
13
13
  useImperativeHandle(ref, () => ({
@@ -15,7 +15,7 @@ const MarkupCanvas = forwardRef(({ children, className, style, onTransformChange
15
15
  zoomIn: () => canvasInstance?.zoomIn(),
16
16
  zoomOut: () => canvasInstance?.zoomOut(),
17
17
  resetZoom: () => canvasInstance?.resetZoom(),
18
- panTo: (x, y) => canvasInstance?.scrollToPoint(x, y),
18
+ panToPoint: (x, y) => canvasInstance?.panToPoint(x, y),
19
19
  fitToContent: () => canvasInstance?.fitToScreen(),
20
20
  centerContent: () => canvasInstance?.centerContent(),
21
21
  getTransform: () => canvasInstance?.transform || { scale: 1, translateX: 0, translateY: 0 },
@@ -50,11 +50,15 @@ const MarkupCanvas = forwardRef(({ children, className, style, onTransformChange
50
50
  const handleReady = useCallback((canvas) => {
51
51
  onReadyRef.current?.(canvas);
52
52
  }, []);
53
- const stableConfigJson = useMemo(() => JSON.stringify(options), [options]);
53
+ const stableConfigJson = useMemo(() => JSON.stringify({ ...options, initialZoom, initialPan }), [options, initialZoom, initialPan]);
54
54
  useEffect(() => {
55
55
  if (!containerRef.current)
56
56
  return;
57
- const canvas = new MarkupCanvas$1(containerRef.current, options);
57
+ const canvas = new MarkupCanvas$1(containerRef.current, {
58
+ ...options,
59
+ initialZoom,
60
+ initialPan,
61
+ });
58
62
  setCanvasInstance(canvas);
59
63
  canvas.on("transform", handleTransformChange);
60
64
  canvas.on("zoom", handleZoomChange);
@@ -240,7 +244,8 @@ function useMarkupCanvas(options = {}) {
240
244
  canvas?.theme?.update?.(mode);
241
245
  }, [canvas]);
242
246
  const toggleThemeMode = useCallback(() => {
243
- canvas?.theme?.toggle?.();
247
+ const newMode = canvas?.theme?.toggle?.() ?? "light";
248
+ return newMode;
244
249
  }, [canvas]);
245
250
  const showRulers = useCallback(() => {
246
251
  canvas?.rulers?.show?.();
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/components/MarkupCanvas.tsx","../src/hooks/useMarkupCanvas.ts"],"sourcesContent":[null,null],"names":["CoreMarkupCanvas","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/components/MarkupCanvas.tsx","../src/hooks/useMarkupCanvas.ts"],"sourcesContent":[null,null],"names":["CoreMarkupCanvas","_jsx"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { MarkupCanvas as CoreMarkupCanvas, Transform } from "@markup-canvas/core";
1
+ import type { MarkupCanvas as CoreMarkupCanvas, Transform, WindowAPI } from "@markup-canvas/core";
2
2
  export interface MarkupCanvasRef {
3
3
  canvas: CoreMarkupCanvas | null;
4
4
  zoomIn: (factor?: number) => void;
5
5
  zoomOut: (factor?: number) => void;
6
6
  resetZoom: () => void;
7
- panTo: (x: number, y: number) => void;
7
+ panToPoint: (x: number, y: number) => void;
8
8
  fitToContent: () => void;
9
9
  centerContent: () => void;
10
10
  getTransform: () => Transform;
@@ -38,8 +38,7 @@ export interface CanvasEventHandlers {
38
38
  onReady?: (canvas: CoreMarkupCanvas) => void;
39
39
  }
40
40
  export interface UseMarkupCanvasReturn {
41
- canvas: CoreMarkupCanvas | null;
42
- initCanvasUtils: (canvas: CoreMarkupCanvas) => void;
41
+ canvas: WindowAPI | null;
43
42
  transform: Transform;
44
43
  zoom: number;
45
44
  pan: {
@@ -50,9 +49,14 @@ export interface UseMarkupCanvasReturn {
50
49
  zoomIn: (factor?: number) => void;
51
50
  zoomOut: (factor?: number) => void;
52
51
  resetZoom: () => void;
53
- panTo: (x: number, y: number) => void;
52
+ panLeft: (distance?: number) => void;
53
+ panRight: (distance?: number) => void;
54
+ panUp: (distance?: number) => void;
55
+ panDown: (distance?: number) => void;
56
+ panToPoint: (x: number, y: number) => void;
54
57
  fitToContent: () => void;
55
58
  centerContent: () => void;
59
+ resetView: () => void;
56
60
  setTransitionMode: (enabled: boolean) => void;
57
61
  toggleTransitionMode: () => boolean;
58
62
  themeMode: "light" | "dark";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@markup-canvas/react",
3
- "version": "1.2.6",
3
+ "version": "1.2.8",
4
4
  "description": "React components and hooks for markup-canvas",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs.js",
@@ -22,10 +22,10 @@
22
22
  "peerDependencies": {
23
23
  "react": ">=18.0.0",
24
24
  "react-dom": ">=18.0.0",
25
- "@markup-canvas/core": "2.1.5"
25
+ "@markup-canvas/core": "1.2.8"
26
26
  },
27
27
  "devDependencies": {
28
- "@biomejs/biome": "2.2.6",
28
+ "@biomejs/biome": "2.3.0",
29
29
  "@markup-canvas/core": "workspace:*",
30
30
  "@rollup/plugin-node-resolve": "^16.0.3",
31
31
  "@rollup/plugin-typescript": "^12.1.4",
@@ -20,10 +20,12 @@ export interface MarkupCanvasProps extends Omit<MarkupCanvasConfig, "container">
20
20
  onZoomChange?: (zoom: number) => void;
21
21
  onPanChange?: (pan: { x: number; y: number }) => void;
22
22
  onReady?: (canvas: CoreMarkupCanvas) => void;
23
+ initialZoom?: number;
24
+ initialPan?: { x: number; y: number };
23
25
  }
24
26
 
25
27
  export const MarkupCanvas = forwardRef<MarkupCanvasRef, MarkupCanvasProps>(
26
- ({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, ...options }, ref) => {
28
+ ({ children, className, style, onTransformChange, onZoomChange, onPanChange, onReady, initialZoom, initialPan, ...options }, ref) => {
27
29
  const containerRef = useRef<HTMLDivElement>(null);
28
30
  const [canvasInstance, setCanvasInstance] = useState<CoreMarkupCanvas | null>(null);
29
31
 
@@ -34,7 +36,7 @@ export const MarkupCanvas = forwardRef<MarkupCanvasRef, MarkupCanvasProps>(
34
36
  zoomIn: () => canvasInstance?.zoomIn(),
35
37
  zoomOut: () => canvasInstance?.zoomOut(),
36
38
  resetZoom: () => canvasInstance?.resetZoom(),
37
- panTo: (x, y) => canvasInstance?.scrollToPoint(x, y),
39
+ panToPoint: (x, y) => canvasInstance?.panToPoint(x, y),
38
40
  fitToContent: () => canvasInstance?.fitToScreen(),
39
41
  centerContent: () => canvasInstance?.centerContent(),
40
42
  getTransform: () => canvasInstance?.transform || { scale: 1, translateX: 0, translateY: 0 },
@@ -78,12 +80,16 @@ export const MarkupCanvas = forwardRef<MarkupCanvasRef, MarkupCanvasProps>(
78
80
  onReadyRef.current?.(canvas);
79
81
  }, []);
80
82
 
81
- const stableConfigJson = useMemo(() => JSON.stringify(options), [options]);
83
+ const stableConfigJson = useMemo(() => JSON.stringify({ ...options, initialZoom, initialPan }), [options, initialZoom, initialPan]);
82
84
 
83
85
  useEffect(() => {
84
86
  if (!containerRef.current) return;
85
87
 
86
- const canvas = new CoreMarkupCanvas(containerRef.current, options as MarkupCanvasConfig);
88
+ const canvas = new CoreMarkupCanvas(containerRef.current, {
89
+ ...options,
90
+ initialZoom,
91
+ initialPan,
92
+ } as MarkupCanvasConfig);
87
93
  setCanvasInstance(canvas);
88
94
 
89
95
  canvas.on("transform", handleTransformChange);
@@ -1,6 +1,6 @@
1
1
  import type { Transform, WindowAPI } from "@markup-canvas/core";
2
2
  import { useCallback, useEffect, useRef, useState } from "react";
3
- import type { UseMarkupCanvasOptions } from "../types/index.js";
3
+ import type { UseMarkupCanvasOptions, UseMarkupCanvasReturn } from "../types/index.js";
4
4
 
5
5
  interface UseMarkupCanvasHookOptions extends Omit<UseMarkupCanvasOptions, "onReady"> {
6
6
  canvasName?: string;
@@ -8,7 +8,7 @@ interface UseMarkupCanvasHookOptions extends Omit<UseMarkupCanvasOptions, "onRea
8
8
  onReady?: (canvas: WindowAPI) => void;
9
9
  }
10
10
 
11
- export function useMarkupCanvas(options: UseMarkupCanvasHookOptions = {}) {
11
+ export function useMarkupCanvas(options: UseMarkupCanvasHookOptions = {}): UseMarkupCanvasReturn {
12
12
  const { canvasName = "markupCanvas" } = options;
13
13
 
14
14
  const [canvas, setCanvas] = useState<WindowAPI | null>(null);
@@ -234,7 +234,8 @@ export function useMarkupCanvas(options: UseMarkupCanvasHookOptions = {}) {
234
234
  );
235
235
 
236
236
  const toggleThemeMode = useCallback(() => {
237
- canvas?.theme?.toggle?.();
237
+ const newMode = canvas?.theme?.toggle?.() ?? "light";
238
+ return newMode;
238
239
  }, [canvas]);
239
240
 
240
241
  const showRulers = useCallback(() => {
@@ -1,11 +1,11 @@
1
- import type { MarkupCanvas as CoreMarkupCanvas, Transform } from "@markup-canvas/core";
1
+ import type { MarkupCanvas as CoreMarkupCanvas, Transform, WindowAPI } from "@markup-canvas/core";
2
2
 
3
3
  export interface MarkupCanvasRef {
4
4
  canvas: CoreMarkupCanvas | null;
5
5
  zoomIn: (factor?: number) => void;
6
6
  zoomOut: (factor?: number) => void;
7
7
  resetZoom: () => void;
8
- panTo: (x: number, y: number) => void;
8
+ panToPoint: (x: number, y: number) => void;
9
9
  fitToContent: () => void;
10
10
  centerContent: () => void;
11
11
  getTransform: () => Transform;
@@ -36,8 +36,7 @@ export interface CanvasEventHandlers {
36
36
  }
37
37
 
38
38
  export interface UseMarkupCanvasReturn {
39
- canvas: CoreMarkupCanvas | null;
40
- initCanvasUtils: (canvas: CoreMarkupCanvas) => void;
39
+ canvas: WindowAPI | null;
41
40
  transform: Transform;
42
41
  zoom: number;
43
42
  pan: { x: number; y: number };
@@ -45,9 +44,14 @@ export interface UseMarkupCanvasReturn {
45
44
  zoomIn: (factor?: number) => void;
46
45
  zoomOut: (factor?: number) => void;
47
46
  resetZoom: () => void;
48
- panTo: (x: number, y: number) => void;
47
+ panLeft: (distance?: number) => void;
48
+ panRight: (distance?: number) => void;
49
+ panUp: (distance?: number) => void;
50
+ panDown: (distance?: number) => void;
51
+ panToPoint: (x: number, y: number) => void;
49
52
  fitToContent: () => void;
50
53
  centerContent: () => void;
54
+ resetView: () => void;
51
55
  setTransitionMode: (enabled: boolean) => void;
52
56
  toggleTransitionMode: () => boolean;
53
57
  themeMode: "light" | "dark";