system-canvas-react 0.2.5 → 0.2.7
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/components/AlignmentGuidesLayer.d.ts +5 -0
- package/dist/components/AlignmentGuidesLayer.d.ts.map +1 -0
- package/dist/components/AlignmentGuidesLayer.js +7 -0
- package/dist/components/AlignmentGuidesLayer.js.map +1 -0
- package/dist/components/NodeToolbar.d.ts +6 -1
- package/dist/components/NodeToolbar.d.ts.map +1 -1
- package/dist/components/NodeToolbar.js +44 -4
- package/dist/components/NodeToolbar.js.map +1 -1
- package/dist/components/SystemCanvas.d.ts +12 -0
- package/dist/components/SystemCanvas.d.ts.map +1 -1
- package/dist/components/SystemCanvas.js +114 -11
- package/dist/components/SystemCanvas.js.map +1 -1
- package/dist/components/Viewport.d.ts +3 -0
- package/dist/components/Viewport.d.ts.map +1 -1
- package/dist/components/Viewport.js +3 -2
- package/dist/components/Viewport.js.map +1 -1
- package/dist/hooks/__tests__/alignment.test.d.ts +2 -0
- package/dist/hooks/__tests__/alignment.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/alignment.test.js +200 -0
- package/dist/hooks/__tests__/alignment.test.js.map +1 -0
- package/dist/hooks/useAlignmentGuides.d.ts +11 -0
- package/dist/hooks/useAlignmentGuides.d.ts.map +1 -0
- package/dist/hooks/useAlignmentGuides.js +23 -0
- package/dist/hooks/useAlignmentGuides.js.map +1 -0
- package/dist/hooks/useNodeDrag.d.ts +5 -0
- package/dist/hooks/useNodeDrag.d.ts.map +1 -1
- package/dist/hooks/useNodeDrag.js +5 -3
- package/dist/hooks/useNodeDrag.js.map +1 -1
- package/dist/hooks/useNodeResize.d.ts +5 -0
- package/dist/hooks/useNodeResize.d.ts.map +1 -1
- package/dist/hooks/useNodeResize.js +11 -1
- package/dist/hooks/useNodeResize.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemCanvas.js","sourceRoot":"","sources":["../../src/components/SystemCanvas.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SystemCanvas.js","sourceRoot":"","sources":["../../src/components/SystemCanvas.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import type { CanvasData, CanvasEdge, CanvasLane, ResolvedNode, CanvasTheme, EdgeStyle, Side, ViewportState, NodeUpdate, EdgeUpdate } from 'system-canvas';
|
|
3
3
|
import type { ResizeCorner, ResizeOverride } from '../hooks/useNodeResize.js';
|
|
4
4
|
import type { PendingEdgeState } from '../hooks/useEdgeCreate.js';
|
|
5
|
+
import type { AlignmentGuide } from 'system-canvas';
|
|
5
6
|
interface ViewportProps {
|
|
6
7
|
nodes: ResolvedNode[];
|
|
7
8
|
edges: CanvasEdge[];
|
|
@@ -95,6 +96,8 @@ interface ViewportProps {
|
|
|
95
96
|
onConnectionHandlePointerDown?: (node: ResolvedNode, side: Side, event: React.PointerEvent) => void;
|
|
96
97
|
/** When true, enable handle-on-hover and pending-edge preview layer */
|
|
97
98
|
edgeCreateEnabled?: boolean;
|
|
99
|
+
/** Live alignment guides to render during drag. Rendered in canvas-space above all content. */
|
|
100
|
+
alignmentGuides?: AlignmentGuide[];
|
|
98
101
|
}
|
|
99
102
|
export interface ViewportHandle {
|
|
100
103
|
zoomToNode: (node: ResolvedNode, onComplete?: () => void, options?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/components/Viewport.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAA;AACd,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/components/Viewport.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ import { EdgeLabelEditor } from './EdgeLabelEditor.js';
|
|
|
9
9
|
import { ConnectionHandles } from './ConnectionHandles.js';
|
|
10
10
|
import { PendingEdgeRenderer } from './PendingEdgeRenderer.js';
|
|
11
11
|
import { LanesBackground } from './LanesBackground.js';
|
|
12
|
+
import { AlignmentGuidesLayer } from './AlignmentGuidesLayer.js';
|
|
12
13
|
/**
|
|
13
14
|
* Extra padding around each node's bounding box when hit-testing for hover.
|
|
14
15
|
* This keeps the node "hovered" while the cursor is on a connection handle,
|
|
@@ -23,7 +24,7 @@ const HOVER_PADDING = 10;
|
|
|
23
24
|
* freely click/drag the node body without a handle flashing in.
|
|
24
25
|
*/
|
|
25
26
|
const EDGE_PROXIMITY = 16;
|
|
26
|
-
export const Viewport = forwardRef(function Viewport({ nodes, edges, nodeMap, theme, edgeStyle, columns, rows, canvases, minZoom, maxZoom, defaultViewport, onViewportChange, onNodeClick, onNodeDoubleClick, onNodeNavigate, onEdgeClick, onEdgeDoubleClick, onCanvasClick, onCanvasContextMenu, onNodeContextMenu, onEdgeContextMenu, onNodePointerDown, selectedIds, editingId, selectedEdgeId, editingEdgeId, dragOverrides, dropTargetId, marqueeRect, marqueeActiveRef, resizeOverrides, onResizeHandlePointerDown, onEditorCommit, onEditorCancel, onEdgeEditorCommit, onEdgeEditorCancel, pendingEdge, onConnectionHandlePointerDown, edgeCreateEnabled, autoFit = 'canvas-change', canvasRef, handoffTransform, onHandoffApplied, handoffFadeMs = 0, }, ref) {
|
|
27
|
+
export const Viewport = forwardRef(function Viewport({ nodes, edges, nodeMap, theme, edgeStyle, columns, rows, canvases, minZoom, maxZoom, defaultViewport, onViewportChange, onNodeClick, onNodeDoubleClick, onNodeNavigate, onEdgeClick, onEdgeDoubleClick, onCanvasClick, onCanvasContextMenu, onNodeContextMenu, onEdgeContextMenu, onNodePointerDown, selectedIds, editingId, selectedEdgeId, editingEdgeId, dragOverrides, dropTargetId, marqueeRect, marqueeActiveRef, resizeOverrides, onResizeHandlePointerDown, onEditorCommit, onEditorCancel, onEdgeEditorCommit, onEdgeEditorCancel, pendingEdge, onConnectionHandlePointerDown, edgeCreateEnabled, alignmentGuides, autoFit = 'canvas-change', canvasRef, handoffTransform, onHandoffApplied, handoffFadeMs = 0, }, ref) {
|
|
27
28
|
const { svgRef, groupRef, viewport, fitToContent, zoomToNode, setTransform } = useViewport({
|
|
28
29
|
minZoom,
|
|
29
30
|
maxZoom,
|
|
@@ -319,7 +320,7 @@ export const Viewport = forwardRef(function Viewport({ nodes, edges, nodeMap, th
|
|
|
319
320
|
if (!node)
|
|
320
321
|
return null;
|
|
321
322
|
return (_jsx("rect", { x: node.x - 3, y: node.y - 3, width: node.width + 6, height: node.height + 6, rx: (node.resolvedCornerRadius ?? 0) + 3, fill: "none", stroke: theme.node.labelColor, strokeWidth: 1.5, opacity: 0.7, pointerEvents: "none" }, `halo-${id}`));
|
|
322
|
-
}), pendingEdge && pendingSourceNode && (_jsx(PendingEdgeRenderer, { sourceNode: pendingSourceNode, sourceSide: pendingEdge.sourceSide, cursor: pendingEdge.cursor, targetNode: pendingTargetNode, theme: theme, defaultEdgeStyle: edgeStyle })), handlesNode && onConnectionHandlePointerDown && (_jsx(ConnectionHandles, { node: handlesNode, theme: theme, onHandlePointerDown: onConnectionHandlePointerDown, immediate: !!pendingEdge, activeSide: hoveredSide })), editingNode && onEditorCommit && onEditorCancel && (_jsx(NodeEditor, { node: editingNode, theme: theme, onCommit: onEditorCommit, onCancel: onEditorCancel })), editingEdge &&
|
|
323
|
+
}), pendingEdge && pendingSourceNode && (_jsx(PendingEdgeRenderer, { sourceNode: pendingSourceNode, sourceSide: pendingEdge.sourceSide, cursor: pendingEdge.cursor, targetNode: pendingTargetNode, theme: theme, defaultEdgeStyle: edgeStyle })), handlesNode && onConnectionHandlePointerDown && (_jsx(ConnectionHandles, { node: handlesNode, theme: theme, onHandlePointerDown: onConnectionHandlePointerDown, immediate: !!pendingEdge, activeSide: hoveredSide })), alignmentGuides && alignmentGuides.length > 0 && (_jsx(AlignmentGuidesLayer, { guides: alignmentGuides })), editingNode && onEditorCommit && onEditorCancel && (_jsx(NodeEditor, { node: editingNode, theme: theme, onCommit: onEditorCommit, onCancel: onEditorCancel })), editingEdge &&
|
|
323
324
|
editingEdgeMidpoint &&
|
|
324
325
|
onEdgeEditorCommit &&
|
|
325
326
|
onEdgeEditorCancel && (_jsx(EdgeLabelEditor, { initialLabel: editingEdge.label ?? '', midpoint: editingEdgeMidpoint, theme: theme, onCommit: onEdgeEditorCommit, onCancel: onEdgeEditorCancel }))] }), marqueeRect && (_jsx("rect", { x: Math.min(marqueeRect.x1, marqueeRect.x2), y: Math.min(marqueeRect.y1, marqueeRect.y2), width: Math.abs(marqueeRect.x2 - marqueeRect.x1), height: Math.abs(marqueeRect.y2 - marqueeRect.y1), fill: theme.node.labelColor + '18', stroke: theme.node.labelColor, strokeWidth: 1, opacity: 0.9, pointerEvents: "none" }))] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../src/components/Viewport.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../src/components/Viewport.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alignment.test.d.ts","sourceRoot":"","sources":["../../../src/hooks/__tests__/alignment.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { snapToGrid, alignNodes, distributeNodes, computeAlignmentGuides } from 'system-canvas';
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// Helpers
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
function rect(id, x, y, width, height) {
|
|
7
|
+
return { id, x, y, width, height };
|
|
8
|
+
}
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
// snapToGrid
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
describe('snapToGrid', () => {
|
|
13
|
+
it('rounds to nearest multiple', () => {
|
|
14
|
+
expect(snapToGrid(13, 10)).toBe(10);
|
|
15
|
+
expect(snapToGrid(15, 10)).toBe(20);
|
|
16
|
+
expect(snapToGrid(16, 10)).toBe(20);
|
|
17
|
+
expect(snapToGrid(0, 10)).toBe(0);
|
|
18
|
+
expect(snapToGrid(100, 10)).toBe(100);
|
|
19
|
+
});
|
|
20
|
+
it('returns value unchanged when size <= 0', () => {
|
|
21
|
+
expect(snapToGrid(13, 0)).toBe(13);
|
|
22
|
+
expect(snapToGrid(13, -5)).toBe(13);
|
|
23
|
+
});
|
|
24
|
+
it('works with fractional sizes', () => {
|
|
25
|
+
expect(snapToGrid(7.4, 5)).toBe(5);
|
|
26
|
+
expect(snapToGrid(7.6, 5)).toBe(10);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
// ---------------------------------------------------------------------------
|
|
30
|
+
// alignNodes
|
|
31
|
+
// ---------------------------------------------------------------------------
|
|
32
|
+
describe('alignNodes', () => {
|
|
33
|
+
const nodes = [
|
|
34
|
+
rect('a', 10, 20, 100, 50),
|
|
35
|
+
rect('b', 40, 60, 80, 40),
|
|
36
|
+
rect('c', 5, 30, 120, 60),
|
|
37
|
+
];
|
|
38
|
+
it('aligns left: all nodes move to min-x; leftmost unchanged', () => {
|
|
39
|
+
const result = alignNodes(nodes, 'left');
|
|
40
|
+
const minX = 5; // node c
|
|
41
|
+
// node c is already at 5 — should have no patch
|
|
42
|
+
expect(result.find(r => r.id === 'c')).toBeUndefined();
|
|
43
|
+
// node a moves to 5
|
|
44
|
+
expect(result.find(r => r.id === 'a')?.patch).toEqual({ x: 5 });
|
|
45
|
+
// node b moves to 5
|
|
46
|
+
expect(result.find(r => r.id === 'b')?.patch).toEqual({ x: 5 });
|
|
47
|
+
result.forEach(r => expect(r.patch.x).toBe(minX));
|
|
48
|
+
});
|
|
49
|
+
it('aligns right: all right edges align to max right-edge', () => {
|
|
50
|
+
// max right = max(10+100, 40+80, 5+120) = max(110, 120, 125) = 125
|
|
51
|
+
const result = alignNodes(nodes, 'right');
|
|
52
|
+
expect(result.find(r => r.id === 'a')?.patch).toEqual({ x: 125 - 100 }); // 25
|
|
53
|
+
expect(result.find(r => r.id === 'b')?.patch).toEqual({ x: 125 - 80 }); // 45
|
|
54
|
+
expect(result.find(r => r.id === 'c')).toBeUndefined(); // already at 125
|
|
55
|
+
});
|
|
56
|
+
it('aligns top: all nodes move to min-y', () => {
|
|
57
|
+
// min y = 20 (node a)
|
|
58
|
+
const result = alignNodes(nodes, 'top');
|
|
59
|
+
expect(result.find(r => r.id === 'a')).toBeUndefined();
|
|
60
|
+
expect(result.find(r => r.id === 'b')?.patch).toEqual({ y: 20 });
|
|
61
|
+
expect(result.find(r => r.id === 'c')?.patch).toEqual({ y: 20 });
|
|
62
|
+
});
|
|
63
|
+
it('aligns bottom: all bottom edges align to max bottom-edge', () => {
|
|
64
|
+
// max bottom = max(20+50, 60+40, 30+60) = max(70, 100, 90) = 100
|
|
65
|
+
const result = alignNodes(nodes, 'bottom');
|
|
66
|
+
expect(result.find(r => r.id === 'a')?.patch).toEqual({ y: 100 - 50 }); // 50
|
|
67
|
+
expect(result.find(r => r.id === 'b')).toBeUndefined(); // already at 100
|
|
68
|
+
expect(result.find(r => r.id === 'c')?.patch).toEqual({ y: 100 - 60 }); // 40
|
|
69
|
+
});
|
|
70
|
+
it('aligns centerH: all nodes center-x aligns to mean center-x', () => {
|
|
71
|
+
// centerX: 10+50=60, 40+40=80, 5+60=65 → mean = (60+80+65)/3 = 68.333...
|
|
72
|
+
const mean = (60 + 80 + 65) / 3;
|
|
73
|
+
const result = alignNodes(nodes, 'centerH');
|
|
74
|
+
const aExpected = mean - 100 / 2;
|
|
75
|
+
const bExpected = mean - 80 / 2;
|
|
76
|
+
const cExpected = mean - 120 / 2;
|
|
77
|
+
expect(result.find(r => r.id === 'a')?.patch.x).toBeCloseTo(aExpected);
|
|
78
|
+
expect(result.find(r => r.id === 'b')?.patch.x).toBeCloseTo(bExpected);
|
|
79
|
+
expect(result.find(r => r.id === 'c')?.patch.x).toBeCloseTo(cExpected);
|
|
80
|
+
});
|
|
81
|
+
it('aligns centerV: all nodes center-y aligns to mean center-y', () => {
|
|
82
|
+
// centerY: 20+25=45, 60+20=80, 30+30=60 → mean = (45+80+60)/3 = 61.666...
|
|
83
|
+
const mean = (45 + 80 + 60) / 3;
|
|
84
|
+
const result = alignNodes(nodes, 'centerV');
|
|
85
|
+
expect(result.find(r => r.id === 'a')?.patch.y).toBeCloseTo(mean - 50 / 2);
|
|
86
|
+
expect(result.find(r => r.id === 'b')?.patch.y).toBeCloseTo(mean - 40 / 2);
|
|
87
|
+
expect(result.find(r => r.id === 'c')?.patch.y).toBeCloseTo(mean - 60 / 2);
|
|
88
|
+
});
|
|
89
|
+
it('returns empty patch for nodes already at reference position', () => {
|
|
90
|
+
// Single node — reference IS the node's own position, so no change
|
|
91
|
+
const single = [rect('x', 10, 20, 100, 50)];
|
|
92
|
+
expect(alignNodes(single, 'left')).toEqual([]);
|
|
93
|
+
expect(alignNodes(single, 'top')).toEqual([]);
|
|
94
|
+
});
|
|
95
|
+
it('returns empty array for empty input', () => {
|
|
96
|
+
expect(alignNodes([], 'left')).toEqual([]);
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
// ---------------------------------------------------------------------------
|
|
100
|
+
// distributeNodes
|
|
101
|
+
// ---------------------------------------------------------------------------
|
|
102
|
+
describe('distributeNodes', () => {
|
|
103
|
+
it('distributes horizontally: inner nodes evenly spaced; outermost unchanged', () => {
|
|
104
|
+
// nodes at x: 0(w=10), 100(w=10), 200(w=10) — already even, no patches
|
|
105
|
+
const nodes = [
|
|
106
|
+
rect('a', 0, 0, 10, 10),
|
|
107
|
+
rect('b', 100, 0, 10, 10),
|
|
108
|
+
rect('c', 200, 0, 10, 10),
|
|
109
|
+
];
|
|
110
|
+
const result = distributeNodes(nodes, 'horizontal');
|
|
111
|
+
// b is already perfectly centered → no patch
|
|
112
|
+
expect(result).toEqual([]);
|
|
113
|
+
});
|
|
114
|
+
it('distributes horizontally: moves inner node to correct position', () => {
|
|
115
|
+
// a at x=0(w=10), b at x=50(w=10), c at x=200(w=10)
|
|
116
|
+
// outerEnd=210, outerStart=0, totalOuter=10+10=20, sumInner=10
|
|
117
|
+
// spacing = (210 - 0 - 20 - 10) / 2 = 180/2 = 90
|
|
118
|
+
// b should be at 0 + 10 + 90 = 100
|
|
119
|
+
const nodes = [
|
|
120
|
+
rect('a', 0, 0, 10, 10),
|
|
121
|
+
rect('b', 50, 0, 10, 10),
|
|
122
|
+
rect('c', 200, 0, 10, 10),
|
|
123
|
+
];
|
|
124
|
+
const result = distributeNodes(nodes, 'horizontal');
|
|
125
|
+
expect(result).toHaveLength(1);
|
|
126
|
+
expect(result[0]).toEqual({ id: 'b', patch: { x: 100 } });
|
|
127
|
+
});
|
|
128
|
+
it('distributes vertically: inner nodes evenly spaced', () => {
|
|
129
|
+
// a at y=0(h=10), b at y=50(h=10), c at y=200(h=10)
|
|
130
|
+
// spacing = (210 - 0 - 20 - 10) / 2 = 90
|
|
131
|
+
// b should be at 0 + 10 + 90 = 100
|
|
132
|
+
const nodes = [
|
|
133
|
+
rect('a', 0, 0, 10, 10),
|
|
134
|
+
rect('b', 0, 50, 10, 10),
|
|
135
|
+
rect('c', 0, 200, 10, 10),
|
|
136
|
+
];
|
|
137
|
+
const result = distributeNodes(nodes, 'vertical');
|
|
138
|
+
expect(result).toHaveLength(1);
|
|
139
|
+
expect(result[0]).toEqual({ id: 'b', patch: { y: 100 } });
|
|
140
|
+
});
|
|
141
|
+
it('returns [] for less than 3 nodes', () => {
|
|
142
|
+
expect(distributeNodes([], 'horizontal')).toEqual([]);
|
|
143
|
+
expect(distributeNodes([rect('a', 0, 0, 10, 10)], 'horizontal')).toEqual([]);
|
|
144
|
+
expect(distributeNodes([rect('a', 0, 0, 10, 10), rect('b', 100, 0, 10, 10)], 'horizontal')).toEqual([]);
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
// ---------------------------------------------------------------------------
|
|
148
|
+
// computeAlignmentGuides
|
|
149
|
+
// ---------------------------------------------------------------------------
|
|
150
|
+
describe('computeAlignmentGuides', () => {
|
|
151
|
+
it('returns [] when dragging is empty', () => {
|
|
152
|
+
const others = [rect('a', 0, 0, 100, 50)];
|
|
153
|
+
expect(computeAlignmentGuides([], others, 4)).toEqual([]);
|
|
154
|
+
});
|
|
155
|
+
it('returns [] when others is empty', () => {
|
|
156
|
+
const dragging = [rect('a', 0, 0, 100, 50)];
|
|
157
|
+
expect(computeAlignmentGuides(dragging, [], 4)).toEqual([]);
|
|
158
|
+
});
|
|
159
|
+
it('emits a guide when left edges are within threshold', () => {
|
|
160
|
+
// dragging node left edge at x=2, other node left edge at x=0 — diff=2, threshold=4
|
|
161
|
+
const dragging = [rect('d', 2, 10, 100, 50)];
|
|
162
|
+
const others = [rect('o', 0, 80, 120, 60)];
|
|
163
|
+
const guides = computeAlignmentGuides(dragging, others, 4);
|
|
164
|
+
const xGuide = guides.find(g => g.axis === 'x' && g.kind === 'edge');
|
|
165
|
+
expect(xGuide).toBeDefined();
|
|
166
|
+
expect(xGuide?.position).toBe(0); // reference (non-dragged) anchor
|
|
167
|
+
});
|
|
168
|
+
it('emits nothing when outside threshold', () => {
|
|
169
|
+
// dragging left edge at x=10, other at x=0 — diff=10 > threshold=4
|
|
170
|
+
const dragging = [rect('d', 10, 0, 100, 50)];
|
|
171
|
+
const others = [rect('o', 0, 0, 100, 50)];
|
|
172
|
+
const guides = computeAlignmentGuides(dragging, others, 4);
|
|
173
|
+
expect(guides.filter(g => g.axis === 'x' && g.kind === 'edge' && g.position === 0)).toHaveLength(0);
|
|
174
|
+
});
|
|
175
|
+
it('de-duplicates guides with the same axis + position, keeping widest span', () => {
|
|
176
|
+
// Two dragging nodes both align with others' left edge at x=0
|
|
177
|
+
const dragging = [
|
|
178
|
+
rect('d1', 1, 0, 50, 30),
|
|
179
|
+
rect('d2', 2, 40, 60, 20),
|
|
180
|
+
];
|
|
181
|
+
const others = [rect('o', 0, 100, 80, 40)];
|
|
182
|
+
const guides = computeAlignmentGuides(dragging, others, 4);
|
|
183
|
+
const xEdgeGuides = guides.filter(g => g.axis === 'x' && g.kind === 'edge' && g.position === 0);
|
|
184
|
+
// Should be de-duped to a single guide
|
|
185
|
+
expect(xEdgeGuides).toHaveLength(1);
|
|
186
|
+
// Span should cover all nodes' perpendicular extents
|
|
187
|
+
expect(xEdgeGuides[0].span.start).toBeLessThanOrEqual(0);
|
|
188
|
+
expect(xEdgeGuides[0].span.end).toBeGreaterThanOrEqual(140);
|
|
189
|
+
});
|
|
190
|
+
it('emits a center guide when center-x values align within threshold', () => {
|
|
191
|
+
// dragging centerX = 2 + 50/2 = 27, other centerX = 0 + 60/2 = 30, diff=3 <= 4
|
|
192
|
+
const dragging = [rect('d', 2, 0, 50, 40)];
|
|
193
|
+
const others = [rect('o', 0, 60, 60, 40)];
|
|
194
|
+
const guides = computeAlignmentGuides(dragging, others, 4);
|
|
195
|
+
const centerGuide = guides.find(g => g.axis === 'x' && g.kind === 'center');
|
|
196
|
+
expect(centerGuide).toBeDefined();
|
|
197
|
+
expect(centerGuide?.position).toBe(30); // other's centerX
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
//# sourceMappingURL=alignment.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alignment.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/alignment.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AlignmentGuide, ResolvedNode } from 'system-canvas';
|
|
2
|
+
export declare function useAlignmentGuides(options: {
|
|
3
|
+
dragOverrides: Map<string, {
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
}>;
|
|
7
|
+
nodesRef: React.RefObject<ResolvedNode[]>;
|
|
8
|
+
isDragging: boolean;
|
|
9
|
+
threshold: number;
|
|
10
|
+
}): AlignmentGuide[];
|
|
11
|
+
//# sourceMappingURL=useAlignmentGuides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAlignmentGuides.d.ts","sourceRoot":"","sources":["../../src/hooks/useAlignmentGuides.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IAC1C,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACpD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;IACzC,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,cAAc,EAAE,CAgBnB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { computeAlignmentGuides } from 'system-canvas';
|
|
3
|
+
export function useAlignmentGuides(options) {
|
|
4
|
+
const { dragOverrides, nodesRef, isDragging, threshold } = options;
|
|
5
|
+
return useMemo(() => {
|
|
6
|
+
if (!isDragging || dragOverrides.size === 0)
|
|
7
|
+
return [];
|
|
8
|
+
const all = nodesRef.current ?? [];
|
|
9
|
+
const dragging = [];
|
|
10
|
+
const others = [];
|
|
11
|
+
for (const n of all) {
|
|
12
|
+
const override = dragOverrides.get(n.id);
|
|
13
|
+
if (override)
|
|
14
|
+
dragging.push({ ...n, ...override });
|
|
15
|
+
else
|
|
16
|
+
others.push(n);
|
|
17
|
+
}
|
|
18
|
+
return computeAlignmentGuides(dragging, others, threshold);
|
|
19
|
+
// dragOverrides map reference changes every pointermove frame — that's the signal to recompute
|
|
20
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
21
|
+
}, [dragOverrides, isDragging, nodesRef, threshold]);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=useAlignmentGuides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAlignmentGuides.js","sourceRoot":"","sources":["../../src/hooks/useAlignmentGuides.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAGtD,MAAM,UAAU,kBAAkB,CAAC,OAKlC;IACC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IAClE,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;QACtD,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAA;QAClC,MAAM,QAAQ,GAA0E,EAAE,CAAA;QAC1F,MAAM,MAAM,GAA0E,EAAE,CAAA;QACxF,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACxC,IAAI,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAA;;gBAC7C,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACrB,CAAC;QACD,OAAO,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAC5D,+FAA+F;QAC/F,uDAAuD;IACvD,CAAC,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -57,6 +57,11 @@ interface UseNodeDragOptions {
|
|
|
57
57
|
* only the grabbed node + its group children.
|
|
58
58
|
*/
|
|
59
59
|
selectedIdsRef?: React.RefObject<Set<string>>;
|
|
60
|
+
/**
|
|
61
|
+
* When > 0, node positions are snapped to the nearest multiple of this
|
|
62
|
+
* value (in canvas units) live during drag. Defaults to 0 (off).
|
|
63
|
+
*/
|
|
64
|
+
snapGridSize?: number;
|
|
60
65
|
}
|
|
61
66
|
interface UseNodeDragResult {
|
|
62
67
|
/** Map of node id → live drag position (canvas-space) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNodeDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/useNodeDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,eAAe,CAAA;AAGtB,mEAAmE;AACnE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,UAAU,kBAAkB;IAC1B,6EAA6E;IAC7E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IACxC,+EAA+E;IAC/E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;IACzC;;;;;;;;;;;;OAYG;IACH,QAAQ,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,CAAA;IAE7C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAE9C;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,UAAU,EAAE,EACrB,MAAM,EAAE,UAAU,KACf,OAAO,CAAA;IAEZ;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IAEhE;;;;;OAKG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"useNodeDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/useNodeDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,eAAe,CAAA;AAGtB,mEAAmE;AACnE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,UAAU,kBAAkB;IAC1B,6EAA6E;IAC7E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IACxC,+EAA+E;IAC/E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;IACzC;;;;;;;;;;;;OAYG;IACH,QAAQ,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,CAAA;IAE7C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAE9C;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,UAAU,EAAE,EACrB,MAAM,EAAE,UAAU,KACf,OAAO,CAAA;IAEZ;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IAEhE;;;;;OAKG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IAE7C;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,UAAU,iBAAiB;IACzB,yDAAyD;IACzD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACpD;;;;;OAKG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,wDAAwD;IACxD,aAAa,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,KAAK,IAAI,CAAA;IACtE,UAAU,EAAE,OAAO,CAAA;IACnB,wGAAwG;IACxG,UAAU,EAAE,MAAM,IAAI,CAAA;CACvB;AAsBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,iBAAiB,CA8Q1E"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useCallback, useRef, useState } from 'react';
|
|
2
|
-
import { getGroupChildren, screenToCanvas } from 'system-canvas';
|
|
2
|
+
import { getGroupChildren, screenToCanvas, snapToGrid } from 'system-canvas';
|
|
3
3
|
const DRAG_THRESHOLD = 3; // px in screen space before we consider it a drag
|
|
4
4
|
export function useNodeDrag(options) {
|
|
5
|
-
const { viewport, nodesRef, onCommit, svgRef, canDropNodeOn, onNodeDrop, selectedIdsRef } = options;
|
|
5
|
+
const { viewport, nodesRef, onCommit, svgRef, canDropNodeOn, onNodeDrop, selectedIdsRef, snapGridSize = 0 } = options;
|
|
6
6
|
const [dragOverrides, setDragOverrides] = useState(() => new Map());
|
|
7
7
|
const [isDragging, setIsDragging] = useState(false);
|
|
8
8
|
const [dropTargetId, setDropTargetId] = useState(null);
|
|
@@ -83,7 +83,9 @@ export function useNodeDrag(options) {
|
|
|
83
83
|
const dy = dyScreen / zoom;
|
|
84
84
|
const next = new Map();
|
|
85
85
|
for (const [id, start] of st.moving) {
|
|
86
|
-
|
|
86
|
+
const sx = snapGridSize > 0 ? snapToGrid(start.startX + dx, snapGridSize) : start.startX + dx;
|
|
87
|
+
const sy = snapGridSize > 0 ? snapToGrid(start.startY + dy, snapGridSize) : start.startY + dy;
|
|
88
|
+
next.set(id, { x: sx, y: sy });
|
|
87
89
|
}
|
|
88
90
|
setDragOverrides(next);
|
|
89
91
|
// Drop hit-test runs every frame the pointer moves. Only meaningful
|