@logicflow/core 1.2.1 → 1.2.3
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/README.md +5 -8
- package/dist/logic-flow.js +103 -76
- package/dist/logic-flow.min.js +1 -1
- package/package.json +2 -2
- package/types/constant/DefaultTheme.d.ts +4 -22
- package/types/model/edge/BaseEdgeModel.d.ts +0 -1
- package/types/model/edge/BezierEdgeModel.d.ts +1 -1
- package/types/model/node/CircleNodeModel.d.ts +0 -1
- package/types/model/node/RectNodeModel.d.ts +0 -3
- package/types/model/node/TextNodeModel.d.ts +1 -1
- package/types/view/edge/AdjustPoint.d.ts +7 -2
- package/types/view/edge/BaseEdge.d.ts +1 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<a href="
|
|
2
|
+
<a href="https://docs.logic-flow.cn" target="_blank">
|
|
3
3
|
<img
|
|
4
|
-
src="
|
|
4
|
+
src="https://docs.logic-flow.cn/docs/_images/logo.png"
|
|
5
5
|
alt="LogicFlow logo"
|
|
6
6
|
width="250"
|
|
7
7
|
/>
|
|
@@ -104,13 +104,10 @@ lf.render(data);
|
|
|
104
104
|
|
|
105
105
|
## 文档
|
|
106
106
|
|
|
107
|
-
[官方文档](
|
|
107
|
+
[官方文档](https://docs.logic-flow.cn)
|
|
108
108
|
|
|
109
|
-
- [快速上手](
|
|
110
|
-
- [
|
|
111
|
-
- [进阶指南](http://logic-flow.org/guide/advance/theme.html)
|
|
112
|
-
- [拓展](http://logic-flow.org/guide/extension/extension-components.html)
|
|
113
|
-
- [示例](http://logic-flow.org/usage/bpmn.html)
|
|
109
|
+
- [快速上手](https://docs.logic-flow.cn/docs/#/zh/guide/start)
|
|
110
|
+
- [示例](https://docs.logic-flow.cn/examples/#/gallery)
|
|
114
111
|
|
|
115
112
|
## 核心能力
|
|
116
113
|
|
package/dist/logic-flow.js
CHANGED
|
@@ -27663,7 +27663,7 @@ var GraphModel_GraphModel = (GraphModel_class = /*#__PURE__*/function () {
|
|
|
27663
27663
|
edgeModel.moveStartPoint(textDistanceX, textDistanceY);
|
|
27664
27664
|
}
|
|
27665
27665
|
|
|
27666
|
-
var targetMoveDistance = nodeIdMap[edgeModel.
|
|
27666
|
+
var targetMoveDistance = nodeIdMap[edgeModel.targetNodeId];
|
|
27667
27667
|
|
|
27668
27668
|
if (targetMoveDistance) {
|
|
27669
27669
|
var _targetMoveDistance = GraphModel_slicedToArray(targetMoveDistance, 2);
|
|
@@ -35036,7 +35036,7 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35036
35036
|
y: endY
|
|
35037
35037
|
}, graphModel); // 如果一定的坐标能够找到目标节点,预结算当前节点与目标节点的路径进行展示
|
|
35038
35038
|
|
|
35039
|
-
if (info && info.node && _this.isAllowAdjust(info)) {
|
|
35039
|
+
if (info && info.node && _this.isAllowAdjust(info).pass) {
|
|
35040
35040
|
var params;
|
|
35041
35041
|
var startPoint = edgeModel.startPoint,
|
|
35042
35042
|
endPoint = edgeModel.endPoint,
|
|
@@ -35121,51 +35121,67 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35121
35121
|
var needRecoveryEdge = false;
|
|
35122
35122
|
var createEdgeInfo;
|
|
35123
35123
|
|
|
35124
|
-
if (info && info.node
|
|
35125
|
-
var
|
|
35126
|
-
|
|
35127
|
-
|
|
35128
|
-
|
|
35129
|
-
|
|
35130
|
-
|
|
35131
|
-
|
|
35132
|
-
|
|
35133
|
-
|
|
35134
|
-
|
|
35135
|
-
|
|
35136
|
-
|
|
35137
|
-
|
|
35138
|
-
|
|
35139
|
-
|
|
35140
|
-
|
|
35141
|
-
|
|
35142
|
-
},
|
|
35143
|
-
|
|
35144
|
-
|
|
35145
|
-
|
|
35146
|
-
|
|
35147
|
-
|
|
35148
|
-
|
|
35149
|
-
|
|
35150
|
-
|
|
35151
|
-
|
|
35152
|
-
|
|
35153
|
-
|
|
35154
|
-
|
|
35155
|
-
startPoint: AdjustPoint_objectSpread({}, edgeModel.startPoint),
|
|
35156
|
-
targetNodeId: info.node.id,
|
|
35157
|
-
targetAnchorId: info.anchor.id,
|
|
35158
|
-
endPoint: {
|
|
35159
|
-
x: info.anchor.x,
|
|
35160
|
-
y: info.anchor.y
|
|
35124
|
+
if (info && info.node) {
|
|
35125
|
+
var _this$isAllowAdjust = _this.isAllowAdjust(info),
|
|
35126
|
+
pass = _this$isAllowAdjust.pass,
|
|
35127
|
+
msg = _this$isAllowAdjust.msg,
|
|
35128
|
+
newTargetNode = _this$isAllowAdjust.newTargetNode;
|
|
35129
|
+
|
|
35130
|
+
if (pass) {
|
|
35131
|
+
var _edgeData$text;
|
|
35132
|
+
|
|
35133
|
+
var edgeData = edgeModel.getData();
|
|
35134
|
+
createEdgeInfo = AdjustPoint_objectSpread(AdjustPoint_objectSpread({}, edgeData), {}, {
|
|
35135
|
+
sourceAnchorId: '',
|
|
35136
|
+
targetAnchorId: '',
|
|
35137
|
+
text: (edgeData === null || edgeData === void 0 ? void 0 : (_edgeData$text = edgeData.text) === null || _edgeData$text === void 0 ? void 0 : _edgeData$text.value) || ''
|
|
35138
|
+
}); // 根据调整点是边的起点或重点,计算创建边需要的参数
|
|
35139
|
+
|
|
35140
|
+
if (type === AdjustType.SOURCE) {
|
|
35141
|
+
var edgeInfo = graphModel.edgeGenerator(graphModel.getNodeModelById(info.node.id).getData(), graphModel.getNodeModelById(edgeModel.targetNodeId).getData(), createEdgeInfo);
|
|
35142
|
+
createEdgeInfo = AdjustPoint_objectSpread(AdjustPoint_objectSpread({}, edgeInfo), {}, {
|
|
35143
|
+
sourceNodeId: info.node.id,
|
|
35144
|
+
sourceAnchorId: info.anchor.id,
|
|
35145
|
+
startPoint: {
|
|
35146
|
+
x: info.anchor.x,
|
|
35147
|
+
y: info.anchor.y
|
|
35148
|
+
},
|
|
35149
|
+
targetNodeId: edgeModel.targetNodeId,
|
|
35150
|
+
endPoint: AdjustPoint_objectSpread({}, edgeModel.endPoint)
|
|
35151
|
+
}); // 找到的是原有的源节点上的原锚点时,还原边
|
|
35152
|
+
|
|
35153
|
+
if (edgeModel.sourceNodeId === info.node.id && edgeModel.sourceAnchorId === info.anchor.id) {
|
|
35154
|
+
needRecoveryEdge = true;
|
|
35161
35155
|
}
|
|
35162
|
-
})
|
|
35156
|
+
} else if (type === AdjustType.TARGET) {
|
|
35157
|
+
var _edgeInfo = graphModel.edgeGenerator(graphModel.getNodeModelById(edgeModel.sourceNodeId).getData(), graphModel.getNodeModelById(info.node.id).getData(), createEdgeInfo);
|
|
35158
|
+
|
|
35159
|
+
createEdgeInfo = AdjustPoint_objectSpread(AdjustPoint_objectSpread({}, _edgeInfo), {}, {
|
|
35160
|
+
sourceNodeId: edgeModel.sourceNodeId,
|
|
35161
|
+
startPoint: AdjustPoint_objectSpread({}, edgeModel.startPoint),
|
|
35162
|
+
targetNodeId: info.node.id,
|
|
35163
|
+
targetAnchorId: info.anchor.id,
|
|
35164
|
+
endPoint: {
|
|
35165
|
+
x: info.anchor.x,
|
|
35166
|
+
y: info.anchor.y
|
|
35167
|
+
}
|
|
35168
|
+
}); // 找到的是原有的目标节点上的原锚点时,还原边
|
|
35163
35169
|
|
|
35164
|
-
|
|
35165
|
-
|
|
35170
|
+
if (edgeModel.targetNodeId === info.node.id && edgeModel.targetAnchorId === info.anchor.id) {
|
|
35171
|
+
needRecoveryEdge = true;
|
|
35172
|
+
}
|
|
35166
35173
|
}
|
|
35174
|
+
} else {
|
|
35175
|
+
// 如果没有通过校验,还原边并抛出CONNECTION_NOT_ALLOWED事件
|
|
35176
|
+
needRecoveryEdge = true;
|
|
35177
|
+
var nodeData = newTargetNode.getData();
|
|
35178
|
+
graphModel.eventCenter.emit(EventType.CONNECTION_NOT_ALLOWED, {
|
|
35179
|
+
data: nodeData,
|
|
35180
|
+
msg: msg
|
|
35181
|
+
});
|
|
35167
35182
|
}
|
|
35168
35183
|
} else {
|
|
35184
|
+
// 如果没有找到目标节点,还原边
|
|
35169
35185
|
needRecoveryEdge = true;
|
|
35170
35186
|
}
|
|
35171
35187
|
|
|
@@ -35183,7 +35199,7 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35183
35199
|
}
|
|
35184
35200
|
});
|
|
35185
35201
|
} else {
|
|
35186
|
-
//
|
|
35202
|
+
// 如果没有找到目标节点或者没有通过校验,还原边
|
|
35187
35203
|
_this.recoveryEdge();
|
|
35188
35204
|
}
|
|
35189
35205
|
|
|
@@ -35285,7 +35301,11 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35285
35301
|
this.preTargetNode = info.node; // #500 不允许锚点自己连自己, 在锚点一开始连接的时候, 不触发自己连接自己的校验。
|
|
35286
35302
|
|
|
35287
35303
|
if (newTargetAnchor.id === newSourceAnchor.id) {
|
|
35288
|
-
return
|
|
35304
|
+
return {
|
|
35305
|
+
pass: false,
|
|
35306
|
+
msg: '',
|
|
35307
|
+
newTargetNode: newTargetNode
|
|
35308
|
+
};
|
|
35289
35309
|
}
|
|
35290
35310
|
|
|
35291
35311
|
var targetInfoId = "".concat(newSourceNode.id, "_").concat(newTargetNode.id, "_").concat(newSourceAnchor.id, "_").concat(newTargetAnchor.id); // 查看鼠标是否进入过target,若有检验结果,表示进入过, 就不重复计算了。
|
|
@@ -35298,10 +35318,12 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35298
35318
|
}
|
|
35299
35319
|
|
|
35300
35320
|
var _this$sourceRuleResul = this.sourceRuleResults.get(targetInfoId),
|
|
35301
|
-
isSourcePass = _this$sourceRuleResul.isAllPass
|
|
35321
|
+
isSourcePass = _this$sourceRuleResul.isAllPass,
|
|
35322
|
+
sourceMsg = _this$sourceRuleResul.msg;
|
|
35302
35323
|
|
|
35303
35324
|
var _this$targetRuleResul = this.targetRuleResults.get(targetInfoId),
|
|
35304
|
-
isTargetPass = _this$targetRuleResul.isAllPass
|
|
35325
|
+
isTargetPass = _this$targetRuleResul.isAllPass,
|
|
35326
|
+
targetMsg = _this$targetRuleResul.msg; // 实时提示出即将连接的节点是否允许连接
|
|
35305
35327
|
|
|
35306
35328
|
|
|
35307
35329
|
var state = isSourcePass && isTargetPass ? ElementState.ALLOW_CONNECT : ElementState.NOT_ALLOW_CONNECT;
|
|
@@ -35312,7 +35334,11 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35312
35334
|
newTargetNode.setElementState(state);
|
|
35313
35335
|
}
|
|
35314
35336
|
|
|
35315
|
-
return
|
|
35337
|
+
return {
|
|
35338
|
+
pass: isSourcePass && isTargetPass,
|
|
35339
|
+
msg: targetMsg || sourceMsg,
|
|
35340
|
+
newTargetNode: newTargetNode
|
|
35341
|
+
};
|
|
35316
35342
|
}
|
|
35317
35343
|
}, {
|
|
35318
35344
|
key: "render",
|
|
@@ -35320,12 +35346,13 @@ var AdjustPoint_AdjustPoint = /*#__PURE__*/function (_Component) {
|
|
|
35320
35346
|
var _this$props6 = this.props,
|
|
35321
35347
|
x = _this$props6.x,
|
|
35322
35348
|
y = _this$props6.y,
|
|
35323
|
-
getAdjustPointShape = _this$props6.getAdjustPointShape
|
|
35349
|
+
getAdjustPointShape = _this$props6.getAdjustPointShape,
|
|
35350
|
+
edgeModel = _this$props6.edgeModel;
|
|
35324
35351
|
var dragging = this.state.dragging;
|
|
35325
35352
|
return Object(preact_module["g" /* h */])("g", {
|
|
35326
35353
|
pointerEvents: dragging ? 'none' : '',
|
|
35327
35354
|
onMouseDown: this.handleMouseDown
|
|
35328
|
-
}, getAdjustPointShape(x, y,
|
|
35355
|
+
}, !dragging ? getAdjustPointShape(x, y, edgeModel) : '');
|
|
35329
35356
|
}
|
|
35330
35357
|
}]);
|
|
35331
35358
|
|
|
@@ -35407,17 +35434,6 @@ var BaseEdge_BaseEdge = /*#__PURE__*/function (_Component) {
|
|
|
35407
35434
|
|
|
35408
35435
|
BaseEdge_defineProperty(BaseEdge_assertThisInitialized(_this), "textRef", Object(preact_module["f" /* createRef */])());
|
|
35409
35436
|
|
|
35410
|
-
BaseEdge_defineProperty(BaseEdge_assertThisInitialized(_this), "getAdjustPointShape", function (x, y) {
|
|
35411
|
-
var model = _this.props.model;
|
|
35412
|
-
var style = model.getAdjustPointStyle();
|
|
35413
|
-
return Object(preact_module["g" /* h */])(Circle, BaseEdge_extends({
|
|
35414
|
-
className: "lf-edge-adjust-point"
|
|
35415
|
-
}, style, {
|
|
35416
|
-
x: x,
|
|
35417
|
-
y: y
|
|
35418
|
-
}));
|
|
35419
|
-
});
|
|
35420
|
-
|
|
35421
35437
|
BaseEdge_defineProperty(BaseEdge_assertThisInitialized(_this), "handleHover", function (hovered, ev) {
|
|
35422
35438
|
var _this$props = _this.props,
|
|
35423
35439
|
model = _this$props.model,
|
|
@@ -35759,12 +35775,23 @@ var BaseEdge_BaseEdge = /*#__PURE__*/function (_Component) {
|
|
|
35759
35775
|
*/
|
|
35760
35776
|
|
|
35761
35777
|
}, {
|
|
35762
|
-
key: "
|
|
35763
|
-
value:
|
|
35778
|
+
key: "getAdjustPointShape",
|
|
35779
|
+
value: function getAdjustPointShape(x, y, model) {
|
|
35780
|
+
var style = model.getAdjustPointStyle();
|
|
35781
|
+
return Object(preact_module["g" /* h */])(Circle, BaseEdge_extends({
|
|
35782
|
+
className: "lf-edge-adjust-point"
|
|
35783
|
+
}, style, {
|
|
35784
|
+
x: x,
|
|
35785
|
+
y: y
|
|
35786
|
+
}));
|
|
35787
|
+
}
|
|
35764
35788
|
/**
|
|
35765
35789
|
* 不支持重写。请使用getAdjustPointShape
|
|
35766
35790
|
*/
|
|
35767
|
-
|
|
35791
|
+
|
|
35792
|
+
}, {
|
|
35793
|
+
key: "getAdjustPoints",
|
|
35794
|
+
value: function getAdjustPoints() {
|
|
35768
35795
|
var _this$props5 = this.props,
|
|
35769
35796
|
model = _this$props5.model,
|
|
35770
35797
|
graphModel = _this$props5.graphModel;
|
|
@@ -38095,15 +38122,15 @@ function initDefaultShortcut(lf, graph) {
|
|
|
38095
38122
|
var keyboardOptions = keyboard.options.keyboard; // 复制
|
|
38096
38123
|
|
|
38097
38124
|
keyboard.on(['cmd + c', 'ctrl + c'], function () {
|
|
38098
|
-
if (!keyboardOptions.enabled) return;
|
|
38099
|
-
if (graph.textEditElement) return;
|
|
38125
|
+
if (!keyboardOptions.enabled) return true;
|
|
38126
|
+
if (graph.textEditElement) return true;
|
|
38100
38127
|
var guards = lf.options.guards;
|
|
38101
38128
|
var elements = graph.getSelectElements(false);
|
|
38102
38129
|
var enabledClone = guards && guards.beforeClone ? guards.beforeClone(elements) : true;
|
|
38103
38130
|
|
|
38104
|
-
if (!enabledClone) {
|
|
38131
|
+
if (!enabledClone || elements.nodes.length === 0 && elements.edges.length === 0) {
|
|
38105
38132
|
selected = null;
|
|
38106
|
-
return
|
|
38133
|
+
return true;
|
|
38107
38134
|
}
|
|
38108
38135
|
|
|
38109
38136
|
selected = elements;
|
|
@@ -38117,13 +38144,13 @@ function initDefaultShortcut(lf, graph) {
|
|
|
38117
38144
|
}); // 粘贴
|
|
38118
38145
|
|
|
38119
38146
|
keyboard.on(['cmd + v', 'ctrl + v'], function () {
|
|
38120
|
-
if (!keyboardOptions.enabled) return;
|
|
38121
|
-
if (graph.textEditElement) return;
|
|
38147
|
+
if (!keyboardOptions.enabled) return true;
|
|
38148
|
+
if (graph.textEditElement) return true;
|
|
38122
38149
|
|
|
38123
38150
|
if (selected && (selected.nodes || selected.edges)) {
|
|
38124
38151
|
lf.clearSelectElements();
|
|
38125
38152
|
var addElements = lf.addElements(selected);
|
|
38126
|
-
if (!addElements) return;
|
|
38153
|
+
if (!addElements) return true;
|
|
38127
38154
|
addElements.nodes.forEach(function (node) {
|
|
38128
38155
|
return lf.selectElementById(node.id, true);
|
|
38129
38156
|
});
|
|
@@ -38142,22 +38169,22 @@ function initDefaultShortcut(lf, graph) {
|
|
|
38142
38169
|
}); // undo
|
|
38143
38170
|
|
|
38144
38171
|
keyboard.on(['cmd + z', 'ctrl + z'], function () {
|
|
38145
|
-
if (!keyboardOptions.enabled) return;
|
|
38146
|
-
if (graph.textEditElement) return;
|
|
38172
|
+
if (!keyboardOptions.enabled) return true;
|
|
38173
|
+
if (graph.textEditElement) return true;
|
|
38147
38174
|
lf.undo();
|
|
38148
38175
|
return false;
|
|
38149
38176
|
}); // redo
|
|
38150
38177
|
|
|
38151
38178
|
keyboard.on(['cmd + y', 'ctrl + y'], function () {
|
|
38152
|
-
if (!keyboardOptions.enabled) return;
|
|
38153
|
-
if (graph.textEditElement) return;
|
|
38179
|
+
if (!keyboardOptions.enabled) return true;
|
|
38180
|
+
if (graph.textEditElement) return true;
|
|
38154
38181
|
lf.redo();
|
|
38155
38182
|
return false;
|
|
38156
38183
|
}); // delete
|
|
38157
38184
|
|
|
38158
38185
|
keyboard.on(['backspace'], function () {
|
|
38159
|
-
if (!keyboardOptions.enabled) return;
|
|
38160
|
-
if (graph.textEditElement) return;
|
|
38186
|
+
if (!keyboardOptions.enabled) return true;
|
|
38187
|
+
if (graph.textEditElement) return true;
|
|
38161
38188
|
var elements = graph.getSelectElements(true);
|
|
38162
38189
|
lf.clearSelectElements();
|
|
38163
38190
|
elements.edges.forEach(function (edge) {
|