@logicflow/core 2.2.0 → 2.2.2
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/docs/api/logicflow-constructor/index.en.md +106 -0
- package/dist/docs/api/logicflow-constructor/index.zh.md +106 -0
- package/dist/docs/api/logicflow-constructor/use.en.md +61 -0
- package/dist/docs/api/logicflow-constructor/use.zh.md +61 -0
- package/dist/docs/api/logicflow-instance/canvas.en.md +197 -0
- package/dist/docs/api/logicflow-instance/canvas.zh.md +199 -0
- package/dist/docs/api/logicflow-instance/edge.en.md +273 -0
- package/dist/docs/api/logicflow-instance/edge.zh.md +273 -0
- package/dist/docs/api/logicflow-instance/edit-config.en.md +59 -0
- package/dist/docs/api/logicflow-instance/edit-config.zh.md +59 -0
- package/dist/docs/api/logicflow-instance/element.en.md +375 -0
- package/dist/docs/api/logicflow-instance/element.zh.md +379 -0
- package/dist/docs/api/logicflow-instance/event.en.md +326 -0
- package/dist/docs/api/logicflow-instance/event.zh.md +406 -0
- package/dist/docs/api/logicflow-instance/history.en.md +38 -0
- package/dist/docs/api/logicflow-instance/history.zh.md +38 -0
- package/dist/docs/api/logicflow-instance/index.en.md +41 -0
- package/dist/docs/api/logicflow-instance/index.zh.md +41 -0
- package/dist/docs/api/logicflow-instance/node.en.md +308 -0
- package/dist/docs/api/logicflow-instance/node.zh.md +308 -0
- package/dist/docs/api/logicflow-instance/register.en.md +76 -0
- package/dist/docs/api/logicflow-instance/register.zh.md +76 -0
- package/dist/docs/api/logicflow-instance/render-and-data.en.md +179 -0
- package/dist/docs/api/logicflow-instance/render-and-data.zh.md +181 -0
- package/dist/docs/api/logicflow-instance/text.en.md +60 -0
- package/dist/docs/api/logicflow-instance/text.zh.md +60 -0
- package/dist/docs/api/logicflow-instance/theme.en.md +179 -0
- package/dist/docs/api/logicflow-instance/theme.zh.md +179 -0
- package/dist/docs/api/runtime-model/edgeModel.en.md +29 -0
- package/dist/docs/api/runtime-model/edgeModel.zh.md +325 -0
- package/dist/docs/api/runtime-model/graphModel.en.md +275 -0
- package/dist/docs/api/runtime-model/graphModel.zh.md +1153 -0
- package/dist/docs/api/runtime-model/nodeModel.en.md +37 -0
- package/dist/docs/api/runtime-model/nodeModel.zh.md +644 -0
- package/dist/docs/api/type/MainTypes.en.md +598 -0
- package/dist/docs/api/type/MainTypes.zh.md +867 -0
- package/dist/docs/api/type/Theme.en.md +187 -0
- package/dist/docs/api/type/Theme.zh.md +187 -0
- package/dist/docs/api/type/canvas-types.en.md +25 -0
- package/dist/docs/api/type/canvas-types.zh.md +25 -0
- package/dist/docs/api/type/index.en.md +96 -0
- package/dist/docs/api/type/index.zh.md +99 -0
- package/dist/docs/api/type/node-types.en.md +21 -0
- package/dist/docs/api/type/node-types.zh.md +21 -0
- package/dist/docs/api/type/plugin-types.en.md +24 -0
- package/dist/docs/api/type/plugin-types.zh.md +24 -0
- package/dist/docs/index.md +11 -0
- package/dist/docs/tutorial/about.en.md +38 -0
- package/dist/docs/tutorial/about.zh.md +65 -0
- package/dist/docs/tutorial/advanced/dnd.en.md +62 -0
- package/dist/docs/tutorial/advanced/dnd.zh.md +52 -0
- package/dist/docs/tutorial/advanced/edge.en.md +64 -0
- package/dist/docs/tutorial/advanced/edge.zh.md +66 -0
- package/dist/docs/tutorial/advanced/keyboard.en.md +70 -0
- package/dist/docs/tutorial/advanced/keyboard.zh.md +67 -0
- package/dist/docs/tutorial/advanced/node.en.md +338 -0
- package/dist/docs/tutorial/advanced/node.zh.md +338 -0
- package/dist/docs/tutorial/advanced/react.en.md +106 -0
- package/dist/docs/tutorial/advanced/react.zh.md +114 -0
- package/dist/docs/tutorial/advanced/silent-mode.en.md +75 -0
- package/dist/docs/tutorial/advanced/silent-mode.zh.md +71 -0
- package/dist/docs/tutorial/advanced/snapline.en.md +54 -0
- package/dist/docs/tutorial/advanced/vue.en.md +249 -0
- package/dist/docs/tutorial/advanced/vue.zh.md +248 -0
- package/dist/docs/tutorial/ai.en.md +64 -0
- package/dist/docs/tutorial/ai.zh.md +64 -0
- package/dist/docs/tutorial/basic/background.en.md +50 -0
- package/dist/docs/tutorial/basic/canvas.en.md +164 -0
- package/dist/docs/tutorial/basic/canvas.zh.md +183 -0
- package/dist/docs/tutorial/basic/class.en.md +106 -0
- package/dist/docs/tutorial/basic/class.zh.md +103 -0
- package/dist/docs/tutorial/basic/edge.en.md +151 -0
- package/dist/docs/tutorial/basic/edge.zh.md +152 -0
- package/dist/docs/tutorial/basic/event.en.md +70 -0
- package/dist/docs/tutorial/basic/event.zh.md +66 -0
- package/dist/docs/tutorial/basic/grid.en.md +77 -0
- package/dist/docs/tutorial/basic/node.en.md +358 -0
- package/dist/docs/tutorial/basic/node.zh.md +318 -0
- package/dist/docs/tutorial/basic/theme.en.md +154 -0
- package/dist/docs/tutorial/basic/theme.zh.md +157 -0
- package/dist/docs/tutorial/extension/adapter.en.md +446 -0
- package/dist/docs/tutorial/extension/adapter.zh.md +429 -0
- package/dist/docs/tutorial/extension/bpmn-element.en.md +1427 -0
- package/dist/docs/tutorial/extension/bpmn-element.zh.md +1472 -0
- package/dist/docs/tutorial/extension/control.en.md +117 -0
- package/dist/docs/tutorial/extension/control.zh.md +118 -0
- package/dist/docs/tutorial/extension/curved-edge.en.md +46 -0
- package/dist/docs/tutorial/extension/curved-edge.zh.md +46 -0
- package/dist/docs/tutorial/extension/custom.en.md +142 -0
- package/dist/docs/tutorial/extension/custom.zh.md +138 -0
- package/dist/docs/tutorial/extension/dnd-panel.en.md +109 -0
- package/dist/docs/tutorial/extension/dnd-panel.zh.md +109 -0
- package/dist/docs/tutorial/extension/dynamic-group.en.md +606 -0
- package/dist/docs/tutorial/extension/dynamic-group.zh.md +606 -0
- package/dist/docs/tutorial/extension/group.en.md +217 -0
- package/dist/docs/tutorial/extension/group.zh.md +209 -0
- package/dist/docs/tutorial/extension/highlight.en.md +50 -0
- package/dist/docs/tutorial/extension/highlight.zh.md +50 -0
- package/dist/docs/tutorial/extension/insert-node-in-polyline.en.md +52 -0
- package/dist/docs/tutorial/extension/insert-node-in-polyline.zh.md +47 -0
- package/dist/docs/tutorial/extension/intro.en.md +72 -0
- package/dist/docs/tutorial/extension/intro.zh.md +95 -0
- package/dist/docs/tutorial/extension/label.en.md +136 -0
- package/dist/docs/tutorial/extension/label.zh.md +135 -0
- package/dist/docs/tutorial/extension/layout.en.md +156 -0
- package/dist/docs/tutorial/extension/layout.zh.md +156 -0
- package/dist/docs/tutorial/extension/menu.en.md +319 -0
- package/dist/docs/tutorial/extension/menu.zh.md +377 -0
- package/dist/docs/tutorial/extension/minimap.en.md +164 -0
- package/dist/docs/tutorial/extension/minimap.zh.md +180 -0
- package/dist/docs/tutorial/extension/node-resize.en.md +199 -0
- package/dist/docs/tutorial/extension/node-resize.zh.md +221 -0
- package/dist/docs/tutorial/extension/pool.en.md +227 -0
- package/dist/docs/tutorial/extension/pool.zh.md +227 -0
- package/dist/docs/tutorial/extension/proximity-connect.en.md +104 -0
- package/dist/docs/tutorial/extension/proximity-connect.zh.md +107 -0
- package/dist/docs/tutorial/extension/selection.en.md +166 -0
- package/dist/docs/tutorial/extension/selection.zh.md +150 -0
- package/dist/docs/tutorial/extension/snapshot.en.md +276 -0
- package/dist/docs/tutorial/extension/snapshot.zh.md +276 -0
- package/dist/docs/tutorial/get-started.en.md +501 -0
- package/dist/docs/tutorial/get-started.zh.md +139 -0
- package/dist/docs/tutorial/update.en.md +213 -0
- package/dist/docs/tutorial/update.zh.md +212 -0
- package/dist/index.css +3 -2
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/es/LogicFlow.d.ts +9 -0
- package/es/LogicFlow.js +0 -1
- package/es/constant/index.d.ts +1 -1
- package/es/constant/index.js +1 -1
- package/es/constant/theme.d.ts +136 -0
- package/es/constant/theme.js +680 -0
- package/es/index.css +3 -2
- package/es/model/GraphModel.d.ts +10 -2
- package/es/model/GraphModel.js +48 -14
- package/es/model/TransformModel.js +9 -9
- package/es/model/edge/BaseEdgeModel.js +7 -2
- package/es/model/edge/PolylineEdgeModel.d.ts +7 -0
- package/es/model/edge/PolylineEdgeModel.js +136 -7
- package/es/model/node/BaseNodeModel.d.ts +12 -1
- package/es/model/node/BaseNodeModel.js +9 -2
- package/es/model/node/HtmlNodeModel.d.ts +12 -0
- package/es/model/node/HtmlNodeModel.js +19 -0
- package/es/model/node/PolygonNodeModel.js +3 -3
- package/es/options.d.ts +4 -2
- package/es/style/index.css +3 -2
- package/es/style/index.less +3 -2
- package/es/style/raw.d.ts +1 -1
- package/es/style/raw.js +1 -1
- package/es/tool/MultipleSelectTool.js +10 -5
- package/es/util/drag.js +0 -1
- package/es/util/edge.d.ts +40 -1
- package/es/util/edge.js +43 -9
- package/es/util/geometry.d.ts +8 -0
- package/es/util/geometry.js +79 -0
- package/es/util/theme.d.ts +2 -65
- package/es/util/theme.js +4 -281
- package/es/view/Anchor.d.ts +1 -0
- package/es/view/Anchor.js +24 -21
- package/es/view/Control.d.ts +5 -0
- package/es/view/Control.js +44 -57
- package/es/view/edge/BaseEdge.js +9 -0
- package/es/view/edge/PolylineEdge.js +13 -2
- package/es/view/node/BaseNode.d.ts +1 -0
- package/es/view/node/BaseNode.js +23 -11
- package/es/view/node/HtmlNode.js +2 -4
- package/es/view/overlay/CanvasOverlay.js +5 -2
- package/es/view/overlay/Grid.d.ts +12 -1
- package/es/view/overlay/Grid.js +85 -23
- package/es/view/overlay/OutlineOverlay.d.ts +1 -0
- package/es/view/overlay/OutlineOverlay.js +18 -17
- package/es/view/overlay/gridConfig.d.ts +46 -0
- package/es/view/overlay/gridConfig.js +99 -0
- package/es/view/shape/Polygon.d.ts +0 -7
- package/es/view/shape/Polygon.js +12 -43
- package/lib/LogicFlow.d.ts +9 -0
- package/lib/LogicFlow.js +0 -1
- package/lib/constant/index.d.ts +1 -1
- package/lib/constant/index.js +16 -2
- package/lib/constant/theme.d.ts +136 -0
- package/lib/constant/theme.js +683 -0
- package/lib/index.css +3 -2
- package/lib/model/GraphModel.d.ts +10 -2
- package/lib/model/GraphModel.js +49 -15
- package/lib/model/TransformModel.js +9 -9
- package/lib/model/edge/BaseEdgeModel.js +7 -2
- package/lib/model/edge/PolylineEdgeModel.d.ts +7 -0
- package/lib/model/edge/PolylineEdgeModel.js +136 -7
- package/lib/model/node/BaseNodeModel.d.ts +12 -1
- package/lib/model/node/BaseNodeModel.js +9 -2
- package/lib/model/node/HtmlNodeModel.d.ts +12 -0
- package/lib/model/node/HtmlNodeModel.js +19 -0
- package/lib/model/node/PolygonNodeModel.js +3 -3
- package/lib/options.d.ts +4 -2
- package/lib/style/index.css +3 -2
- package/lib/style/index.less +3 -2
- package/lib/style/raw.d.ts +1 -1
- package/lib/style/raw.js +1 -1
- package/lib/tool/MultipleSelectTool.js +10 -5
- package/lib/util/drag.js +0 -1
- package/lib/util/edge.d.ts +40 -1
- package/lib/util/edge.js +43 -9
- package/lib/util/geometry.d.ts +8 -0
- package/lib/util/geometry.js +81 -1
- package/lib/util/theme.d.ts +2 -65
- package/lib/util/theme.js +15 -292
- package/lib/view/Anchor.d.ts +1 -0
- package/lib/view/Anchor.js +24 -21
- package/lib/view/Control.d.ts +5 -0
- package/lib/view/Control.js +44 -57
- package/lib/view/edge/BaseEdge.js +9 -0
- package/lib/view/edge/PolylineEdge.js +13 -2
- package/lib/view/node/BaseNode.d.ts +1 -0
- package/lib/view/node/BaseNode.js +22 -10
- package/lib/view/node/HtmlNode.js +1 -3
- package/lib/view/overlay/CanvasOverlay.js +5 -2
- package/lib/view/overlay/Grid.d.ts +12 -1
- package/lib/view/overlay/Grid.js +83 -21
- package/lib/view/overlay/OutlineOverlay.d.ts +1 -0
- package/lib/view/overlay/OutlineOverlay.js +18 -17
- package/lib/view/overlay/gridConfig.d.ts +46 -0
- package/lib/view/overlay/gridConfig.js +104 -0
- package/lib/view/shape/Polygon.d.ts +0 -7
- package/lib/view/shape/Polygon.js +13 -45
- package/package.json +9 -2
- package/scripts/postinstall-ai-prompt.js +67 -0
- package/.turbo/turbo-build$colon$dev.log +0 -10
- package/.turbo/turbo-build.log +0 -33
- package/CHANGELOG.md +0 -1849
- package/__tests__/algorithm/egde.test.ts +0 -131
- package/__tests__/algorithm/index.test.ts +0 -74
- package/__tests__/algorithm/outline.test.ts +0 -43
- package/__tests__/bugs/1545-spec.test.ts +0 -42
- package/__tests__/event/event.test.ts +0 -22
- package/__tests__/history/history.test.ts +0 -28
- package/__tests__/logicflow.test.ts +0 -575
- package/__tests__/model/graphmodel.test.ts +0 -87
- package/__tests__/util/compatible.test.ts +0 -48
- package/__tests__/util/edge.test.ts +0 -224
- package/__tests__/util/geometry.test.ts +0 -14
- package/__tests__/util/graph.test.ts +0 -16
- package/__tests__/util/matrix.test.ts +0 -41
- package/__tests__/util/node.test.ts +0 -68
- package/__tests__/util/sampling.test.ts +0 -12
- package/__tests__/util/vector.test.ts +0 -50
- package/__tests__/util/zIndex.test.ts +0 -10
- package/src/LogicFlow.tsx +0 -2008
- package/src/algorithm/edge.ts +0 -67
- package/src/algorithm/index.ts +0 -70
- package/src/algorithm/outline.ts +0 -77
- package/src/algorithm/rotate.ts +0 -55
- package/src/common/drag.ts +0 -219
- package/src/common/history.ts +0 -108
- package/src/common/index.ts +0 -6
- package/src/common/keyboard.ts +0 -108
- package/src/common/matrix.ts +0 -122
- package/src/common/vector.ts +0 -93
- package/src/constant/index.ts +0 -179
- package/src/event/event.md +0 -66
- package/src/event/eventArgs.ts +0 -643
- package/src/event/eventEmitter.ts +0 -156
- package/src/history/index.ts +0 -119
- package/src/index.less +0 -1
- package/src/index.ts +0 -26
- package/src/keyboard/index.ts +0 -112
- package/src/keyboard/shortcut.ts +0 -200
- package/src/model/BaseModel.ts +0 -250
- package/src/model/EditConfigModel.ts +0 -334
- package/src/model/GraphModel.ts +0 -1788
- package/src/model/NestedTransformModel.ts +0 -121
- package/src/model/SnaplineModel.ts +0 -256
- package/src/model/TransformModel.ts +0 -258
- package/src/model/edge/BaseEdgeModel.ts +0 -777
- package/src/model/edge/BezierEdgeModel.ts +0 -197
- package/src/model/edge/LineEdgeModel.ts +0 -36
- package/src/model/edge/PolylineEdgeModel.ts +0 -672
- package/src/model/edge/index.ts +0 -4
- package/src/model/index.ts +0 -9
- package/src/model/node/BaseNodeModel.ts +0 -949
- package/src/model/node/CircleNodeModel.ts +0 -91
- package/src/model/node/DiamondNodeModel.ts +0 -132
- package/src/model/node/EllipseNodeModel.ts +0 -98
- package/src/model/node/HtmlNodeModel.ts +0 -50
- package/src/model/node/PolygonNodeModel.ts +0 -150
- package/src/model/node/RectNodeModel.ts +0 -69
- package/src/model/node/TextNodeModel.ts +0 -54
- package/src/model/node/index.ts +0 -8
- package/src/options.ts +0 -145
- package/src/style/index.less +0 -261
- package/src/style/raw.ts +0 -220
- package/src/tool/MultipleSelectTool.tsx +0 -132
- package/src/tool/TextEditTool.tsx +0 -193
- package/src/tool/index.ts +0 -101
- package/src/typings.d.ts +0 -5
- package/src/util/animation.ts +0 -29
- package/src/util/browser.ts +0 -4
- package/src/util/compatible.ts +0 -15
- package/src/util/drag.ts +0 -220
- package/src/util/edge.ts +0 -1060
- package/src/util/geometry.ts +0 -55
- package/src/util/graph.ts +0 -46
- package/src/util/index.ts +0 -17
- package/src/util/matrix.ts +0 -129
- package/src/util/mobx.ts +0 -23
- package/src/util/node.ts +0 -543
- package/src/util/raf.ts +0 -28
- package/src/util/resize.ts +0 -606
- package/src/util/sampling.ts +0 -85
- package/src/util/theme.ts +0 -375
- package/src/util/uuid.ts +0 -26
- package/src/util/vector.ts +0 -93
- package/src/util/zIndex.ts +0 -6
- package/src/view/Anchor.tsx +0 -445
- package/src/view/Control.tsx +0 -512
- package/src/view/Graph.tsx +0 -141
- package/src/view/Rotate.tsx +0 -113
- package/src/view/behavior/dnd.ts +0 -162
- package/src/view/behavior/index.ts +0 -2
- package/src/view/behavior/snapline.ts +0 -16
- package/src/view/edge/AdjustPoint.tsx +0 -425
- package/src/view/edge/Arrow.tsx +0 -54
- package/src/view/edge/BaseEdge.tsx +0 -650
- package/src/view/edge/BezierEdge.tsx +0 -101
- package/src/view/edge/LineEdge.tsx +0 -81
- package/src/view/edge/PolylineEdge.tsx +0 -299
- package/src/view/edge/index.ts +0 -6
- package/src/view/index.ts +0 -8
- package/src/view/node/BaseNode.tsx +0 -571
- package/src/view/node/CircleNode.tsx +0 -21
- package/src/view/node/DiamondNode.tsx +0 -24
- package/src/view/node/EllipseNode.tsx +0 -22
- package/src/view/node/HtmlNode.tsx +0 -95
- package/src/view/node/PolygonNode.tsx +0 -28
- package/src/view/node/RectNode.tsx +0 -30
- package/src/view/node/TextNode.tsx +0 -39
- package/src/view/node/index.ts +0 -8
- package/src/view/overlay/BackgroundOverlay.tsx +0 -34
- package/src/view/overlay/BezierAdjustOverlay.tsx +0 -150
- package/src/view/overlay/CanvasOverlay.tsx +0 -288
- package/src/view/overlay/Grid.tsx +0 -162
- package/src/view/overlay/ModificationOverlay.tsx +0 -31
- package/src/view/overlay/OutlineOverlay.tsx +0 -170
- package/src/view/overlay/SnaplineOverlay.tsx +0 -44
- package/src/view/overlay/ToolOverlay.tsx +0 -65
- package/src/view/overlay/getTransformHoc.tsx +0 -50
- package/src/view/overlay/index.ts +0 -8
- package/src/view/shape/Circle.tsx +0 -41
- package/src/view/shape/Ellipse.tsx +0 -42
- package/src/view/shape/Line.tsx +0 -39
- package/src/view/shape/Path.tsx +0 -22
- package/src/view/shape/Polygon.tsx +0 -91
- package/src/view/shape/Polyline.tsx +0 -31
- package/src/view/shape/Rect.tsx +0 -44
- package/src/view/shape/Text.tsx +0 -169
- package/src/view/shape/index.ts +0 -8
- package/src/view/text/BaseText.tsx +0 -134
- package/src/view/text/LineText.tsx +0 -168
- package/src/view/text/index.ts +0 -2
- package/stats.html +0 -4842
- package/tsconfig.json +0 -18
|
@@ -0,0 +1,379 @@
|
|
|
1
|
+
---
|
|
2
|
+
nav: API
|
|
3
|
+
group:
|
|
4
|
+
title: LogicFlow 实例
|
|
5
|
+
order: 2
|
|
6
|
+
title: 元素相关
|
|
7
|
+
toc: content
|
|
8
|
+
order: 4
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
本页汇总 LogicFlow 实例中面向节点与边等元素的批量操作、选择控制与属性更新方法。
|
|
12
|
+
|
|
13
|
+
### addElements
|
|
14
|
+
|
|
15
|
+
批量添加节点和边。
|
|
16
|
+
|
|
17
|
+
**签名**
|
|
18
|
+
|
|
19
|
+
```ts
|
|
20
|
+
addElements(data: GraphData): void
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**参数**
|
|
24
|
+
|
|
25
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
26
|
+
| :--- | :--- | :--- | :--- |
|
|
27
|
+
| `data` | [`GraphData`](../type/MainTypes.zh.md#graphdata画布数据) | 是 | 批量添加的节点与边数据。 |
|
|
28
|
+
|
|
29
|
+
**示例**
|
|
30
|
+
|
|
31
|
+
```ts
|
|
32
|
+
lf.addElements({
|
|
33
|
+
nodes: [{ id: 'node_1', type: 'rect', x: 100, y: 100 }],
|
|
34
|
+
edges: [],
|
|
35
|
+
});
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### selectElementById
|
|
39
|
+
|
|
40
|
+
选中指定图形元素。
|
|
41
|
+
|
|
42
|
+
**签名**
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
selectElementById(id: string, multiple?: boolean, toFront?: boolean): BaseNodeModel | BaseEdgeModel
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
**参数**
|
|
49
|
+
|
|
50
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
51
|
+
| :--- | :--- | :--- | :--- |
|
|
52
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
53
|
+
| `multiple` | `boolean` | 否 | 是否多选;`true` 时保留已有选中项。 |
|
|
54
|
+
| `toFront` | `boolean` | 否 | 是否将选中元素置顶。 |
|
|
55
|
+
|
|
56
|
+
**返回值**
|
|
57
|
+
|
|
58
|
+
| 类型 | 说明 |
|
|
59
|
+
| :--- | :--- |
|
|
60
|
+
| `BaseNodeModel \| BaseEdgeModel` | 选中的元素 model。 |
|
|
61
|
+
|
|
62
|
+
**示例**
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
lf.selectElementById('node_1', true, true);
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### deselectElementById
|
|
69
|
+
|
|
70
|
+
取消指定元素的选中状态。
|
|
71
|
+
|
|
72
|
+
**签名**
|
|
73
|
+
|
|
74
|
+
```ts
|
|
75
|
+
deselectElementById(id: string): void
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**参数**
|
|
79
|
+
|
|
80
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
81
|
+
| :--- | :--- | :--- | :--- |
|
|
82
|
+
| `id` | `string` | 是 | 元素 ID。 |
|
|
83
|
+
|
|
84
|
+
**示例**
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
lf.deselectElementById('node_1');
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### getSelectElements
|
|
91
|
+
|
|
92
|
+
获取当前选中的所有元素数据。
|
|
93
|
+
|
|
94
|
+
**签名**
|
|
95
|
+
|
|
96
|
+
```ts
|
|
97
|
+
getSelectElements(isIgnoreCheck?: boolean): GraphConfigData
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**参数**
|
|
101
|
+
|
|
102
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
103
|
+
| :--- | :--- | :--- | :--- |
|
|
104
|
+
| `isIgnoreCheck` | `boolean` | 否 | 是否包含 source/target 未被选中的边,默认包含。 |
|
|
105
|
+
|
|
106
|
+
**返回值**
|
|
107
|
+
|
|
108
|
+
| 类型 | 说明 |
|
|
109
|
+
| :--- | :--- |
|
|
110
|
+
| [`GraphConfigData`](../type/MainTypes.zh.md#graphconfigdata流程图渲染数据类型) | 当前选中元素数据。 |
|
|
111
|
+
|
|
112
|
+
**示例**
|
|
113
|
+
|
|
114
|
+
```ts
|
|
115
|
+
lf.getSelectElements(false);
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### clearSelectElements
|
|
119
|
+
|
|
120
|
+
取消所有元素的选中状态。
|
|
121
|
+
|
|
122
|
+
**签名**
|
|
123
|
+
|
|
124
|
+
```ts
|
|
125
|
+
clearSelectElements(): void
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**示例**
|
|
129
|
+
|
|
130
|
+
```ts
|
|
131
|
+
lf.clearSelectElements();
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### getModelById
|
|
135
|
+
|
|
136
|
+
按节点或边 ID 获取对应 model。
|
|
137
|
+
|
|
138
|
+
**签名**
|
|
139
|
+
|
|
140
|
+
```ts
|
|
141
|
+
getModelById(id: string): BaseNodeModel | BaseEdgeModel | undefined
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**参数**
|
|
145
|
+
|
|
146
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
147
|
+
| :--- | :--- | :--- | :--- |
|
|
148
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
149
|
+
|
|
150
|
+
**返回值**
|
|
151
|
+
|
|
152
|
+
| 类型 | 说明 |
|
|
153
|
+
| :--- | :--- |
|
|
154
|
+
| `BaseNodeModel \| BaseEdgeModel \| undefined` | 元素 model;不存在时返回 `undefined`。 |
|
|
155
|
+
|
|
156
|
+
**示例**
|
|
157
|
+
|
|
158
|
+
```ts
|
|
159
|
+
lf.getModelById('node_id');
|
|
160
|
+
lf.getModelById('edge_id');
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### getDataById
|
|
164
|
+
|
|
165
|
+
按节点或边 ID 获取对应数据。
|
|
166
|
+
|
|
167
|
+
**签名**
|
|
168
|
+
|
|
169
|
+
```ts
|
|
170
|
+
getDataById(id: string): NodeConfig | EdgeConfig | undefined
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**参数**
|
|
174
|
+
|
|
175
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
176
|
+
| :--- | :--- | :--- | :--- |
|
|
177
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
178
|
+
|
|
179
|
+
**返回值**
|
|
180
|
+
|
|
181
|
+
| 类型 | 说明 |
|
|
182
|
+
| :--- | :--- |
|
|
183
|
+
| [`NodeConfig`](../type/MainTypes.zh.md#nodeconfig节点配置) \| [`EdgeConfig`](../type/MainTypes.zh.md#edgeconfig边配置) \| `undefined` | 元素数据;不存在时返回 `undefined`。 |
|
|
184
|
+
|
|
185
|
+
### deleteElement
|
|
186
|
+
|
|
187
|
+
删除节点或边元素。
|
|
188
|
+
|
|
189
|
+
**签名**
|
|
190
|
+
|
|
191
|
+
```ts
|
|
192
|
+
deleteElement(id: string): boolean
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
**参数**
|
|
196
|
+
|
|
197
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
198
|
+
| :--- | :--- | :--- | :--- |
|
|
199
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
200
|
+
|
|
201
|
+
**返回值**
|
|
202
|
+
|
|
203
|
+
| 类型 | 说明 |
|
|
204
|
+
| :--- | :--- |
|
|
205
|
+
| `boolean` | 是否删除成功。 |
|
|
206
|
+
|
|
207
|
+
**示例**
|
|
208
|
+
|
|
209
|
+
```ts
|
|
210
|
+
lf.deleteElement('node_id');
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
### setElementZIndex
|
|
214
|
+
|
|
215
|
+
设置元素 zIndex。
|
|
216
|
+
|
|
217
|
+
**签名**
|
|
218
|
+
|
|
219
|
+
```ts
|
|
220
|
+
setElementZIndex(id: string, zIndex: string | number): void
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
**参数**
|
|
224
|
+
|
|
225
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
226
|
+
| :--- | :--- | :--- | :--- |
|
|
227
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
228
|
+
| `zIndex` | `string \| number` | 是 | 可传数字或 `top` / `bottom`。 |
|
|
229
|
+
|
|
230
|
+
**示例**
|
|
231
|
+
|
|
232
|
+
```ts
|
|
233
|
+
lf.setElementZIndex('element_id', 'top');
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### getAreaElement
|
|
237
|
+
|
|
238
|
+
获取指定 DOM 区域内的元素集合。
|
|
239
|
+
|
|
240
|
+
**签名**
|
|
241
|
+
|
|
242
|
+
```ts
|
|
243
|
+
getAreaElement(
|
|
244
|
+
leftTopPoint: PointTuple,
|
|
245
|
+
rightBottomPoint: PointTuple,
|
|
246
|
+
wholeEdge?: boolean,
|
|
247
|
+
wholeNode?: boolean,
|
|
248
|
+
ignoreHideElement?: boolean
|
|
249
|
+
): (BaseNodeModel | BaseEdgeModel)[]
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
**参数**
|
|
253
|
+
|
|
254
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
255
|
+
| :--- | :--- | :--- | :--- |
|
|
256
|
+
| `leftTopPoint` | `PointTuple` | 是 | 区域左上点。 |
|
|
257
|
+
| `rightBottomPoint` | `PointTuple` | 是 | 区域右下点。 |
|
|
258
|
+
| `wholeEdge` | `boolean` | 否 | 是否要求整条边都在区域内。 |
|
|
259
|
+
| `wholeNode` | `boolean` | 否 | 是否要求整个节点都在区域内。 |
|
|
260
|
+
| `ignoreHideElement` | `boolean` | 否 | 是否忽略隐藏元素。 |
|
|
261
|
+
|
|
262
|
+
**返回值**
|
|
263
|
+
|
|
264
|
+
| 类型 | 说明 |
|
|
265
|
+
| :--- | :--- |
|
|
266
|
+
| `(BaseNodeModel \| BaseEdgeModel)[]` | 命中区域的元素 model 列表。 |
|
|
267
|
+
|
|
268
|
+
**示例**
|
|
269
|
+
|
|
270
|
+
```ts
|
|
271
|
+
lf.getAreaElement([100, 100], [500, 500]);
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### setProperties
|
|
275
|
+
|
|
276
|
+
设置节点或边的自定义属性。
|
|
277
|
+
|
|
278
|
+
**签名**
|
|
279
|
+
|
|
280
|
+
```ts
|
|
281
|
+
setProperties(id: string, properties: Record<string, unknown>): void
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**参数**
|
|
285
|
+
|
|
286
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
287
|
+
| :--- | :--- | :--- | :--- |
|
|
288
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
289
|
+
| `properties` | `Record<string, unknown>` | 是 | 自定义属性对象。 |
|
|
290
|
+
|
|
291
|
+
**示例**
|
|
292
|
+
|
|
293
|
+
```ts
|
|
294
|
+
lf.setProperties('aF2Md2P23moN2gasd', {
|
|
295
|
+
isRollbackNode: true,
|
|
296
|
+
});
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
### getProperties
|
|
300
|
+
|
|
301
|
+
获取节点或边的自定义属性。
|
|
302
|
+
|
|
303
|
+
**签名**
|
|
304
|
+
|
|
305
|
+
```ts
|
|
306
|
+
getProperties(id: string): Record<string, any>
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
**参数**
|
|
310
|
+
|
|
311
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
312
|
+
| :--- | :--- | :--- | :--- |
|
|
313
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
314
|
+
|
|
315
|
+
**返回值**
|
|
316
|
+
|
|
317
|
+
| 类型 | 说明 |
|
|
318
|
+
| :--- | :--- |
|
|
319
|
+
| `Record<string, any>` | 自定义属性对象。 |
|
|
320
|
+
|
|
321
|
+
**示例**
|
|
322
|
+
|
|
323
|
+
```ts
|
|
324
|
+
lf.getProperties('id');
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### deleteProperty
|
|
328
|
+
|
|
329
|
+
删除节点或边的指定属性键。
|
|
330
|
+
|
|
331
|
+
**签名**
|
|
332
|
+
|
|
333
|
+
```ts
|
|
334
|
+
deleteProperty(id: string, key: string): void
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
**参数**
|
|
338
|
+
|
|
339
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
340
|
+
| :--- | :--- | :--- | :--- |
|
|
341
|
+
| `id` | `string` | 是 | 节点或边 ID。 |
|
|
342
|
+
| `key` | `string` | 是 | 要删除的属性键名。 |
|
|
343
|
+
|
|
344
|
+
**示例**
|
|
345
|
+
|
|
346
|
+
```ts
|
|
347
|
+
lf.deleteProperty('aF2Md2P23moN2gasd', 'isRollbackNode');
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
### updateAttributes
|
|
351
|
+
|
|
352
|
+
修改元素 model 属性;该方法内部调用 `graphModel` 的同名能力。
|
|
353
|
+
|
|
354
|
+
:::warning{title=注意}
|
|
355
|
+
此方法慎用,除非您对 LogicFlow 内部有足够了解。
|
|
356
|
+
大多数情况下,请优先使用 `setProperties`、`updateText`、`changeNodeId` 等更高层方法。
|
|
357
|
+
例如直接使用该方法修改节点 `id`,可能导致连接到此节点的边出现 `sourceNodeId` 无法匹配的问题。
|
|
358
|
+
:::
|
|
359
|
+
|
|
360
|
+
**签名**
|
|
361
|
+
|
|
362
|
+
```ts
|
|
363
|
+
updateAttributes(id: string, attributes: object): void
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
更多说明参考 [`graphModel.updateAttributes`](../runtime-model/graphModel.zh.md#updateattributes)。
|
|
367
|
+
|
|
368
|
+
**参数**
|
|
369
|
+
|
|
370
|
+
| 名称 | 类型 | 必传 | 说明 |
|
|
371
|
+
| :--- | :--- | :--- | :--- |
|
|
372
|
+
| `id` | `string` | 是 | 元素 ID。 |
|
|
373
|
+
| `attributes` | `object` | 是 | 要更新的 model 属性。 |
|
|
374
|
+
|
|
375
|
+
**示例**
|
|
376
|
+
|
|
377
|
+
```ts
|
|
378
|
+
lf.updateAttributes('node_id_1', { radius: 4 });
|
|
379
|
+
```
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
---
|
|
2
|
+
nav: API
|
|
3
|
+
group:
|
|
4
|
+
title: LogicFlow Instance
|
|
5
|
+
order: 2
|
|
6
|
+
title: Events
|
|
7
|
+
toc: content
|
|
8
|
+
order: 7
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<style>
|
|
12
|
+
table td:first-of-type {
|
|
13
|
+
word-break: normal;
|
|
14
|
+
}
|
|
15
|
+
</style>
|
|
16
|
+
|
|
17
|
+
LogicFlow exposes an event bus so your code can react to diagram interactions. For narrative examples, see the guide [Events](../../tutorial/basic/event.en.md).
|
|
18
|
+
|
|
19
|
+
## Event APIs
|
|
20
|
+
|
|
21
|
+
### on
|
|
22
|
+
|
|
23
|
+
Subscribe to one or many events (comma-separated names).
|
|
24
|
+
|
|
25
|
+
**Parameters**
|
|
26
|
+
|
|
27
|
+
| Name | Type | Required | Default | Description |
|
|
28
|
+
| :------- | :------------ | :--- | :----- | :----------------------------------- |
|
|
29
|
+
| evt | string | Yes | - | Event name(s). |
|
|
30
|
+
| callback | EventCallback | Yes | - | Handler. |
|
|
31
|
+
|
|
32
|
+
**Example**
|
|
33
|
+
|
|
34
|
+
```ts
|
|
35
|
+
lf.on('node:click', (data) => {
|
|
36
|
+
console.log('node clicked', data);
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
lf.on('node:click,edge:click', (data) => {
|
|
40
|
+
console.log('element clicked', data);
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
lf.on('node:drag', ({ data }) => {
|
|
44
|
+
console.log('dragging', data.id, data.x, data.y);
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
lf.on('blank:click', ({ e }) => {
|
|
48
|
+
console.log('blank click', e.x, e.y);
|
|
49
|
+
});
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Notes**
|
|
53
|
+
|
|
54
|
+
- Multiple listeners stack for the same event.
|
|
55
|
+
- Payload shape depends on the specific event.
|
|
56
|
+
|
|
57
|
+
### off
|
|
58
|
+
|
|
59
|
+
Remove a listener; pass the same function reference used with `on`.
|
|
60
|
+
|
|
61
|
+
**Parameters**
|
|
62
|
+
|
|
63
|
+
| Name | Type | Required | Default | Description |
|
|
64
|
+
| :------- | :------------ | :--- | :----- | :----------------------------------- |
|
|
65
|
+
| evt | string | Yes | - | Event name(s). |
|
|
66
|
+
| callback | EventCallback | Yes | - | Handler to remove. |
|
|
67
|
+
|
|
68
|
+
**Example**
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
const handleNodeClick = (data) => {
|
|
72
|
+
console.log('node clicked', data);
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
lf.on('node:click', handleNodeClick);
|
|
76
|
+
lf.off('node:click', handleNodeClick);
|
|
77
|
+
lf.off('node:click,edge:click', handleNodeClick);
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### once
|
|
81
|
+
|
|
82
|
+
Like `on`, but the handler fires once and is removed automatically.
|
|
83
|
+
|
|
84
|
+
**Parameters**
|
|
85
|
+
|
|
86
|
+
| Name | Type | Required | Default | Description |
|
|
87
|
+
| :------- | :------------ | :--- | :----- | :----------------------------------- |
|
|
88
|
+
| evt | string | Yes | - | Event name(s). |
|
|
89
|
+
| callback | EventCallback | Yes | - | Handler. |
|
|
90
|
+
|
|
91
|
+
**Example**
|
|
92
|
+
|
|
93
|
+
```ts
|
|
94
|
+
lf.once('node:click', (data) => {
|
|
95
|
+
console.log('first click only', data);
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
lf.once('graph:rendered', (data) => {
|
|
99
|
+
console.log('rendered', data);
|
|
100
|
+
});
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### emit
|
|
104
|
+
|
|
105
|
+
Manually dispatch an event (mostly for custom channels).
|
|
106
|
+
|
|
107
|
+
**Parameters**
|
|
108
|
+
|
|
109
|
+
| Name | Type | Required | Default | Description |
|
|
110
|
+
| :-------- | :-------- | :--- | :----- | :------- |
|
|
111
|
+
| evt | string | Yes | - | Event name. |
|
|
112
|
+
| eventArgs | EventArgs | Yes | - | Payload. |
|
|
113
|
+
|
|
114
|
+
**Example**
|
|
115
|
+
|
|
116
|
+
```ts
|
|
117
|
+
lf.emit('custom:event', {
|
|
118
|
+
type: 'custom:event',
|
|
119
|
+
data: {
|
|
120
|
+
message: 'Hello World',
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
lf.on('custom:event', (data) => {
|
|
125
|
+
console.log(data);
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
lf.emit('node:click', {
|
|
129
|
+
type: 'node:click',
|
|
130
|
+
data: lf.getNodeDataById('node_1'),
|
|
131
|
+
});
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Avoid emitting built-in events unless you understand side effects.
|
|
135
|
+
|
|
136
|
+
## Event index
|
|
137
|
+
|
|
138
|
+
## Node events
|
|
139
|
+
|
|
140
|
+
| Event | Description | Payload highlights |
|
|
141
|
+
| :-------------------------------------------- | :--------------------- | :-------------------------------------------------------------------------------------------------------------------------------- |
|
|
142
|
+
| element:click | Element click | data, e, position |
|
|
143
|
+
| node:click | Node click | data, e, position |
|
|
144
|
+
| node:dbclick | Node double click | data, e, position |
|
|
145
|
+
| node:mousedown | Mouse down on node | data, e |
|
|
146
|
+
| node:mouseup | Mouse up on node | data, e |
|
|
147
|
+
| node:mousemove | Mouse move on node | data, e |
|
|
148
|
+
| node:mouseenter | Pointer enters node | data, e |
|
|
149
|
+
| node:mouseleave | Pointer leaves node | data, e |
|
|
150
|
+
| node:delete | Node removed | data |
|
|
151
|
+
| node:add | Node added | data |
|
|
152
|
+
| node:dnd-add | External drag-and-drop completed | data |
|
|
153
|
+
| node:dnd-drag | External drag in progress | data, e |
|
|
154
|
+
| node:dragstart | Node drag start | data, e |
|
|
155
|
+
| node:drag | Node dragging | data, e |
|
|
156
|
+
| node:drop | Node drag end | data, e |
|
|
157
|
+
| node:contextmenu | Context menu on node | data, e, position |
|
|
158
|
+
| node:resize<Badge>2.0</Badge> | Resize handles | preData, data, model, deltaX, deltaY, index |
|
|
159
|
+
| node:properties-change<Badge>2.0</Badge> | `properties` mutation | id, keys, preProperties, properties |
|
|
160
|
+
|
|
161
|
+
Payload reference:
|
|
162
|
+
|
|
163
|
+
| Field | Type | Meaning |
|
|
164
|
+
| :------- | :--------- | :------------------------------------------------------------------------------------------------------------- |
|
|
165
|
+
| data | Object | Node data fields ([data properties](../runtime-model/nodeModel.en.md#data-properties)). |
|
|
166
|
+
| e | MouseEvent | Native mouse event. |
|
|
167
|
+
| position | Object | Canvas coordinates (same shape as [`getPointByClient`](./canvas.en.md#getpointbyclient)). |
|
|
168
|
+
|
|
169
|
+
## Edge events
|
|
170
|
+
|
|
171
|
+
| Event | Description | Payload highlights |
|
|
172
|
+
| :--------------------- | :---------------- | :---------------- |
|
|
173
|
+
| element:click | Element click | data, e, position |
|
|
174
|
+
| edge:click | Edge click | data, e, position |
|
|
175
|
+
| edge:dbclick | Edge double click | data, e |
|
|
176
|
+
| edge:mouseenter | Pointer enters edge | data, e |
|
|
177
|
+
| edge:mouseleave | Pointer leaves edge | data, e |
|
|
178
|
+
| edge:add | Edge created | data |
|
|
179
|
+
| edge:delete | Edge removed | data |
|
|
180
|
+
| edge:contextmenu | Context menu on edge | data, e, position |
|
|
181
|
+
| edge:adjust | Polyline/endpoint adjusted | data |
|
|
182
|
+
| edge:exchange-node | Edge endpoints swapped | data |
|
|
183
|
+
| connection:not-allowed | Validation rejected a link | data, msg |
|
|
184
|
+
|
|
185
|
+
| Field | Type | Meaning |
|
|
186
|
+
| :------- | :--------- | :------------------------------------------------------------------------------------------------------------- |
|
|
187
|
+
| data | Object | Edge data ([data properties](../runtime-model/edgeModel.en.md#data-properties)). |
|
|
188
|
+
| e | MouseEvent | Native mouse event. |
|
|
189
|
+
| position | Object | Canvas coordinates ([`getPointByClient`](./canvas.en.md#getpointbyclient)). |
|
|
190
|
+
| msg | string | Validation message when connection fails. |
|
|
191
|
+
|
|
192
|
+
## Anchor events
|
|
193
|
+
|
|
194
|
+
| Event | Description | Payload |
|
|
195
|
+
| :--------------- | :------------------------------------------------------------------------------------------------------ | :---------------------------- |
|
|
196
|
+
| anchor:dragstart | Manual edge creation started | data, e, nodeModel |
|
|
197
|
+
| anchor:drop | Edge successfully created from anchor drag | data, e, nodeModel, edgeModel |
|
|
198
|
+
| anchor:drag | Anchor drag move | data, e, nodeModel |
|
|
199
|
+
| anchor:dragend | Anchor gesture finished (success or cancel) | data, e, nodeModel |
|
|
200
|
+
|
|
201
|
+
| Field | Type | Meaning |
|
|
202
|
+
| :-------- | :--------- | :----------------- |
|
|
203
|
+
| data | Object | Anchor payload. |
|
|
204
|
+
| e | MouseEvent | Native mouse event. |
|
|
205
|
+
| nodeModel | Object | Owner node model. |
|
|
206
|
+
|
|
207
|
+
## Canvas events
|
|
208
|
+
|
|
209
|
+
| Event | Description | Payload |
|
|
210
|
+
| :---------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- |
|
|
211
|
+
| blank:mousedown | Canvas mouse down | e |
|
|
212
|
+
| blank:mousemove | Canvas mouse move | e |
|
|
213
|
+
| blank:mouseup | Canvas mouse up | e |
|
|
214
|
+
| blank:click | Canvas click | e |
|
|
215
|
+
| blank:contextmenu | Canvas context menu | e, position |
|
|
216
|
+
| blank:dragstart | Canvas drag start | e |
|
|
217
|
+
| blank:drag | Canvas dragging | e |
|
|
218
|
+
| blank:drop | Canvas drag end | e |
|
|
219
|
+
| text:update | Label text updated | data |
|
|
220
|
+
| graph:transform | Pan/zoom changed | data |
|
|
221
|
+
| graph:rendered | After `lf.render` completes (`v1.1.0`) | graphData |
|
|
222
|
+
| graph:updated | Any graph refresh (`v2.0.0`) | - |
|
|
223
|
+
|
|
224
|
+
| Field | Type | Meaning |
|
|
225
|
+
| :------- | :--------- | :------------------------------------------------------------------------------------------------------------- |
|
|
226
|
+
| e | MouseEvent | Native mouse event. |
|
|
227
|
+
| position | Object | Canvas coordinates ([`getPointByClient`](./canvas.en.md#getpointbyclient)). |
|
|
228
|
+
|
|
229
|
+
## History events
|
|
230
|
+
|
|
231
|
+
The history plugin emits when undo/redo stacks change.
|
|
232
|
+
|
|
233
|
+
| Event | Description | Payload |
|
|
234
|
+
| :------------- | :------- | :------- |
|
|
235
|
+
| history:change | Stack snapshot updated | data |
|
|
236
|
+
|
|
237
|
+
| Field | Type | Meaning |
|
|
238
|
+
| :------- | :------ | :------------------ |
|
|
239
|
+
| undos | Array | Undo snapshots. |
|
|
240
|
+
| redos | Array | Redo snapshots. |
|
|
241
|
+
| undoAble | boolean | Undo available. |
|
|
242
|
+
| redoAble | boolean | Redo available. |
|
|
243
|
+
|
|
244
|
+
## Selection events
|
|
245
|
+
|
|
246
|
+
Emitted when marquee / multi-select plugins manipulate regions.
|
|
247
|
+
|
|
248
|
+
| Event | Description | Payload |
|
|
249
|
+
| :-------------------- | :------------- | :------------- |
|
|
250
|
+
| selection:selected | Box selection finished | Selected elements |
|
|
251
|
+
| selection:mousedown | Selection mouse down | e |
|
|
252
|
+
| selection:dragstart | Selection drag start | e |
|
|
253
|
+
| selection:drag | Selection dragging | e |
|
|
254
|
+
| selection:drop | Selection drag end | e |
|
|
255
|
+
| selection:mousemove | Selection pointer move | e, position |
|
|
256
|
+
| selection:mouseup | Selection mouse up | e |
|
|
257
|
+
| selection:contextmenu | Selection context menu | e |
|
|
258
|
+
|
|
259
|
+
## Text events
|
|
260
|
+
|
|
261
|
+
Inline text editing gestures.
|
|
262
|
+
|
|
263
|
+
| Event | Description | Payload |
|
|
264
|
+
| :------------- | :------------------- | :---------------------- |
|
|
265
|
+
| text:mousedown | Mouse down on text | e, data |
|
|
266
|
+
| text:dragstart | Start dragging label | e, data |
|
|
267
|
+
| text:drag | Dragging label | e, data |
|
|
268
|
+
| text:drop | Drop label | e, data |
|
|
269
|
+
| text:click | Click text | e |
|
|
270
|
+
| text:dbclick | Double click text | e |
|
|
271
|
+
| text:blur | Editor blurred | e |
|
|
272
|
+
| text:mousemove | Move inside editor | e, data, deltaX, deltaY |
|
|
273
|
+
| text:mouseup | Mouse up inside editor | e, data |
|
|
274
|
+
| text:update | Content updated | data |
|
|
275
|
+
|
|
276
|
+
## Plugin-specific events
|
|
277
|
+
|
|
278
|
+
### DndPanel
|
|
279
|
+
|
|
280
|
+
| Event | Description | Payload |
|
|
281
|
+
| :-------------------- | :--------------- | :------- |
|
|
282
|
+
| dnd:panel-dbclick | Palette double click | e, data |
|
|
283
|
+
| dnd:panel-click | Palette click | e, data |
|
|
284
|
+
| dnd:panel-contextmenu | Palette context menu | e, data |
|
|
285
|
+
|
|
286
|
+
### MiniMap
|
|
287
|
+
|
|
288
|
+
| Event | Description | Payload |
|
|
289
|
+
| :------------ | :--------------- | :------- |
|
|
290
|
+
| miniMap:close | Mini map hidden | - |
|
|
291
|
+
|
|
292
|
+
### SelectionSelect
|
|
293
|
+
|
|
294
|
+
| Event | Description | Payload |
|
|
295
|
+
| :---------------------- | :------------------------------------- | :------------------------------------------------------------------- |
|
|
296
|
+
| selection:selected-area | Marquee bounds | topLeft, bottomRight |
|
|
297
|
+
| selection:drop | Mouse up with hits | e |
|
|
298
|
+
| selection:selected | Selection committed | elements, topLeft, bottomRight |
|
|
299
|
+
|
|
300
|
+
### DynamicGroup / Group
|
|
301
|
+
|
|
302
|
+
| Event | Description | Payload |
|
|
303
|
+
| :-------------------------------------------- | :-------------------------------- | :-------------------------------------------- |
|
|
304
|
+
| group:add-node | Child added | data, childId |
|
|
305
|
+
| group:remove-node | Child removed | data, childId |
|
|
306
|
+
| group:not-allowed | Join rejected | group, node |
|
|
307
|
+
| dynamicGroup:collapse<Badge>2.1.0</Badge> | Collapse toggled | collapse, nodeModel |
|
|
308
|
+
|
|
309
|
+
### Highlight
|
|
310
|
+
|
|
311
|
+
| Event | Description | Payload |
|
|
312
|
+
| :------------------- | :-------------------------------- | :------------------- |
|
|
313
|
+
| highlight:single | Single-element highlight | data |
|
|
314
|
+
| highlight:neighbours | Neighbour highlight | data, relateElements |
|
|
315
|
+
| highlight:path | Path highlight | data, relateElements |
|
|
316
|
+
|
|
317
|
+
### Label
|
|
318
|
+
|
|
319
|
+
| Event | Description | Payload |
|
|
320
|
+
| :-------------- | :------------------- | :---------------------- |
|
|
321
|
+
| label:mousedown | Mouse down | e, data |
|
|
322
|
+
| label:dragstart | Drag start | e, data |
|
|
323
|
+
| label:drag | Dragging | e, data |
|
|
324
|
+
| label:drop | Drop | e, data |
|
|
325
|
+
| label:mousemove | Move inside label | e, data, deltaX, deltaY |
|
|
326
|
+
| label:mouseup | Mouse up | e, data |
|