@aloudata/ink-flow 1.0.28 → 1.0.29

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.
Files changed (228) hide show
  1. package/dist/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  2. package/dist/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  3. package/dist/index.cjs.js +25 -0
  4. package/dist/index.cjs.js.map +1 -0
  5. package/dist/index.esm.js +25 -0
  6. package/dist/index.esm.js.map +1 -0
  7. package/dist/style.css +814 -0
  8. package/package.json +2 -2
  9. package/dist/components/A11yDescriptions/index.js +0 -29
  10. package/dist/components/A11yDescriptions/index.js.map +0 -1
  11. package/dist/components/BatchProvider/index.js +0 -86
  12. package/dist/components/BatchProvider/index.js.map +0 -1
  13. package/dist/components/BatchProvider/types.js +0 -2
  14. package/dist/components/BatchProvider/types.js.map +0 -1
  15. package/dist/components/BatchProvider/useQueue.js +0 -56
  16. package/dist/components/BatchProvider/useQueue.js.map +0 -1
  17. package/dist/components/ConnectionLine/index.js +0 -62
  18. package/dist/components/ConnectionLine/index.js.map +0 -1
  19. package/dist/components/EdgeLabelRenderer/index.js +0 -12
  20. package/dist/components/EdgeLabelRenderer/index.js.map +0 -1
  21. package/dist/components/EdgeWrapper/EdgeUpdateAnchors.js +0 -68
  22. package/dist/components/EdgeWrapper/EdgeUpdateAnchors.js.map +0 -1
  23. package/dist/components/EdgeWrapper/index.js +0 -159
  24. package/dist/components/EdgeWrapper/index.js.map +0 -1
  25. package/dist/components/EdgeWrapper/utils.js +0 -17
  26. package/dist/components/EdgeWrapper/utils.js.map +0 -1
  27. package/dist/components/Edges/BaseEdge.js +0 -9
  28. package/dist/components/Edges/BaseEdge.js.map +0 -1
  29. package/dist/components/Edges/BezierEdge.js +0 -28
  30. package/dist/components/Edges/BezierEdge.js.map +0 -1
  31. package/dist/components/Edges/EdgeAnchor.js +0 -23
  32. package/dist/components/Edges/EdgeAnchor.js.map +0 -1
  33. package/dist/components/Edges/EdgeText.js +0 -31
  34. package/dist/components/Edges/EdgeText.js.map +0 -1
  35. package/dist/components/Edges/SimpleBezierEdge.js +0 -68
  36. package/dist/components/Edges/SimpleBezierEdge.js.map +0 -1
  37. package/dist/components/Edges/SmoothStepEdge.js +0 -29
  38. package/dist/components/Edges/SmoothStepEdge.js.map +0 -1
  39. package/dist/components/Edges/StepEdge.js +0 -18
  40. package/dist/components/Edges/StepEdge.js.map +0 -1
  41. package/dist/components/Edges/StraightEdge.js +0 -24
  42. package/dist/components/Edges/StraightEdge.js.map +0 -1
  43. package/dist/components/Edges/index.js +0 -9
  44. package/dist/components/Edges/index.js.map +0 -1
  45. package/dist/components/Handle/index.js +0 -179
  46. package/dist/components/Handle/index.js.map +0 -1
  47. package/dist/components/InkFlowProvider/index.js +0 -21
  48. package/dist/components/InkFlowProvider/index.js.map +0 -1
  49. package/dist/components/NodeWrapper/index.js +0 -150
  50. package/dist/components/NodeWrapper/index.js.map +0 -1
  51. package/dist/components/NodeWrapper/useNodeObserver.js +0 -54
  52. package/dist/components/NodeWrapper/useNodeObserver.js.map +0 -1
  53. package/dist/components/NodeWrapper/utils.js +0 -30
  54. package/dist/components/NodeWrapper/utils.js.map +0 -1
  55. package/dist/components/Nodes/DefaultNode.js +0 -8
  56. package/dist/components/Nodes/DefaultNode.js.map +0 -1
  57. package/dist/components/Nodes/GroupNode.js +0 -4
  58. package/dist/components/Nodes/GroupNode.js.map +0 -1
  59. package/dist/components/Nodes/InputNode.js +0 -8
  60. package/dist/components/Nodes/InputNode.js.map +0 -1
  61. package/dist/components/Nodes/OutputNode.js +0 -8
  62. package/dist/components/Nodes/OutputNode.js.map +0 -1
  63. package/dist/components/Nodes/utils.js +0 -23
  64. package/dist/components/Nodes/utils.js.map +0 -1
  65. package/dist/components/Panel/index.js +0 -11
  66. package/dist/components/Panel/index.js.map +0 -1
  67. package/dist/components/StoreUpdater/index.js +0 -169
  68. package/dist/components/StoreUpdater/index.js.map +0 -1
  69. package/dist/components/UserSelection/index.js +0 -20
  70. package/dist/components/UserSelection/index.js.map +0 -1
  71. package/dist/constants/layout.js +0 -5
  72. package/dist/constants/layout.js.map +0 -1
  73. package/dist/container/EdgeRenderer/MarkerDefinitions.js +0 -37
  74. package/dist/container/EdgeRenderer/MarkerDefinitions.js.map +0 -1
  75. package/dist/container/EdgeRenderer/MarkerSymbols.js +0 -38
  76. package/dist/container/EdgeRenderer/MarkerSymbols.js.map +0 -1
  77. package/dist/container/EdgeRenderer/index.js +0 -25
  78. package/dist/container/EdgeRenderer/index.js.map +0 -1
  79. package/dist/container/FlowRenderer/index.js +0 -29
  80. package/dist/container/FlowRenderer/index.js.map +0 -1
  81. package/dist/container/GraphView/index.js +0 -14
  82. package/dist/container/GraphView/index.js.map +0 -1
  83. package/dist/container/InkFlow/Wrapper.js +0 -13
  84. package/dist/container/InkFlow/Wrapper.js.map +0 -1
  85. package/dist/container/InkFlow/index.js +0 -22
  86. package/dist/container/InkFlow/index.js.map +0 -1
  87. package/dist/container/InkFlow/init-values.js +0 -11
  88. package/dist/container/InkFlow/init-values.js.map +0 -1
  89. package/dist/container/NodeRenderer/index.js +0 -29
  90. package/dist/container/NodeRenderer/index.js.map +0 -1
  91. package/dist/container/NodeRenderer/useResizeObserver.js +0 -29
  92. package/dist/container/NodeRenderer/useResizeObserver.js.map +0 -1
  93. package/dist/container/Pane/index.js +0 -207
  94. package/dist/container/Pane/index.js.map +0 -1
  95. package/dist/container/Viewport/index.js +0 -11
  96. package/dist/container/Viewport/index.js.map +0 -1
  97. package/dist/container/ZoomPane/index.js +0 -108
  98. package/dist/container/ZoomPane/index.js.map +0 -1
  99. package/dist/contexts/NodeIdContext.js +0 -10
  100. package/dist/contexts/NodeIdContext.js.map +0 -1
  101. package/dist/contexts/StoreContext.js +0 -5
  102. package/dist/contexts/StoreContext.js.map +0 -1
  103. package/dist/hooks/index.js +0 -7
  104. package/dist/hooks/index.js.map +0 -1
  105. package/dist/hooks/useConnection.js +0 -47
  106. package/dist/hooks/useConnection.js.map +0 -1
  107. package/dist/hooks/useDrag.js +0 -56
  108. package/dist/hooks/useDrag.js.map +0 -1
  109. package/dist/hooks/useEdgesState.js +0 -6
  110. package/dist/hooks/useEdgesState.js.map +0 -1
  111. package/dist/hooks/useGlobalKeyHandler.js +0 -34
  112. package/dist/hooks/useGlobalKeyHandler.js.map +0 -1
  113. package/dist/hooks/useInkFlow.js +0 -185
  114. package/dist/hooks/useInkFlow.js.map +0 -1
  115. package/dist/hooks/useIsomorphicLayoutEffect.js +0 -4
  116. package/dist/hooks/useIsomorphicLayoutEffect.js.map +0 -1
  117. package/dist/hooks/useKeyPress.js +0 -117
  118. package/dist/hooks/useKeyPress.js.map +0 -1
  119. package/dist/hooks/useMoveSelectedNodes.js +0 -65
  120. package/dist/hooks/useMoveSelectedNodes.js.map +0 -1
  121. package/dist/hooks/useNodeInView.js +0 -41
  122. package/dist/hooks/useNodeInView.js.map +0 -1
  123. package/dist/hooks/useNodesInView.js +0 -52
  124. package/dist/hooks/useNodesInView.js.map +0 -1
  125. package/dist/hooks/useNodesState.js +0 -6
  126. package/dist/hooks/useNodesState.js.map +0 -1
  127. package/dist/hooks/useResizeHandler.js +0 -38
  128. package/dist/hooks/useResizeHandler.js.map +0 -1
  129. package/dist/hooks/useStore.js +0 -37
  130. package/dist/hooks/useStore.js.map +0 -1
  131. package/dist/hooks/useViewportHelper.js +0 -149
  132. package/dist/hooks/useViewportHelper.js.map +0 -1
  133. package/dist/hooks/useVisibleEdgeIds.js +0 -50
  134. package/dist/hooks/useVisibleEdgeIds.js.map +0 -1
  135. package/dist/hooks/useVisibleNodeIds.js +0 -21
  136. package/dist/hooks/useVisibleNodeIds.js.map +0 -1
  137. package/dist/index.js +0 -18
  138. package/dist/index.js.map +0 -1
  139. package/dist/plugins/Background/Background.js +0 -49
  140. package/dist/plugins/Background/Background.js.map +0 -1
  141. package/dist/plugins/Background/Patterns.js +0 -11
  142. package/dist/plugins/Background/Patterns.js.map +0 -1
  143. package/dist/plugins/Background/index.js +0 -3
  144. package/dist/plugins/Background/index.js.map +0 -1
  145. package/dist/plugins/Background/types.js +0 -7
  146. package/dist/plugins/Background/types.js.map +0 -1
  147. package/dist/plugins/Controls/ControlButton.js +0 -7
  148. package/dist/plugins/Controls/ControlButton.js.map +0 -1
  149. package/dist/plugins/Controls/Controls.js +0 -49
  150. package/dist/plugins/Controls/Controls.js.map +0 -1
  151. package/dist/plugins/Controls/Icons/FitView.js +0 -5
  152. package/dist/plugins/Controls/Icons/FitView.js.map +0 -1
  153. package/dist/plugins/Controls/Icons/Lock.js +0 -5
  154. package/dist/plugins/Controls/Icons/Lock.js.map +0 -1
  155. package/dist/plugins/Controls/Icons/Minus.js +0 -5
  156. package/dist/plugins/Controls/Icons/Minus.js.map +0 -1
  157. package/dist/plugins/Controls/Icons/Plus.js +0 -5
  158. package/dist/plugins/Controls/Icons/Plus.js.map +0 -1
  159. package/dist/plugins/Controls/Icons/Unlock.js +0 -5
  160. package/dist/plugins/Controls/Icons/Unlock.js.map +0 -1
  161. package/dist/plugins/Controls/index.js +0 -3
  162. package/dist/plugins/Controls/index.js.map +0 -1
  163. package/dist/plugins/Controls/types.js +0 -2
  164. package/dist/plugins/Controls/types.js.map +0 -1
  165. package/dist/plugins/NodeResizer/NodeResizeControl.js +0 -166
  166. package/dist/plugins/NodeResizer/NodeResizeControl.js.map +0 -1
  167. package/dist/plugins/NodeResizer/NodeResizer.js +0 -35
  168. package/dist/plugins/NodeResizer/NodeResizer.js.map +0 -1
  169. package/dist/plugins/NodeResizer/index.js +0 -4
  170. package/dist/plugins/NodeResizer/index.js.map +0 -1
  171. package/dist/plugins/NodeResizer/types.js +0 -2
  172. package/dist/plugins/NodeResizer/types.js.map +0 -1
  173. package/dist/plugins/index.js +0 -4
  174. package/dist/plugins/index.js.map +0 -1
  175. package/dist/store/index.js +0 -384
  176. package/dist/store/index.js.map +0 -1
  177. package/dist/store/initialState.js +0 -84
  178. package/dist/store/initialState.js.map +0 -1
  179. package/dist/styles/utils.js +0 -8
  180. package/dist/styles/utils.js.map +0 -1
  181. package/dist/types/edges.js +0 -2
  182. package/dist/types/edges.js.map +0 -1
  183. package/dist/types/general.js +0 -2
  184. package/dist/types/general.js.map +0 -1
  185. package/dist/types/index.js +0 -7
  186. package/dist/types/index.js.map +0 -1
  187. package/dist/types/instance.js +0 -2
  188. package/dist/types/instance.js.map +0 -1
  189. package/dist/types/layout.js +0 -2
  190. package/dist/types/layout.js.map +0 -1
  191. package/dist/types/nodes.js +0 -2
  192. package/dist/types/nodes.js.map +0 -1
  193. package/dist/types/props.js +0 -2
  194. package/dist/types/props.js.map +0 -1
  195. package/dist/types/store.js +0 -2
  196. package/dist/types/store.js.map +0 -1
  197. package/dist/types/utils/types.js +0 -2
  198. package/dist/types/utils/types.js.map +0 -1
  199. package/dist/utils/changes.js +0 -213
  200. package/dist/utils/changes.js.map +0 -1
  201. package/dist/utils/dom.js +0 -38
  202. package/dist/utils/dom.js.map +0 -1
  203. package/dist/utils/edges/bezier-edge.js +0 -96
  204. package/dist/utils/edges/bezier-edge.js.map +0 -1
  205. package/dist/utils/edges/general.js +0 -108
  206. package/dist/utils/edges/general.js.map +0 -1
  207. package/dist/utils/edges/index.js +0 -6
  208. package/dist/utils/edges/index.js.map +0 -1
  209. package/dist/utils/edges/positions.js +0 -101
  210. package/dist/utils/edges/positions.js.map +0 -1
  211. package/dist/utils/edges/smoothstep-edge.js +0 -222
  212. package/dist/utils/edges/smoothstep-edge.js.map +0 -1
  213. package/dist/utils/edges/straight-edge.js +0 -32
  214. package/dist/utils/edges/straight-edge.js.map +0 -1
  215. package/dist/utils/general.js +0 -228
  216. package/dist/utils/general.js.map +0 -1
  217. package/dist/utils/graph.js +0 -368
  218. package/dist/utils/graph.js.map +0 -1
  219. package/dist/utils/layout.js +0 -142
  220. package/dist/utils/layout.js.map +0 -1
  221. package/dist/utils/marker.js +0 -35
  222. package/dist/utils/marker.js.map +0 -1
  223. package/dist/utils/node.js +0 -42
  224. package/dist/utils/node.js.map +0 -1
  225. package/dist/utils/positions.js +0 -101
  226. package/dist/utils/positions.js.map +0 -1
  227. package/dist/utils/store.js +0 -162
  228. package/dist/utils/store.js.map +0 -1
