@logicflow/core 2.0.0-beta.1 → 2.0.0-beta.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.
Files changed (260) hide show
  1. package/.turbo/turbo-build$colon$dev.log +2 -2
  2. package/.turbo/turbo-build.log +8 -8
  3. package/dist/index.min.js +9 -3
  4. package/es/LogicFlow.d.ts +37 -20
  5. package/es/LogicFlow.js +27 -24
  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/event/eventEmitter.js +1 -1
  26. package/es/event/eventEmitter.js.map +1 -1
  27. package/es/index.d.ts +1 -1
  28. package/es/index.js +1 -1
  29. package/es/index.js.map +1 -1
  30. package/es/model/SnaplineModel.d.ts +2 -0
  31. package/es/model/edge/BaseEdgeModel.d.ts +5 -9
  32. package/es/model/edge/BaseEdgeModel.js +26 -23
  33. package/es/model/edge/BaseEdgeModel.js.map +1 -1
  34. package/es/model/edge/BezierEdgeModel.d.ts +2 -0
  35. package/es/model/edge/LineEdgeModel.d.ts +2 -0
  36. package/es/model/edge/PolylineEdgeModel.d.ts +2 -0
  37. package/es/model/node/BaseNodeModel.js +22 -21
  38. package/es/model/node/BaseNodeModel.js.map +1 -1
  39. package/es/model/node/CircleNodeModel.d.ts +2 -0
  40. package/es/model/node/CircleNodeModel.js +2 -2
  41. package/es/model/node/CircleNodeModel.js.map +1 -1
  42. package/es/model/node/DiamondNodeModel.d.ts +2 -0
  43. package/es/model/node/DiamondNodeModel.js +2 -1
  44. package/es/model/node/DiamondNodeModel.js.map +1 -1
  45. package/es/model/node/EllipseNodeModel.d.ts +2 -0
  46. package/es/model/node/EllipseNodeModel.js +2 -1
  47. package/es/model/node/EllipseNodeModel.js.map +1 -1
  48. package/es/model/node/HtmlNodeModel.d.ts +2 -2
  49. package/es/model/node/HtmlNodeModel.js.map +1 -1
  50. package/es/model/node/PolygonNodeModel.d.ts +2 -0
  51. package/es/model/node/PolygonNodeModel.js +2 -2
  52. package/es/model/node/PolygonNodeModel.js.map +1 -1
  53. package/es/model/node/RectNodeModel.d.ts +3 -0
  54. package/es/model/node/RectNodeModel.js +8 -2
  55. package/es/model/node/RectNodeModel.js.map +1 -1
  56. package/es/model/node/TextNodeModel.d.ts +4 -2
  57. package/es/options.d.ts +2 -2
  58. package/es/options.js +2 -11
  59. package/es/options.js.map +1 -1
  60. package/es/tool/tool.js.map +1 -1
  61. package/es/util/edge.d.ts +6 -0
  62. package/es/util/edge.js +15 -1
  63. package/es/util/edge.js.map +1 -1
  64. package/es/util/node.d.ts +6 -2
  65. package/es/util/node.js +22 -7
  66. package/es/util/node.js.map +1 -1
  67. package/es/view/Anchor.d.ts +1 -1
  68. package/es/view/Anchor.js +3 -3
  69. package/es/view/Anchor.js.map +1 -1
  70. package/es/view/Control.js +14 -2
  71. package/es/view/Control.js.map +1 -1
  72. package/es/view/Graph.d.ts +3 -0
  73. package/es/view/Graph.js +38 -3
  74. package/es/view/Graph.js.map +1 -1
  75. package/es/view/edge/AdjustPoint.js +3 -3
  76. package/es/view/edge/AdjustPoint.js.map +1 -1
  77. package/es/view/edge/BaseEdge.d.ts +2 -2
  78. package/es/view/edge/BaseEdge.js +5 -5
  79. package/es/view/node/BaseNode.d.ts +2 -2
  80. package/es/view/node/BaseNode.js +5 -5
  81. package/es/view/node/TextNode.js +1 -1
  82. package/es/view/node/TextNode.js.map +1 -1
  83. package/es/view/shape/Circle.d.ts +9 -1
  84. package/es/view/shape/Circle.js +5 -5
  85. package/es/view/shape/Circle.js.map +1 -1
  86. package/es/view/shape/Ellipse.d.ts +10 -1
  87. package/es/view/shape/Ellipse.js +5 -5
  88. package/es/view/shape/Ellipse.js.map +1 -1
  89. package/es/view/shape/Line.d.ts +14 -1
  90. package/es/view/shape/Line.js +5 -7
  91. package/es/view/shape/Line.js.map +1 -1
  92. package/es/view/shape/Path.d.ts +3 -2
  93. package/es/view/shape/Path.js +3 -3
  94. package/es/view/shape/Path.js.map +1 -1
  95. package/es/view/shape/Polygon.d.ts +5 -3
  96. package/es/view/shape/Polygon.js +6 -6
  97. package/es/view/shape/Polygon.js.map +1 -1
  98. package/es/view/shape/Polyline.d.ts +7 -1
  99. package/es/view/shape/Polyline.js +8 -6
  100. package/es/view/shape/Polyline.js.map +1 -1
  101. package/es/view/shape/Rect.d.ts +11 -13
  102. package/es/view/shape/Rect.js +6 -9
  103. package/es/view/shape/Rect.js.map +1 -1
  104. package/es/view/shape/Text.d.ts +19 -1
  105. package/es/view/shape/Text.js +28 -21
  106. package/es/view/shape/Text.js.map +1 -1
  107. package/es/view/text/BaseText.d.ts +12 -15
  108. package/es/view/text/BaseText.js +37 -27
  109. package/es/view/text/BaseText.js.map +1 -1
  110. package/es/view/text/LineText.d.ts +19 -7
  111. package/es/view/text/LineText.js +62 -54
  112. package/es/view/text/LineText.js.map +1 -1
  113. package/lib/LogicFlow.d.ts +37 -20
  114. package/lib/LogicFlow.js +26 -23
  115. package/lib/LogicFlow.js.map +1 -1
  116. package/lib/common/drag.d.ts +51 -0
  117. package/lib/common/drag.js +148 -0
  118. package/lib/common/drag.js.map +1 -0
  119. package/lib/common/history.d.ts +28 -0
  120. package/lib/common/history.js +95 -0
  121. package/lib/common/history.js.map +1 -0
  122. package/lib/common/index.d.ts +5 -0
  123. package/lib/common/index.js +22 -0
  124. package/lib/common/index.js.map +1 -0
  125. package/lib/common/keyboard.d.ts +34 -0
  126. package/lib/common/keyboard.js +86 -0
  127. package/lib/common/keyboard.js.map +1 -0
  128. package/lib/common/matrix.d.ts +30 -0
  129. package/lib/common/matrix.js +158 -0
  130. package/lib/common/matrix.js.map +1 -0
  131. package/lib/common/vector.d.ts +23 -0
  132. package/lib/common/vector.js +101 -0
  133. package/lib/common/vector.js.map +1 -0
  134. package/lib/event/eventEmitter.js +1 -1
  135. package/lib/event/eventEmitter.js.map +1 -1
  136. package/lib/index.d.ts +1 -1
  137. package/lib/index.js +2 -2
  138. package/lib/index.js.map +1 -1
  139. package/lib/model/SnaplineModel.d.ts +2 -0
  140. package/lib/model/edge/BaseEdgeModel.d.ts +5 -9
  141. package/lib/model/edge/BaseEdgeModel.js +25 -22
  142. package/lib/model/edge/BaseEdgeModel.js.map +1 -1
  143. package/lib/model/edge/BezierEdgeModel.d.ts +2 -0
  144. package/lib/model/edge/LineEdgeModel.d.ts +2 -0
  145. package/lib/model/edge/PolylineEdgeModel.d.ts +2 -0
  146. package/lib/model/node/BaseNodeModel.js +21 -20
  147. package/lib/model/node/BaseNodeModel.js.map +1 -1
  148. package/lib/model/node/CircleNodeModel.d.ts +2 -0
  149. package/lib/model/node/CircleNodeModel.js +2 -2
  150. package/lib/model/node/CircleNodeModel.js.map +1 -1
  151. package/lib/model/node/DiamondNodeModel.d.ts +2 -0
  152. package/lib/model/node/DiamondNodeModel.js +2 -1
  153. package/lib/model/node/DiamondNodeModel.js.map +1 -1
  154. package/lib/model/node/EllipseNodeModel.d.ts +2 -0
  155. package/lib/model/node/EllipseNodeModel.js +2 -1
  156. package/lib/model/node/EllipseNodeModel.js.map +1 -1
  157. package/lib/model/node/HtmlNodeModel.d.ts +2 -2
  158. package/lib/model/node/HtmlNodeModel.js.map +1 -1
  159. package/lib/model/node/PolygonNodeModel.d.ts +2 -0
  160. package/lib/model/node/PolygonNodeModel.js +2 -2
  161. package/lib/model/node/PolygonNodeModel.js.map +1 -1
  162. package/lib/model/node/RectNodeModel.d.ts +3 -0
  163. package/lib/model/node/RectNodeModel.js +8 -2
  164. package/lib/model/node/RectNodeModel.js.map +1 -1
  165. package/lib/model/node/TextNodeModel.d.ts +4 -2
  166. package/lib/options.d.ts +2 -2
  167. package/lib/options.js +2 -11
  168. package/lib/options.js.map +1 -1
  169. package/lib/tool/tool.js.map +1 -1
  170. package/lib/util/edge.d.ts +6 -0
  171. package/lib/util/edge.js +16 -1
  172. package/lib/util/edge.js.map +1 -1
  173. package/lib/util/node.d.ts +6 -2
  174. package/lib/util/node.js +24 -9
  175. package/lib/util/node.js.map +1 -1
  176. package/lib/view/Anchor.d.ts +1 -1
  177. package/lib/view/Anchor.js +2 -2
  178. package/lib/view/Anchor.js.map +1 -1
  179. package/lib/view/Control.js +14 -2
  180. package/lib/view/Control.js.map +1 -1
  181. package/lib/view/Graph.d.ts +3 -0
  182. package/lib/view/Graph.js +37 -2
  183. package/lib/view/Graph.js.map +1 -1
  184. package/lib/view/edge/AdjustPoint.js +2 -2
  185. package/lib/view/edge/AdjustPoint.js.map +1 -1
  186. package/lib/view/edge/BaseEdge.d.ts +2 -2
  187. package/lib/view/edge/BaseEdge.js +5 -5
  188. package/lib/view/node/BaseNode.d.ts +2 -2
  189. package/lib/view/node/BaseNode.js +5 -5
  190. package/lib/view/node/TextNode.js +1 -1
  191. package/lib/view/node/TextNode.js.map +1 -1
  192. package/lib/view/shape/Circle.d.ts +9 -1
  193. package/lib/view/shape/Circle.js +5 -5
  194. package/lib/view/shape/Circle.js.map +1 -1
  195. package/lib/view/shape/Ellipse.d.ts +10 -1
  196. package/lib/view/shape/Ellipse.js +5 -5
  197. package/lib/view/shape/Ellipse.js.map +1 -1
  198. package/lib/view/shape/Line.d.ts +14 -1
  199. package/lib/view/shape/Line.js +5 -7
  200. package/lib/view/shape/Line.js.map +1 -1
  201. package/lib/view/shape/Path.d.ts +3 -2
  202. package/lib/view/shape/Path.js +3 -3
  203. package/lib/view/shape/Path.js.map +1 -1
  204. package/lib/view/shape/Polygon.d.ts +5 -3
  205. package/lib/view/shape/Polygon.js +6 -6
  206. package/lib/view/shape/Polygon.js.map +1 -1
  207. package/lib/view/shape/Polyline.d.ts +7 -1
  208. package/lib/view/shape/Polyline.js +8 -6
  209. package/lib/view/shape/Polyline.js.map +1 -1
  210. package/lib/view/shape/Rect.d.ts +11 -13
  211. package/lib/view/shape/Rect.js +6 -9
  212. package/lib/view/shape/Rect.js.map +1 -1
  213. package/lib/view/shape/Text.d.ts +19 -1
  214. package/lib/view/shape/Text.js +29 -21
  215. package/lib/view/shape/Text.js.map +1 -1
  216. package/lib/view/text/BaseText.d.ts +12 -15
  217. package/lib/view/text/BaseText.js +40 -27
  218. package/lib/view/text/BaseText.js.map +1 -1
  219. package/lib/view/text/LineText.d.ts +19 -7
  220. package/lib/view/text/LineText.js +62 -57
  221. package/lib/view/text/LineText.js.map +1 -1
  222. package/package.json +2 -1
  223. package/src/LogicFlow.tsx +97 -55
  224. package/src/common/drag.ts +205 -0
  225. package/src/common/history.ts +108 -0
  226. package/src/common/index.ts +6 -0
  227. package/src/common/keyboard.ts +108 -0
  228. package/src/common/matrix.ts +122 -0
  229. package/src/common/vector.ts +93 -0
  230. package/src/event/eventEmitter.ts +1 -1
  231. package/src/index.ts +1 -1
  232. package/src/model/edge/BaseEdgeModel.ts +31 -21
  233. package/src/model/node/BaseNodeModel.ts +27 -19
  234. package/src/model/node/CircleNodeModel.ts +2 -2
  235. package/src/model/node/DiamondNodeModel.ts +2 -0
  236. package/src/model/node/EllipseNodeModel.ts +2 -0
  237. package/src/model/node/HtmlNodeModel.ts +2 -2
  238. package/src/model/node/PolygonNodeModel.ts +2 -2
  239. package/src/model/node/RectNodeModel.ts +9 -2
  240. package/src/options.ts +4 -13
  241. package/src/tool/tool.ts +1 -1
  242. package/src/util/edge.ts +26 -1
  243. package/src/util/node.ts +29 -8
  244. package/src/view/Anchor.tsx +4 -4
  245. package/src/view/Control.tsx +5 -2
  246. package/src/view/Graph.tsx +14 -2
  247. package/src/view/edge/AdjustPoint.tsx +3 -3
  248. package/src/view/edge/BaseEdge.tsx +7 -7
  249. package/src/view/node/BaseNode.tsx +7 -7
  250. package/src/view/node/TextNode.tsx +1 -1
  251. package/src/view/shape/Circle.tsx +21 -7
  252. package/src/view/shape/Ellipse.tsx +20 -6
  253. package/src/view/shape/Line.tsx +24 -9
  254. package/src/view/shape/Path.tsx +9 -6
  255. package/src/view/shape/Polygon.tsx +13 -10
  256. package/src/view/shape/Polyline.tsx +20 -8
  257. package/src/view/shape/Rect.tsx +19 -19
  258. package/src/view/shape/Text.tsx +64 -33
  259. package/src/view/text/BaseText.tsx +67 -41
  260. package/src/view/text/LineText.tsx +94 -80
