@logicflow/core 2.0.0-beta.2 → 2.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/.turbo/turbo-build$colon$dev.log +2 -2
  2. package/.turbo/turbo-build.log +14 -8
  3. package/dist/index.min.js +9 -3
  4. package/es/LogicFlow.d.ts +8 -3
  5. package/es/LogicFlow.js +5 -4
  6. package/es/LogicFlow.js.map +1 -1
  7. package/es/common/drag.d.ts +51 -0
  8. package/es/common/drag.js +145 -0
  9. package/es/common/drag.js.map +1 -0
  10. package/es/common/history.d.ts +28 -0
  11. package/es/common/history.js +92 -0
  12. package/es/common/history.js.map +1 -0
  13. package/es/common/index.d.ts +5 -0
  14. package/es/common/index.js +6 -0
  15. package/es/common/index.js.map +1 -0
  16. package/es/common/keyboard.d.ts +34 -0
  17. package/es/common/keyboard.js +80 -0
  18. package/es/common/keyboard.js.map +1 -0
  19. package/es/common/matrix.d.ts +30 -0
  20. package/es/common/matrix.js +155 -0
  21. package/es/common/matrix.js.map +1 -0
  22. package/es/common/vector.d.ts +23 -0
  23. package/es/common/vector.js +97 -0
  24. package/es/common/vector.js.map +1 -0
  25. package/es/constant/index.d.ts +2 -1
  26. package/es/constant/index.js +1 -0
  27. package/es/constant/index.js.map +1 -1
  28. package/es/event/eventArgs.d.ts +6 -0
  29. package/es/event/eventEmitter.js +0 -1
  30. package/es/event/eventEmitter.js.map +1 -1
  31. package/es/index.d.ts +1 -1
  32. package/es/index.js +1 -1
  33. package/es/index.js.map +1 -1
  34. package/es/model/GraphModel.d.ts +12 -1
  35. package/es/model/GraphModel.js +21 -2
  36. package/es/model/GraphModel.js.map +1 -1
  37. package/es/model/SnaplineModel.d.ts +2 -0
  38. package/es/model/edge/BaseEdgeModel.d.ts +5 -9
  39. package/es/model/edge/BaseEdgeModel.js +26 -23
  40. package/es/model/edge/BaseEdgeModel.js.map +1 -1
  41. package/es/model/edge/BezierEdgeModel.d.ts +2 -0
  42. package/es/model/edge/LineEdgeModel.d.ts +2 -0
  43. package/es/model/edge/PolylineEdgeModel.d.ts +2 -0
  44. package/es/model/node/BaseNodeModel.js +22 -21
  45. package/es/model/node/BaseNodeModel.js.map +1 -1
  46. package/es/model/node/CircleNodeModel.d.ts +2 -0
  47. package/es/model/node/CircleNodeModel.js +2 -2
  48. package/es/model/node/CircleNodeModel.js.map +1 -1
  49. package/es/model/node/DiamondNodeModel.d.ts +2 -0
  50. package/es/model/node/DiamondNodeModel.js +2 -1
  51. package/es/model/node/DiamondNodeModel.js.map +1 -1
  52. package/es/model/node/EllipseNodeModel.d.ts +2 -0
  53. package/es/model/node/EllipseNodeModel.js +2 -1
  54. package/es/model/node/EllipseNodeModel.js.map +1 -1
  55. package/es/model/node/HtmlNodeModel.d.ts +2 -2
  56. package/es/model/node/HtmlNodeModel.js.map +1 -1
  57. package/es/model/node/PolygonNodeModel.d.ts +2 -0
  58. package/es/model/node/PolygonNodeModel.js +2 -2
  59. package/es/model/node/PolygonNodeModel.js.map +1 -1
  60. package/es/model/node/RectNodeModel.d.ts +3 -0
  61. package/es/model/node/RectNodeModel.js +8 -2
  62. package/es/model/node/RectNodeModel.js.map +1 -1
  63. package/es/model/node/TextNodeModel.d.ts +4 -2
  64. package/es/options.js +2 -11
  65. package/es/options.js.map +1 -1
  66. package/es/tool/tool.js.map +1 -1
  67. package/es/util/edge.d.ts +6 -0
  68. package/es/util/edge.js +15 -1
  69. package/es/util/edge.js.map +1 -1
  70. package/es/util/node.d.ts +6 -2
  71. package/es/util/node.js +22 -7
  72. package/es/util/node.js.map +1 -1
  73. package/es/view/Anchor.d.ts +1 -1
  74. package/es/view/Anchor.js +3 -3
  75. package/es/view/Anchor.js.map +1 -1
  76. package/es/view/Control.js +14 -2
  77. package/es/view/Control.js.map +1 -1
  78. package/es/view/Graph.d.ts +4 -0
  79. package/es/view/Graph.js +42 -3
  80. package/es/view/Graph.js.map +1 -1
  81. package/es/view/edge/AdjustPoint.js +3 -3
  82. package/es/view/edge/AdjustPoint.js.map +1 -1
  83. package/es/view/edge/BaseEdge.d.ts +2 -2
  84. package/es/view/edge/BaseEdge.js +5 -5
  85. package/es/view/node/BaseNode.d.ts +2 -2
  86. package/es/view/node/BaseNode.js +5 -5
  87. package/es/view/node/TextNode.js +1 -1
  88. package/es/view/node/TextNode.js.map +1 -1
  89. package/es/view/shape/Circle.d.ts +9 -1
  90. package/es/view/shape/Circle.js +5 -5
  91. package/es/view/shape/Circle.js.map +1 -1
  92. package/es/view/shape/Ellipse.d.ts +10 -1
  93. package/es/view/shape/Ellipse.js +5 -5
  94. package/es/view/shape/Ellipse.js.map +1 -1
  95. package/es/view/shape/Line.d.ts +14 -1
  96. package/es/view/shape/Line.js +5 -7
  97. package/es/view/shape/Line.js.map +1 -1
  98. package/es/view/shape/Path.d.ts +3 -2
  99. package/es/view/shape/Path.js +3 -3
  100. package/es/view/shape/Path.js.map +1 -1
  101. package/es/view/shape/Polygon.d.ts +5 -3
  102. package/es/view/shape/Polygon.js +6 -6
  103. package/es/view/shape/Polygon.js.map +1 -1
  104. package/es/view/shape/Polyline.d.ts +7 -1
  105. package/es/view/shape/Polyline.js +8 -6
  106. package/es/view/shape/Polyline.js.map +1 -1
  107. package/es/view/shape/Rect.d.ts +11 -13
  108. package/es/view/shape/Rect.js +6 -9
  109. package/es/view/shape/Rect.js.map +1 -1
  110. package/es/view/shape/Text.d.ts +19 -1
  111. package/es/view/shape/Text.js +28 -21
  112. package/es/view/shape/Text.js.map +1 -1
  113. package/es/view/text/BaseText.d.ts +12 -15
  114. package/es/view/text/BaseText.js +37 -27
  115. package/es/view/text/BaseText.js.map +1 -1
  116. package/es/view/text/LineText.d.ts +19 -7
  117. package/es/view/text/LineText.js +62 -54
  118. package/es/view/text/LineText.js.map +1 -1
  119. package/lib/LogicFlow.d.ts +8 -3
  120. package/lib/LogicFlow.js +5 -4
  121. package/lib/LogicFlow.js.map +1 -1
  122. package/lib/common/drag.d.ts +51 -0
  123. package/lib/common/drag.js +148 -0
  124. package/lib/common/drag.js.map +1 -0
  125. package/lib/common/history.d.ts +28 -0
  126. package/lib/common/history.js +95 -0
  127. package/lib/common/history.js.map +1 -0
  128. package/lib/common/index.d.ts +5 -0
  129. package/lib/common/index.js +22 -0
  130. package/lib/common/index.js.map +1 -0
  131. package/lib/common/keyboard.d.ts +34 -0
  132. package/lib/common/keyboard.js +86 -0
  133. package/lib/common/keyboard.js.map +1 -0
  134. package/lib/common/matrix.d.ts +30 -0
  135. package/lib/common/matrix.js +158 -0
  136. package/lib/common/matrix.js.map +1 -0
  137. package/lib/common/vector.d.ts +23 -0
  138. package/lib/common/vector.js +101 -0
  139. package/lib/common/vector.js.map +1 -0
  140. package/lib/constant/index.d.ts +2 -1
  141. package/lib/constant/index.js +1 -0
  142. package/lib/constant/index.js.map +1 -1
  143. package/lib/event/eventArgs.d.ts +6 -0
  144. package/lib/event/eventEmitter.js +0 -1
  145. package/lib/event/eventEmitter.js.map +1 -1
  146. package/lib/index.d.ts +1 -1
  147. package/lib/index.js +2 -2
  148. package/lib/index.js.map +1 -1
  149. package/lib/model/GraphModel.d.ts +12 -1
  150. package/lib/model/GraphModel.js +21 -2
  151. package/lib/model/GraphModel.js.map +1 -1
  152. package/lib/model/SnaplineModel.d.ts +2 -0
  153. package/lib/model/edge/BaseEdgeModel.d.ts +5 -9
  154. package/lib/model/edge/BaseEdgeModel.js +25 -22
  155. package/lib/model/edge/BaseEdgeModel.js.map +1 -1
  156. package/lib/model/edge/BezierEdgeModel.d.ts +2 -0
  157. package/lib/model/edge/LineEdgeModel.d.ts +2 -0
  158. package/lib/model/edge/PolylineEdgeModel.d.ts +2 -0
  159. package/lib/model/node/BaseNodeModel.js +21 -20
  160. package/lib/model/node/BaseNodeModel.js.map +1 -1
  161. package/lib/model/node/CircleNodeModel.d.ts +2 -0
  162. package/lib/model/node/CircleNodeModel.js +2 -2
  163. package/lib/model/node/CircleNodeModel.js.map +1 -1
  164. package/lib/model/node/DiamondNodeModel.d.ts +2 -0
  165. package/lib/model/node/DiamondNodeModel.js +2 -1
  166. package/lib/model/node/DiamondNodeModel.js.map +1 -1
  167. package/lib/model/node/EllipseNodeModel.d.ts +2 -0
  168. package/lib/model/node/EllipseNodeModel.js +2 -1
  169. package/lib/model/node/EllipseNodeModel.js.map +1 -1
  170. package/lib/model/node/HtmlNodeModel.d.ts +2 -2
  171. package/lib/model/node/HtmlNodeModel.js.map +1 -1
  172. package/lib/model/node/PolygonNodeModel.d.ts +2 -0
  173. package/lib/model/node/PolygonNodeModel.js +2 -2
  174. package/lib/model/node/PolygonNodeModel.js.map +1 -1
  175. package/lib/model/node/RectNodeModel.d.ts +3 -0
  176. package/lib/model/node/RectNodeModel.js +8 -2
  177. package/lib/model/node/RectNodeModel.js.map +1 -1
  178. package/lib/model/node/TextNodeModel.d.ts +4 -2
  179. package/lib/options.js +2 -11
  180. package/lib/options.js.map +1 -1
  181. package/lib/tool/tool.js.map +1 -1
  182. package/lib/util/edge.d.ts +6 -0
  183. package/lib/util/edge.js +16 -1
  184. package/lib/util/edge.js.map +1 -1
  185. package/lib/util/node.d.ts +6 -2
  186. package/lib/util/node.js +24 -9
  187. package/lib/util/node.js.map +1 -1
  188. package/lib/view/Anchor.d.ts +1 -1
  189. package/lib/view/Anchor.js +2 -2
  190. package/lib/view/Anchor.js.map +1 -1
  191. package/lib/view/Control.js +14 -2
  192. package/lib/view/Control.js.map +1 -1
  193. package/lib/view/Graph.d.ts +4 -0
  194. package/lib/view/Graph.js +41 -2
  195. package/lib/view/Graph.js.map +1 -1
  196. package/lib/view/edge/AdjustPoint.js +2 -2
  197. package/lib/view/edge/AdjustPoint.js.map +1 -1
  198. package/lib/view/edge/BaseEdge.d.ts +2 -2
  199. package/lib/view/edge/BaseEdge.js +5 -5
  200. package/lib/view/node/BaseNode.d.ts +2 -2
  201. package/lib/view/node/BaseNode.js +5 -5
  202. package/lib/view/node/TextNode.js +1 -1
  203. package/lib/view/node/TextNode.js.map +1 -1
  204. package/lib/view/shape/Circle.d.ts +9 -1
  205. package/lib/view/shape/Circle.js +5 -5
  206. package/lib/view/shape/Circle.js.map +1 -1
  207. package/lib/view/shape/Ellipse.d.ts +10 -1
  208. package/lib/view/shape/Ellipse.js +5 -5
  209. package/lib/view/shape/Ellipse.js.map +1 -1
  210. package/lib/view/shape/Line.d.ts +14 -1
  211. package/lib/view/shape/Line.js +5 -7
  212. package/lib/view/shape/Line.js.map +1 -1
  213. package/lib/view/shape/Path.d.ts +3 -2
  214. package/lib/view/shape/Path.js +3 -3
  215. package/lib/view/shape/Path.js.map +1 -1
  216. package/lib/view/shape/Polygon.d.ts +5 -3
  217. package/lib/view/shape/Polygon.js +6 -6
  218. package/lib/view/shape/Polygon.js.map +1 -1
  219. package/lib/view/shape/Polyline.d.ts +7 -1
  220. package/lib/view/shape/Polyline.js +8 -6
  221. package/lib/view/shape/Polyline.js.map +1 -1
  222. package/lib/view/shape/Rect.d.ts +11 -13
  223. package/lib/view/shape/Rect.js +6 -9
  224. package/lib/view/shape/Rect.js.map +1 -1
  225. package/lib/view/shape/Text.d.ts +19 -1
  226. package/lib/view/shape/Text.js +29 -21
  227. package/lib/view/shape/Text.js.map +1 -1
  228. package/lib/view/text/BaseText.d.ts +12 -15
  229. package/lib/view/text/BaseText.js +40 -27
  230. package/lib/view/text/BaseText.js.map +1 -1
  231. package/lib/view/text/LineText.d.ts +19 -7
  232. package/lib/view/text/LineText.js +62 -57
  233. package/lib/view/text/LineText.js.map +1 -1
  234. package/package.json +2 -1
  235. package/src/LogicFlow.tsx +19 -7
  236. package/src/common/drag.ts +205 -0
  237. package/src/common/history.ts +108 -0
  238. package/src/common/index.ts +6 -0
  239. package/src/common/keyboard.ts +108 -0
  240. package/src/common/matrix.ts +122 -0
  241. package/src/common/vector.ts +93 -0
  242. package/src/constant/index.ts +1 -0
  243. package/src/event/eventArgs.ts +6 -0
  244. package/src/event/eventEmitter.ts +1 -2
  245. package/src/index.ts +1 -1
  246. package/src/model/GraphModel.ts +22 -2
  247. package/src/model/edge/BaseEdgeModel.ts +31 -21
  248. package/src/model/node/BaseNodeModel.ts +27 -19
  249. package/src/model/node/CircleNodeModel.ts +2 -2
  250. package/src/model/node/DiamondNodeModel.ts +2 -0
  251. package/src/model/node/EllipseNodeModel.ts +2 -0
  252. package/src/model/node/HtmlNodeModel.ts +2 -2
  253. package/src/model/node/PolygonNodeModel.ts +2 -2
  254. package/src/model/node/RectNodeModel.ts +9 -2
  255. package/src/options.ts +3 -12
  256. package/src/tool/tool.ts +1 -1
  257. package/src/util/edge.ts +26 -1
  258. package/src/util/node.ts +29 -8
  259. package/src/view/Anchor.tsx +4 -4
  260. package/src/view/Control.tsx +5 -2
  261. package/src/view/Graph.tsx +19 -3
  262. package/src/view/edge/AdjustPoint.tsx +3 -3
  263. package/src/view/edge/BaseEdge.tsx +7 -7
  264. package/src/view/node/BaseNode.tsx +7 -7
  265. package/src/view/node/TextNode.tsx +1 -1
  266. package/src/view/shape/Circle.tsx +21 -7
  267. package/src/view/shape/Ellipse.tsx +20 -6
  268. package/src/view/shape/Line.tsx +24 -9
  269. package/src/view/shape/Path.tsx +9 -6
  270. package/src/view/shape/Polygon.tsx +13 -10
  271. package/src/view/shape/Polyline.tsx +20 -8
  272. package/src/view/shape/Rect.tsx +19 -19
  273. package/src/view/shape/Text.tsx +64 -33
  274. package/src/view/text/BaseText.tsx +67 -41
  275. package/src/view/text/LineText.tsx +94 -80
