@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.
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
- package/dist/index.cjs.js +25 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.esm.js +25 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/style.css +814 -0
- package/package.json +2 -2
- package/dist/components/A11yDescriptions/index.js +0 -29
- package/dist/components/A11yDescriptions/index.js.map +0 -1
- package/dist/components/BatchProvider/index.js +0 -86
- package/dist/components/BatchProvider/index.js.map +0 -1
- package/dist/components/BatchProvider/types.js +0 -2
- package/dist/components/BatchProvider/types.js.map +0 -1
- package/dist/components/BatchProvider/useQueue.js +0 -56
- package/dist/components/BatchProvider/useQueue.js.map +0 -1
- package/dist/components/ConnectionLine/index.js +0 -62
- package/dist/components/ConnectionLine/index.js.map +0 -1
- package/dist/components/EdgeLabelRenderer/index.js +0 -12
- package/dist/components/EdgeLabelRenderer/index.js.map +0 -1
- package/dist/components/EdgeWrapper/EdgeUpdateAnchors.js +0 -68
- package/dist/components/EdgeWrapper/EdgeUpdateAnchors.js.map +0 -1
- package/dist/components/EdgeWrapper/index.js +0 -159
- package/dist/components/EdgeWrapper/index.js.map +0 -1
- package/dist/components/EdgeWrapper/utils.js +0 -17
- package/dist/components/EdgeWrapper/utils.js.map +0 -1
- package/dist/components/Edges/BaseEdge.js +0 -9
- package/dist/components/Edges/BaseEdge.js.map +0 -1
- package/dist/components/Edges/BezierEdge.js +0 -28
- package/dist/components/Edges/BezierEdge.js.map +0 -1
- package/dist/components/Edges/EdgeAnchor.js +0 -23
- package/dist/components/Edges/EdgeAnchor.js.map +0 -1
- package/dist/components/Edges/EdgeText.js +0 -31
- package/dist/components/Edges/EdgeText.js.map +0 -1
- package/dist/components/Edges/SimpleBezierEdge.js +0 -68
- package/dist/components/Edges/SimpleBezierEdge.js.map +0 -1
- package/dist/components/Edges/SmoothStepEdge.js +0 -29
- package/dist/components/Edges/SmoothStepEdge.js.map +0 -1
- package/dist/components/Edges/StepEdge.js +0 -18
- package/dist/components/Edges/StepEdge.js.map +0 -1
- package/dist/components/Edges/StraightEdge.js +0 -24
- package/dist/components/Edges/StraightEdge.js.map +0 -1
- package/dist/components/Edges/index.js +0 -9
- package/dist/components/Edges/index.js.map +0 -1
- package/dist/components/Handle/index.js +0 -179
- package/dist/components/Handle/index.js.map +0 -1
- package/dist/components/InkFlowProvider/index.js +0 -21
- package/dist/components/InkFlowProvider/index.js.map +0 -1
- package/dist/components/NodeWrapper/index.js +0 -150
- package/dist/components/NodeWrapper/index.js.map +0 -1
- package/dist/components/NodeWrapper/useNodeObserver.js +0 -54
- package/dist/components/NodeWrapper/useNodeObserver.js.map +0 -1
- package/dist/components/NodeWrapper/utils.js +0 -30
- package/dist/components/NodeWrapper/utils.js.map +0 -1
- package/dist/components/Nodes/DefaultNode.js +0 -8
- package/dist/components/Nodes/DefaultNode.js.map +0 -1
- package/dist/components/Nodes/GroupNode.js +0 -4
- package/dist/components/Nodes/GroupNode.js.map +0 -1
- package/dist/components/Nodes/InputNode.js +0 -8
- package/dist/components/Nodes/InputNode.js.map +0 -1
- package/dist/components/Nodes/OutputNode.js +0 -8
- package/dist/components/Nodes/OutputNode.js.map +0 -1
- package/dist/components/Nodes/utils.js +0 -23
- package/dist/components/Nodes/utils.js.map +0 -1
- package/dist/components/Panel/index.js +0 -11
- package/dist/components/Panel/index.js.map +0 -1
- package/dist/components/StoreUpdater/index.js +0 -169
- package/dist/components/StoreUpdater/index.js.map +0 -1
- package/dist/components/UserSelection/index.js +0 -20
- package/dist/components/UserSelection/index.js.map +0 -1
- package/dist/constants/layout.js +0 -5
- package/dist/constants/layout.js.map +0 -1
- package/dist/container/EdgeRenderer/MarkerDefinitions.js +0 -37
- package/dist/container/EdgeRenderer/MarkerDefinitions.js.map +0 -1
- package/dist/container/EdgeRenderer/MarkerSymbols.js +0 -38
- package/dist/container/EdgeRenderer/MarkerSymbols.js.map +0 -1
- package/dist/container/EdgeRenderer/index.js +0 -25
- package/dist/container/EdgeRenderer/index.js.map +0 -1
- package/dist/container/FlowRenderer/index.js +0 -29
- package/dist/container/FlowRenderer/index.js.map +0 -1
- package/dist/container/GraphView/index.js +0 -14
- package/dist/container/GraphView/index.js.map +0 -1
- package/dist/container/InkFlow/Wrapper.js +0 -13
- package/dist/container/InkFlow/Wrapper.js.map +0 -1
- package/dist/container/InkFlow/index.js +0 -22
- package/dist/container/InkFlow/index.js.map +0 -1
- package/dist/container/InkFlow/init-values.js +0 -11
- package/dist/container/InkFlow/init-values.js.map +0 -1
- package/dist/container/NodeRenderer/index.js +0 -29
- package/dist/container/NodeRenderer/index.js.map +0 -1
- package/dist/container/NodeRenderer/useResizeObserver.js +0 -29
- package/dist/container/NodeRenderer/useResizeObserver.js.map +0 -1
- package/dist/container/Pane/index.js +0 -207
- package/dist/container/Pane/index.js.map +0 -1
- package/dist/container/Viewport/index.js +0 -11
- package/dist/container/Viewport/index.js.map +0 -1
- package/dist/container/ZoomPane/index.js +0 -108
- package/dist/container/ZoomPane/index.js.map +0 -1
- package/dist/contexts/NodeIdContext.js +0 -10
- package/dist/contexts/NodeIdContext.js.map +0 -1
- package/dist/contexts/StoreContext.js +0 -5
- package/dist/contexts/StoreContext.js.map +0 -1
- package/dist/hooks/index.js +0 -7
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/useConnection.js +0 -47
- package/dist/hooks/useConnection.js.map +0 -1
- package/dist/hooks/useDrag.js +0 -56
- package/dist/hooks/useDrag.js.map +0 -1
- package/dist/hooks/useEdgesState.js +0 -6
- package/dist/hooks/useEdgesState.js.map +0 -1
- package/dist/hooks/useGlobalKeyHandler.js +0 -34
- package/dist/hooks/useGlobalKeyHandler.js.map +0 -1
- package/dist/hooks/useInkFlow.js +0 -185
- package/dist/hooks/useInkFlow.js.map +0 -1
- package/dist/hooks/useIsomorphicLayoutEffect.js +0 -4
- package/dist/hooks/useIsomorphicLayoutEffect.js.map +0 -1
- package/dist/hooks/useKeyPress.js +0 -117
- package/dist/hooks/useKeyPress.js.map +0 -1
- package/dist/hooks/useMoveSelectedNodes.js +0 -65
- package/dist/hooks/useMoveSelectedNodes.js.map +0 -1
- package/dist/hooks/useNodeInView.js +0 -41
- package/dist/hooks/useNodeInView.js.map +0 -1
- package/dist/hooks/useNodesInView.js +0 -52
- package/dist/hooks/useNodesInView.js.map +0 -1
- package/dist/hooks/useNodesState.js +0 -6
- package/dist/hooks/useNodesState.js.map +0 -1
- package/dist/hooks/useResizeHandler.js +0 -38
- package/dist/hooks/useResizeHandler.js.map +0 -1
- package/dist/hooks/useStore.js +0 -37
- package/dist/hooks/useStore.js.map +0 -1
- package/dist/hooks/useViewportHelper.js +0 -149
- package/dist/hooks/useViewportHelper.js.map +0 -1
- package/dist/hooks/useVisibleEdgeIds.js +0 -50
- package/dist/hooks/useVisibleEdgeIds.js.map +0 -1
- package/dist/hooks/useVisibleNodeIds.js +0 -21
- package/dist/hooks/useVisibleNodeIds.js.map +0 -1
- package/dist/index.js +0 -18
- package/dist/index.js.map +0 -1
- package/dist/plugins/Background/Background.js +0 -49
- package/dist/plugins/Background/Background.js.map +0 -1
- package/dist/plugins/Background/Patterns.js +0 -11
- package/dist/plugins/Background/Patterns.js.map +0 -1
- package/dist/plugins/Background/index.js +0 -3
- package/dist/plugins/Background/index.js.map +0 -1
- package/dist/plugins/Background/types.js +0 -7
- package/dist/plugins/Background/types.js.map +0 -1
- package/dist/plugins/Controls/ControlButton.js +0 -7
- package/dist/plugins/Controls/ControlButton.js.map +0 -1
- package/dist/plugins/Controls/Controls.js +0 -49
- package/dist/plugins/Controls/Controls.js.map +0 -1
- package/dist/plugins/Controls/Icons/FitView.js +0 -5
- package/dist/plugins/Controls/Icons/FitView.js.map +0 -1
- package/dist/plugins/Controls/Icons/Lock.js +0 -5
- package/dist/plugins/Controls/Icons/Lock.js.map +0 -1
- package/dist/plugins/Controls/Icons/Minus.js +0 -5
- package/dist/plugins/Controls/Icons/Minus.js.map +0 -1
- package/dist/plugins/Controls/Icons/Plus.js +0 -5
- package/dist/plugins/Controls/Icons/Plus.js.map +0 -1
- package/dist/plugins/Controls/Icons/Unlock.js +0 -5
- package/dist/plugins/Controls/Icons/Unlock.js.map +0 -1
- package/dist/plugins/Controls/index.js +0 -3
- package/dist/plugins/Controls/index.js.map +0 -1
- package/dist/plugins/Controls/types.js +0 -2
- package/dist/plugins/Controls/types.js.map +0 -1
- package/dist/plugins/NodeResizer/NodeResizeControl.js +0 -166
- package/dist/plugins/NodeResizer/NodeResizeControl.js.map +0 -1
- package/dist/plugins/NodeResizer/NodeResizer.js +0 -35
- package/dist/plugins/NodeResizer/NodeResizer.js.map +0 -1
- package/dist/plugins/NodeResizer/index.js +0 -4
- package/dist/plugins/NodeResizer/index.js.map +0 -1
- package/dist/plugins/NodeResizer/types.js +0 -2
- package/dist/plugins/NodeResizer/types.js.map +0 -1
- package/dist/plugins/index.js +0 -4
- package/dist/plugins/index.js.map +0 -1
- package/dist/store/index.js +0 -384
- package/dist/store/index.js.map +0 -1
- package/dist/store/initialState.js +0 -84
- package/dist/store/initialState.js.map +0 -1
- package/dist/styles/utils.js +0 -8
- package/dist/styles/utils.js.map +0 -1
- package/dist/types/edges.js +0 -2
- package/dist/types/edges.js.map +0 -1
- package/dist/types/general.js +0 -2
- package/dist/types/general.js.map +0 -1
- package/dist/types/index.js +0 -7
- package/dist/types/index.js.map +0 -1
- package/dist/types/instance.js +0 -2
- package/dist/types/instance.js.map +0 -1
- package/dist/types/layout.js +0 -2
- package/dist/types/layout.js.map +0 -1
- package/dist/types/nodes.js +0 -2
- package/dist/types/nodes.js.map +0 -1
- package/dist/types/props.js +0 -2
- package/dist/types/props.js.map +0 -1
- package/dist/types/store.js +0 -2
- package/dist/types/store.js.map +0 -1
- package/dist/types/utils/types.js +0 -2
- package/dist/types/utils/types.js.map +0 -1
- package/dist/utils/changes.js +0 -213
- package/dist/utils/changes.js.map +0 -1
- package/dist/utils/dom.js +0 -38
- package/dist/utils/dom.js.map +0 -1
- package/dist/utils/edges/bezier-edge.js +0 -96
- package/dist/utils/edges/bezier-edge.js.map +0 -1
- package/dist/utils/edges/general.js +0 -108
- package/dist/utils/edges/general.js.map +0 -1
- package/dist/utils/edges/index.js +0 -6
- package/dist/utils/edges/index.js.map +0 -1
- package/dist/utils/edges/positions.js +0 -101
- package/dist/utils/edges/positions.js.map +0 -1
- package/dist/utils/edges/smoothstep-edge.js +0 -222
- package/dist/utils/edges/smoothstep-edge.js.map +0 -1
- package/dist/utils/edges/straight-edge.js +0 -32
- package/dist/utils/edges/straight-edge.js.map +0 -1
- package/dist/utils/general.js +0 -228
- package/dist/utils/general.js.map +0 -1
- package/dist/utils/graph.js +0 -368
- package/dist/utils/graph.js.map +0 -1
- package/dist/utils/layout.js +0 -142
- package/dist/utils/layout.js.map +0 -1
- package/dist/utils/marker.js +0 -35
- package/dist/utils/marker.js.map +0 -1
- package/dist/utils/node.js +0 -42
- package/dist/utils/node.js.map +0 -1
- package/dist/utils/positions.js +0 -101
- package/dist/utils/positions.js.map +0 -1
- package/dist/utils/store.js +0 -162
- package/dist/utils/store.js.map +0 -1
package/dist/utils/graph.js
DELETED
|
@@ -1,368 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { errorMessages, } from '@aloudata/ink-core';
|
|
3
|
-
import { boxToRect, clampPosition, getBoundsOfBoxes, getOverlappingArea, nodeToRect, pointToRendererPoint, getViewportForBounds, isCoordinateExtent, getNodeDimensions, nodeToBox, } from './general';
|
|
4
|
-
/**
|
|
5
|
-
* Test whether an object is useable as an Edge
|
|
6
|
-
* @public
|
|
7
|
-
* @remarks In TypeScript this is a type guard that will narrow the type of whatever you pass in to Edge if it returns true
|
|
8
|
-
* @param element - The element to test
|
|
9
|
-
* @returns A boolean indicating whether the element is an Edge
|
|
10
|
-
*/
|
|
11
|
-
export var isEdgeBase = function (element) {
|
|
12
|
-
return 'id' in element && 'source' in element && 'target' in element;
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Test whether an object is useable as a Node
|
|
16
|
-
* @public
|
|
17
|
-
* @remarks In TypeScript this is a type guard that will narrow the type of whatever you pass in to Node if it returns true
|
|
18
|
-
* @param element - The element to test
|
|
19
|
-
* @returns A boolean indicating whether the element is an Node
|
|
20
|
-
*/
|
|
21
|
-
export var isNodeBase = function (element) {
|
|
22
|
-
return 'id' in element &&
|
|
23
|
-
'position' in element &&
|
|
24
|
-
!('source' in element) &&
|
|
25
|
-
!('target' in element);
|
|
26
|
-
};
|
|
27
|
-
export var isInternalNodeBase = function (element) {
|
|
28
|
-
return 'id' in element &&
|
|
29
|
-
'internals' in element &&
|
|
30
|
-
!('source' in element) &&
|
|
31
|
-
!('target' in element);
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* Pass in a node, and get connected nodes where edge.source === node.id
|
|
35
|
-
* @public
|
|
36
|
-
* @param node - The node to get the connected nodes from
|
|
37
|
-
* @param nodes - The array of all nodes
|
|
38
|
-
* @param edges - The array of all edges
|
|
39
|
-
* @returns An array of nodes that are connected over eges where the source is the given node
|
|
40
|
-
*/
|
|
41
|
-
export var getOutgoers = function (node, nodes, edges) {
|
|
42
|
-
if (!node.id) {
|
|
43
|
-
return [];
|
|
44
|
-
}
|
|
45
|
-
var outgoerIds = new Set();
|
|
46
|
-
edges.forEach(function (edge) {
|
|
47
|
-
if (edge.source === node.id) {
|
|
48
|
-
outgoerIds.add(edge.target);
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
return nodes.filter(function (n) { return outgoerIds.has(n.id); });
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* Pass in a node, and get connected nodes where edge.target === node.id
|
|
55
|
-
* @public
|
|
56
|
-
* @param node - The node to get the connected nodes from
|
|
57
|
-
* @param nodes - The array of all nodes
|
|
58
|
-
* @param edges - The array of all edges
|
|
59
|
-
* @returns An array of nodes that are connected over eges where the target is the given node
|
|
60
|
-
*/
|
|
61
|
-
export var getIncomers = function (node, nodes, edges) {
|
|
62
|
-
if (!node.id) {
|
|
63
|
-
return [];
|
|
64
|
-
}
|
|
65
|
-
var incomersIds = new Set();
|
|
66
|
-
edges.forEach(function (edge) {
|
|
67
|
-
if (edge.target === node.id) {
|
|
68
|
-
incomersIds.add(edge.source);
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
return nodes.filter(function (n) { return incomersIds.has(n.id); });
|
|
72
|
-
};
|
|
73
|
-
export var getNodePositionWithOrigin = function (node, nodeOrigin) {
|
|
74
|
-
if (nodeOrigin === void 0) { nodeOrigin = [0, 0]; }
|
|
75
|
-
var _a = getNodeDimensions(node), width = _a.width, height = _a.height;
|
|
76
|
-
var positionAbsolute = 'internals' in node ? node.internals.positionAbsolute : node.position;
|
|
77
|
-
var origin = node.origin || nodeOrigin;
|
|
78
|
-
var offsetX = width * origin[0];
|
|
79
|
-
var offsetY = height * origin[1];
|
|
80
|
-
return {
|
|
81
|
-
position: {
|
|
82
|
-
x: node.position.x - offsetX,
|
|
83
|
-
y: node.position.y - offsetY,
|
|
84
|
-
},
|
|
85
|
-
positionAbsolute: {
|
|
86
|
-
x: positionAbsolute.x - offsetX,
|
|
87
|
-
y: positionAbsolute.y - offsetY,
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
};
|
|
91
|
-
/**
|
|
92
|
-
* Determines a bounding box that contains all given nodes in an array
|
|
93
|
-
* @public
|
|
94
|
-
* @remarks Useful when combined with {@link getViewportForBounds} to calculate the correct transform to fit the given nodes in a viewport.
|
|
95
|
-
* @param nodes - Nodes to calculate the bounds for
|
|
96
|
-
* @param params.nodeOrigin - Origin of the nodes: [0, 0] - top left, [0.5, 0.5] - center
|
|
97
|
-
* @returns Bounding box enclosing all nodes
|
|
98
|
-
*/
|
|
99
|
-
export var getNodesBounds = function (nodes, params) {
|
|
100
|
-
if (params === void 0) { params = { nodeOrigin: [0, 0] }; }
|
|
101
|
-
if (nodes.length === 0) {
|
|
102
|
-
return { x: 0, y: 0, width: 0, height: 0 };
|
|
103
|
-
}
|
|
104
|
-
var box = nodes.reduce(function (currBox, node) {
|
|
105
|
-
var nodeBox = nodeToBox(node, params.nodeOrigin);
|
|
106
|
-
return getBoundsOfBoxes(currBox, nodeBox);
|
|
107
|
-
}, { x: Infinity, y: Infinity, x2: -Infinity, y2: -Infinity });
|
|
108
|
-
return boxToRect(box);
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* Determines a bounding box that contains all given nodes in an array
|
|
112
|
-
* @internal
|
|
113
|
-
*/
|
|
114
|
-
export var getInternalNodesBounds = function (nodeLookup, params) {
|
|
115
|
-
if (params === void 0) { params = {
|
|
116
|
-
nodeOrigin: [0, 0],
|
|
117
|
-
}; }
|
|
118
|
-
if (nodeLookup.size === 0) {
|
|
119
|
-
return { x: 0, y: 0, width: 0, height: 0 };
|
|
120
|
-
}
|
|
121
|
-
var box = { x: Infinity, y: Infinity, x2: -Infinity, y2: -Infinity };
|
|
122
|
-
nodeLookup.forEach(function (node) {
|
|
123
|
-
if (params.filter == undefined || params.filter(node)) {
|
|
124
|
-
var nodeBox = nodeToBox(node, params.nodeOrigin);
|
|
125
|
-
box = getBoundsOfBoxes(box, nodeBox);
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
return boxToRect(box);
|
|
129
|
-
};
|
|
130
|
-
export var getNodesInside = function (nodes, rect, _a, partially,
|
|
131
|
-
// set excludeNonSelectableNodes if you want to pay attention to the nodes "selectable" attribute
|
|
132
|
-
excludeNonSelectableNodes) {
|
|
133
|
-
var e_1, _b;
|
|
134
|
-
var _c, _d, _e, _f, _g, _h;
|
|
135
|
-
var _j = _a === void 0 ? [0, 0, 1] : _a, _k = __read(_j, 3), tx = _k[0], ty = _k[1], tScale = _k[2];
|
|
136
|
-
if (partially === void 0) { partially = false; }
|
|
137
|
-
if (excludeNonSelectableNodes === void 0) { excludeNonSelectableNodes = false; }
|
|
138
|
-
var paneRect = __assign(__assign({}, pointToRendererPoint(rect, [tx, ty, tScale])), { width: rect.width / tScale, height: rect.height / tScale });
|
|
139
|
-
var visibleNodes = [];
|
|
140
|
-
try {
|
|
141
|
-
for (var _l = __values(nodes.values()), _m = _l.next(); !_m.done; _m = _l.next()) {
|
|
142
|
-
var node = _m.value;
|
|
143
|
-
var measured = node.measured, _o = node.selectable, selectable = _o === void 0 ? true : _o, _p = node.hidden, hidden = _p === void 0 ? false : _p;
|
|
144
|
-
if ((excludeNonSelectableNodes && !selectable) || hidden) {
|
|
145
|
-
continue;
|
|
146
|
-
}
|
|
147
|
-
var width = (_e = (_d = (_c = measured.width) !== null && _c !== void 0 ? _c : node.width) !== null && _d !== void 0 ? _d : node.initialWidth) !== null && _e !== void 0 ? _e : null;
|
|
148
|
-
var height = (_h = (_g = (_f = measured.height) !== null && _f !== void 0 ? _f : node.height) !== null && _g !== void 0 ? _g : node.initialHeight) !== null && _h !== void 0 ? _h : null;
|
|
149
|
-
var overlappingArea = getOverlappingArea(paneRect, nodeToRect(node));
|
|
150
|
-
var area = (width !== null && width !== void 0 ? width : 0) * (height !== null && height !== void 0 ? height : 0);
|
|
151
|
-
var partiallyVisible = partially && overlappingArea > 0;
|
|
152
|
-
var forceInitialRender = !node.internals.handleBounds;
|
|
153
|
-
var isVisible = forceInitialRender || partiallyVisible || overlappingArea >= area;
|
|
154
|
-
if (isVisible || node.dragging) {
|
|
155
|
-
visibleNodes.push(node);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
160
|
-
finally {
|
|
161
|
-
try {
|
|
162
|
-
if (_m && !_m.done && (_b = _l.return)) _b.call(_l);
|
|
163
|
-
}
|
|
164
|
-
finally { if (e_1) throw e_1.error; }
|
|
165
|
-
}
|
|
166
|
-
return visibleNodes;
|
|
167
|
-
};
|
|
168
|
-
/**
|
|
169
|
-
* Get all connecting edges for a given set of nodes
|
|
170
|
-
* @param nodes - Nodes you want to get the connected edges for
|
|
171
|
-
* @param edges - All edges
|
|
172
|
-
* @returns Array of edges that connect any of the given nodes with each other
|
|
173
|
-
*/
|
|
174
|
-
export var getConnectedEdges = function (nodes, edges) {
|
|
175
|
-
var nodeIds = new Set();
|
|
176
|
-
nodes.forEach(function (node) {
|
|
177
|
-
nodeIds.add(node.id);
|
|
178
|
-
});
|
|
179
|
-
return edges.filter(function (edge) { return nodeIds.has(edge.source) || nodeIds.has(edge.target); });
|
|
180
|
-
};
|
|
181
|
-
export function fitView(_a, options_1) {
|
|
182
|
-
return __awaiter(this, arguments, void 0, function (_b, options) {
|
|
183
|
-
var bounds, viewport;
|
|
184
|
-
var _c, _d, _e;
|
|
185
|
-
var nodes = _b.nodes, width = _b.width, height = _b.height, panZoom = _b.panZoom, minZoom = _b.minZoom, maxZoom = _b.maxZoom;
|
|
186
|
-
return __generator(this, function (_f) {
|
|
187
|
-
switch (_f.label) {
|
|
188
|
-
case 0:
|
|
189
|
-
if (nodes.size === 0) {
|
|
190
|
-
return [2 /*return*/, Promise.resolve(false)];
|
|
191
|
-
}
|
|
192
|
-
bounds = getInternalNodesBounds(nodes);
|
|
193
|
-
viewport = getViewportForBounds(bounds, width, height, (_c = options === null || options === void 0 ? void 0 : options.minZoom) !== null && _c !== void 0 ? _c : minZoom, (_d = options === null || options === void 0 ? void 0 : options.maxZoom) !== null && _d !== void 0 ? _d : maxZoom, (_e = options === null || options === void 0 ? void 0 : options.padding) !== null && _e !== void 0 ? _e : 0.1);
|
|
194
|
-
return [4 /*yield*/, panZoom.setViewport(viewport, { duration: options === null || options === void 0 ? void 0 : options.duration })];
|
|
195
|
-
case 1:
|
|
196
|
-
_f.sent();
|
|
197
|
-
return [2 /*return*/, Promise.resolve(true)];
|
|
198
|
-
}
|
|
199
|
-
});
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* This function clamps the passed extend by the node's width and height.
|
|
204
|
-
* This is needed to prevent the node from being dragged outside of its extent.
|
|
205
|
-
*
|
|
206
|
-
* @param node
|
|
207
|
-
* @param extent
|
|
208
|
-
* @returns
|
|
209
|
-
*/
|
|
210
|
-
function clampNodeExtent(node, extent) {
|
|
211
|
-
var _a, _b, _c, _d;
|
|
212
|
-
if (!extent || extent === 'parent') {
|
|
213
|
-
return extent;
|
|
214
|
-
}
|
|
215
|
-
return [
|
|
216
|
-
extent[0],
|
|
217
|
-
[
|
|
218
|
-
extent[1][0] - ((_b = (_a = node.measured) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 0),
|
|
219
|
-
extent[1][1] - ((_d = (_c = node.measured) === null || _c === void 0 ? void 0 : _c.height) !== null && _d !== void 0 ? _d : 0),
|
|
220
|
-
],
|
|
221
|
-
];
|
|
222
|
-
}
|
|
223
|
-
/**
|
|
224
|
-
* This function calculates the next position of a node, taking into account the node's extent, parent node, and origin.
|
|
225
|
-
*
|
|
226
|
-
* @internal
|
|
227
|
-
* @returns position, positionAbsolute
|
|
228
|
-
*/
|
|
229
|
-
export function calculateNodePosition(_a) {
|
|
230
|
-
var nodeId = _a.nodeId, nextPosition = _a.nextPosition, nodeLookup = _a.nodeLookup, _b = _a.nodeOrigin, nodeOrigin = _b === void 0 ? [0, 0] : _b, nodeExtent = _a.nodeExtent, onError = _a.onError;
|
|
231
|
-
var node = nodeLookup.get(nodeId);
|
|
232
|
-
var parentNode = node.parentId ? nodeLookup.get(node.parentId) : undefined;
|
|
233
|
-
var _c = parentNode
|
|
234
|
-
? getNodePositionWithOrigin(parentNode, parentNode.origin || nodeOrigin)
|
|
235
|
-
.positionAbsolute
|
|
236
|
-
: { x: 0, y: 0 }, parentX = _c.x, parentY = _c.y;
|
|
237
|
-
var currentExtent = clampNodeExtent(node, node.extent || nodeExtent);
|
|
238
|
-
if (node.extent === 'parent' && !node.expandParent) {
|
|
239
|
-
if (!parentNode) {
|
|
240
|
-
onError === null || onError === void 0 ? void 0 : onError('005', errorMessages['error005']());
|
|
241
|
-
}
|
|
242
|
-
else {
|
|
243
|
-
var nodeWidth = node.measured.width;
|
|
244
|
-
var nodeHeight = node.measured.height;
|
|
245
|
-
var parentWidth = parentNode.measured.width;
|
|
246
|
-
var parentHeight = parentNode.measured.height;
|
|
247
|
-
if (nodeWidth && nodeHeight && parentWidth && parentHeight) {
|
|
248
|
-
var currNodeOrigin = node.origin || nodeOrigin;
|
|
249
|
-
var extentX = parentX + nodeWidth * currNodeOrigin[0];
|
|
250
|
-
var extentY = parentY + nodeHeight * currNodeOrigin[1];
|
|
251
|
-
currentExtent = [
|
|
252
|
-
[extentX, extentY],
|
|
253
|
-
[
|
|
254
|
-
extentX + parentWidth - nodeWidth,
|
|
255
|
-
extentY + parentHeight - nodeHeight,
|
|
256
|
-
],
|
|
257
|
-
];
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
else if (parentNode && isCoordinateExtent(node.extent)) {
|
|
262
|
-
currentExtent = [
|
|
263
|
-
[node.extent[0][0] + parentX, node.extent[0][1] + parentY],
|
|
264
|
-
[node.extent[1][0] + parentX, node.extent[1][1] + parentY],
|
|
265
|
-
];
|
|
266
|
-
}
|
|
267
|
-
var positionAbsolute = isCoordinateExtent(currentExtent)
|
|
268
|
-
? clampPosition(nextPosition, currentExtent)
|
|
269
|
-
: nextPosition;
|
|
270
|
-
return {
|
|
271
|
-
position: {
|
|
272
|
-
x: positionAbsolute.x - parentX,
|
|
273
|
-
y: positionAbsolute.y - parentY,
|
|
274
|
-
},
|
|
275
|
-
positionAbsolute: positionAbsolute,
|
|
276
|
-
};
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* Pass in nodes & edges to delete, get arrays of nodes and edges that actually can be deleted
|
|
280
|
-
* @internal
|
|
281
|
-
* @param param.nodesToRemove - The nodes to remove
|
|
282
|
-
* @param param.edgesToRemove - The edges to remove
|
|
283
|
-
* @param param.nodes - All nodes
|
|
284
|
-
* @param param.edges - All edges
|
|
285
|
-
* @param param.onBeforeDelete - Callback to check which nodes and edges can be deleted
|
|
286
|
-
* @returns nodes: nodes that can be deleted, edges: edges that can be deleted
|
|
287
|
-
*/
|
|
288
|
-
export function getElementsToRemove(_a) {
|
|
289
|
-
return __awaiter(this, arguments, void 0, function (_b) {
|
|
290
|
-
var nodeIds, matchingNodes, _loop_1, nodes_1, nodes_1_1, node, edgeIds, deletableEdges, connectedEdges, matchingEdges, _loop_2, deletableEdges_1, deletableEdges_1_1, edge, onBeforeDeleteResult;
|
|
291
|
-
var e_2, _c, e_3, _d;
|
|
292
|
-
var _e = _b.nodesToRemove, nodesToRemove = _e === void 0 ? [] : _e, _f = _b.edgesToRemove, edgesToRemove = _f === void 0 ? [] : _f, nodes = _b.nodes, edges = _b.edges, onBeforeDelete = _b.onBeforeDelete;
|
|
293
|
-
return __generator(this, function (_g) {
|
|
294
|
-
switch (_g.label) {
|
|
295
|
-
case 0:
|
|
296
|
-
nodeIds = new Set(nodesToRemove.map(function (node) { return node.id; }));
|
|
297
|
-
matchingNodes = [];
|
|
298
|
-
_loop_1 = function (node) {
|
|
299
|
-
if (node.deletable === false) {
|
|
300
|
-
return "continue";
|
|
301
|
-
}
|
|
302
|
-
var isIncluded = nodeIds.has(node.id);
|
|
303
|
-
var parentHit = !isIncluded &&
|
|
304
|
-
node.parentId &&
|
|
305
|
-
matchingNodes.find(function (n) { return n.id === node.parentId; });
|
|
306
|
-
if (isIncluded || parentHit) {
|
|
307
|
-
matchingNodes.push(node);
|
|
308
|
-
}
|
|
309
|
-
};
|
|
310
|
-
try {
|
|
311
|
-
for (nodes_1 = __values(nodes), nodes_1_1 = nodes_1.next(); !nodes_1_1.done; nodes_1_1 = nodes_1.next()) {
|
|
312
|
-
node = nodes_1_1.value;
|
|
313
|
-
_loop_1(node);
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
317
|
-
finally {
|
|
318
|
-
try {
|
|
319
|
-
if (nodes_1_1 && !nodes_1_1.done && (_c = nodes_1.return)) _c.call(nodes_1);
|
|
320
|
-
}
|
|
321
|
-
finally { if (e_2) throw e_2.error; }
|
|
322
|
-
}
|
|
323
|
-
edgeIds = new Set(edgesToRemove.map(function (edge) { return edge.id; }));
|
|
324
|
-
deletableEdges = edges.filter(function (edge) { return edge.deletable !== false; });
|
|
325
|
-
connectedEdges = getConnectedEdges(matchingNodes, deletableEdges);
|
|
326
|
-
matchingEdges = connectedEdges;
|
|
327
|
-
_loop_2 = function (edge) {
|
|
328
|
-
var isIncluded = edgeIds.has(edge.id);
|
|
329
|
-
if (isIncluded && !matchingEdges.find(function (e) { return e.id === edge.id; })) {
|
|
330
|
-
matchingEdges.push(edge);
|
|
331
|
-
}
|
|
332
|
-
};
|
|
333
|
-
try {
|
|
334
|
-
for (deletableEdges_1 = __values(deletableEdges), deletableEdges_1_1 = deletableEdges_1.next(); !deletableEdges_1_1.done; deletableEdges_1_1 = deletableEdges_1.next()) {
|
|
335
|
-
edge = deletableEdges_1_1.value;
|
|
336
|
-
_loop_2(edge);
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
340
|
-
finally {
|
|
341
|
-
try {
|
|
342
|
-
if (deletableEdges_1_1 && !deletableEdges_1_1.done && (_d = deletableEdges_1.return)) _d.call(deletableEdges_1);
|
|
343
|
-
}
|
|
344
|
-
finally { if (e_3) throw e_3.error; }
|
|
345
|
-
}
|
|
346
|
-
if (!onBeforeDelete) {
|
|
347
|
-
return [2 /*return*/, {
|
|
348
|
-
edges: matchingEdges,
|
|
349
|
-
nodes: matchingNodes,
|
|
350
|
-
}];
|
|
351
|
-
}
|
|
352
|
-
return [4 /*yield*/, onBeforeDelete({
|
|
353
|
-
nodes: matchingNodes,
|
|
354
|
-
edges: matchingEdges,
|
|
355
|
-
})];
|
|
356
|
-
case 1:
|
|
357
|
-
onBeforeDeleteResult = _g.sent();
|
|
358
|
-
if (typeof onBeforeDeleteResult === 'boolean') {
|
|
359
|
-
return [2 /*return*/, onBeforeDeleteResult
|
|
360
|
-
? { edges: matchingEdges, nodes: matchingNodes }
|
|
361
|
-
: { edges: [], nodes: [] }];
|
|
362
|
-
}
|
|
363
|
-
return [2 /*return*/, onBeforeDeleteResult];
|
|
364
|
-
}
|
|
365
|
-
});
|
|
366
|
-
});
|
|
367
|
-
}
|
|
368
|
-
//# sourceMappingURL=graph.js.map
|
package/dist/utils/graph.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/utils/graph.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/layout.js
DELETED
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { builtinLayoutTypes } from '../constants/layout';
|
|
2
|
-
import { setCenterByBBox, setCenterById } from './node';
|
|
3
|
-
import _ from 'lodash';
|
|
4
|
-
import { DEFAULT_LAYOUT_CONFIG } from '../container/InkFlow/init-values';
|
|
5
|
-
import { getNodePositionWithOrigin } from './graph';
|
|
6
|
-
import { getNodeDimensions } from './general';
|
|
7
|
-
export function layout(_a) {
|
|
8
|
-
var layoutTypes = _a.layoutTypes, _b = _a.layoutConfig, layoutConfig = _b === void 0 ? DEFAULT_LAYOUT_CONFIG : _b, edges = _a.edges, nodeOrigin = _a.nodeOrigin, nodes = _a.nodes, container = _a.container;
|
|
9
|
-
var layoutFn = layoutTypes[layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.type] || builtinLayoutTypes[layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.type];
|
|
10
|
-
if (!canLayout(nodes) || !layoutFn) {
|
|
11
|
-
return { nodes: nodes, edges: edges, layoutComplete: false };
|
|
12
|
-
}
|
|
13
|
-
return execLayout({
|
|
14
|
-
layoutConfig: layoutConfig,
|
|
15
|
-
container: container,
|
|
16
|
-
nodeOrigin: nodeOrigin,
|
|
17
|
-
nodes: nodes,
|
|
18
|
-
layoutFn: layoutFn,
|
|
19
|
-
edges: edges,
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
export function canLayout(nodes) {
|
|
23
|
-
return nodes.every(function (item) { var _a, _b; return ((_a = item.measured) === null || _a === void 0 ? void 0 : _a.width) && ((_b = item.measured) === null || _b === void 0 ? void 0 : _b.height); });
|
|
24
|
-
}
|
|
25
|
-
export function getNeedLayout(changes) {
|
|
26
|
-
return changes.some(function (change) {
|
|
27
|
-
return ['dimensions', 'remove', 'add', 'replace'].includes(change.type);
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
export function execLayout(_a) {
|
|
31
|
-
var _b = _a.layoutConfig, layoutConfig = _b === void 0 ? DEFAULT_LAYOUT_CONFIG : _b, edges = _a.edges, nodeOrigin = _a.nodeOrigin, nodes = _a.nodes, container = _a.container, layoutFn = _a.layoutFn;
|
|
32
|
-
var newNodes = _.cloneDeep(nodes);
|
|
33
|
-
newNodes.forEach(function (node) {
|
|
34
|
-
if (node.data) {
|
|
35
|
-
node.data.width = node.measured.width;
|
|
36
|
-
node.data.height = node.measured.height;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
var _c = layoutFn(newNodes, edges, __assign({ nodeOrigin: nodeOrigin, width: container.width, height: container.height }, layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.options)), hasLayoutNodes = _c.nodes, hasLayoutEdges = _c.edges;
|
|
40
|
-
return { nodes: hasLayoutNodes, edges: hasLayoutEdges, layoutComplete: true };
|
|
41
|
-
}
|
|
42
|
-
export function setCenter(_a) {
|
|
43
|
-
var centerConfig = _a.centerConfig, width = _a.width, height = _a.height, transform = _a.transform, panZoom = _a.panZoom, nodeOrigin = _a.nodeOrigin, nodes = _a.nodes;
|
|
44
|
-
if (!centerConfig || !panZoom) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
var centerNode = nodes.find(function (item) { return item.id === centerConfig.centerNodeId; });
|
|
48
|
-
if (centerNode) {
|
|
49
|
-
setCenterById({
|
|
50
|
-
node: centerNode,
|
|
51
|
-
width: width,
|
|
52
|
-
height: height,
|
|
53
|
-
panZoom: panZoom,
|
|
54
|
-
nodeOrigin: nodeOrigin,
|
|
55
|
-
zoom: transform[2],
|
|
56
|
-
});
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
if (centerConfig.centerByBBox) {
|
|
60
|
-
setCenterByBBox({
|
|
61
|
-
nodes: nodes,
|
|
62
|
-
width: width,
|
|
63
|
-
height: height,
|
|
64
|
-
panZoom: panZoom,
|
|
65
|
-
nodeOrigin: nodeOrigin,
|
|
66
|
-
zoom: transform[2],
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
return true;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* 根据布局方向和offset设置进行偏移
|
|
73
|
-
* @param
|
|
74
|
-
* @returns
|
|
75
|
-
*/
|
|
76
|
-
export function setViewportOffsetByLayoutDir(_a) {
|
|
77
|
-
var offsetConfig = _a.offsetConfig, width = _a.width, height = _a.height, panZoom = _a.panZoom, nodeOrigin = _a.nodeOrigin, nodes = _a.nodes, layoutDirection = _a.layoutDirection;
|
|
78
|
-
var node = nodes.find(function (item) { return item.id === (offsetConfig === null || offsetConfig === void 0 ? void 0 : offsetConfig.nodeId); });
|
|
79
|
-
if (!layoutDirection || !node)
|
|
80
|
-
return false;
|
|
81
|
-
var nodePosition = getNodePositionWithOrigin(node, nodeOrigin).positionAbsolute;
|
|
82
|
-
var nodeSize = getNodeDimensions(node);
|
|
83
|
-
var viewportCenter = {
|
|
84
|
-
x: width / 2,
|
|
85
|
-
y: height / 2,
|
|
86
|
-
};
|
|
87
|
-
var offset = {
|
|
88
|
-
x: 0,
|
|
89
|
-
y: 0,
|
|
90
|
-
};
|
|
91
|
-
switch (layoutDirection) {
|
|
92
|
-
case 'BT': {
|
|
93
|
-
offset = {
|
|
94
|
-
x: viewportCenter.x - nodePosition.x - nodeSize.width / 2,
|
|
95
|
-
y: height - nodePosition.y - offsetConfig.offset - nodeSize.height,
|
|
96
|
-
};
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
case 'LR': {
|
|
100
|
-
offset = {
|
|
101
|
-
x: offsetConfig.offset - nodePosition.x,
|
|
102
|
-
y: viewportCenter.y - nodePosition.y - nodeSize.height / 2,
|
|
103
|
-
};
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
case 'RL': {
|
|
107
|
-
offset = {
|
|
108
|
-
x: width - nodePosition.x - offsetConfig.offset - nodeSize.width,
|
|
109
|
-
y: viewportCenter.y - nodePosition.y - nodeSize.height / 2,
|
|
110
|
-
};
|
|
111
|
-
break;
|
|
112
|
-
}
|
|
113
|
-
default: {
|
|
114
|
-
offset = {
|
|
115
|
-
x: viewportCenter.x - nodePosition.x - nodeSize.width / 2,
|
|
116
|
-
y: offsetConfig.offset - nodePosition.y,
|
|
117
|
-
};
|
|
118
|
-
break;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
panZoom.setViewport({
|
|
122
|
-
x: offset.x,
|
|
123
|
-
y: offset.y,
|
|
124
|
-
zoom: 1,
|
|
125
|
-
});
|
|
126
|
-
return true;
|
|
127
|
-
}
|
|
128
|
-
/** 按照指定位置将画布进行偏移 */
|
|
129
|
-
export function setViewportOffsetByNode(_a) {
|
|
130
|
-
var position = _a.position, targetPosition = _a.targetPosition, panZoom = _a.panZoom, transform = _a.transform;
|
|
131
|
-
var zoom = transform[2];
|
|
132
|
-
var offset = {
|
|
133
|
-
x: (targetPosition.x - position.x) * zoom,
|
|
134
|
-
y: (targetPosition.y - position.y) * zoom,
|
|
135
|
-
};
|
|
136
|
-
panZoom.setViewport({
|
|
137
|
-
x: transform[0] + offset.x,
|
|
138
|
-
y: transform[1] + offset.y,
|
|
139
|
-
zoom: zoom,
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
//# sourceMappingURL=layout.js.map
|
package/dist/utils/layout.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/utils/layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAUzD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,UAAU,MAAM,CAA+C,EAOlC;QANjC,WAAW,iBAAA,EACX,oBAAoC,EAApC,YAAY,mBAAG,qBAAqB,KAAA,EACpC,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,SAAS,eAAA;IAMT,IAAM,QAAQ,GACZ,WAAW,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,IAAI,kBAAkB,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,CAAC;IAE5E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACjD,CAAC;IAED,OAAO,UAAU,CAAC;QAChB,YAAY,cAAA;QACZ,SAAS,WAAA;QACT,UAAU,YAAA;QACV,KAAK,OAAA;QACL,QAAQ,UAAA;QACR,KAAK,OAAA;KACN,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,SAAS,CAAwB,KAAiB;IAChE,OAAO,KAAK,CAAC,KAAK,CAAC,UAAC,IAAI,gBAAK,OAAA,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,KAAK,MAAI,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,CAAA,CAAA,EAAA,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAA2B;IACvD,OAAO,OAAO,CAAC,IAAI,CAAC,UAAC,MAAM;QACzB,OAAA,CAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;IAAhE,CAAgE,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAA+C,EAOnC;QANpC,oBAAoC,EAApC,YAAY,mBAAG,qBAAqB,KAAA,EACpC,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,SAAS,eAAA,EACT,QAAQ,cAAA;IAER,IAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,UAAC,IAAI;QACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;IAEG,IAAA,KAAmD,QAAQ,CAC/D,QAAQ,EACR,KAAK,aAEH,UAAU,YAAA,EACV,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,MAAM,EAAE,SAAS,CAAC,MAAM,IACpB,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAe,EAEpC,EATc,cAAc,WAAA,EAAS,cAAc,WASnD,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAQN;QAPlB,YAAY,kBAAA,EACZ,KAAK,WAAA,EACL,MAAM,YAAA,EACN,SAAS,eAAA,EACT,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,KAAK,WAAA;IAEL,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,IAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC3B,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,YAAY,EAArC,CAAqC,CAChD,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,aAAa,CAAC;YACZ,IAAI,EAAE,UAAU;YAChB,KAAK,OAAA;YACL,MAAM,QAAA;YACN,OAAO,SAAA;YACP,UAAU,YAAA;YACV,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;SACnB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;QAC9B,eAAe,CAAC;YACd,KAAK,OAAA;YACL,KAAK,OAAA;YACL,MAAM,QAAA;YACN,OAAO,SAAA;YACP,UAAU,YAAA;YACV,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,EAQxB;QAPnB,YAAY,kBAAA,EACZ,KAAK,WAAA,EACL,MAAM,YAAA,EACN,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,eAAe,qBAAA;IAEf,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,EAAE,MAAK,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,CAAA,EAAhC,CAAgC,CAAC,CAAC;IACpE,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAE5C,IAAM,YAAY,GAAG,yBAAyB,CAC5C,IAAI,EACJ,UAAU,CACX,CAAC,gBAAgB,CAAC;IACnB,IAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACzC,IAAM,cAAc,GAAG;QACrB,CAAC,EAAE,KAAK,GAAG,CAAC;QACZ,CAAC,EAAE,MAAM,GAAG,CAAC;KACd,CAAC;IAEF,IAAI,MAAM,GAAG;QACX,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;KACL,CAAC;IAEF,QAAQ,eAAe,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,GAAG;gBACP,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC;gBACzD,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;aACnE,CAAC;YACF,MAAM;QACR,CAAC;QACD,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,GAAG;gBACP,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;gBACvC,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;aAC3D,CAAC;YACF,MAAM;QACR,CAAC;QACD,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,GAAG;gBACP,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK;gBAChE,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;aAC3D,CAAC;YACF,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,GAAG;gBACP,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC;gBACzD,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;aACxC,CAAC;YACF,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,CAAC,WAAW,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,IAAI,EAAE,CAAC;KACR,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,oBAAoB;AACpB,MAAM,UAAU,uBAAuB,CAAwB,EAK1B;QAJnC,QAAQ,cAAA,EACR,cAAc,oBAAA,EACd,OAAO,aAAA,EACP,SAAS,eAAA;IAET,IAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAM,MAAM,GAAG;QACb,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;QACzC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;KAC1C,CAAC;IAEF,OAAO,CAAC,WAAW,CAAC;QAClB,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QAC1B,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QAC1B,IAAI,MAAA;KACL,CAAC,CAAC;AACL,CAAC"}
|
package/dist/utils/marker.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
export function getMarkerId(marker, id) {
|
|
2
|
-
if (!marker) {
|
|
3
|
-
return '';
|
|
4
|
-
}
|
|
5
|
-
if (typeof marker === 'string') {
|
|
6
|
-
return marker;
|
|
7
|
-
}
|
|
8
|
-
var idPrefix = id ? "".concat(id, "__") : '';
|
|
9
|
-
return "".concat(idPrefix).concat(Object.keys(marker)
|
|
10
|
-
.sort()
|
|
11
|
-
.map(function (key) { return "".concat(key, "=").concat(marker[key]); })
|
|
12
|
-
.join('&'));
|
|
13
|
-
}
|
|
14
|
-
export function createMarkerIds(edges, _a) {
|
|
15
|
-
var id = _a.id, defaultColor = _a.defaultColor, defaultMarkerStart = _a.defaultMarkerStart, defaultMarkerEnd = _a.defaultMarkerEnd;
|
|
16
|
-
var ids = new Set();
|
|
17
|
-
return edges
|
|
18
|
-
.reduce(function (markers, edge) {
|
|
19
|
-
[
|
|
20
|
-
edge.markerStart || defaultMarkerStart,
|
|
21
|
-
edge.markerEnd || defaultMarkerEnd,
|
|
22
|
-
].forEach(function (marker) {
|
|
23
|
-
if (marker && typeof marker === 'object') {
|
|
24
|
-
var markerId = getMarkerId(marker, id);
|
|
25
|
-
if (!ids.has(markerId)) {
|
|
26
|
-
markers.push(__assign({ id: markerId, color: marker.color || defaultColor }, marker));
|
|
27
|
-
ids.add(markerId);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
return markers;
|
|
32
|
-
}, [])
|
|
33
|
-
.sort(function (a, b) { return a.id.localeCompare(b.id); });
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=marker.js.map
|
package/dist/utils/marker.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"marker.js","sourceRoot":"","sources":["../../src/utils/marker.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,WAAW,CACzB,MAAkC,EAClC,EAAkB;IAElB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAM,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,UAAG,EAAE,OAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAErC,OAAO,UAAG,QAAQ,SAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;SACrC,IAAI,EAAE;SACN,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,UAAG,GAAG,cAAI,MAAM,CAAC,GAAuB,CAAC,CAAE,EAA3C,CAA2C,CAAC;SACzD,IAAI,CAAC,GAAG,CAAC,CAAE,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,KAAiB,EACjB,EAUC;QATC,EAAE,QAAA,EACF,YAAY,kBAAA,EACZ,kBAAkB,wBAAA,EAClB,gBAAgB,sBAAA;IAQlB,IAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAE9B,OAAO,KAAK;SACT,MAAM,CAAgB,UAAC,OAAO,EAAE,IAAI;QACnC;YACE,IAAI,CAAC,WAAW,IAAI,kBAAkB;YACtC,IAAI,CAAC,SAAS,IAAI,gBAAgB;SACnC,CAAC,OAAO,CAAC,UAAC,MAAM;YACf,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACzC,IAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACvB,OAAO,CAAC,IAAI,YACV,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,YAAY,IAChC,MAAM,EACT,CAAC;oBACH,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC;SACL,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAxB,CAAwB,CAAC,CAAC;AAC9C,CAAC"}
|
package/dist/utils/node.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { getNodeDimensions } from './general';
|
|
2
|
-
import { getNodesBounds } from './graph';
|
|
3
|
-
import { getNodePositionWithOrigin } from './store';
|
|
4
|
-
export function setCenterByBBox(_a) {
|
|
5
|
-
var nodes = _a.nodes, nodeOrigin = _a.nodeOrigin, height = _a.height, width = _a.width, _b = _a.zoom, zoom = _b === void 0 ? 1 : _b, panZoom = _a.panZoom;
|
|
6
|
-
var bounds = getNodesBounds(nodes, { nodeOrigin: nodeOrigin });
|
|
7
|
-
var offset = {
|
|
8
|
-
x: bounds.x + bounds.width / 2,
|
|
9
|
-
y: bounds.y + bounds.height / 2,
|
|
10
|
-
};
|
|
11
|
-
var center = {
|
|
12
|
-
x: width / 2 - offset.x * zoom,
|
|
13
|
-
y: height / 2 - offset.y * zoom,
|
|
14
|
-
};
|
|
15
|
-
panZoom.setViewport({
|
|
16
|
-
x: center.x,
|
|
17
|
-
y: center.y,
|
|
18
|
-
zoom: zoom,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
export function setCenterById(_a) {
|
|
22
|
-
var node = _a.node, height = _a.height, width = _a.width, _b = _a.zoom, zoom = _b === void 0 ? 1 : _b, panZoom = _a.panZoom, nodeOrigin = _a.nodeOrigin;
|
|
23
|
-
var dimension = getNodeDimensions(node);
|
|
24
|
-
var nodePosition = getNodePositionWithOrigin(node, nodeOrigin).positionAbsolute;
|
|
25
|
-
var offset = {
|
|
26
|
-
x: nodePosition.x + dimension.width / 2,
|
|
27
|
-
y: nodePosition.y + dimension.height / 2,
|
|
28
|
-
};
|
|
29
|
-
var center = {
|
|
30
|
-
x: width / 2 - offset.x * zoom,
|
|
31
|
-
y: height / 2 - offset.y * zoom,
|
|
32
|
-
};
|
|
33
|
-
panZoom.setViewport({
|
|
34
|
-
x: center.x,
|
|
35
|
-
y: center.y,
|
|
36
|
-
zoom: zoom,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
export function checkNodeHasPosition(nodes) {
|
|
40
|
-
return nodes.every(function (node) { return !!node.position; });
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=node.js.map
|
package/dist/utils/node.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/utils/node.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD,MAAM,UAAU,eAAe,CAAwB,EActD;QAbC,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,MAAM,YAAA,EACN,KAAK,WAAA,EACL,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EACR,OAAO,aAAA;IASP,IAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,UAAU,YAAA,EAAE,CAAC,CAAC;IACrD,IAAM,MAAM,GAAG;QACb,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC;QAC9B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC;KAChC,CAAC;IAEF,IAAM,MAAM,GAAG;QACb,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI;QAC9B,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI;KAChC,CAAC;IAEF,OAAO,CAAC,WAAW,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,IAAI,MAAA;KACL,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CAAwB,EAcpD;QAbC,IAAI,UAAA,EACJ,MAAM,YAAA,EACN,KAAK,WAAA,EACL,YAAQ,EAAR,IAAI,mBAAG,CAAC,KAAA,EACR,OAAO,aAAA,EACP,UAAU,gBAAA;IASV,IAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAM,YAAY,GAAG,yBAAyB,CAC5C,IAAI,EACJ,UAAU,CACX,CAAC,gBAAgB,CAAC;IAEnB,IAAM,MAAM,GAAG;QACb,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,GAAG,CAAC;QACvC,CAAC,EAAE,YAAY,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC;KACzC,CAAC;IAEF,IAAM,MAAM,GAAG;QACb,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI;QAC9B,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI;KAChC,CAAC;IAEF,OAAO,CAAC,WAAW,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,IAAI,MAAA;KACL,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAwB,KAAiB;IAC3E,OAAO,KAAK,CAAC,KAAK,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC,CAAC;AAChD,CAAC"}
|