@@ -0,0 +1,92 @@
1
+ import { cloneDeep, debounce, isEqual, last } from 'lodash-es';
2
+ import { deepObserve } from 'mobx-utils';
3
+ var History = /** @class */ (function () {
4
+ function History(eventCenter) {
5
+ this.undos = [];
6
+ this.redos = [];
7
+ this.stopWatch = null;
8
+ this.curData = null;
9
+ this.maxSize = 50;
10
+ // 发生数据变化后,最多再等 500ms,把距离上次的数据变更存储起来。
11
+ // 所以 waitTime 值越小,History 对数据变化越敏感,存的 undos 数据就越细
12
+ this.waitTime = 100;
13
+ this.eventCenter = eventCenter;
14
+ }
15
+ History.prototype.add = function (data) {
16
+ if (isEqual(last(this.undos), data))
17
+ return;
18
+ this.undos.push(data);
19
+ // 因为 undo 的时候会触发 add.
20
+ // 所以需要区分这个 add 是 undo 触发的还是用户正常操作触发的
21
+ // 如果是用户正常操作触发的,需要清空 redos
22
+ if (!isEqual(this.curData, data)) {
23
+ this.redos = [];
24
+ }
25
+ // this.eventCenter.emit(EventType.HISTORY_CHANGE, {
26
+ // data: {
27
+ // undos: this.undos,
28
+ // redos: this.redos,
29
+ // undoAble: this.undos.length > 1,
30
+ // redoAble: this.redos.length > 0,
31
+ // },
32
+ // })
33
+ if (this.undos.length > this.maxSize) {
34
+ this.undos.shift();
35
+ }
36
+ };
37
+ History.prototype.undoAble = function () {
38
+ return this.undos.length > 1;
39
+ };
40
+ /**
41
+ * undo 方法触发:
42
+ * graphModel 重新渲染 nodes 和 edges
43
+ * graphModel 发生变化,触发 watch
44
+ * watch 触发 add
45
+ */
46
+ History.prototype.undo = function () {
47
+ if (!this.undoAble())
48
+ return;
49
+ var preData = this.undos.pop();
50
+ if (preData) {
51
+ this.redos.push(preData);
52
+ }
53
+ var curData = this.undos.pop();
54
+ if (curData) {
55
+ this.curData = cloneDeep(curData);
56
+ }
57
+ return curData;
58
+ };
59
+ History.prototype.redoAble = function () {
60
+ return this.redos.length > 0;
61
+ };
62
+ History.prototype.redo = function () {
63
+ if (!this.redoAble())
64
+ return;
65
+ var curData = this.redos.pop();
66
+ if (curData) {
67
+ this.curData = cloneDeep(curData);
68
+ }
69
+ return curData;
70
+ };
71
+ History.prototype.watch = function (model) {
72
+ var _this = this;
73
+ this.stopWatch && this.stopWatch();
74
+ // 把当前 watch 的 model 转换一下数据存起来,无需清空 redos
75
+ var historyData = model.modelToHistoryData();
76
+ if (historyData) {
77
+ this.undos.push(historyData);
78
+ }
79
+ this.stopWatch = deepObserve(model, debounce(function () {
80
+ // 数据变更后,把最新的当前 model 数据存起来,并清空 redos
81
+ // 因为这个回调函数的触发,一般是用户交互而引起的,所以按照正常逻辑需要清空 redos
82
+ var data = model.modelToHistoryData();
83
+ if (data) {
84
+ _this.add(data);
85
+ }
86
+ }, this.waitTime));
87
+ };
88
+ return History;
89
+ }());
90
+ export { History };
91
+ export default History;
92
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/common/history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './drag';
2
+ export * from './history';
3
+ export * from './keyboard';
4
+ export * from './matrix';
5
+ export * from './vector';
@@ -0,0 +1,6 @@
1
+ export * from './drag';
2
+ export * from './history';
3
+ export * from './keyboard';
4
+ export * from './matrix';
5
+ export * from './vector';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAE1B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { MousetrapInstance } from 'mousetrap';
2
+ import LogicFlow from '..';
3
+ export declare class Keyboard {
4
+ private target;
5
+ readonly mousetrap: MousetrapInstance;
6
+ options: Required<Keyboard.Options>;
7
+ constructor(options: Keyboard.Options);
8
+ protected formatKey(key: string): string;
9
+ private getKeys;
10
+ get disabled(): boolean;
11
+ on(keys: string | string[], callback: Keyboard.HandlerFunc, action?: Keyboard.ActionType): void;
12
+ off(keys: string | string[], action?: Keyboard.ActionType): void;
13
+ enable(force: boolean): void;
14
+ disable(): void;
15
+ initShortcuts(): void;
16
+ }
17
+ export declare namespace Keyboard {
18
+ type ActionType = 'keypress' | 'keydown' | 'keyup';
19
+ type HandlerFunc = (e: KeyboardEvent) => void;
20
+ interface Shortcut {
21
+ keys: string | string[];
22
+ callback: HandlerFunc;
23
+ action?: ActionType;
24
+ }
25
+ interface KeyboardDef {
26
+ enabled: boolean;
27
+ shortcuts?: Shortcut | Shortcut[];
28
+ }
29
+ interface Options {
30
+ lf: LogicFlow;
31
+ keyboard?: KeyboardDef;
32
+ }
33
+ }
34
+ export default Keyboard;
@@ -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":"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"}
@@ -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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"}
@@ -28,7 +28,7 @@ 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: 这是什么???
31
+ // TODO: 这是什么??? +1
32
32
  var wildcardEvents = _this._events[WILDCARD] || [];