@@ -0,0 +1,80 @@
1
+ import Mousetrap from 'mousetrap';
2
+ import { forEach, isArray } from 'lodash-es';
3
+ var Keyboard = /** @class */ (function () {
4
+ function Keyboard(options) {
5
+ var _a;
6
+ var lf = options.lf;
7
+ if (!options.keyboard) {
8
+ options.keyboard = { enabled: false };
9
+ }
10
+ this.options = options;
11
+ this.target = lf.container;
12
+ this.mousetrap = new Mousetrap(this.target);
13
+ if ((_a = options.keyboard) === null || _a === void 0 ? void 0 : _a.enabled) {
14
+ this.enable(true);
15
+ }
16
+ }
17
+ Keyboard.prototype.formatKey = function (key) {
18
+ return key
19
+ .toLowerCase()
20
+ .replace(/\s/g, '')
21
+ .replace('delete', 'del')
22
+ .replace('cmd', 'command');
23
+ };
24
+ Keyboard.prototype.getKeys = function (keys) {
25
+ var _this = this;
26
+ return (isArray(keys) ? keys : [keys]).map(function (key) { return _this.formatKey(key); });
27
+ };
28
+ Object.defineProperty(Keyboard.prototype, "disabled", {
29
+ get: function () {
30
+ var _a;
31
+ return ((_a = this.options.keyboard) === null || _a === void 0 ? void 0 : _a.enabled) !== true;
32
+ },
33
+ enumerable: false,
34
+ configurable: true
35
+ });
36
+ Keyboard.prototype.on = function (keys, callback, action) {
37
+ this.mousetrap.bind(this.getKeys(keys), callback, action);
38
+ };
39
+ Keyboard.prototype.off = function (keys, action) {
40
+ this.mousetrap.unbind(this.getKeys(keys), action);
41
+ };
42
+ Keyboard.prototype.enable = function (force) {
43
+ if (this.disabled || force) {
44
+ this.options.keyboard.enabled = true;
45
+ if (this.target instanceof HTMLElement) {
46
+ this.target.setAttribute('tabindex', '-1');
47
+ // 去掉节点被选中时 container 出现的边框
48
+ this.target.style.outline = 'none';
49
+ }
50
+ }
51
+ };
52
+ Keyboard.prototype.disable = function () {
53
+ if (!this.disabled) {
54
+ this.options.keyboard.enabled = false;
55
+ if (this.target instanceof HTMLElement) {
56
+ this.target.removeAttribute('tabindex');
57
+ }
58
+ }
59
+ };
60
+ Keyboard.prototype.initShortcuts = function () {
61
+ var _this = this;
62
+ var shortcuts = this.options.keyboard.shortcuts;
63
+ if (shortcuts) {
64
+ if (isArray(shortcuts)) {
65
+ forEach(shortcuts, function (_a) {
66
+ var keys = _a.keys, callback = _a.callback, action = _a.action;
67
+ _this.on(keys, callback, action);
68
+ });
69
+ }
70
+ else {
71
+ var keys = shortcuts.keys, callback = shortcuts.callback, action = shortcuts.action;
72
+ this.on(keys, callback, action);
73
+ }
74
+ }
75
+ };
76
+ return Keyboard;
77
+ }());
78
+ export { Keyboard };
79
+ export default Keyboard;
80
+ //# sourceMappingURL=keyboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../src/common/keyboard.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ export declare class Matrix extends Array {
2
+ rows: number;
3
+ columns: number;
4
+ constructor(...vectors: any[]);
5
+ getRow(index: number): any;
6
+ getColumn(index: number): number[];
7
+ transpose(): Matrix;
8
+ cross(m1: Matrix): Matrix;
9
+ to2D(): any[][];
10
+ toString(): string;
11
+ translate(tx: number, ty: number): Matrix;
12
+ rotate(angle: number): Matrix;
13
+ scale(sx: number, sy: number): Matrix;
14
+ }
15
+ export declare class RotateMatrix extends Matrix {
16
+ constructor(theta: number);
17
+ inverse(): Matrix;
18
+ }
19
+ export declare class ScaleMatrix extends Matrix {
20
+ private readonly sx;
21
+ private readonly sy;
22
+ constructor(sx: number, sy: number);
23
+ inverse(): ScaleMatrix;
24
+ }
25
+ export declare class TranslateMatrix extends Matrix {
26
+ private readonly tx;
27
+ private readonly ty;
28
+ constructor(tx: number, ty: number);
29
+ inverse(): TranslateMatrix;
30
+ }
@@ -0,0 +1,155 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ var __read = (this && this.__read) || function (o, n) {
17
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
18
+ if (!m) return o;
19
+ var i = m.call(o), r, ar = [], e;
20
+ try {
21
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
22
+ }
23
+ catch (error) { e = { error: error }; }
24
+ finally {
25
+ try {
26
+ if (r && !r.done && (m = i["return"])) m.call(i);
27
+ }
28
+ finally { if (e) throw e.error; }
29
+ }
30
+ return ar;
31
+ };
32
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
33
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
34
+ if (ar || !(i in from)) {
35
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
36
+ ar[i] = from[i];
37
+ }
38
+ }
39
+ return to.concat(ar || Array.prototype.slice.call(from));
40
+ };
41
+ import { Vector } from './vector';
42
+ var Matrix = /** @class */ (function (_super) {
43
+ __extends(Matrix, _super);
44
+ function Matrix() {
45
+ var vectors = [];
46
+ for (var _i = 0; _i < arguments.length; _i++) {
47
+ vectors[_i] = arguments[_i];
48
+ }
49
+ var _this = _super.call(this, vectors.length) || this;
50
+ _this.fill(new Array(3));
51
+ vectors.forEach(function (v, index) {
52
+ _this[index] = v;
53
+ });
54
+ _this.columns = vectors[0].length;
55
+ _this.rows = vectors.length;
56
+ Object.setPrototypeOf(_this, Matrix.prototype);
57
+ return _this;
58
+ }
59
+ Matrix.prototype.getRow = function (index) {
60
+ return this[index];
61
+ };
62
+ Matrix.prototype.getColumn = function (index) {
63
+ return __spreadArray([], __read(this.map(function (row) { return row[index]; })), false);
64
+ };
65
+ // 转置
66
+ Matrix.prototype.transpose = function () {
67
+ var rows = [];
68
+ for (var i = 0; i < this.columns; i++) {
69
+ rows.push(this.getColumn(i));
70
+ }
71
+ return new (Matrix.bind.apply(Matrix, __spreadArray([void 0], __read(rows), false)))();
72
+ };
73
+ // 叉乘
74
+ Matrix.prototype.cross = function (m1) {
75
+ var arr = new Array(this.rows).fill('').map(function () { return []; });
76
+ if (this.columns === m1.rows) {
77
+ for (var i = 0; i < this.rows; i++) {
78
+ var row = this.getRow(i);
79
+ var _loop_1 = function (j) {
80
+ var column = m1.getColumn(j);
81
+ arr[i][j] = row.reduce(function (prev, r, index) {
82
+ return prev + r * column[index];
83
+ }, 0);
84
+ };
85
+ for (var j = 0; j < m1.columns; j++) {
86
+ _loop_1(j);
87
+ }
88
+ }
89
+ }
90
+ return new (Matrix.bind.apply(Matrix, __spreadArray([void 0], __read(arr), false)))();
91
+ };
92
+ // 返回二维坐标(降维)
93
+ Matrix.prototype.to2D = function () {
94
+ return this.map(function (item) { return [item[0], item[1]]; });
95
+ };
96
+ Matrix.prototype.toString = function () {
97
+ var _a = __read(this, 3), _b = __read(_a[0], 2), a = _b[0], b = _b[1], _c = __read(_a[1], 2), c = _c[0], d = _c[1], _d = __read(_a[2], 2), e = _d[0], f = _d[1];
98
+ return "matrix(".concat(a, " ").concat(b, " ").concat(c, " ").concat(d, " ").concat(e, " ").concat(f, ")");
99
+ };
100
+ Matrix.prototype.translate = function (tx, ty) {
101
+ return this.cross(new TranslateMatrix(tx, ty));
102
+ };
103
+ Matrix.prototype.rotate = function (angle) {
104
+ return this.cross(new RotateMatrix(angle));
105
+ };
106
+ Matrix.prototype.scale = function (sx, sy) {
107
+ return this.cross(new ScaleMatrix(sx, sy));
108
+ };
109
+ return Matrix;
110
+ }(Array));
111
+ export { Matrix };
112
+ var RotateMatrix = /** @class */ (function (_super) {
113
+ __extends(RotateMatrix, _super);
114
+ function RotateMatrix(theta) {
115
+ var _this = _super.call(this, new Vector(+Math.cos(theta).toFixed(2), +Math.sin(theta).toFixed(2), 0), new Vector(-Math.sin(theta).toFixed(2), +Math.cos(theta).toFixed(2), 0), new Vector(0, 0, 1)) || this;
116
+ Object.setPrototypeOf(_this, RotateMatrix.prototype);
117
+ return _this;
118
+ }
119
+ RotateMatrix.prototype.inverse = function () {
120
+ return this.transpose();
121
+ };
122
+ return RotateMatrix;
123
+ }(Matrix));
124
+ export { RotateMatrix };
125
+ var ScaleMatrix = /** @class */ (function (_super) {
126
+ __extends(ScaleMatrix, _super);
127
+ function ScaleMatrix(sx, sy) {
128
+ var _this = _super.call(this, new Vector(sx, 0, 0), new Vector(0, sy, 0), new Vector(0, 0, 1)) || this;
129
+ _this.sx = sx;
130
+ _this.sy = sy;
131
+ Object.setPrototypeOf(_this, ScaleMatrix.prototype);
132
+ return _this;
133
+ }
134
+ ScaleMatrix.prototype.inverse = function () {
135
+ return new ScaleMatrix(1 / this.sx, 1 / this.sy);
136
+ };
137
+ return ScaleMatrix;
138
+ }(Matrix));
139
+ export { ScaleMatrix };
140
+ var TranslateMatrix = /** @class */ (function (_super) {
141
+ __extends(TranslateMatrix, _super);
142
+ function TranslateMatrix(tx, ty) {
143
+ var _this = _super.call(this, new Vector(1, 0, 0), new Vector(0, 1, 0), new Vector(tx, ty, 1)) || this;
144
+ _this.tx = tx;
145
+ _this.ty = ty;
146
+ Object.setPrototypeOf(_this, TranslateMatrix.prototype);
147
+ return _this;
148
+ }
149
+ TranslateMatrix.prototype.inverse = function () {
150
+ return new TranslateMatrix(-this.tx, -this.ty);
151
+ };
152
+ return TranslateMatrix;
153
+ }(Matrix));
154
+ export { TranslateMatrix };
155
+ //# sourceMappingURL=matrix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrix.js","sourceRoot":"","sources":["../../src/common/matrix.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC;IAA4B,0BAAK;IAI/B;QAAY,iBAAiB;aAAjB,UAAiB,EAAjB,qBAAiB,EAAjB,IAAiB;YAAjB,4BAAiB;;QAC3B,YAAA,MAAK,YAAC,OAAO,CAAC,MAAM,CAAC,SAAA;QACrB,KAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACvB,OAAO,CAAC,OAAO,CAAC,UAAC,CAAM,EAAE,KAAa;YACpC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACjB,CAAC,CAAC,CAAA;QACF,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QAChC,KAAI,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAA;QAC1B,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;;IAC/C,CAAC;IAED,uBAAM,GAAN,UAAO,KAAa;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC;IAED,0BAAS,GAAT,UAAU,KAAa;QACrB,gCAAW,IAAI,CAAC,GAAG,CAAC,UAAC,GAAa,IAAK,OAAA,GAAG,CAAC,KAAK,CAAC,EAAV,CAAU,CAAC,UAAC;IACrD,CAAC;IAED,KAAK;IACL,0BAAS,GAAT;QACE,IAAM,IAAI,GAAU,EAAE,CAAA;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,CAAC;QACD,YAAW,MAAM,YAAN,MAAM,iCAAI,IAAI,cAAC;IAC5B,CAAC;IAED,KAAK;IACL,sBAAK,GAAL,UAAM,EAAU;QACd,IAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,cAAW,OAAA,EAAE,EAAF,CAAE,CAAC,CAAA;QAC5D,IAAI,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,IAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;wCACjB,CAAC;oBACR,IAAM,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;oBAC9B,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CACpB,UAAC,IAAY,EAAE,CAAS,EAAE,KAAa;wBACrC,OAAA,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;oBAAxB,CAAwB,EAC1B,CAAC,CACF,CAAA;;gBANH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE;4BAA1B,CAAC;iBAOT;YACH,CAAC;QACH,CAAC;QACD,YAAW,MAAM,YAAN,MAAM,iCAAI,GAAG,cAAC;IAC3B,CAAC;IAED,aAAa;IACb,qBAAI,GAAJ;QACE,OAAO,IAAI,CAAC,GAAG,CAAC,UAAC,IAAS,IAAK,OAAA,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAlB,CAAkB,CAAC,CAAA;IACpD,CAAC;IAED,yBAAQ,GAAR;QACQ,IAAA,KAAA,OAA2B,IAAI,IAAA,EAA9B,KAAA,gBAAM,EAAL,CAAC,QAAA,EAAE,CAAC,QAAA,EAAG,KAAA,gBAAM,EAAL,CAAC,QAAA,EAAE,CAAC,QAAA,EAAG,KAAA,gBAAM,EAAL,CAAC,QAAA,EAAE,CAAC,QAAS,CAAA;QACrC,OAAO,iBAAU,CAAC,cAAI,CAAC,cAAI,CAAC,cAAI,CAAC,cAAI,CAAC,cAAI,CAAC,MAAG,CAAA;IAChD,CAAC;IAED,0BAAS,GAAT,UAAU,EAAU,EAAE,EAAU;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,uBAAM,GAAN,UAAO,KAAa;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,sBAAK,GAAL,UAAM,EAAU,EAAE,EAAU;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;IAC5C,CAAC;IACH,aAAC;AAAD,CAAC,AAxED,CAA4B,KAAK,GAwEhC;;AAED;IAAkC,gCAAM;IACtC,sBAAY,KAAa;QACvB,YAAA,MAAK,YACH,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACvE,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EACvE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACpB,SAAA;QACD,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;;IACrD,CAAC;IAED,8BAAO,GAAP;QACE,OAAO,IAAI,CAAC,SAAS,EAAE,CAAA;IACzB,CAAC;IACH,mBAAC;AAAD,CAAC,AAbD,CAAkC,MAAM,GAavC;;AAED;IAAiC,+BAAM;IAIrC,qBAAY,EAAU,EAAE,EAAU;QAChC,YAAA,MAAK,YAAC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAA;QACtE,KAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,KAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;;IACpD,CAAC;IAED,6BAAO,GAAP;QACE,OAAO,IAAI,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;IAClD,CAAC;IACH,kBAAC;AAAD,CAAC,AAdD,CAAiC,MAAM,GActC;;AAED;IAAqC,mCAAM;IAIzC,yBAAY,EAAU,EAAE,EAAU;QAChC,YAAA,MAAK,YAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,SAAA;QACtE,KAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,KAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;;IACxD,CAAC;IAED,iCAAO,GAAP;QACE,OAAO,IAAI,eAAe,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChD,CAAC;IACH,sBAAC;AAAD,CAAC,AAdD,CAAqC,MAAM,GAc1C"}
@@ -0,0 +1,23 @@
1
+ declare class Base extends Array {
2
+ x: number;
3
+ y: number;
4
+ z: number;
5
+ constructor(x: number, y: number, z: number);
6
+ add(v1: Vector | Point): Vector | Point;
7
+ subtract(v1: Vector | Point): Vector | Point;
8
+ }
9
+ declare class Vector extends Base {
10
+ constructor(x: number, y: number, z?: number);
11
+ toString(): string;
12
+ dot(v1: Vector): any;
13
+ cross(v1: Vector): Vector;
14
+ getLength(): number;
15
+ normalize(): Vector;
16
+ crossZ(v1: Vector): number;
17
+ angle(v1: Vector): number;
18
+ }
19
+ declare class Point extends Base {
20
+ constructor(x: number, y: number);
21
+ toString(): string;
22
+ }
23
+ export { Vector, Point };
@@ -0,0 +1,97 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ function isVector(a1, a2) {
17
+ return a1 instanceof Vector && a2 instanceof Vector;
18
+ }
19
+ var Base = /** @class */ (function (_super) {
20
+ __extends(Base, _super);
21
+ function Base(x, y, z) {
22
+ var _this = _super.call(this, 3) || this;
23
+ _this[0] = x;
24
+ _this[1] = y;
25
+ _this[2] = z;
26
+ _this.x = x;
27
+ _this.y = y;
28
+ _this.z = z;
29
+ Object.setPrototypeOf(_this, Base.prototype);
30
+ return _this;
31
+ }
32
+ Base.prototype.add = function (v1) {
33
+ if (isVector(this, v1)) {
34
+ return new Vector(this.x + v1.x, this.y + v1.y);
35
+ }
36
+ var z = this.z + v1.z;
37
+ return new Point((this.x + v1.x) / z, (this.y + v1.y) / z);
38
+ };
39
+ Base.prototype.subtract = function (v1) {
40
+ if (isVector(this, v1)) {
41
+ return new Vector(this.x - v1.x, this.y - v1.y);
42
+ }
43
+ var z = this.z - v1.z;
44
+ return z === 0
45
+ ? new Vector(this.x - v1.x, this.y - v1.y)
46
+ : new Point((this.x - v1.x) / z, (this.y - v1.y) / z);
47
+ };
48
+ return Base;
49
+ }(Array));
50
+ var Vector = /** @class */ (function (_super) {
51
+ __extends(Vector, _super);
52
+ function Vector(x, y, z) {
53
+ var _this = _super.call(this, x, y, z !== null && z !== void 0 ? z : 0) || this;
54
+ Object.setPrototypeOf(_this, Vector.prototype);
55
+ return _this;
56
+ }
57
+ Vector.prototype.toString = function () {
58
+ return 'Vector';
59
+ };
60
+ Vector.prototype.dot = function (v1) {
61
+ var _this = this;
62
+ return v1.reduce(function (prev, cur, index) { return prev + cur * _this[index]; });
63
+ };
64
+ Vector.prototype.cross = function (v1) {
65
+ return new Vector(this.y * v1.z - this.z * v1.y, this.z * v1.x - this.x * v1.z, this.x * v1.y - this.y * v1.x);
66
+ };
67
+ Vector.prototype.getLength = function () {
68
+ return Math.hypot(this.x, this.y);
69
+ };
70
+ Vector.prototype.normalize = function () {
71
+ var len = this.getLength();
72
+ return new Vector(this.x / len, this.y / len);
73
+ };
74
+ Vector.prototype.crossZ = function (v1) {
75
+ return this.x * v1.y - this.y * v1.x;
76
+ };
77
+ Vector.prototype.angle = function (v1) {
78
+ var negative = this.crossZ(v1);
79
+ var r = Math.acos(this.normalize().dot(v1.normalize()));
80
+ return negative >= 0 ? r : -r;
81
+ };
82
+ return Vector;
83
+ }(Base));
84
+ var Point = /** @class */ (function (_super) {
85
+ __extends(Point, _super);
86
+ function Point(x, y) {
87
+ var _this = _super.call(this, x, y, 1) || this;
88
+ Object.setPrototypeOf(_this, Point.prototype);
89
+ return _this;
90
+ }
91
+ Point.prototype.toString = function () {
92
+ return 'Point';
93
+ };
94
+ return Point;
95
+ }(Base));
96
+ export { Vector, Point };
97
+ //# sourceMappingURL=vector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector.js","sourceRoot":"","sources":["../../src/common/vector.ts"],"names":[],"mappings":"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"}
@@ -90,7 +90,8 @@ export declare enum EventType {
90
90
  HISTORY_CHANGE = "history:change",
91
91
  TEXT_UPDATE = "text:update",
92
92
  GRAPH_TRANSFORM = "graph:transform",
93
- GRAPH_RENDERED = "graph:rendered"
93
+ GRAPH_RENDERED = "graph:rendered",
94
+ GRAPH_UPDATED = "graph:updated"
94
95
  }
