@logicflow/core 2.0.0-beta.4 → 2.0.0-beta.6
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/.turbo/turbo-build$colon$dev.log +2 -2
- package/.turbo/turbo-build.log +9 -15
- package/__tests__/bugs/1545-spec.test.ts +19 -15
- package/__tests__/util/edge.test.ts +57 -57
- package/dist/index.min.js +4 -4
- package/es/LogicFlow.d.ts +32 -6
- package/es/LogicFlow.js +15 -12
- package/es/LogicFlow.js.map +1 -1
- package/es/algorithm/edge.js.map +1 -1
- package/es/algorithm/index.d.ts +2 -0
- package/es/algorithm/index.js +2 -0
- package/es/algorithm/index.js.map +1 -1
- package/es/algorithm/outline.d.ts +1 -1
- package/es/common/drag.d.ts +2 -2
- package/es/common/drag.js.map +1 -1
- package/es/constant/index.d.ts +37 -1
- package/es/constant/index.js +40 -1
- package/es/constant/index.js.map +1 -1
- package/es/event/eventArgs.d.ts +88 -25
- package/es/index.d.ts +4 -0
- package/es/index.js +4 -0
- package/es/index.js.map +1 -1
- package/es/keyboard/shortcut.d.ts +4 -0
- package/es/keyboard/shortcut.js +9 -8
- package/es/keyboard/shortcut.js.map +1 -1
- package/es/model/BaseModel.d.ts +12 -16
- package/es/model/EditConfigModel.d.ts +97 -36
- package/es/model/EditConfigModel.js +166 -79
- package/es/model/EditConfigModel.js.map +1 -1
- package/es/model/GraphModel.d.ts +12 -1
- package/es/model/GraphModel.js +40 -9
- package/es/model/GraphModel.js.map +1 -1
- package/es/model/TransformModel.js +1 -1
- package/es/model/TransformModel.js.map +1 -1
- package/es/model/edge/BaseEdgeModel.d.ts +7 -1
- package/es/model/edge/BaseEdgeModel.js +33 -17
- package/es/model/edge/BaseEdgeModel.js.map +1 -1
- package/es/model/edge/BezierEdgeModel.d.ts +1 -1
- package/es/model/edge/BezierEdgeModel.js +5 -2
- package/es/model/edge/BezierEdgeModel.js.map +1 -1
- package/es/model/edge/PolylineEdgeModel.d.ts +3 -3
- package/es/model/edge/PolylineEdgeModel.js +20 -14
- package/es/model/edge/PolylineEdgeModel.js.map +1 -1
- package/es/model/node/BaseNodeModel.d.ts +7 -1
- package/es/model/node/BaseNodeModel.js +22 -11
- package/es/model/node/BaseNodeModel.js.map +1 -1
- package/es/model/node/CircleNodeModel.js.map +1 -1
- package/es/model/node/DiamondNodeModel.js.map +1 -1
- package/es/model/node/EllipseNodeModel.js.map +1 -1
- package/es/options.d.ts +4 -1
- package/es/options.js.map +1 -1
- package/es/tool/MultipleSelectTool.d.ts +1 -1
- package/es/tool/MultipleSelectTool.js +5 -5
- package/es/tool/MultipleSelectTool.js.map +1 -1
- package/es/tool/TextEditTool.d.ts +3 -3
- package/es/tool/TextEditTool.js +2 -2
- package/es/tool/TextEditTool.js.map +1 -1
- package/es/tool/index.d.ts +24 -2
- package/es/tool/index.js +82 -2
- package/es/tool/index.js.map +1 -1
- package/es/util/drag.d.ts +5 -5
- package/es/util/drag.js +3 -1
- package/es/util/drag.js.map +1 -1
- package/es/util/edge.d.ts +2 -1
- package/es/util/edge.js +9 -12
- package/es/util/edge.js.map +1 -1
- package/es/util/node.d.ts +2 -5
- package/es/util/node.js +1 -0
- package/es/util/node.js.map +1 -1
- package/es/view/Anchor.d.ts +1 -3
- package/es/view/Anchor.js +3 -0
- package/es/view/Anchor.js.map +1 -1
- package/es/view/Control.d.ts +1 -1
- package/es/view/Control.js +7 -7
- package/es/view/Control.js.map +1 -1
- package/es/view/Graph.d.ts +1 -1
- package/es/view/Rotate.js +2 -1
- package/es/view/Rotate.js.map +1 -1
- package/es/view/behavior/index.d.ts +2 -0
- package/es/view/behavior/index.js +3 -0
- package/es/view/behavior/index.js.map +1 -0
- package/es/view/behavior/snapline.d.ts +3 -0
- package/es/{tool → view/behavior}/snapline.js +0 -1
- package/es/view/behavior/snapline.js.map +1 -0
- package/es/view/edge/AdjustPoint.js +9 -20
- package/es/view/edge/AdjustPoint.js.map +1 -1
- package/es/view/edge/BaseEdge.js +25 -17
- package/es/view/edge/BaseEdge.js.map +1 -1
- package/es/view/node/BaseNode.js +14 -9
- package/es/view/node/BaseNode.js.map +1 -1
- package/es/view/node/HtmlNode.js +2 -2
- package/es/view/node/HtmlNode.js.map +1 -1
- package/es/view/overlay/CanvasOverlay.js +1 -0
- package/es/view/overlay/CanvasOverlay.js.map +1 -1
- package/es/view/overlay/ToolOverlay.d.ts +1 -1
- package/es/view/overlay/ToolOverlay.js +1 -1
- package/es/view/overlay/ToolOverlay.js.map +1 -1
- package/es/view/text/BaseText.js +7 -3
- package/es/view/text/BaseText.js.map +1 -1
- package/lib/LogicFlow.d.ts +32 -6
- package/lib/LogicFlow.js +17 -14
- package/lib/LogicFlow.js.map +1 -1
- package/lib/algorithm/edge.js.map +1 -1
- package/lib/algorithm/index.d.ts +2 -0
- package/lib/algorithm/index.js +17 -1
- package/lib/algorithm/index.js.map +1 -1
- package/lib/algorithm/outline.d.ts +1 -1
- package/lib/common/drag.d.ts +2 -2
- package/lib/common/drag.js.map +1 -1
- package/lib/constant/index.d.ts +37 -1
- package/lib/constant/index.js +41 -2
- package/lib/constant/index.js.map +1 -1
- package/lib/event/eventArgs.d.ts +88 -25
- package/lib/index.d.ts +4 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/keyboard/shortcut.d.ts +4 -0
- package/lib/keyboard/shortcut.js +12 -9
- package/lib/keyboard/shortcut.js.map +1 -1
- package/lib/model/BaseModel.d.ts +12 -16
- package/lib/model/EditConfigModel.d.ts +97 -36
- package/lib/model/EditConfigModel.js +165 -78
- package/lib/model/EditConfigModel.js.map +1 -1
- package/lib/model/GraphModel.d.ts +12 -1
- package/lib/model/GraphModel.js +38 -7
- package/lib/model/GraphModel.js.map +1 -1
- package/lib/model/TransformModel.js +1 -1
- package/lib/model/TransformModel.js.map +1 -1
- package/lib/model/edge/BaseEdgeModel.d.ts +7 -1
- package/lib/model/edge/BaseEdgeModel.js +31 -15
- package/lib/model/edge/BaseEdgeModel.js.map +1 -1
- package/lib/model/edge/BezierEdgeModel.d.ts +1 -1
- package/lib/model/edge/BezierEdgeModel.js +4 -1
- package/lib/model/edge/BezierEdgeModel.js.map +1 -1
- package/lib/model/edge/PolylineEdgeModel.d.ts +3 -3
- package/lib/model/edge/PolylineEdgeModel.js +19 -13
- package/lib/model/edge/PolylineEdgeModel.js.map +1 -1
- package/lib/model/node/BaseNodeModel.d.ts +7 -1
- package/lib/model/node/BaseNodeModel.js +20 -9
- package/lib/model/node/BaseNodeModel.js.map +1 -1
- package/lib/model/node/CircleNodeModel.js.map +1 -1
- package/lib/model/node/DiamondNodeModel.js.map +1 -1
- package/lib/model/node/EllipseNodeModel.js.map +1 -1
- package/lib/options.d.ts +4 -1
- package/lib/options.js.map +1 -1
- package/lib/tool/MultipleSelectTool.d.ts +1 -1
- package/lib/tool/MultipleSelectTool.js +5 -5
- package/lib/tool/MultipleSelectTool.js.map +1 -1
- package/lib/tool/TextEditTool.d.ts +3 -3
- package/lib/tool/TextEditTool.js +4 -4
- package/lib/tool/TextEditTool.js.map +1 -1
- package/lib/tool/index.d.ts +24 -2
- package/lib/tool/index.js +85 -15
- package/lib/tool/index.js.map +1 -1
- package/lib/util/drag.d.ts +5 -5
- package/lib/util/drag.js +3 -1
- package/lib/util/drag.js.map +1 -1
- package/lib/util/edge.d.ts +2 -1
- package/lib/util/edge.js +11 -14
- package/lib/util/edge.js.map +1 -1
- package/lib/util/node.d.ts +2 -5
- package/lib/util/node.js +1 -0
- package/lib/util/node.js.map +1 -1
- package/lib/view/Anchor.d.ts +1 -3
- package/lib/view/Anchor.js +3 -0
- package/lib/view/Anchor.js.map +1 -1
- package/lib/view/Control.d.ts +1 -1
- package/lib/view/Control.js +7 -7
- package/lib/view/Control.js.map +1 -1
- package/lib/view/Graph.d.ts +1 -1
- package/lib/view/Rotate.js +2 -1
- package/lib/view/Rotate.js.map +1 -1
- package/lib/view/behavior/index.d.ts +2 -0
- package/lib/view/behavior/index.js +19 -0
- package/lib/view/behavior/index.js.map +1 -0
- package/lib/view/behavior/snapline.d.ts +3 -0
- package/lib/{tool → view/behavior}/snapline.js +0 -1
- package/lib/view/behavior/snapline.js.map +1 -0
- package/lib/view/edge/AdjustPoint.js +9 -20
- package/lib/view/edge/AdjustPoint.js.map +1 -1
- package/lib/view/edge/BaseEdge.js +24 -16
- package/lib/view/edge/BaseEdge.js.map +1 -1
- package/lib/view/node/BaseNode.js +13 -8
- package/lib/view/node/BaseNode.js.map +1 -1
- package/lib/view/node/HtmlNode.js +2 -2
- package/lib/view/node/HtmlNode.js.map +1 -1
- package/lib/view/overlay/CanvasOverlay.js +1 -0
- package/lib/view/overlay/CanvasOverlay.js.map +1 -1
- package/lib/view/overlay/ToolOverlay.d.ts +1 -1
- package/lib/view/overlay/ToolOverlay.js +1 -1
- package/lib/view/overlay/ToolOverlay.js.map +1 -1
- package/lib/view/text/BaseText.js +6 -2
- package/lib/view/text/BaseText.js.map +1 -1
- package/package.json +1 -1
- package/src/LogicFlow.tsx +52 -14
- package/src/algorithm/edge.ts +1 -0
- package/src/algorithm/index.ts +2 -0
- package/src/algorithm/outline.ts +2 -2
- package/src/common/drag.ts +16 -2
- package/src/constant/index.ts +42 -1
- package/src/event/eventArgs.ts +155 -34
- package/src/index.ts +4 -0
- package/src/keyboard/shortcut.ts +12 -8
- package/src/model/BaseModel.ts +15 -17
- package/src/model/EditConfigModel.ts +206 -94
- package/src/model/GraphModel.ts +43 -8
- package/src/model/TransformModel.ts +1 -1
- package/src/model/edge/BaseEdgeModel.ts +27 -18
- package/src/model/edge/BezierEdgeModel.ts +5 -6
- package/src/model/edge/PolylineEdgeModel.ts +22 -18
- package/src/model/node/BaseNodeModel.ts +19 -13
- package/src/model/node/CircleNodeModel.ts +0 -1
- package/src/model/node/DiamondNodeModel.ts +0 -1
- package/src/model/node/EllipseNodeModel.ts +0 -1
- package/src/options.ts +6 -1
- package/src/tool/MultipleSelectTool.tsx +6 -6
- package/src/tool/TextEditTool.tsx +3 -3
- package/src/tool/index.ts +96 -2
- package/src/util/drag.ts +22 -6
- package/src/util/edge.ts +14 -13
- package/src/util/node.ts +3 -5
- package/src/view/Anchor.tsx +3 -1
- package/src/view/Control.tsx +16 -7
- package/src/view/Graph.tsx +1 -1
- package/src/view/Rotate.tsx +2 -1
- package/src/view/behavior/index.ts +2 -0
- package/src/{tool → view/behavior}/snapline.ts +3 -4
- package/src/view/edge/AdjustPoint.tsx +32 -46
- package/src/view/edge/BaseEdge.tsx +58 -38
- package/src/view/node/BaseNode.tsx +24 -10
- package/src/view/node/HtmlNode.tsx +2 -2
- package/src/view/overlay/CanvasOverlay.tsx +1 -0
- package/src/view/overlay/ToolOverlay.tsx +1 -1
- package/src/view/text/BaseText.tsx +11 -3
- package/tsconfig.json +1 -1
- package/es/tool/snapline.d.ts +0 -3
- package/es/tool/snapline.js.map +0 -1
- package/es/tool/tool.d.ts +0 -22
- package/es/tool/tool.js +0 -43
- package/es/tool/tool.js.map +0 -1
- package/lib/tool/snapline.d.ts +0 -3
- package/lib/tool/snapline.js.map +0 -1
- package/lib/tool/tool.d.ts +0 -22
- package/lib/tool/tool.js +0 -49
- package/lib/tool/tool.js.map +0 -1
- package/src/tool/tool.ts +0 -66
|
@@ -4,12 +4,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { assign, pick } from 'lodash-es';
|
|
8
|
-
import { observable, action } from '
|
|
9
|
-
|
|
7
|
+
import { assign, isBoolean, pick } from 'lodash-es';
|
|
8
|
+
import { observable, action } from 'mobx';
|
|
9
|
+
import { TextMode } from '../constant';
|
|
10
|
+
var silentModeConfig = {
|
|
11
|
+
// SilentMode 下允许用户操作画布
|
|
10
12
|
stopZoomGraph: false,
|
|
11
13
|
stopScrollGraph: false,
|
|
12
14
|
stopMoveGraph: false,
|
|
15
|
+
// 节点 & 边相关配置
|
|
13
16
|
adjustEdge: false,
|
|
14
17
|
adjustEdgeStartAndEnd: false,
|
|
15
18
|
adjustNodePosition: false,
|
|
@@ -17,99 +20,123 @@ var SilentConfig = {
|
|
|
17
20
|
allowRotate: false,
|
|
18
21
|
allowResize: false,
|
|
19
22
|
nodeSelectedOutline: true,
|
|
23
|
+
// 文本相关配置
|
|
24
|
+
textEdit: false,
|
|
20
25
|
nodeTextEdit: false,
|
|
21
26
|
edgeTextEdit: false,
|
|
27
|
+
textDraggable: false,
|
|
22
28
|
nodeTextDraggable: false,
|
|
23
29
|
edgeTextDraggable: false,
|
|
24
30
|
};
|
|
25
|
-
var
|
|
26
|
-
'isSilentMode',
|
|
27
|
-
'stopZoomGraph',
|
|
28
|
-
'stopScrollGraph',
|
|
29
|
-
'stopMoveGraph',
|
|
30
|
-
'adjustEdge',
|
|
31
|
-
'adjustEdgeMiddle',
|
|
32
|
-
'adjustEdgeStartAndEnd',
|
|
33
|
-
'
|
|
34
|
-
'
|
|
35
|
-
'
|
|
36
|
-
'
|
|
37
|
-
'
|
|
38
|
-
'
|
|
39
|
-
'
|
|
40
|
-
'
|
|
41
|
-
'
|
|
42
|
-
'
|
|
43
|
-
'
|
|
44
|
-
'
|
|
45
|
-
'
|
|
31
|
+
var allKeys = [
|
|
32
|
+
'isSilentMode', // 是否为静默模式
|
|
33
|
+
'stopZoomGraph', // 禁止缩放画布
|
|
34
|
+
'stopScrollGraph', // 禁止鼠标滚动移动画布
|
|
35
|
+
'stopMoveGraph', // 禁止拖动画布
|
|
36
|
+
'adjustEdge', // 允许调整边
|
|
37
|
+
'adjustEdgeMiddle', // 允许调整边中点
|
|
38
|
+
'adjustEdgeStartAndEnd', // 允许调整边起点和终点
|
|
39
|
+
'adjustEdgeStart', // 允许调整边起点
|
|
40
|
+
'adjustEdgeEnd', // 允许调整边终点
|
|
41
|
+
'adjustNodePosition', // 允许拖动节点
|
|
42
|
+
'hideAnchors', // 隐藏节点所有锚点
|
|
43
|
+
'allowRotate', // 是否允许节点旋转
|
|
44
|
+
'allowResize', // 是否允许节点缩放
|
|
45
|
+
'autoExpand', // 是否自动展开
|
|
46
|
+
'hoverOutline', // 显示节点悬浮时的外框
|
|
47
|
+
'nodeSelectedOutline', // 节点被选中时是否显示 outline
|
|
48
|
+
'edgeSelectedOutline', // 边被选中时是否显示 outline
|
|
49
|
+
'textEdit', // 是否允许文本可编辑(全局)
|
|
50
|
+
'nodeTextEdit', // 允许节点文本可以编辑
|
|
51
|
+
'edgeTextEdit', // 允许边文本可以编辑
|
|
52
|
+
'textDraggable', // 是否允许文本可拖拽(全局)
|
|
53
|
+
'nodeTextDraggable', // 允许节点文本可以拖拽
|
|
54
|
+
'edgeTextDraggable', // 允许边文本可以拖拽
|
|
55
|
+
'multipleSelectKey', // 多选按键
|
|
56
|
+
// 2.0.0 新增配置
|
|
57
|
+
'textMode', // 文本模式(全局)
|
|
58
|
+
'nodeTextMode', // 节点文本模式
|
|
59
|
+
'edgeTextMode', // 边文本模式
|
|
60
|
+
'nodeTextMultiple', // 是否支持多个节点文本
|
|
61
|
+
'edgeTextMultiple', // 是否支持多个边文本
|
|
62
|
+
'nodeTextVertical', // 节点文本是否纵向显示
|
|
63
|
+
'edgeTextVertical', // 边文本是否纵向显示
|
|
46
64
|
];
|
|
47
65
|
/**
|
|
48
66
|
* 页面编辑配置
|
|
49
67
|
*/
|
|
50
68
|
var EditConfigModel = /** @class */ (function () {
|
|
51
69
|
function EditConfigModel(config) {
|
|
70
|
+
/*********************************************************
|
|
71
|
+
* 画布相关配置
|
|
72
|
+
********************************************************/
|
|
52
73
|
this.isSilentMode = false;
|
|
53
74
|
this.stopZoomGraph = false;
|
|
54
|
-
this.stopScrollGraph = false;
|
|
55
75
|
this.stopMoveGraph = false;
|
|
56
|
-
this.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
76
|
+
this.stopScrollGraph = false;
|
|
77
|
+
/*********************************************************
|
|
78
|
+
* 文本相关配置(全局)
|
|
79
|
+
********************************************************/
|
|
80
|
+
this.textMode = TextMode.TEXT; // 全局的 textMode 设置
|
|
81
|
+
this.textEdit = true;
|
|
82
|
+
this.textDraggable = false;
|
|
83
|
+
// 节点
|
|
84
|
+
this.nodeTextEdit = true;
|
|
85
|
+
this.nodeTextDraggable = true;
|
|
86
|
+
this.nodeTextMultiple = false; // 是否支持多个节点文本
|
|
87
|
+
this.nodeTextVertical = false; // 节点文本朝向是否是纵向
|
|
88
|
+
this.nodeTextMode = TextMode.TEXT; // 节点文本模式
|
|
89
|
+
// 边
|
|
90
|
+
this.edgeTextMode = TextMode.TEXT; // 边文本模式
|
|
91
|
+
this.edgeTextEdit = true;
|
|
92
|
+
this.edgeTextDraggable = false;
|
|
93
|
+
this.edgeTextMultiple = false; // 是否支持多个边文本
|
|
94
|
+
this.edgeTextVertical = false; // 边文本朝向是否是纵向
|
|
95
|
+
/*********************************************************
|
|
96
|
+
* 节点相关配置
|
|
97
|
+
********************************************************/
|
|
60
98
|
this.hideAnchors = false;
|
|
61
99
|
this.allowRotate = false;
|
|
62
100
|
this.allowResize = false;
|
|
63
101
|
this.hoverOutline = true;
|
|
64
102
|
this.nodeSelectedOutline = true;
|
|
65
|
-
this.
|
|
66
|
-
this.nodeTextEdit = true;
|
|
67
|
-
this.edgeTextEdit = true;
|
|
68
|
-
this.nodeTextDraggable = false;
|
|
69
|
-
this.edgeTextDraggable = false;
|
|
103
|
+
this.adjustNodePosition = true;
|
|
70
104
|
this.autoExpand = false;
|
|
105
|
+
/*********************************************************
|
|
106
|
+
* 边相关配置
|
|
107
|
+
********************************************************/
|
|
108
|
+
this.adjustEdge = true;
|
|
109
|
+
this.adjustEdgeMiddle = false;
|
|
110
|
+
this.adjustEdgeStartAndEnd = false;
|
|
111
|
+
this.adjustEdgeStart = false;
|
|
112
|
+
this.adjustEdgeEnd = false;
|
|
113
|
+
this.edgeSelectedOutline = true;
|
|
114
|
+
/*********************************************************
|
|
115
|
+
* 其他
|
|
116
|
+
********************************************************/
|
|
71
117
|
this.multipleSelectKey = '';
|
|
72
|
-
this.
|
|
73
|
-
assign(this, this.getConfigDetail(config));
|
|
118
|
+
assign(this, this.computeConfig(config));
|
|
74
119
|
}
|
|
75
120
|
EditConfigModel.prototype.updateEditConfig = function (config) {
|
|
76
|
-
var newConfig = this.
|
|
121
|
+
var newConfig = this.computeConfig(config);
|
|
77
122
|
assign(this, newConfig);
|
|
78
123
|
};
|
|
79
|
-
|
|
80
|
-
|
|
124
|
+
// TODO: 确认一下这个函数的逻辑,是否会有误合并的问题
|
|
125
|
+
EditConfigModel.prototype.computeConfig = function (config) {
|
|
126
|
+
var isSilentMode = config.isSilentMode, textDraggable = config.textDraggable, textMode = config.textMode, textEdit = config.textEdit, adjustEdgeStartAndEnd = config.adjustEdgeStartAndEnd;
|
|
81
127
|
var conf = {};
|
|
82
|
-
// false表示从静默模式恢复
|
|
128
|
+
// false 表示从静默模式恢复
|
|
83
129
|
if (isSilentMode === false) {
|
|
84
|
-
assign(conf, this.
|
|
130
|
+
assign(conf, this.stagedConfig);
|
|
85
131
|
}
|
|
86
|
-
// 如果不传,默认undefined表示非静默模式
|
|
132
|
+
// 如果不传,默认 undefined 表示非静默模式
|
|
87
133
|
if (isSilentMode === true && isSilentMode !== this.isSilentMode) {
|
|
88
134
|
// https://github.com/didi/LogicFlow/issues/1180
|
|
89
|
-
// 如果重复调用isSilentMode=true多次,会导致this.
|
|
90
|
-
// 因此需要阻止重复赋值为true,使用config.isSilentMode !== this.isSilentMode
|
|
91
|
-
var silentConfig = pick(
|
|
92
|
-
//
|
|
93
|
-
this.
|
|
94
|
-
stopZoomGraph: this.stopZoomGraph,
|
|
95
|
-
stopScrollGraph: this.stopScrollGraph,
|
|
96
|
-
stopMoveGraph: this.stopMoveGraph,
|
|
97
|
-
adjustEdge: this.adjustEdge,
|
|
98
|
-
adjustEdgeMiddle: this.adjustEdgeMiddle,
|
|
99
|
-
adjustEdgeStartAndEnd: this.adjustEdgeStartAndEnd,
|
|
100
|
-
adjustNodePosition: this.adjustNodePosition,
|
|
101
|
-
hideAnchors: this.hideAnchors,
|
|
102
|
-
allowRotate: this.allowRotate,
|
|
103
|
-
allowResize: this.allowResize,
|
|
104
|
-
hoverOutline: this.hoverOutline,
|
|
105
|
-
nodeSelectedOutline: this.nodeSelectedOutline,
|
|
106
|
-
edgeSelectedOutline: this.edgeSelectedOutline,
|
|
107
|
-
nodeTextEdit: this.nodeTextEdit,
|
|
108
|
-
edgeTextEdit: this.edgeTextEdit,
|
|
109
|
-
nodeTextDraggable: this.nodeTextDraggable,
|
|
110
|
-
edgeTextDraggable: this.edgeTextDraggable,
|
|
111
|
-
autoExpand: this.autoExpand,
|
|
112
|
-
};
|
|
135
|
+
// 如果重复调用 isSilentMode=true 多次,会导致 this.stagedConfig 状态保存错误:保存为修改之后的 Config
|
|
136
|
+
// 因此需要阻止重复赋值为 true,使用 config.isSilentMode !== this.isSilentMode
|
|
137
|
+
var silentConfig = pick(silentModeConfig, allKeys);
|
|
138
|
+
// 暂存修改之前的所有配置项
|
|
139
|
+
this.stagedConfig = pick(this, allKeys);
|
|
113
140
|
assign(conf, silentConfig);
|
|
114
141
|
}
|
|
115
142
|
// 如果不传,默认undefined表示允许文本编辑
|
|
@@ -119,11 +146,35 @@ var EditConfigModel = /** @class */ (function () {
|
|
|
119
146
|
edgeTextEdit: false,
|
|
120
147
|
});
|
|
121
148
|
}
|
|
122
|
-
|
|
149
|
+
if (textMode) {
|
|
150
|
+
assign(conf, {
|
|
151
|
+
nodeTextMode: textMode,
|
|
152
|
+
edgeTextMode: textMode,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
if (textDraggable === false) {
|
|
156
|
+
assign(conf, {
|
|
157
|
+
nodeTextDraggable: false,
|
|
158
|
+
edgeTextDraggable: false,
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
if (isBoolean(adjustEdgeStartAndEnd)) {
|
|
162
|
+
assign(conf, {
|
|
163
|
+
adjustEdgeStart: adjustEdgeStartAndEnd,
|
|
164
|
+
adjustEdgeEnd: adjustEdgeStartAndEnd,
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
var userConfig = pick(config, allKeys);
|
|
123
168
|
return assign(conf, userConfig);
|
|
124
169
|
};
|
|
170
|
+
EditConfigModel.prototype.updateTextMode = function (textMode) {
|
|
171
|
+
// 如果更新全局 textMode,同时更新节点和边的 textMode
|
|
172
|
+
this.textMode = textMode;
|
|
173
|
+
this.edgeTextMode = textMode;
|
|
174
|
+
this.nodeTextMode = textMode;
|
|
175
|
+
};
|
|
125
176
|
EditConfigModel.prototype.getConfig = function () {
|
|
126
|
-
return pick(this,
|
|
177
|
+
return pick(this, allKeys);
|
|
127
178
|
};
|
|
128
179
|
__decorate([
|
|
129
180
|
observable
|
|
@@ -131,24 +182,51 @@ var EditConfigModel = /** @class */ (function () {
|
|
|
131
182
|
__decorate([
|
|
132
183
|
observable
|
|
133
184
|
], EditConfigModel.prototype, "stopZoomGraph", void 0);
|
|
185
|
+
__decorate([
|
|
186
|
+
observable
|
|
187
|
+
], EditConfigModel.prototype, "stopMoveGraph", void 0);
|
|
134
188
|
__decorate([
|
|
135
189
|
observable
|
|
136
190
|
], EditConfigModel.prototype, "stopScrollGraph", void 0);
|
|
137
191
|
__decorate([
|
|
138
192
|
observable
|
|
139
|
-
], EditConfigModel.prototype, "
|
|
193
|
+
], EditConfigModel.prototype, "textMode", void 0);
|
|
140
194
|
__decorate([
|
|
141
195
|
observable
|
|
142
|
-
], EditConfigModel.prototype, "
|
|
196
|
+
], EditConfigModel.prototype, "textEdit", void 0);
|
|
143
197
|
__decorate([
|
|
144
198
|
observable
|
|
145
|
-
], EditConfigModel.prototype, "
|
|
199
|
+
], EditConfigModel.prototype, "textDraggable", void 0);
|
|
146
200
|
__decorate([
|
|
147
201
|
observable
|
|
148
|
-
], EditConfigModel.prototype, "
|
|
202
|
+
], EditConfigModel.prototype, "nodeTextEdit", void 0);
|
|
149
203
|
__decorate([
|
|
150
204
|
observable
|
|
151
|
-
], EditConfigModel.prototype, "
|
|
205
|
+
], EditConfigModel.prototype, "nodeTextDraggable", void 0);
|
|
206
|
+
__decorate([
|
|
207
|
+
observable
|
|
208
|
+
], EditConfigModel.prototype, "nodeTextMultiple", void 0);
|
|
209
|
+
__decorate([
|
|
210
|
+
observable
|
|
211
|
+
], EditConfigModel.prototype, "nodeTextVertical", void 0);
|
|
212
|
+
__decorate([
|
|
213
|
+
observable
|
|
214
|
+
], EditConfigModel.prototype, "nodeTextMode", void 0);
|
|
215
|
+
__decorate([
|
|
216
|
+
observable
|
|
217
|
+
], EditConfigModel.prototype, "edgeTextMode", void 0);
|
|
218
|
+
__decorate([
|
|
219
|
+
observable
|
|
220
|
+
], EditConfigModel.prototype, "edgeTextEdit", void 0);
|
|
221
|
+
__decorate([
|
|
222
|
+
observable
|
|
223
|
+
], EditConfigModel.prototype, "edgeTextDraggable", void 0);
|
|
224
|
+
__decorate([
|
|
225
|
+
observable
|
|
226
|
+
], EditConfigModel.prototype, "edgeTextMultiple", void 0);
|
|
227
|
+
__decorate([
|
|
228
|
+
observable
|
|
229
|
+
], EditConfigModel.prototype, "edgeTextVertical", void 0);
|
|
152
230
|
__decorate([
|
|
153
231
|
observable
|
|
154
232
|
], EditConfigModel.prototype, "hideAnchors", void 0);
|
|
@@ -166,25 +244,34 @@ var EditConfigModel = /** @class */ (function () {
|
|
|
166
244
|
], EditConfigModel.prototype, "nodeSelectedOutline", void 0);
|
|
167
245
|
__decorate([
|
|
168
246
|
observable
|
|
169
|
-
], EditConfigModel.prototype, "
|
|
247
|
+
], EditConfigModel.prototype, "adjustNodePosition", void 0);
|
|
170
248
|
__decorate([
|
|
171
249
|
observable
|
|
172
|
-
], EditConfigModel.prototype, "
|
|
250
|
+
], EditConfigModel.prototype, "autoExpand", void 0);
|
|
173
251
|
__decorate([
|
|
174
252
|
observable
|
|
175
|
-
], EditConfigModel.prototype, "
|
|
253
|
+
], EditConfigModel.prototype, "adjustEdge", void 0);
|
|
176
254
|
__decorate([
|
|
177
255
|
observable
|
|
178
|
-
], EditConfigModel.prototype, "
|
|
256
|
+
], EditConfigModel.prototype, "adjustEdgeMiddle", void 0);
|
|
179
257
|
__decorate([
|
|
180
258
|
observable
|
|
181
|
-
], EditConfigModel.prototype, "
|
|
259
|
+
], EditConfigModel.prototype, "adjustEdgeStartAndEnd", void 0);
|
|
182
260
|
__decorate([
|
|
183
261
|
observable
|
|
184
|
-
], EditConfigModel.prototype, "
|
|
262
|
+
], EditConfigModel.prototype, "adjustEdgeStart", void 0);
|
|
263
|
+
__decorate([
|
|
264
|
+
observable
|
|
265
|
+
], EditConfigModel.prototype, "adjustEdgeEnd", void 0);
|
|
266
|
+
__decorate([
|
|
267
|
+
observable
|
|
268
|
+
], EditConfigModel.prototype, "edgeSelectedOutline", void 0);
|
|
185
269
|
__decorate([
|
|
186
270
|
action
|
|
187
271
|
], EditConfigModel.prototype, "updateEditConfig", null);
|
|
272
|
+
__decorate([
|
|
273
|
+
action
|
|
274
|
+
], EditConfigModel.prototype, "updateTextMode", null);
|
|
188
275
|
return EditConfigModel;
|
|
189
276
|
}());
|
|
190
277
|
export { EditConfigModel };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditConfigModel.js","sourceRoot":"","sources":["../../src/model/EditConfigModel.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"EditConfigModel.js","sourceRoot":"","sources":["../../src/model/EditConfigModel.ts"],"names":[],"mappings":"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"}
|
package/es/model/GraphModel.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseEdgeModel, BaseNodeModel, EditConfigModel, Model, TransformModel } from '.';
|
|
2
|
-
import { ElementState, EventType, OverlapMode } from '../constant';
|
|
2
|
+
import { ElementState, EventType, OverlapMode, TextMode } from '../constant';
|
|
3
3
|
import LogicFlow from '../LogicFlow';
|
|
4
4
|
import { Options as LFOptions } from '../options';
|
|
5
5
|
import EventEmitter from '../event/eventEmitter';
|
|
@@ -162,6 +162,17 @@ export declare class GraphModel {
|
|
|
162
162
|
* @returns 修改后的节点id, 如果传入的oldId不存在,返回空字符串
|
|
163
163
|
*/
|
|
164
164
|
changeEdgeId<T extends string>(oldId: string, newId?: string): T | string;
|
|
165
|
+
/**
|
|
166
|
+
* 获取元素的文本模式
|
|
167
|
+
* @param model
|
|
168
|
+
*/
|
|
169
|
+
getTextModel(model: BaseNodeModel): TextMode | undefined;
|
|
170
|
+
/**
|
|
171
|
+
* 更新元素的文本模式
|
|
172
|
+
* @param mode
|
|
173
|
+
* @param model
|
|
174
|
+
*/
|
|
175
|
+
setTextMode(mode: TextMode, model?: BaseNodeModel | BaseEdgeModel): void;
|
|
165
176
|
/**
|
|
166
177
|
* 内部保留方法,请勿直接使用
|
|
167
178
|
*/
|
package/es/model/GraphModel.js
CHANGED
|
@@ -40,10 +40,10 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
40
40
|
}
|
|
41
41
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
42
42
|
};
|
|
43
|
-
import { find, forEach, map } from 'lodash-es';
|
|
43
|
+
import { find, forEach, isObject, map } from 'lodash-es';
|
|
44
44
|
import { action, computed, observable } from 'mobx';
|
|
45
45
|
import { EditConfigModel, TransformModel, } from '.';
|
|
46
|
-
import { DEFAULT_VISIBLE_SPACE, ELEMENT_MAX_Z_INDEX, ElementState, ElementType, EventType, ModelType, OverlapMode, } from '../constant';
|
|
46
|
+
import { DEFAULT_VISIBLE_SPACE, ELEMENT_MAX_Z_INDEX, ElementState, ElementType, EventType, ModelType, OverlapMode, TextMode, } from '../constant';
|
|
47
47
|
import { createEdgeGenerator, createUuid, formatData, getClosestPointOfPolyline, getMinIndex, getNodeAnchorPosition, getNodeBBox, getZIndex, isPointInArea, setupAnimation, setupTheme, snapToGrid, updateTheme, } from '../util';
|
|
48
48
|
import EventEmitter from '../event/eventEmitter';
|
|
49
49
|
var GraphModel = /** @class */ (function () {
|
|
@@ -551,6 +551,35 @@ var GraphModel = /** @class */ (function () {
|
|
|
551
551
|
});
|
|
552
552
|
return newId;
|
|
553
553
|
};
|
|
554
|
+
/**
|
|
555
|
+
* 获取元素的文本模式
|
|
556
|
+
* @param model
|
|
557
|
+
*/
|
|
558
|
+
GraphModel.prototype.getTextModel = function (model) {
|
|
559
|
+
var _a = this.editConfigModel, textMode = _a.textMode, nodeTextMode = _a.nodeTextMode, edgeTextMode = _a.edgeTextMode;
|
|
560
|
+
// textMode 的优先级:
|
|
561
|
+
// 元素自身 model.textMode > editConfigModel.node(edge)TextMode > editConfigModel.textMode
|
|
562
|
+
if (model.BaseType === ElementType.NODE) {
|
|
563
|
+
return model.textMode || nodeTextMode || textMode || TextMode.TEXT;
|
|
564
|
+
}
|
|
565
|
+
// 同上
|
|
566
|
+
if (model.BaseType === ElementType.EDGE) {
|
|
567
|
+
return model.textMode || edgeTextMode || textMode || TextMode.TEXT;
|
|
568
|
+
}
|
|
569
|
+
};
|
|
570
|
+
/**
|
|
571
|
+
* 更新元素的文本模式
|
|
572
|
+
* @param mode
|
|
573
|
+
* @param model
|
|
574
|
+
*/
|
|
575
|
+
GraphModel.prototype.setTextMode = function (mode, model) {
|
|
576
|
+
// 如果有传入 model,则直接更新 model 的 textMode
|
|
577
|
+
if (model) {
|
|
578
|
+
// model.updateTextMode(mode)
|
|
579
|
+
}
|
|
580
|
+
// 调用 editConfigModel 的方法更新 textMode
|
|
581
|
+
this.editConfigModel.updateEditConfig({ textMode: mode });
|
|
582
|
+
};
|
|
554
583
|
/**
|
|
555
584
|
* 内部保留方法,请勿直接使用
|
|
556
585
|
*/
|
|
@@ -667,7 +696,7 @@ var GraphModel = /** @class */ (function () {
|
|
|
667
696
|
if (nodeX && nodeY) {
|
|
668
697
|
node.x = snapToGrid(nodeX, this.gridSize);
|
|
669
698
|
node.y = snapToGrid(nodeY, this.gridSize);
|
|
670
|
-
if (
|
|
699
|
+
if (isObject(node.text)) {
|
|
671
700
|
// 原来的处理是:node.text.x -= getGridOffset(nodeX, this.gridSize)
|
|
672
701
|
// 由于snapToGrid()使用了Math.round()四舍五入的做法,因此无法判断需要执行
|
|
673
702
|
// node.text.x = node.text.x + getGridOffset()
|
|
@@ -691,7 +720,7 @@ var GraphModel = /** @class */ (function () {
|
|
|
691
720
|
data.x += 30;
|
|
692
721
|
data.y += 30;
|
|
693
722
|
data.id = '';
|
|
694
|
-
if (data.text) {
|
|
723
|
+
if (isObject(data.text)) {
|
|
695
724
|
data.text.x += 30;
|
|
696
725
|
data.text.y += 30;
|
|
697
726
|
}
|
|
@@ -810,17 +839,16 @@ var GraphModel = /** @class */ (function () {
|
|
|
810
839
|
// 如果是自定义边文本位置,则移动节点的时候重新计算其位置
|
|
811
840
|
if (edgeModel.customTextPosition) {
|
|
812
841
|
edgeModel.resetTextPosition();
|
|
842
|
+
return;
|
|
813
843
|
}
|
|
814
|
-
|
|
844
|
+
if (edgeModel.modelType === ModelType.POLYLINE_EDGE &&
|
|
815
845
|
((_a = edgeModel.text) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
816
846
|
var textPosition = edgeModel.text;
|
|
817
847
|
var newPoint = getClosestPointOfPolyline(textPosition, edgeModel.points);
|
|
818
848
|
edgeModel.moveText(newPoint.x - textPosition.x, newPoint.y - textPosition.y);
|
|
819
849
|
}
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
edgeModel.moveText(x1 - x, y1 - y);
|
|
823
|
-
}
|
|
850
|
+
var _b = edgeModel.textPosition, x1 = _b.x, y1 = _b.y;
|
|
851
|
+
edgeModel.moveText(x1 - x, y1 - y);
|
|
824
852
|
};
|
|
825
853
|
/**
|
|
826
854
|
* 删除两节点之间的边
|
|
@@ -1362,6 +1390,9 @@ var GraphModel = /** @class */ (function () {
|
|
|
1362
1390
|
__decorate([
|
|
1363
1391
|
computed
|
|
1364
1392
|
], GraphModel.prototype, "selectNodes", null);
|
|
1393
|
+
__decorate([
|
|
1394
|
+
action
|
|
1395
|
+
], GraphModel.prototype, "setTextMode", null);
|
|
1365
1396
|
__decorate([
|
|
1366
1397
|
action
|
|
1367
1398
|
], GraphModel.prototype, "setFakeNode", null);
|