@@ -1,222 +0,0 @@
1
- var _a;
2
- import { Position } from '@aloudata/ink-core';
3
- import { getEdgeCenter } from './general';
4
- var handleDirections = (_a = {},
5
- _a[Position.Left] = { x: -1, y: 0 },
6
- _a[Position.Right] = { x: 1, y: 0 },
7
- _a[Position.Top] = { x: 0, y: -1 },
8
- _a[Position.Bottom] = { x: 0, y: 1 },
9
- _a);
10
- var getDirection = function (_a) {
11
- var source = _a.source, _b = _a.sourcePosition, sourcePosition = _b === void 0 ? Position.Bottom : _b, target = _a.target;
12
- if (sourcePosition === Position.Left || sourcePosition === Position.Right) {
13
- return source.x < target.x ? { x: 1, y: 0 } : { x: -1, y: 0 };
14
- }
15
- return source.y < target.y ? { x: 0, y: 1 } : { x: 0, y: -1 };
16
- };
17
- var distance = function (a, b) {
18
- return Math.sqrt(Math.pow(b.x - a.x, 2) + Math.pow(b.y - a.y, 2));
19
- };
20
- // ith this function we try to mimic a orthogonal edge routing behaviour
21
- // It's not as good as a real orthogonal edge routing but it's faster and good enough as a default for step and smooth step edges
22
- function getPoints(_a) {
23
- var _b, _c;
24
- var source = _a.source, _d = _a.sourcePosition, sourcePosition = _d === void 0 ? Position.Bottom : _d, target = _a.target, _e = _a.targetPosition, targetPosition = _e === void 0 ? Position.Top : _e, center = _a.center, offset = _a.offset;
25
- var sourceDir = handleDirections[sourcePosition];
26
- var targetDir = handleDirections[targetPosition];
27
- var sourceGapped = {
28
- x: source.x + sourceDir.x * offset,
29
- y: source.y + sourceDir.y * offset,
30
- };
31
- var targetGapped = {
32
- x: target.x + targetDir.x * offset,
33
- y: target.y + targetDir.y * offset,
34
- };
35
- var dir = getDirection({
36
- source: sourceGapped,
37
- sourcePosition: sourcePosition,
38
- target: targetGapped,
39
- });
40
- var dirAccessor = dir.x !== 0 ? 'x' : 'y';
41
- var currDir = dir[dirAccessor];
42
- var points = [];
43
- var centerX, centerY;
44
- var sourceGapOffset = { x: 0, y: 0 };
45
- var targetGapOffset = { x: 0, y: 0 };
46
- var _f = __read(getEdgeCenter({
47
- sourceX: source.x,
48
- sourceY: source.y,
49
- targetX: target.x,
50
- targetY: target.y,
51
- }), 4), defaultCenterX = _f[0], defaultCenterY = _f[1], defaultOffsetX = _f[2], defaultOffsetY = _f[3];
52
- // opposite handle positions, default case
53
- if (sourceDir[dirAccessor] * targetDir[dirAccessor] === -1) {
54
- centerX = (_b = center.x) !== null && _b !== void 0 ? _b : defaultCenterX;
55
- centerY = (_c = center.y) !== null && _c !== void 0 ? _c : defaultCenterY;
56
- // --->
57
- // |
58
- // >---
59
- var verticalSplit = [
60
- { x: centerX, y: sourceGapped.y },
61
- { x: centerX, y: targetGapped.y },
62
- ];
63
- // |
64
- // ---
65
- // |
66
- var horizontalSplit = [
67
- { x: sourceGapped.x, y: centerY },
68
- { x: targetGapped.x, y: centerY },
69
- ];
70
- if (sourceDir[dirAccessor] === currDir) {
71
- points = dirAccessor === 'x' ? verticalSplit : horizontalSplit;
72
- }
73
- else {
74
- points = dirAccessor === 'x' ? horizontalSplit : verticalSplit;
75
- }
76
- }
77
- else {
78
- // sourceTarget means we take x from source and y from target, targetSource is the opposite
79
- var sourceTarget = [
80
- { x: sourceGapped.x, y: targetGapped.y },
81
- ];
82
- var targetSource = [
83
- { x: targetGapped.x, y: sourceGapped.y },
84
- ];
85
- // this handles edges with same handle positions
86
- if (dirAccessor === 'x') {
87
- points = sourceDir.x === currDir ? targetSource : sourceTarget;
88
- }
89
- else {
90
- points = sourceDir.y === currDir ? sourceTarget : targetSource;
91
- }
92
- if (sourcePosition === targetPosition) {
93
- var diff = Math.abs(source[dirAccessor] - target[dirAccessor]);
94
- // if an edge goes from right to right for example (sourcePosition === targetPosition) and the distance between source.x and target.x is less than the offset, the added point and the gapped source/target will overlap. This leads to a weird edge path. To avoid this we add a gapOffset to the source/target
95
- if (diff <= offset) {
96
- var gapOffset = Math.min(offset - 1, offset - diff);
97
- if (sourceDir[dirAccessor] === currDir) {
98
- sourceGapOffset[dirAccessor] =
99
- (sourceGapped[dirAccessor] > source[dirAccessor] ? -1 : 1) *
100
- gapOffset;
101
- }
102
- else {
103
- targetGapOffset[dirAccessor] =
104
- (targetGapped[dirAccessor] > target[dirAccessor] ? -1 : 1) *
105
- gapOffset;
106
- }
107
- }
108
- }
109
- // these are conditions for handling mixed handle positions like Right -> Bottom for example
110
- if (sourcePosition !== targetPosition) {
111
- var dirAccessorOpposite = dirAccessor === 'x' ? 'y' : 'x';
112
- var isSameDir = sourceDir[dirAccessor] === targetDir[dirAccessorOpposite];
113
- var sourceGtTargetOppo = sourceGapped[dirAccessorOpposite] > targetGapped[dirAccessorOpposite];
114
- var sourceLtTargetOppo = sourceGapped[dirAccessorOpposite] < targetGapped[dirAccessorOpposite];
115
- var flipSourceTarget = (sourceDir[dirAccessor] === 1 &&
116
- ((!isSameDir && sourceGtTargetOppo) ||
117
- (isSameDir && sourceLtTargetOppo))) ||
118
- (sourceDir[dirAccessor] !== 1 &&
119
- ((!isSameDir && sourceLtTargetOppo) ||
120
- (isSameDir && sourceGtTargetOppo)));
121
- if (flipSourceTarget) {
122
- points = dirAccessor === 'x' ? sourceTarget : targetSource;
123
- }
124
- }
125
- var sourceGapPoint = {
126
- x: sourceGapped.x + sourceGapOffset.x,
127
- y: sourceGapped.y + sourceGapOffset.y,
128
- };
129
- var targetGapPoint = {
130
- x: targetGapped.x + targetGapOffset.x,
131
- y: targetGapped.y + targetGapOffset.y,
132
- };
133
- var maxXDistance = Math.max(Math.abs(sourceGapPoint.x - points[0].x), Math.abs(targetGapPoint.x - points[0].x));
134
- var maxYDistance = Math.max(Math.abs(sourceGapPoint.y - points[0].y), Math.abs(targetGapPoint.y - points[0].y));
135
- // we want to place the label on the longest segment of the edge
136
- if (maxXDistance >= maxYDistance) {
137
- centerX = (sourceGapPoint.x + targetGapPoint.x) / 2;
138
- centerY = points[0].y;
139
- }
140
- else {
141
- centerX = points[0].x;
142
- centerY = (sourceGapPoint.y + targetGapPoint.y) / 2;
143
- }
144
- }
145
- var pathPoints = __spreadArray(__spreadArray([
146
- source,
147
- {
148
- x: sourceGapped.x + sourceGapOffset.x,
149
- y: sourceGapped.y + sourceGapOffset.y,
150
- }
151
- ], __read(points), false), [
152
- {
153
- x: targetGapped.x + targetGapOffset.x,
154
- y: targetGapped.y + targetGapOffset.y,
155
- },
156
- target,
157
- ], false);
158
- return [pathPoints, centerX, centerY, defaultOffsetX, defaultOffsetY];
159
- }
160
- function getBend(a, b, c, size) {
161
- var bendSize = Math.min(distance(a, b) / 2, distance(b, c) / 2, size);
162
- var x = b.x, y = b.y;
163
- // no bend
164
- if ((a.x === x && x === c.x) || (a.y === y && y === c.y)) {
165
- return "L".concat(x, " ").concat(y);
166
- }
167
- // first segment is horizontal
168
- if (a.y === y) {
169
- var xDir_1 = a.x < c.x ? -1 : 1;
170
- var yDir_1 = a.y < c.y ? 1 : -1;
171
- return "L ".concat(x + bendSize * xDir_1, ",").concat(y, "Q ").concat(x, ",").concat(y, " ").concat(x, ",").concat(y + bendSize * yDir_1);
172
- }
173
- var xDir = a.x < c.x ? 1 : -1;
174
- var yDir = a.y < c.y ? -1 : 1;
175
- return "L ".concat(x, ",").concat(y + bendSize * yDir, "Q ").concat(x, ",").concat(y, " ").concat(x + bendSize * xDir, ",").concat(y);
176
- }
177
- /**
178
- * Get a smooth step path from source to target handle
179
- * @param params.sourceX - The x position of the source handle
180
- * @param params.sourceY - The y position of the source handle
181
- * @param params.sourcePosition - The position of the source handle (default: Position.Bottom)
182
- * @param params.targetX - The x position of the target handle
183
- * @param params.targetY - The y position of the target handle
184
- * @param params.targetPosition - The position of the target handle (default: Position.Top)
185
- * @returns A path string you can use in an SVG, the labelX and labelY position (center of path) and offsetX, offsetY between source handle and label
186
- * @example
187
- * const source = { x: 0, y: 20 };
188
- const target = { x: 150, y: 100 };
189
-
190
- const [path, labelX, labelY, offsetX, offsetY] = getSmoothStepPath({
191
- sourceX: source.x,
192
- sourceY: source.y,
193
- sourcePosition: Position.Right,
194
- targetX: target.x,
195
- targetY: target.y,
196
- targetPosition: Position.Left,
197
- });
198
- */
199
- export function getSmoothStepPath(_a) {
200
- var sourceX = _a.sourceX, sourceY = _a.sourceY, _b = _a.sourcePosition, sourcePosition = _b === void 0 ? Position.Bottom : _b, targetX = _a.targetX, targetY = _a.targetY, _c = _a.targetPosition, targetPosition = _c === void 0 ? Position.Top : _c, _d = _a.borderRadius, borderRadius = _d === void 0 ? 5 : _d, centerX = _a.centerX, centerY = _a.centerY, _e = _a.offset, offset = _e === void 0 ? 20 : _e;
201
- var _f = __read(getPoints({
202
- source: { x: sourceX, y: sourceY },
203
- sourcePosition: sourcePosition,
204
- target: { x: targetX, y: targetY },
205
- targetPosition: targetPosition,
206
- center: { x: centerX, y: centerY },
207
- offset: offset,
208
- }), 5), points = _f[0], labelX = _f[1], labelY = _f[2], offsetX = _f[3], offsetY = _f[4];
209
- var path = points.reduce(function (res, p, i) {
210
- var segment = '';
211
- if (i > 0 && i < points.length - 1) {
212
- segment = getBend(points[i - 1], p, points[i + 1], borderRadius);
213
- }
214
- else {
215
- segment = "".concat(i === 0 ? 'M' : 'L').concat(p.x, " ").concat(p.y);
216
- }
217
- res += segment;
218
- return res;
219
- }, '');
220
- return [path, labelX, labelY, offsetX, offsetY];
221
- }
222
- //# sourceMappingURL=smoothstep-edge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"smoothstep-edge.js","sourceRoot":"","sources":["../../../src/utils/edges/smoothstep-edge.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAe1C,IAAM,gBAAgB;IACpB,GAAC,QAAQ,CAAC,IAAI,IAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAChC,GAAC,QAAQ,CAAC,KAAK,IAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAChC,GAAC,QAAQ,CAAC,GAAG,IAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;IAC/B,GAAC,QAAQ,CAAC,MAAM,IAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;OAClC,CAAC;AAEF,IAAM,YAAY,GAAG,UAAC,EAQrB;QAPC,MAAM,YAAA,EACN,sBAAgC,EAAhC,cAAc,mBAAG,QAAQ,CAAC,MAAM,KAAA,EAChC,MAAM,YAAA;IAMN,IAAI,cAAc,KAAK,QAAQ,CAAC,IAAI,IAAI,cAAc,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1E,OAAO,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAChE,CAAC,CAAC;AAEF,IAAM,QAAQ,GAAG,UAAC,CAAa,EAAE,CAAa;IAC5C,OAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAA1D,CAA0D,CAAC;AAE7D,wEAAwE;AACxE,iIAAiI;AACjI,SAAS,SAAS,CAAC,EAclB;;QAbC,MAAM,YAAA,EACN,sBAAgC,EAAhC,cAAc,mBAAG,QAAQ,CAAC,MAAM,KAAA,EAChC,MAAM,YAAA,EACN,sBAA6B,EAA7B,cAAc,mBAAG,QAAQ,CAAC,GAAG,KAAA,EAC7B,MAAM,YAAA,EACN,MAAM,YAAA;IASN,IAAM,SAAS,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACnD,IAAM,SAAS,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACnD,IAAM,YAAY,GAAe;QAC/B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM;QAClC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM;KACnC,CAAC;IACF,IAAM,YAAY,GAAe;QAC/B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM;QAClC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,MAAM;KACnC,CAAC;IACF,IAAM,GAAG,GAAG,YAAY,CAAC;QACvB,MAAM,EAAE,YAAY;QACpB,cAAc,gBAAA;QACd,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IACH,IAAM,WAAW,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5C,IAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;IAEjC,IAAI,MAAM,GAAiB,EAAE,CAAC;IAC9B,IAAI,OAAO,EAAE,OAAO,CAAC;IACrB,IAAM,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACvC,IAAM,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAEjC,IAAA,KAAA,OACJ,aAAa,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC,CAAC;KAClB,CAAC,IAAA,EANG,cAAc,QAAA,EAAE,cAAc,QAAA,EAAE,cAAc,QAAA,EAAE,cAAc,QAMjE,CAAC;IAEL,0CAA0C;IAC1C,IAAI,SAAS,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO,GAAG,MAAA,MAAM,CAAC,CAAC,mCAAI,cAAc,CAAC;QACrC,OAAO,GAAG,MAAA,MAAM,CAAC,CAAC,mCAAI,cAAc,CAAC;QACrC,UAAU;QACV,OAAO;QACP,OAAO;QACP,IAAM,aAAa,GAAiB;YAClC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;YACjC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;SAClC,CAAC;QACF,OAAO;QACP,OAAO;QACP,KAAK;QACL,IAAM,eAAe,GAAiB;YACpC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE;YACjC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE;SAClC,CAAC;QAEF,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,OAAO,EAAE,CAAC;YACvC,MAAM,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC;QACjE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,2FAA2F;QAC3F,IAAM,YAAY,GAAiB;YACjC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;SACzC,CAAC;QACF,IAAM,YAAY,GAAiB;YACjC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;SACzC,CAAC;QACF,gDAAgD;QAChD,IAAI,WAAW,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,GAAG,SAAS,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,SAAS,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;QACjE,CAAC;QAED,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YACtC,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YAEjE,gTAAgT;YAChT,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;gBACtD,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,OAAO,EAAE,CAAC;oBACvC,eAAe,CAAC,WAAW,CAAC;wBAC1B,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC1D,SAAS,CAAC;gBACd,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,WAAW,CAAC;wBAC1B,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC1D,SAAS,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,4FAA4F;QAC5F,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YACtC,IAAM,mBAAmB,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC5D,IAAM,SAAS,GACb,SAAS,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAC5D,IAAM,kBAAkB,GACtB,YAAY,CAAC,mBAAmB,CAAC,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;YACxE,IAAM,kBAAkB,GACtB,YAAY,CAAC,mBAAmB,CAAC,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;YACxE,IAAM,gBAAgB,GACpB,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC;gBAC3B,CAAC,CAAC,CAAC,SAAS,IAAI,kBAAkB,CAAC;oBACjC,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC;gBACvC,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC;oBAC3B,CAAC,CAAC,CAAC,SAAS,IAAI,kBAAkB,CAAC;wBACjC,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;YAE1C,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,IAAM,cAAc,GAAG;YACrB,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;SACtC,CAAC;QACF,IAAM,cAAc,GAAG;YACrB,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;SACtC,CAAC;QACF,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzC,CAAC;QACF,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzC,CAAC;QAEF,gEAAgE;QAChE,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;YACjC,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAM,UAAU;QACd,MAAM;QACN;YACE,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;SACtC;cACE,MAAM;QACT;YACE,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;SACtC;QACD,MAAM;aACP,CAAC;IAEF,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,OAAO,CACd,CAAa,EACb,CAAa,EACb,CAAa,EACb,IAAY;IAEZ,IAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IAChE,IAAA,CAAC,GAAQ,CAAC,EAAT,EAAE,CAAC,GAAK,CAAC,EAAN,CAAO;IAEnB,UAAU;IACV,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,OAAO,WAAI,CAAC,cAAI,CAAC,CAAE,CAAC;IACtB,CAAC;IAED,8BAA8B;IAC9B,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACd,IAAM,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAM,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,YAAK,CAAC,GAAG,QAAQ,GAAG,MAAI,cAAI,CAAC,eAAK,CAAC,cAAI,CAAC,cAAI,CAAC,cAClD,CAAC,GAAG,QAAQ,GAAG,MAAI,CACnB,CAAC;IACL,CAAC;IAED,IAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,IAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,YAAK,CAAC,cAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,eAAK,CAAC,cAAI,CAAC,cAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,cAAI,CAAC,CAAE,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAWR;QAVxB,OAAO,aAAA,EACP,OAAO,aAAA,EACP,sBAAgC,EAAhC,cAAc,mBAAG,QAAQ,CAAC,MAAM,KAAA,EAChC,OAAO,aAAA,EACP,OAAO,aAAA,EACP,sBAA6B,EAA7B,cAAc,mBAAG,QAAQ,CAAC,GAAG,KAAA,EAC7B,oBAAgB,EAAhB,YAAY,mBAAG,CAAC,KAAA,EAChB,OAAO,aAAA,EACP,OAAO,aAAA,EACP,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAQL,IAAA,KAAA,OAA6C,SAAS,CAAC;QAC3D,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE;QAClC,cAAc,gBAAA;QACd,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE;QAClC,cAAc,gBAAA;QACd,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE;QAClC,MAAM,QAAA;KACP,CAAC,IAAA,EAPK,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,OAAO,QAAA,EAAE,OAAO,QAO7C,CAAC;IAEH,IAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAS,UAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC3C,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,UAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAG,CAAC,CAAC,CAAC,cAAI,CAAC,CAAC,CAAC,CAAE,CAAC;QAClD,CAAC;QAED,GAAG,IAAI,OAAO,CAAC;QAEf,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC"}
@@ -1,32 +0,0 @@
1
- import { getEdgeCenter } from './general';
2
- /**
3
- * Get a straight path from source to target handle
4
- * @param params.sourceX - The x position of the source handle
5
- * @param params.sourceY - The y position of the source handle
6
- * @param params.targetX - The x position of the target handle
7
- * @param params.targetY - The y position of the target handle
8
- * @returns A path string you can use in an SVG, the labelX and labelY position (center of path) and offsetX, offsetY between source handle and label
9
- * @example
10
- * const source = { x: 0, y: 20 };
11
- const target = { x: 150, y: 100 };
12
-
13
- const [path, labelX, labelY, offsetX, offsetY] = getStraightPath({
14
- sourceX: source.x,
15
- sourceY: source.y,
16
- sourcePosition: Position.Right,
17
- targetX: target.x,
18
- targetY: target.y,
19
- targetPosition: Position.Left,
20
- });
21
- */
22
- export function getStraightPath(_a) {
23
- var sourceX = _a.sourceX, sourceY = _a.sourceY, targetX = _a.targetX, targetY = _a.targetY;
24
- var _b = __read(getEdgeCenter({
25
- sourceX: sourceX,
26
- sourceY: sourceY,
27
- targetX: targetX,
28
- targetY: targetY,
29
- }), 4), labelX = _b[0], labelY = _b[1], offsetX = _b[2], offsetY = _b[3];
30
- return ["M ".concat(sourceX, ",").concat(sourceY, "L ").concat(targetX, ",").concat(targetY), labelX, labelY, offsetX, offsetY];
31
- }
32
- //# sourceMappingURL=straight-edge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"straight-edge.js","sourceRoot":"","sources":["../../../src/utils/edges/straight-edge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAS1C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,eAAe,CAAC,EAKR;QAJtB,OAAO,aAAA,EACP,OAAO,aAAA,EACP,OAAO,aAAA,EACP,OAAO,aAAA;IAED,IAAA,KAAA,OAAqC,aAAa,CAAC;QACvD,OAAO,SAAA;QACP,OAAO,SAAA;QACP,OAAO,SAAA;QACP,OAAO,SAAA;KACR,CAAC,IAAA,EALK,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,OAAO,QAAA,EAAE,OAAO,QAKrC,CAAC;IAEH,OAAO,CAAC,YAAK,OAAO,cAAI,OAAO,eAAK,OAAO,cAAI,OAAO,CAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC9F,CAAC"}
@@ -1,228 +0,0 @@
1
- import { forwardRef } from 'react';
2
- import { getNodePositionWithOrigin } from './store';
3
- export var clamp = function (val, min, max) {
4
- if (min === void 0) { min = 0; }
5
- if (max === void 0) { max = 1; }
6
- return Math.min(Math.max(val, min), max);
7
- };
8
- export var clampPosition = function (position, extent) {
9
- if (position === void 0) { position = { x: 0, y: 0 }; }
10
- return ({
11
- x: clamp(position.x, extent[0][0], extent[1][0]),
12
- y: clamp(position.y, extent[0][1], extent[1][1]),
13
- });
14
- };
15
- export function getNodeDimensions(node) {
16
- var _a, _b, _c, _d, _e, _f, _g, _h;
17
- return {
18
- width: (_d = (_c = (_b = (_a = node.measured) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : node.width) !== null && _c !== void 0 ? _c : node.initialWidth) !== null && _d !== void 0 ? _d : 0,
19
- height: (_h = (_g = (_f = (_e = node.measured) === null || _e === void 0 ? void 0 : _e.height) !== null && _f !== void 0 ? _f : node.height) !== null && _g !== void 0 ? _g : node.initialHeight) !== null && _h !== void 0 ? _h : 0,
20
- };
21
- }
22
- export var isNumeric = function (n) { return !isNaN(n) && isFinite(n); };
23
- export var snapPosition = function (position, snapGrid) {
24
- if (snapGrid === void 0) { snapGrid = [1, 1]; }
25
- return {
26
- x: snapGrid[0] * Math.round(position.x / snapGrid[0]),
27
- y: snapGrid[1] * Math.round(position.y / snapGrid[1]),
28
- };
29
- };
30
- export var pointToRendererPoint = function (_a, _b, snapToGrid, snapGrid) {
31
- var x = _a.x, y = _a.y;
32
- var _c = __read(_b, 3), tx = _c[0], ty = _c[1], tScale = _c[2];
33
- if (snapToGrid === void 0) { snapToGrid = false; }
34
- if (snapGrid === void 0) { snapGrid = [1, 1]; }
35
- var position = {
36
- x: (x - tx) / tScale,
37
- y: (y - ty) / tScale,
38
- };
39
- return snapToGrid ? snapPosition(position, snapGrid) : position;
40
- };
41
- export var nodeToRect = function (node, nodeOrigin) {
42
- var _a, _b, _c, _d, _e, _f;
43
- if (nodeOrigin === void 0) { nodeOrigin = [0, 0]; }
44
- var _g = getNodePositionWithOrigin(node, nodeOrigin).positionAbsolute, x = _g.x, y = _g.y;
45
- return {
46
- x: x,
47
- y: y,
48
- width: (_c = (_b = (_a = node.measured) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : node.width) !== null && _c !== void 0 ? _c : 0,
49
- height: (_f = (_e = (_d = node.measured) === null || _d === void 0 ? void 0 : _d.height) !== null && _e !== void 0 ? _e : node.height) !== null && _f !== void 0 ? _f : 0,
50
- };
51
- };
52
- export var getBoundsOfBoxes = function (box1, box2) { return ({
53
- x: Math.min(box1.x, box2.x),
54
- y: Math.min(box1.y, box2.y),
55
- x2: Math.max(box1.x2, box2.x2),
56
- y2: Math.max(box1.y2, box2.y2),
57
- }); };
58
- export var rectToBox = function (_a) {
59
- var x = _a.x, y = _a.y, width = _a.width, height = _a.height;
60
- return ({
61
- x: x,
62
- y: y,
63
- x2: x + width,
64
- y2: y + height,
65
- });
66
- };
67
- export var boxToRect = function (_a) {
68
- var x = _a.x, y = _a.y, x2 = _a.x2, y2 = _a.y2;
69
- return ({
70
- x: x,
71
- y: y,
72
- width: x2 - x,
73
- height: y2 - y,
74
- });
75
- };
76
- export var nodeToBox = function (node, nodeOrigin) {
77
- var _a, _b, _c, _d, _e, _f;
78
- if (nodeOrigin === void 0) { nodeOrigin = [0, 0]; }
79
- var _g = getNodePositionWithOrigin(node, nodeOrigin).positionAbsolute, x = _g.x, y = _g.y;
80
- return {
81
- x: x,
82
- y: y,
83
- x2: x + ((_c = (_b = (_a = node.measured) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : node.width) !== null && _c !== void 0 ? _c : 0),
84
- y2: y + ((_f = (_e = (_d = node.measured) === null || _d === void 0 ? void 0 : _d.height) !== null && _e !== void 0 ? _e : node.height) !== null && _f !== void 0 ? _f : 0),
85
- };
86
- };
87
- export var getBoundsOfRects = function (rect1, rect2) {
88
- return boxToRect(getBoundsOfBoxes(rectToBox(rect1), rectToBox(rect2)));
89
- };
90
- export function fixedForwardRef(render) {
91
- // @ts-ignore
92
- return forwardRef(render);
93
- }
94
- export var getOverlappingArea = function (rectA, rectB) {
95
- var xOverlap = Math.max(0, Math.min(rectA.x + rectA.width, rectB.x + rectB.width) -
96
- Math.max(rectA.x, rectB.x));
97
- var yOverlap = Math.max(0, Math.min(rectA.y + rectA.height, rectB.y + rectB.height) -
98
- Math.max(rectA.y, rectB.y));
99
- return Math.ceil(xOverlap * yOverlap);
100
- };
101
- /**
102
- * 检查单个节点是否在视口内可见
103
- * @param node - 要检查的节点
104
- * @param paneRect - 视口矩形区域
105
- * @returns 节点是否可见
106
- */
107
- export function isNodeInViewport(node, paneRect) {
108
- var _a, _b, _c, _d, _e, _f;
109
- if (node.hidden) {
110
- return false;
111
- }
112
- var measured = node.measured;
113
- var width = (_c = (_b = (_a = measured.width) !== null && _a !== void 0 ? _a : node.width) !== null && _b !== void 0 ? _b : node.initialWidth) !== null && _c !== void 0 ? _c : 0;
114
- var height = (_f = (_e = (_d = measured.height) !== null && _d !== void 0 ? _d : node.height) !== null && _e !== void 0 ? _e : node.initialHeight) !== null && _f !== void 0 ? _f : 0;
115
- if (!measured.width || !measured.height) {
116
- return false;
117
- }
118
- var nodeRect = nodeToRect(node);
119
- var overlappingArea = getOverlappingArea(paneRect, nodeRect);
120
- var area = width * height;
121
- // 节点可见的条件:有重叠区域、完全可见或者正在被拖拽
122
- var partiallyVisible = overlappingArea > 0;
123
- return partiallyVisible || overlappingArea >= area || !!node.dragging;
124
- }
125
- export var getViewportForBounds = function (bounds, width, height, minZoom, maxZoom, padding) {
126
- var xZoom = width / (bounds.width * (1 + padding));
127
- var yZoom = height / (bounds.height * (1 + padding));
128
- var zoom = Math.min(xZoom, yZoom);
129
- var clampedZoom = clamp(zoom, minZoom, maxZoom);
130
- var boundsCenterX = bounds.x + bounds.width / 2;
131
- var boundsCenterY = bounds.y + bounds.height / 2;
132
- var x = width / 2 - boundsCenterX * clampedZoom;
133
- var y = height / 2 - boundsCenterY * clampedZoom;
134
- return { x: x, y: y, zoom: clampedZoom };
135
- };
136
- export function isCoordinateExtent(extent) {
137
- return extent !== undefined && extent !== 'parent';
138
- }
139
- export function nodeHasDimensions(node) {
140
- var _a, _b, _c, _d, _e, _f;
141
- return (((_c = (_b = (_a = node.measured) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : node.width) !== null && _c !== void 0 ? _c : node.initialWidth) !== undefined &&
142
- ((_f = (_e = (_d = node.measured) === null || _d === void 0 ? void 0 : _d.height) !== null && _e !== void 0 ? _e : node.height) !== null && _f !== void 0 ? _f : node.initialHeight) !== undefined);
143
- }
144
- var calcAutoPanVelocity = function (value, min, max) {
145
- if (value < min) {
146
- return clamp(Math.abs(value - min), 1, 50) / 50;
147
- }
148
- else if (value > max) {
149
- return -clamp(Math.abs(value - max), 1, 50) / 50;
150
- }
151
- return 0;
152
- };
153
- export var calcAutoPan = function (pos, bounds) {
154
- var xMovement = calcAutoPanVelocity(pos.x, 35, bounds.width - 35) * 20;
155
- var yMovement = calcAutoPanVelocity(pos.y, 35, bounds.height - 35) * 20;
156
- return [xMovement, yMovement];
157
- };
158
- export var getPositionWithOrigin = function (_a) {
159
- var x = _a.x, y = _a.y, width = _a.width, height = _a.height, _b = _a.origin, origin = _b === void 0 ? [0, 0] : _b;
160
- if (!width ||
161
- !height ||
162
- origin[0] < 0 ||
163
- origin[1] < 0 ||
164
- origin[0] > 1 ||
165
- origin[1] > 1) {
166
- return { x: x, y: y };
167
- }
168
- return {
169
- x: x - width * origin[0],
170
- y: y - height * origin[1],
171
- };
172
- };
173
- export var rendererPointToPoint = function (_a, _b) {
174
- var x = _a.x, y = _a.y;
175
- var _c = __read(_b, 3), tx = _c[0], ty = _c[1], tScale = _c[2];
176
- return {
177
- x: x * tScale + tx,
178
- y: y * tScale + ty,
179
- };
180
- };
181
- export var isMacOs = function () { var _a; return typeof navigator !== 'undefined' && ((_a = navigator === null || navigator === void 0 ? void 0 : navigator.userAgent) === null || _a === void 0 ? void 0 : _a.indexOf('Mac')) >= 0; };
182
- export var isNode = function (element) { return isNodeBase(element); };
183
- export var isNodeBase = function (element) {
184
- return 'id' in element &&
185
- 'position' in element &&
186
- !('source' in element) &&
187
- !('target' in element);
188
- };
189
- /**
190
- * Convert child position to aboslute position
191
- *
192
- * @internal
193
- * @param position
194
- * @param parentId
195
- * @param nodeLookup
196
- * @param nodeOrigin
197
- * @returns an internal node with an absolute position
198
- */
199
- export function evaluateAbsolutePosition(position, parentId, nodeLookup, nodeOrigin, dimensions) {
200
- var _a, _b;
201
- if (nodeOrigin === void 0) { nodeOrigin = [0, 0]; }
202
- if (dimensions === void 0) { dimensions = { width: 0, height: 0 }; }
203
- var nextParentId = parentId;
204
- var positionAbsolute = __assign({}, position);
205
- while (nextParentId) {
206
- var parent_1 = nodeLookup.get(parentId);
207
- nextParentId = parent_1 === null || parent_1 === void 0 ? void 0 : parent_1.parentId;
208
- if (parent_1) {
209
- var origin_1 = parent_1.origin || nodeOrigin;
210
- positionAbsolute.x += parent_1.internals.positionAbsolute.x - ((_a = dimensions.width) !== null && _a !== void 0 ? _a : 0) * origin_1[0];
211
- positionAbsolute.y += parent_1.internals.positionAbsolute.y - ((_b = dimensions.height) !== null && _b !== void 0 ? _b : 0) * origin_1[1];
212
- }
213
- }
214
- return positionAbsolute;
215
- }
216
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
217
- export var isRectObject = function (obj) {
218
- return isNumeric(obj.width) &&
219
- isNumeric(obj.height) &&
220
- isNumeric(obj.x) &&
221
- isNumeric(obj.y);
222
- };
223
- export var devWarn = function (id, message) {
224
- if (process.env.NODE_ENV === 'development') {
225
- console.warn("[Ink Flow]: ".concat(message));
226
- }
227
- };
228
- //# sourceMappingURL=general.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/utils/general.ts"],"names":[],"mappings":"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"}