95
96
  export declare enum OverlapMode {
96
97
  DEFAULT = 0,// 默认
@@ -103,6 +103,7 @@ export var EventType;
103
103
  EventType["TEXT_UPDATE"] = "text:update";
104
104
  EventType["GRAPH_TRANSFORM"] = "graph:transform";
105
105
  EventType["GRAPH_RENDERED"] = "graph:rendered";
106
+ EventType["GRAPH_UPDATED"] = "graph:updated";
106
107
  })(EventType || (EventType = {}));
107
108
  export var OverlapMode;
108
109
  (function (OverlapMode) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constant/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constant/index.ts"],"names":[],"mappings":"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"}
@@ -260,6 +260,12 @@ interface CommonEventArgs {
260
260
  */
261
261
  data: GraphData;
262
262
  };
263
+ /**
264
+ * 画布重新更新后触发. 即 lf.render(graphData)方法被调用后或者改变画布(garphModel)上的属性后触发。
265
+ * 如果是主动修改某个特定属性导致画布更新,想要在画布更新后做一些操作,建议注册事件后在回调函数中及时注销该事件,或者使用once事件代替on事件。
266
+ * 因为其他属性也可能导致画布更新,触发该事件。
267
+ */
268
+ 'graph:updated': Record<string, undefined>;
263
269
  }