33
33
  // 实际的处理 emit 方法
34
34
  var doEmit = function (es) {
@@ -1 +1 @@
1
- {"version":3,"file":"eventEmitter.js","sourceRoot":"","sources":["../../src/event/eventEmitter.ts"],"names":[],"mappings":"AAqBA,IAAM,QAAQ,GAAG,GAAG,CAAA;AAEpB,mBAAmB;AACnB;IAAA;QACU,YAAO,GAAe,EAAE,CAAA;IA6HlC,CAAC;IA/GC,yBAAE,GAAF,UAAG,GAAW,EAAE,QAAuB,EAAE,IAAc;QAAvD,iBAWC;QAVC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,UAAC,KAAK;YAC5B,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YACpB,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,KAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;YAC1B,CAAC;YACD,KAAI,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC,IAAI,CAAC;gBACxB,QAAQ,UAAA;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAYD,2BAAI,GAAJ,UAAK,GAAW,EAAE,QAAuB;QAAzC,iBAKC;QAJC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,UAAC,KAAK;YAC5B,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YACpB,KAAI,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC;IASD,2BAAI,GAAJ,UAAK,IAAY,EAAE,SAAwB;QAA3C,iBA2BC;QA1BC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,UAAC,GAAG;YAC3B,IAAM,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;YACtC,gBAAgB;YAChB,IAAM,cAAc,GAAG,KAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;YACnD,gBAAgB;YAChB,IAAM,MAAM,GAAG,UAAC,EAAe;gBACvB,IAAA,MAAM,GAAK,EAAE,OAAP,CAAO;gBACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAChC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACX,SAAQ;oBACV,CAAC;oBACK,IAAA,KAAqB,EAAE,CAAC,CAAC,CAAC,EAAxB,QAAQ,cAAA,EAAE,IAAI,UAAU,CAAA;oBAChC,IAAI,IAAI,EAAE,CAAC;wBACT,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;wBACf,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BACpB,OAAO,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;wBAC1B,CAAC;wBACD,MAAM,EAAE,CAAA;wBACR,CAAC,EAAE,CAAA;oBACL,CAAC;oBACD,QAAQ,CAAC,KAAK,CAAC,KAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC,CAAA;YACD,MAAM,CAAC,MAAM,CAAC,CAAA;YACd,MAAM,CAAC,cAAc,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAgBD,0BAAG,GAAH,UAAI,IAAY,EAAE,QAAwB;QAA1C,iBAyBC;QAxBC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,aAAa;YACb,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,8BAA8B;gBAC9B,OAAO,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC1B,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,IAAM,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;gBAChC,IAAA,QAAM,GAAK,MAAM,OAAX,CAAW;gBACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAChC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACpC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;wBACnB,QAAM,EAAE,CAAA;wBACR,CAAC,EAAE,CAAA;oBACL,CAAC;gBACH,CAAC;gBACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,OAAO,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,aAAa;IACb,gCAAS,GAAT;QACE,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACH,mBAAC;AAAD,CAAC,AA9HD,IA8HC;;AAED,OAAO,EAAE,YAAY,EAAa,CAAA"}
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"}
@@ -21,6 +21,8 @@ export declare class SnaplineModel {
21
21
  radius?: number | undefined;
22
22
  rx?: number | undefined;
23
23
  ry?: number | undefined;
24
+ width?: number | undefined;
25
+ height?: number | undefined;
24
26
  path?: string | undefined;
25
27
  };
26
28
  private getCenterSnapLine;