264
270
  type AnchorEventArgsPick<T extends 'data' | 'e' | 'nodeModel' | 'edgeModel'> = Pick<{
265
271
  /**
@@ -28,7 +28,6 @@ var EventEmitter = /** @class */ (function () {
28
28
  var _this = this;
29
29
  evts === null || evts === void 0 ? void 0 : evts.split(',').forEach(function (evt) {
30
30
  var events = _this._events[evt] || [];
31
- // TODO: 这是什么???
32
31
  var wildcardEvents = _this._events[WILDCARD] || [];
33
32
  // 实际的处理 emit 方法
34
33
  var doEmit = function (es) {
@@ -1 +1 @@
1
- {"version":3,"file":"eventEmitter.js","sourceRoot":"","sources":["../../src/event/eventEmitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eventEmitter.js","sourceRoot":"","sources":["../../src/event/eventEmitter.ts"],"names":[],"mappings":"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"}
package/es/index.d.ts CHANGED
@@ -8,5 +8,5 @@ export * from './model';
8
8
  export * from './options';
9
9
  export * from './keyboard';
10
10
  export { ElementState, ModelType, ElementType, EventType } from './constant';
11
- export { formateAnchorConnectValidateData } from './util/node';
11
+ export { formatAnchorConnectValidateData } from './util/node';
12
12
  export default LogicFlow;
package/es/index.js CHANGED
@@ -11,6 +11,6 @@ export * from './model';
11
11
  export * from './options';
12
12
  export * from './keyboard';
13
13
  export { ElementState, ModelType, ElementType, EventType } from './constant';
14
- export { formateAnchorConnectValidateData } from './util/node';
14
+ export { formatAnchorConnectValidateData } from './util/node';
15
15
  export default LogicFlow;
16
16
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,EAAE,aAAa,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAA;AAEvC,MAAM,UAAU,QAAQ,CAAI,KAAQ;IAClC,OAAO,YAAY,CAAC,KAAY,CAAC,CAAA;AACnC,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,CAAA;AAE5D,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAE9D,eAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,EAAE,aAAa,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,OAAO,KAAK,aAAa,MAAM,QAAQ,CAAA;AAEvC,MAAM,UAAU,QAAQ,CAAI,KAAQ;IAClC,OAAO,YAAY,CAAC,KAAY,CAAC,CAAA;AACnC,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,CAAA;AAE5D,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA;AAE7D,eAAe,SAAS,CAAA"}
@@ -364,7 +364,7 @@ export declare class GraphModel {
364
364
  */
365
365
  getNodeIncomingNode(nodeId?: string): BaseNodeModel[];
366
366
  /**
367
- * 获取节点连接到的所有目标节点
367
+ * 获取节点所有的下一级节点
368
368
  */
369
369
  getNodeOutgoingNode(nodeId?: string): BaseNodeModel[];
370
370
  /**
@@ -405,6 +405,17 @@ export declare class GraphModel {
405
405
  * @param edgeId string
406
406
  */
407
407
  closeEdgeAnimation(edgeId: string): void;
408
+ /**
409
+ * 获取当前局部渲染模式
410
+ * @returns boolean
411
+ */
412
+ getPartial(): boolean;
413
+ /**
414
+ * 设置是否开启局部渲染模式
415
+ * @param partial boolean
416
+ * @returns
417
+ */
418
+ setPartial(partial: boolean): void;
408
419
  }
409
420
  export declare namespace GraphModel {
410
421
  type NodesMapType = Record<string, {
@@ -354,9 +354,10 @@ var GraphModel = /** @class */ (function () {
354
354
  this.nodes = [];
355
355
  }
356
356
  if (graphData.edges) {
357
+ var currEdgeType_1 = this.edgeType;
357
358
  this.edges = map(graphData.edges, function (edge) {
358
359
  var _a;
359
- var Model = _this.getModel((_a = edge.type) !== null && _a !== void 0 ? _a : '');
360
+ var Model = _this.getModel((_a = edge.type) !== null && _a !== void 0 ? _a : currEdgeType_1);
360
361
  if (!Model) {
361
362
  throw new Error("\u627E\u4E0D\u5230".concat(edge.type, "\u5BF9\u5E94\u7684\u8FB9\u3002"));
362
363
  }
@@ -1164,7 +1165,7 @@ var GraphModel = /** @class */ (function () {
1164
1165
  return nodes;
1165
1166
  };
1166
1167
  /**
1167
- * 获取节点连接到的所有目标节点
1168
+ * 获取节点所有的下一级节点
1168
1169
  */
1169
1170
  GraphModel.prototype.getNodeOutgoingNode = function (nodeId) {
1170
1171
  var _this = this;
@@ -1289,6 +1290,21 @@ var GraphModel = /** @class */ (function () {
1289
1290
  var edgeModel = this.getEdgeModelById(edgeId);
1290
1291
  edgeModel === null || edgeModel === void 0 ? void 0 : edgeModel.closeEdgeAnimation();
1291
1292
  };
1293
+ /**
1294
+ * 获取当前局部渲染模式
1295
+ * @returns boolean
1296
+ */
1297
+ GraphModel.prototype.getPartial = function () {
1298
+ return this.partial;
1299
+ };
1300
+ /**
1301
+ * 设置是否开启局部渲染模式
1302
+ * @param partial boolean
1303
+ * @returns
1304
+ */
1305
+ GraphModel.prototype.setPartial = function (partial) {
1306
+ this.partial = partial;
1307
+ };
1292
1308
  __decorate([
1293
1309
  observable
1294
1310
  ], GraphModel.prototype, "width", void 0);
@@ -1466,6 +1482,9 @@ var GraphModel = /** @class */ (function () {
1466
1482
  __decorate([
1467
1483
  action
1468
1484
  ], GraphModel.prototype, "closeEdgeAnimation", null);
1485
+ __decorate([
1486
+ action
1487
+ ], GraphModel.prototype, "setPartial", null);
1469
1488
  return GraphModel;
1470
1489
  }());
1471
1490
  export { GraphModel };