@logicflow/core 2.0.0-beta.0 → 2.0.0-beta.10

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 (479) hide show
  1. package/.turbo/turbo-build$colon$dev.log +2 -2
  2. package/.turbo/turbo-build.log +16 -22
  3. package/__tests__/bugs/1545-spec.test.ts +19 -15
  4. package/__tests__/util/edge.test.ts +57 -57
  5. package/dist/index.min.js +32 -0
  6. package/dist/index.min.js.map +1 -0
  7. package/es/LogicFlow.d.ts +88 -40
  8. package/es/LogicFlow.js +38 -33
  9. package/es/LogicFlow.js.map +1 -1
  10. package/es/algorithm/edge.js.map +1 -1
  11. package/es/algorithm/index.d.ts +2 -0
  12. package/es/algorithm/index.js +2 -0
  13. package/es/algorithm/index.js.map +1 -1
  14. package/es/algorithm/outline.d.ts +1 -1
  15. package/es/common/drag.d.ts +51 -0
  16. package/es/common/drag.js +145 -0
  17. package/es/common/drag.js.map +1 -0
  18. package/es/common/history.d.ts +28 -0
  19. package/es/common/history.js +92 -0
  20. package/es/common/history.js.map +1 -0
  21. package/es/common/index.d.ts +5 -0
  22. package/es/common/index.js +6 -0
  23. package/es/common/index.js.map +1 -0
  24. package/es/common/keyboard.d.ts +34 -0
  25. package/es/common/keyboard.js +80 -0
  26. package/es/common/keyboard.js.map +1 -0
  27. package/es/common/matrix.d.ts +30 -0
  28. package/es/common/matrix.js +155 -0
  29. package/es/common/matrix.js.map +1 -0
  30. package/es/common/vector.d.ts +23 -0
  31. package/es/common/vector.js +97 -0
  32. package/es/common/vector.js.map +1 -0
  33. package/es/constant/index.d.ts +39 -2
  34. package/es/constant/index.js +41 -1
  35. package/es/constant/index.js.map +1 -1
  36. package/es/event/eventArgs.d.ts +103 -25
  37. package/es/event/eventEmitter.d.ts +2 -2
  38. package/es/event/eventEmitter.js +0 -1
  39. package/es/event/eventEmitter.js.map +1 -1
  40. package/es/index.d.ts +6 -1
  41. package/es/index.js +6 -1
  42. package/es/index.js.map +1 -1
  43. package/es/keyboard/index.d.ts +1 -0
  44. package/es/keyboard/index.js +1 -0
  45. package/es/keyboard/index.js.map +1 -1
  46. package/es/keyboard/shortcut.d.ts +8 -0
  47. package/es/keyboard/shortcut.js +70 -8
  48. package/es/keyboard/shortcut.js.map +1 -1
  49. package/es/model/BaseModel.d.ts +16 -7
  50. package/es/model/EditConfigModel.d.ts +97 -36
  51. package/es/model/EditConfigModel.js +169 -82
  52. package/es/model/EditConfigModel.js.map +1 -1
  53. package/es/model/GraphModel.d.ts +36 -14
  54. package/es/model/GraphModel.js +60 -10
  55. package/es/model/GraphModel.js.map +1 -1
  56. package/es/model/SnaplineModel.d.ts +2 -0
  57. package/es/model/TransformModel.js +1 -1
  58. package/es/model/TransformModel.js.map +1 -1
  59. package/es/model/edge/BaseEdgeModel.d.ts +21 -17
  60. package/es/model/edge/BaseEdgeModel.js +64 -42
  61. package/es/model/edge/BaseEdgeModel.js.map +1 -1
  62. package/es/model/edge/BezierEdgeModel.d.ts +5 -3
  63. package/es/model/edge/BezierEdgeModel.js +7 -3
  64. package/es/model/edge/BezierEdgeModel.js.map +1 -1
  65. package/es/model/edge/LineEdgeModel.d.ts +2 -0
  66. package/es/model/edge/LineEdgeModel.js +2 -1
  67. package/es/model/edge/LineEdgeModel.js.map +1 -1
  68. package/es/model/edge/PolylineEdgeModel.d.ts +5 -3
  69. package/es/model/edge/PolylineEdgeModel.js +22 -15
  70. package/es/model/edge/PolylineEdgeModel.js.map +1 -1
  71. package/es/model/node/BaseNodeModel.d.ts +42 -14
  72. package/es/model/node/BaseNodeModel.js +62 -48
  73. package/es/model/node/BaseNodeModel.js.map +1 -1
  74. package/es/model/node/CircleNodeModel.d.ts +4 -3
  75. package/es/model/node/CircleNodeModel.js +4 -7
  76. package/es/model/node/CircleNodeModel.js.map +1 -1
  77. package/es/model/node/DiamondNodeModel.d.ts +5 -4
  78. package/es/model/node/DiamondNodeModel.js +4 -6
  79. package/es/model/node/DiamondNodeModel.js.map +1 -1
  80. package/es/model/node/EllipseNodeModel.d.ts +5 -4
  81. package/es/model/node/EllipseNodeModel.js +4 -6
  82. package/es/model/node/EllipseNodeModel.js.map +1 -1
  83. package/es/model/node/HtmlNodeModel.d.ts +4 -5
  84. package/es/model/node/HtmlNodeModel.js +2 -12
  85. package/es/model/node/HtmlNodeModel.js.map +1 -1
  86. package/es/model/node/PolygonNodeModel.d.ts +5 -4
  87. package/es/model/node/PolygonNodeModel.js +4 -7
  88. package/es/model/node/PolygonNodeModel.js.map +1 -1
  89. package/es/model/node/RectNodeModel.d.ts +7 -5
  90. package/es/model/node/RectNodeModel.js +10 -7
  91. package/es/model/node/RectNodeModel.js.map +1 -1
  92. package/es/model/node/TextNodeModel.d.ts +17 -9
  93. package/es/model/node/TextNodeModel.js +2 -1
  94. package/es/model/node/TextNodeModel.js.map +1 -1
  95. package/es/options.d.ts +11 -14
  96. package/es/options.js +3 -42
  97. package/es/options.js.map +1 -1
  98. package/es/tool/MultipleSelectTool.d.ts +1 -1
  99. package/es/tool/MultipleSelectTool.js +5 -5
  100. package/es/tool/MultipleSelectTool.js.map +1 -1
  101. package/es/tool/TextEditTool.d.ts +3 -3
  102. package/es/tool/TextEditTool.js +2 -2
  103. package/es/tool/TextEditTool.js.map +1 -1
  104. package/es/tool/index.d.ts +24 -2
  105. package/es/tool/index.js +82 -2
  106. package/es/tool/index.js.map +1 -1
  107. package/es/util/drag.d.ts +5 -5
  108. package/es/util/drag.js +3 -1
  109. package/es/util/drag.js.map +1 -1
  110. package/es/util/edge.d.ts +9 -2
  111. package/es/util/edge.js +23 -12
  112. package/es/util/edge.js.map +1 -1
  113. package/es/util/index.d.ts +1 -0
  114. package/es/util/index.js +1 -0
  115. package/es/util/index.js.map +1 -1
  116. package/es/util/node.d.ts +8 -7
  117. package/es/util/node.js +26 -7
  118. package/es/util/node.js.map +1 -1
  119. package/es/util/resize.d.ts +32 -0
  120. package/es/util/resize.js +197 -0
  121. package/es/util/resize.js.map +1 -0
  122. package/es/view/Anchor.d.ts +6 -7
  123. package/es/view/Anchor.js +6 -3
  124. package/es/view/Anchor.js.map +1 -1
  125. package/es/view/Control.d.ts +1 -1
  126. package/es/view/Control.js +88 -39
  127. package/es/view/Control.js.map +1 -1
  128. package/es/view/Graph.d.ts +5 -1
  129. package/es/view/Graph.js +45 -5
  130. package/es/view/Graph.js.map +1 -1
  131. package/es/view/Rotate.js +2 -1
  132. package/es/view/Rotate.js.map +1 -1
  133. package/es/view/behavior/index.d.ts +2 -0
  134. package/es/view/behavior/index.js +3 -0
  135. package/es/view/behavior/index.js.map +1 -0
  136. package/es/view/behavior/snapline.d.ts +3 -0
  137. package/es/{tool → view/behavior}/snapline.js +0 -1
  138. package/es/view/behavior/snapline.js.map +1 -0
  139. package/es/view/edge/AdjustPoint.js +12 -23
  140. package/es/view/edge/AdjustPoint.js.map +1 -1
  141. package/es/view/edge/BaseEdge.d.ts +2 -2
  142. package/es/view/edge/BaseEdge.js +30 -22
  143. package/es/view/edge/BaseEdge.js.map +1 -1
  144. package/es/view/node/BaseNode.d.ts +4 -4
  145. package/es/view/node/BaseNode.js +33 -24
  146. package/es/view/node/BaseNode.js.map +1 -1
  147. package/es/view/node/CircleNode.d.ts +1 -1
  148. package/es/view/node/CircleNode.js.map +1 -1
  149. package/es/view/node/DiamondNode.d.ts +1 -1
  150. package/es/view/node/DiamondNode.js.map +1 -1
  151. package/es/view/node/EllipseNode.d.ts +1 -1
  152. package/es/view/node/EllipseNode.js.map +1 -1
  153. package/es/view/node/HtmlNode.d.ts +1 -1
  154. package/es/view/node/HtmlNode.js +2 -2
  155. package/es/view/node/HtmlNode.js.map +1 -1
  156. package/es/view/node/PolygonNode.d.ts +1 -1
  157. package/es/view/node/PolygonNode.js.map +1 -1
  158. package/es/view/node/RectNode.d.ts +1 -1
  159. package/es/view/node/RectNode.js.map +1 -1
  160. package/es/view/node/TextNode.d.ts +1 -1
  161. package/es/view/node/TextNode.js +1 -1
  162. package/es/view/node/TextNode.js.map +1 -1
  163. package/es/view/overlay/CanvasOverlay.js +5 -4
  164. package/es/view/overlay/CanvasOverlay.js.map +1 -1
  165. package/es/view/overlay/Grid.d.ts +35 -20
  166. package/es/view/overlay/Grid.js +35 -26
  167. package/es/view/overlay/Grid.js.map +1 -1
  168. package/es/view/overlay/ToolOverlay.d.ts +1 -1
  169. package/es/view/overlay/ToolOverlay.js +1 -1
  170. package/es/view/overlay/ToolOverlay.js.map +1 -1
  171. package/es/view/shape/Circle.d.ts +9 -1
  172. package/es/view/shape/Circle.js +5 -5
  173. package/es/view/shape/Circle.js.map +1 -1
  174. package/es/view/shape/Ellipse.d.ts +10 -1
  175. package/es/view/shape/Ellipse.js +5 -5
  176. package/es/view/shape/Ellipse.js.map +1 -1
  177. package/es/view/shape/Line.d.ts +14 -1
  178. package/es/view/shape/Line.js +5 -7
  179. package/es/view/shape/Line.js.map +1 -1
  180. package/es/view/shape/Path.d.ts +3 -2
  181. package/es/view/shape/Path.js +3 -3
  182. package/es/view/shape/Path.js.map +1 -1
  183. package/es/view/shape/Polygon.d.ts +5 -3
  184. package/es/view/shape/Polygon.js +6 -6
  185. package/es/view/shape/Polygon.js.map +1 -1
  186. package/es/view/shape/Polyline.d.ts +7 -1
  187. package/es/view/shape/Polyline.js +8 -6
  188. package/es/view/shape/Polyline.js.map +1 -1
  189. package/es/view/shape/Rect.d.ts +11 -13
  190. package/es/view/shape/Rect.js +6 -9
  191. package/es/view/shape/Rect.js.map +1 -1
  192. package/es/view/shape/Text.d.ts +19 -1
  193. package/es/view/shape/Text.js +28 -21
  194. package/es/view/shape/Text.js.map +1 -1
  195. package/es/view/text/BaseText.d.ts +12 -15
  196. package/es/view/text/BaseText.js +43 -29
  197. package/es/view/text/BaseText.js.map +1 -1
  198. package/es/view/text/LineText.d.ts +19 -7
  199. package/es/view/text/LineText.js +62 -54
  200. package/es/view/text/LineText.js.map +1 -1
  201. package/lib/LogicFlow.d.ts +88 -40
  202. package/lib/LogicFlow.js +40 -35
  203. package/lib/LogicFlow.js.map +1 -1
  204. package/lib/algorithm/edge.js.map +1 -1
  205. package/lib/algorithm/index.d.ts +2 -0
  206. package/lib/algorithm/index.js +17 -1
  207. package/lib/algorithm/index.js.map +1 -1
  208. package/lib/algorithm/outline.d.ts +1 -1
  209. package/lib/common/drag.d.ts +51 -0
  210. package/lib/common/drag.js +148 -0
  211. package/lib/common/drag.js.map +1 -0
  212. package/lib/common/history.d.ts +28 -0
  213. package/lib/common/history.js +95 -0
  214. package/lib/common/history.js.map +1 -0
  215. package/lib/common/index.d.ts +5 -0
  216. package/lib/common/index.js +22 -0
  217. package/lib/common/index.js.map +1 -0
  218. package/lib/common/keyboard.d.ts +34 -0
  219. package/lib/common/keyboard.js +86 -0
  220. package/lib/common/keyboard.js.map +1 -0
  221. package/lib/common/matrix.d.ts +30 -0
  222. package/lib/common/matrix.js +158 -0
  223. package/lib/common/matrix.js.map +1 -0
  224. package/lib/common/vector.d.ts +23 -0
  225. package/lib/common/vector.js +101 -0
  226. package/lib/common/vector.js.map +1 -0
  227. package/lib/constant/index.d.ts +39 -2
  228. package/lib/constant/index.js +42 -2
  229. package/lib/constant/index.js.map +1 -1
  230. package/lib/event/eventArgs.d.ts +103 -25
  231. package/lib/event/eventEmitter.d.ts +2 -2
  232. package/lib/event/eventEmitter.js +0 -1
  233. package/lib/event/eventEmitter.js.map +1 -1
  234. package/lib/index.d.ts +6 -1
  235. package/lib/index.js +7 -2
  236. package/lib/index.js.map +1 -1
  237. package/lib/keyboard/index.d.ts +1 -0
  238. package/lib/keyboard/index.js +15 -0
  239. package/lib/keyboard/index.js.map +1 -1
  240. package/lib/keyboard/shortcut.d.ts +8 -0
  241. package/lib/keyboard/shortcut.js +75 -9
  242. package/lib/keyboard/shortcut.js.map +1 -1
  243. package/lib/model/BaseModel.d.ts +16 -7
  244. package/lib/model/EditConfigModel.d.ts +97 -36
  245. package/lib/model/EditConfigModel.js +168 -81
  246. package/lib/model/EditConfigModel.js.map +1 -1
  247. package/lib/model/GraphModel.d.ts +36 -14
  248. package/lib/model/GraphModel.js +59 -9
  249. package/lib/model/GraphModel.js.map +1 -1
  250. package/lib/model/SnaplineModel.d.ts +2 -0
  251. package/lib/model/TransformModel.js +1 -1
  252. package/lib/model/TransformModel.js.map +1 -1
  253. package/lib/model/edge/BaseEdgeModel.d.ts +21 -17
  254. package/lib/model/edge/BaseEdgeModel.js +61 -39
  255. package/lib/model/edge/BaseEdgeModel.js.map +1 -1
  256. package/lib/model/edge/BezierEdgeModel.d.ts +5 -3
  257. package/lib/model/edge/BezierEdgeModel.js +6 -2
  258. package/lib/model/edge/BezierEdgeModel.js.map +1 -1
  259. package/lib/model/edge/LineEdgeModel.d.ts +2 -0
  260. package/lib/model/edge/LineEdgeModel.js +2 -1
  261. package/lib/model/edge/LineEdgeModel.js.map +1 -1
  262. package/lib/model/edge/PolylineEdgeModel.d.ts +5 -3
  263. package/lib/model/edge/PolylineEdgeModel.js +21 -14
  264. package/lib/model/edge/PolylineEdgeModel.js.map +1 -1
  265. package/lib/model/node/BaseNodeModel.d.ts +42 -14
  266. package/lib/model/node/BaseNodeModel.js +60 -46
  267. package/lib/model/node/BaseNodeModel.js.map +1 -1
  268. package/lib/model/node/CircleNodeModel.d.ts +4 -3
  269. package/lib/model/node/CircleNodeModel.js +4 -7
  270. package/lib/model/node/CircleNodeModel.js.map +1 -1
  271. package/lib/model/node/DiamondNodeModel.d.ts +5 -4
  272. package/lib/model/node/DiamondNodeModel.js +4 -6
  273. package/lib/model/node/DiamondNodeModel.js.map +1 -1
  274. package/lib/model/node/EllipseNodeModel.d.ts +5 -4
  275. package/lib/model/node/EllipseNodeModel.js +4 -6
  276. package/lib/model/node/EllipseNodeModel.js.map +1 -1
  277. package/lib/model/node/HtmlNodeModel.d.ts +4 -5
  278. package/lib/model/node/HtmlNodeModel.js +2 -12
  279. package/lib/model/node/HtmlNodeModel.js.map +1 -1
  280. package/lib/model/node/PolygonNodeModel.d.ts +5 -4
  281. package/lib/model/node/PolygonNodeModel.js +4 -7
  282. package/lib/model/node/PolygonNodeModel.js.map +1 -1
  283. package/lib/model/node/RectNodeModel.d.ts +7 -5
  284. package/lib/model/node/RectNodeModel.js +10 -7
  285. package/lib/model/node/RectNodeModel.js.map +1 -1
  286. package/lib/model/node/TextNodeModel.d.ts +17 -9
  287. package/lib/model/node/TextNodeModel.js +2 -1
  288. package/lib/model/node/TextNodeModel.js.map +1 -1
  289. package/lib/options.d.ts +11 -14
  290. package/lib/options.js +3 -42
  291. package/lib/options.js.map +1 -1
  292. package/lib/tool/MultipleSelectTool.d.ts +1 -1
  293. package/lib/tool/MultipleSelectTool.js +5 -5
  294. package/lib/tool/MultipleSelectTool.js.map +1 -1
  295. package/lib/tool/TextEditTool.d.ts +3 -3
  296. package/lib/tool/TextEditTool.js +4 -4
  297. package/lib/tool/TextEditTool.js.map +1 -1
  298. package/lib/tool/index.d.ts +24 -2
  299. package/lib/tool/index.js +85 -15
  300. package/lib/tool/index.js.map +1 -1
  301. package/lib/util/drag.d.ts +5 -5
  302. package/lib/util/drag.js +3 -1
  303. package/lib/util/drag.js.map +1 -1
  304. package/lib/util/edge.d.ts +9 -2
  305. package/lib/util/edge.js +27 -15
  306. package/lib/util/edge.js.map +1 -1
  307. package/lib/util/index.d.ts +1 -0
  308. package/lib/util/index.js +1 -0
  309. package/lib/util/index.js.map +1 -1
  310. package/lib/util/node.d.ts +8 -7
  311. package/lib/util/node.js +28 -9
  312. package/lib/util/node.js.map +1 -1
  313. package/lib/util/resize.d.ts +32 -0
  314. package/lib/util/resize.js +204 -0
  315. package/lib/util/resize.js.map +1 -0
  316. package/lib/view/Anchor.d.ts +6 -7
  317. package/lib/view/Anchor.js +5 -2
  318. package/lib/view/Anchor.js.map +1 -1
  319. package/lib/view/Control.d.ts +1 -1
  320. package/lib/view/Control.js +87 -38
  321. package/lib/view/Control.js.map +1 -1
  322. package/lib/view/Graph.d.ts +5 -1
  323. package/lib/view/Graph.js +44 -4
  324. package/lib/view/Graph.js.map +1 -1
  325. package/lib/view/Rotate.js +2 -1
  326. package/lib/view/Rotate.js.map +1 -1
  327. package/lib/view/behavior/index.d.ts +2 -0
  328. package/lib/view/behavior/index.js +19 -0
  329. package/lib/view/behavior/index.js.map +1 -0
  330. package/lib/view/behavior/snapline.d.ts +3 -0
  331. package/lib/{tool → view/behavior}/snapline.js +0 -1
  332. package/lib/view/behavior/snapline.js.map +1 -0
  333. package/lib/view/edge/AdjustPoint.js +11 -22
  334. package/lib/view/edge/AdjustPoint.js.map +1 -1
  335. package/lib/view/edge/BaseEdge.d.ts +2 -2
  336. package/lib/view/edge/BaseEdge.js +29 -21
  337. package/lib/view/edge/BaseEdge.js.map +1 -1
  338. package/lib/view/node/BaseNode.d.ts +4 -4
  339. package/lib/view/node/BaseNode.js +32 -23
  340. package/lib/view/node/BaseNode.js.map +1 -1
  341. package/lib/view/node/CircleNode.d.ts +1 -1
  342. package/lib/view/node/CircleNode.js.map +1 -1
  343. package/lib/view/node/DiamondNode.d.ts +1 -1
  344. package/lib/view/node/DiamondNode.js.map +1 -1
  345. package/lib/view/node/EllipseNode.d.ts +1 -1
  346. package/lib/view/node/EllipseNode.js.map +1 -1
  347. package/lib/view/node/HtmlNode.d.ts +1 -1
  348. package/lib/view/node/HtmlNode.js +2 -2
  349. package/lib/view/node/HtmlNode.js.map +1 -1
  350. package/lib/view/node/PolygonNode.d.ts +1 -1
  351. package/lib/view/node/PolygonNode.js.map +1 -1
  352. package/lib/view/node/RectNode.d.ts +1 -1
  353. package/lib/view/node/RectNode.js.map +1 -1
  354. package/lib/view/node/TextNode.d.ts +1 -1
  355. package/lib/view/node/TextNode.js +1 -1
  356. package/lib/view/node/TextNode.js.map +1 -1
  357. package/lib/view/overlay/CanvasOverlay.js +5 -4
  358. package/lib/view/overlay/CanvasOverlay.js.map +1 -1
  359. package/lib/view/overlay/Grid.d.ts +35 -20
  360. package/lib/view/overlay/Grid.js +35 -26
  361. package/lib/view/overlay/Grid.js.map +1 -1
  362. package/lib/view/overlay/ToolOverlay.d.ts +1 -1
  363. package/lib/view/overlay/ToolOverlay.js +1 -1
  364. package/lib/view/overlay/ToolOverlay.js.map +1 -1
  365. package/lib/view/shape/Circle.d.ts +9 -1
  366. package/lib/view/shape/Circle.js +5 -5
  367. package/lib/view/shape/Circle.js.map +1 -1
  368. package/lib/view/shape/Ellipse.d.ts +10 -1
  369. package/lib/view/shape/Ellipse.js +5 -5
  370. package/lib/view/shape/Ellipse.js.map +1 -1
  371. package/lib/view/shape/Line.d.ts +14 -1
  372. package/lib/view/shape/Line.js +5 -7
  373. package/lib/view/shape/Line.js.map +1 -1
  374. package/lib/view/shape/Path.d.ts +3 -2
  375. package/lib/view/shape/Path.js +3 -3
  376. package/lib/view/shape/Path.js.map +1 -1
  377. package/lib/view/shape/Polygon.d.ts +5 -3
  378. package/lib/view/shape/Polygon.js +6 -6
  379. package/lib/view/shape/Polygon.js.map +1 -1
  380. package/lib/view/shape/Polyline.d.ts +7 -1
  381. package/lib/view/shape/Polyline.js +8 -6
  382. package/lib/view/shape/Polyline.js.map +1 -1
  383. package/lib/view/shape/Rect.d.ts +11 -13
  384. package/lib/view/shape/Rect.js +6 -9
  385. package/lib/view/shape/Rect.js.map +1 -1
  386. package/lib/view/shape/Text.d.ts +19 -1
  387. package/lib/view/shape/Text.js +29 -21
  388. package/lib/view/shape/Text.js.map +1 -1
  389. package/lib/view/text/BaseText.d.ts +12 -15
  390. package/lib/view/text/BaseText.js +46 -29
  391. package/lib/view/text/BaseText.js.map +1 -1
  392. package/lib/view/text/LineText.d.ts +19 -7
  393. package/lib/view/text/LineText.js +62 -57
  394. package/lib/view/text/LineText.js.map +1 -1
  395. package/package.json +5 -4
  396. package/src/LogicFlow.tsx +163 -79
  397. package/src/algorithm/edge.ts +1 -0
  398. package/src/algorithm/index.ts +2 -0
  399. package/src/algorithm/outline.ts +2 -2
  400. package/src/common/drag.ts +219 -0
  401. package/src/common/history.ts +108 -0
  402. package/src/common/index.ts +6 -0
  403. package/src/common/keyboard.ts +108 -0
  404. package/src/common/matrix.ts +122 -0
  405. package/src/common/vector.ts +93 -0
  406. package/src/constant/index.ts +43 -1
  407. package/src/event/eventArgs.ts +173 -34
  408. package/src/event/eventEmitter.ts +2 -3
  409. package/src/index.ts +6 -1
  410. package/src/keyboard/index.ts +2 -0
  411. package/src/keyboard/shortcut.ts +79 -8
  412. package/src/model/BaseModel.ts +18 -7
  413. package/src/model/EditConfigModel.ts +209 -97
  414. package/src/model/GraphModel.ts +64 -9
  415. package/src/model/TransformModel.ts +1 -1
  416. package/src/model/edge/BaseEdgeModel.ts +105 -42
  417. package/src/model/edge/BezierEdgeModel.ts +7 -6
  418. package/src/model/edge/LineEdgeModel.ts +2 -0
  419. package/src/model/edge/PolylineEdgeModel.ts +24 -18
  420. package/src/model/node/BaseNodeModel.ts +72 -47
  421. package/src/model/node/CircleNodeModel.ts +8 -7
  422. package/src/model/node/DiamondNodeModel.ts +9 -6
  423. package/src/model/node/EllipseNodeModel.ts +9 -6
  424. package/src/model/node/HtmlNodeModel.ts +8 -7
  425. package/src/model/node/PolygonNodeModel.ts +9 -7
  426. package/src/model/node/RectNodeModel.ts +16 -8
  427. package/src/model/node/TextNodeModel.ts +14 -1
  428. package/src/options.ts +18 -53
  429. package/src/tool/MultipleSelectTool.tsx +6 -6
  430. package/src/tool/TextEditTool.tsx +3 -3
  431. package/src/tool/index.ts +96 -2
  432. package/src/util/drag.ts +22 -6
  433. package/src/util/edge.ts +39 -13
  434. package/src/util/index.ts +1 -0
  435. package/src/util/node.ts +36 -13
  436. package/src/util/resize.ts +286 -0
  437. package/src/view/Anchor.tsx +7 -5
  438. package/src/view/Control.tsx +93 -62
  439. package/src/view/Graph.tsx +23 -6
  440. package/src/view/Rotate.tsx +2 -1
  441. package/src/view/behavior/index.ts +2 -0
  442. package/src/{tool → view/behavior}/snapline.ts +3 -4
  443. package/src/view/edge/AdjustPoint.tsx +35 -49
  444. package/src/view/edge/BaseEdge.tsx +65 -45
  445. package/src/view/node/BaseNode.tsx +55 -28
  446. package/src/view/node/CircleNode.tsx +3 -1
  447. package/src/view/node/DiamondNode.tsx +3 -1
  448. package/src/view/node/EllipseNode.tsx +3 -1
  449. package/src/view/node/HtmlNode.tsx +5 -3
  450. package/src/view/node/PolygonNode.tsx +3 -1
  451. package/src/view/node/RectNode.tsx +3 -1
  452. package/src/view/node/TextNode.tsx +4 -2
  453. package/src/view/overlay/CanvasOverlay.tsx +5 -4
  454. package/src/view/overlay/Grid.tsx +75 -53
  455. package/src/view/overlay/ToolOverlay.tsx +1 -1
  456. package/src/view/shape/Circle.tsx +21 -7
  457. package/src/view/shape/Ellipse.tsx +20 -6
  458. package/src/view/shape/Line.tsx +24 -9
  459. package/src/view/shape/Path.tsx +9 -6
  460. package/src/view/shape/Polygon.tsx +13 -10
  461. package/src/view/shape/Polyline.tsx +20 -8
  462. package/src/view/shape/Rect.tsx +19 -19
  463. package/src/view/shape/Text.tsx +64 -33
  464. package/src/view/text/BaseText.tsx +76 -42
  465. package/src/view/text/LineText.tsx +94 -80
  466. package/tsconfig.json +1 -1
  467. package/dist/index.js +0 -26
  468. package/dist/index.js.map +0 -1
  469. package/es/tool/snapline.d.ts +0 -3
  470. package/es/tool/snapline.js.map +0 -1
  471. package/es/tool/tool.d.ts +0 -22
  472. package/es/tool/tool.js +0 -43
  473. package/es/tool/tool.js.map +0 -1
  474. package/lib/tool/snapline.d.ts +0 -3
  475. package/lib/tool/snapline.js.map +0 -1
  476. package/lib/tool/tool.d.ts +0 -22
  477. package/lib/tool/tool.js +0 -49
  478. package/lib/tool/tool.js.map +0 -1
  479. package/src/tool/tool.ts +0 -66
@@ -14,13 +14,12 @@ export type IPolygonNodeProperties = {
14
14
  height?: number;
15
15
  style?: LogicFlow.CommonTheme;
16
16
  textStyle?: LogicFlow.CommonTheme;
17
- [key: string]: any;
17
+ [key: string]: unknown;
18
18
  };
19
- export declare class PolygonNodeModel extends BaseNodeModel {
19
+ export declare class PolygonNodeModel<P extends IPolygonNodeProperties = IPolygonNodeProperties> extends BaseNodeModel<P> {
20
20
  modelType: ModelType;
21
21
  points: PointTuple[];
22
- properties: IPolygonNodeProperties;
23
- constructor(data: NodeConfig, graphModel: GraphModel);
22
+ constructor(data: NodeConfig<P>, graphModel: GraphModel);
24
23
  setAttributes(): void;
25
24
  getNodeStyle(): {
26
25
  [x: string]: unknown;
@@ -30,6 +29,8 @@ export declare class PolygonNodeModel extends BaseNodeModel {
30
29
  radius?: number | undefined;
31
30
  rx?: number | undefined;
32
31
  ry?: number | undefined;
32
+ width?: number | undefined;
33
+ height?: number | undefined;
33
34
  path?: string | undefined;
34
35
  };
35
36
  /**
@@ -53,6 +53,7 @@ import { ModelType } from '../../constant';
53
53
  import { normalizePolygon } from '../../util';
54
54
  var PolygonNodeModel = /** @class */ (function (_super) {
55
55
  __extends(PolygonNodeModel, _super);
56
+ // @observable properties: IPolygonNodeProperties = {}
56
57
  function PolygonNodeModel(data, graphModel) {
57
58
  var _this = _super.call(this, data, graphModel) || this;
58
59
  _this.modelType = ModelType.POLYGON_NODE;
@@ -68,8 +69,7 @@ var PolygonNodeModel = /** @class */ (function (_super) {
68
69
  // [10, 78],
69
70
  // [160, 198], // 五角星
70
71
  ];
71
- _this.properties = {};
72
- _this.properties = data.properties || {};
72
+ // this.properties = data.properties || {}
73
73
  _this.setAttributes();
74
74
  return _this;
75
75
  }
@@ -88,8 +88,8 @@ var PolygonNodeModel = /** @class */ (function (_super) {
88
88
  PolygonNodeModel.prototype.getNodeStyle = function () {
89
89
  var style = _super.prototype.getNodeStyle.call(this);
90
90
  var polygon = this.graphModel.theme.polygon;
91
- var customStyle = this.properties.style;
92
- return __assign(__assign(__assign({}, style), cloneDeep(polygon)), (cloneDeep(customStyle) || {}));
91
+ var _a = this.properties.style, customStyle = _a === void 0 ? {} : _a;
92
+ return __assign(__assign(__assign({}, style), cloneDeep(polygon)), cloneDeep(customStyle));
93
93
  };
94
94
  Object.defineProperty(PolygonNodeModel.prototype, "pointsPosition", {
95
95
  /**
@@ -177,9 +177,6 @@ var PolygonNodeModel = /** @class */ (function (_super) {
177
177
  __decorate([
178
178
  observable
179
179
  ], PolygonNodeModel.prototype, "points", void 0);
180
- __decorate([
181
- observable
182
- ], PolygonNodeModel.prototype, "properties", void 0);
183
180
  __decorate([
184
181
  computed
185
182
  ], PolygonNodeModel.prototype, "pointsPosition", null);
@@ -1 +1 @@
1
- {"version":3,"file":"PolygonNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/PolygonNodeModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PolygonNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/PolygonNodeModel.ts"],"names":[],"mappings":"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"}
@@ -2,18 +2,18 @@ import BaseNodeModel from './BaseNodeModel';
2
2
  import GraphModel from '../GraphModel';
3
3
  import LogicFlow from '../../LogicFlow';
4
4
  import { ModelType } from '../../constant';
5
- export type IRectNodeModel = {
5
+ export type IRectNodeProperties = {
6
6
  width?: number;
7
7
  height?: number;
8
+ radius?: number;
8
9
  style?: LogicFlow.CommonTheme;
9
10
  textStyle?: LogicFlow.CommonTheme;
10
- [key: string]: any;
11
+ [key: string]: unknown;
11
12
  };
12
- export declare class RectNodeModel extends BaseNodeModel {
13
+ export declare class RectNodeModel<P extends IRectNodeProperties = IRectNodeProperties> extends BaseNodeModel<P> {
13
14
  modelType: ModelType;
14
15
  radius: number;
15
- properties: IRectNodeModel;
16
- constructor(data: LogicFlow.NodeConfig, graphModel: GraphModel);
16
+ constructor(data: LogicFlow.NodeConfig<P>, graphModel: GraphModel);
17
17
  setAttributes(): void;
18
18
  getDefaultAnchor(): {
19
19
  x: number;
@@ -28,6 +28,8 @@ export declare class RectNodeModel extends BaseNodeModel {
28
28
  radius?: number | undefined;
29
29
  rx?: number | undefined;
30
30
  ry?: number | undefined;
31
+ width?: number | undefined;
32
+ height?: number | undefined;
31
33
  path?: string | undefined;
32
34
  };
33
35
  }
@@ -36,22 +36,27 @@ import BaseNodeModel from './BaseNodeModel';
36
36
  import { ModelType } from '../../constant';
37
37
  var RectNodeModel = /** @class */ (function (_super) {
38
38
  __extends(RectNodeModel, _super);
39
+ // @observable properties: P
39
40
  function RectNodeModel(data, graphModel) {
40
41
  var _this = _super.call(this, data, graphModel) || this;
41
42
  _this.modelType = ModelType.RECT_NODE;
42
43
  _this.radius = 0;
43
- _this.properties = {};
44
- _this.properties = data.properties || {};
44
+ // TODO:类字段初始化会覆盖 super、setAttributes 中设置的属性
45
+ // this.properties = data.properties || {}
46
+ // TODO: bug here, 上面更新 properties 会触发 setAttributes,下面再主动调用,会导致触发两次
45
47
  _this.setAttributes();
46
48
  return _this;
47
49
  }
48
50
  RectNodeModel.prototype.setAttributes = function () {
49
51
  _super.prototype.setAttributes.call(this);
50
- var _a = this.properties, width = _a.width, height = _a.height;
52
+ var _a = this.properties, width = _a.width, height = _a.height, radius = _a.radius;
51
53
  if (width)
52
54
  this.width = width;
53
55
  if (height)
54
56
  this.height = height;
57
+ // 矩形特有
58
+ if (radius)
59
+ this.radius = radius;
55
60
  };
56
61
  RectNodeModel.prototype.getDefaultAnchor = function () {
57
62
  var _a = this, x = _a.x, y = _a.y, width = _a.width, height = _a.height;
@@ -65,14 +70,12 @@ var RectNodeModel = /** @class */ (function (_super) {
65
70
  RectNodeModel.prototype.getNodeStyle = function () {
66
71
  var style = _super.prototype.getNodeStyle.call(this);
67
72
  var rect = this.graphModel.theme.rect;
68
- return __assign(__assign({}, style), cloneDeep(rect));
73
+ var _a = this.properties.style, customStyle = _a === void 0 ? {} : _a;
74
+ return __assign(__assign(__assign({}, style), cloneDeep(rect)), cloneDeep(customStyle));
69
75
  };
70
76
  __decorate([
71
77
  observable
72
78
  ], RectNodeModel.prototype, "radius", void 0);
73
- __decorate([
74
- observable
75
- ], RectNodeModel.prototype, "properties", void 0);
76
79
  return RectNodeModel;
77
80
  }(BaseNodeModel));
78
81
  export { RectNodeModel };
@@ -1 +1 @@
1
- {"version":3,"file":"RectNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/RectNodeModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAW1C;IAAmC,iCAAa;IAK9C,uBAAY,IAA0B,EAAE,UAAsB;QAC5D,YAAA,MAAK,YAAC,IAAI,EAAE,UAAU,CAAC,SAAA;QALzB,eAAS,GAAG,SAAS,CAAC,SAAS,CAAA;QACnB,YAAM,GAAG,CAAC,CAAA;QACV,gBAAU,GAAmB,EAAE,CAAA;QAIzC,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;QAEvC,KAAI,CAAC,aAAa,EAAE,CAAA;;IACtB,CAAC;IAED,qCAAa,GAAb;QACE,gBAAK,CAAC,aAAa,WAAE,CAAA;QAEf,IAAA,KAAoB,IAAI,CAAC,UAAU,EAAjC,KAAK,WAAA,EAAE,MAAM,YAAoB,CAAA;QACzC,IAAI,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAC7B,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IAClC,CAAC;IAED,wCAAgB,GAAhB;QACQ,IAAA,KAA0B,IAAI,EAA5B,CAAC,OAAA,EAAE,CAAC,OAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAS,CAAA;QACpC,OAAO;YACL,EAAE,CAAC,GAAA,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC5C,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAA,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC3C,EAAE,CAAC,GAAA,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC5C,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAA,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;SAC5C,CAAA;IACH,CAAC;IAED,oCAAY,GAAZ;QACE,IAAM,KAAK,GAAG,gBAAK,CAAC,YAAY,WAAE,CAAA;QAC1B,IAAA,IAAI,GAAK,IAAI,CAAC,UAAU,CAAC,KAAK,KAA1B,CAA0B;QACtC,6BACK,KAAK,GACL,SAAS,CAAC,IAAI,CAAC,EACnB;IACH,CAAC;IAnCW;QAAX,UAAU;iDAAW;IACV;QAAX,UAAU;qDAAgC;IAmC7C,oBAAC;CAAA,AAtCD,CAAmC,aAAa,GAsC/C;SAtCY,aAAa;AAwC1B,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"RectNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/RectNodeModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAY1C;IAEU,iCAAgB;IAGxB,4BAA4B;IAE5B,uBAAY,IAA6B,EAAE,UAAsB;QAC/D,YAAA,MAAK,YAAC,IAAI,EAAE,UAAU,CAAC,SAAA;QALzB,eAAS,GAAG,SAAS,CAAC,SAAS,CAAA;QACnB,YAAM,GAAG,CAAC,CAAA;QAMpB,4CAA4C;QAC5C,0CAA0C;QAC1C,oEAAoE;QACpE,KAAI,CAAC,aAAa,EAAE,CAAA;;IACtB,CAAC;IAED,qCAAa,GAAb;QACE,gBAAK,CAAC,aAAa,WAAE,CAAA;QAEf,IAAA,KAA4B,IAAI,CAAC,UAAU,EAAzC,KAAK,WAAA,EAAE,MAAM,YAAA,EAAE,MAAM,YAAoB,CAAA;QACjD,IAAI,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAC7B,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAChC,OAAO;QACP,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IAClC,CAAC;IAED,wCAAgB,GAAhB;QACQ,IAAA,KAA0B,IAAI,EAA5B,CAAC,OAAA,EAAE,CAAC,OAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAS,CAAA;QACpC,OAAO;YACL,EAAE,CAAC,GAAA,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC5C,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAA,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC3C,EAAE,CAAC,GAAA,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;YAC5C,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAA,EAAE,EAAE,EAAE,UAAG,IAAI,CAAC,EAAE,OAAI,EAAE;SAC5C,CAAA;IACH,CAAC;IACD,oCAAY,GAAZ;QACE,IAAM,KAAK,GAAG,gBAAK,CAAC,YAAY,WAAE,CAAA;QAC1B,IAAA,IAAI,GAAK,IAAI,CAAC,UAAU,CAAC,KAAK,KAA1B,CAA0B;QAC9B,IAAA,KAA4B,IAAI,CAAC,UAAU,MAApB,EAAhB,WAAW,mBAAG,EAAE,KAAA,CAAoB;QACnD,sCACK,KAAK,GACL,SAAS,CAAC,IAAI,CAAC,GACf,SAAS,CAAC,WAAW,CAAC,EAC1B;IACH,CAAC;IAxCW;QAAX,UAAU;iDAAW;IAyCxB,oBAAC;CAAA,AA7CD,CAEU,aAAa,GA2CtB;SA7CY,aAAa;AA+C1B,eAAe,aAAa,CAAA"}
@@ -1,24 +1,32 @@
1
1
  import BaseNodeModel from './BaseNodeModel';
2
2
  import { ModelType } from '../../constant';
3
- export declare class TextNodeModel extends BaseNodeModel {
3
+ import LogicFlow from '../../LogicFlow';
4
+ export type ITextNodeProperties = {
5
+ style?: LogicFlow.CommonTheme;
6
+ textStyle?: LogicFlow.CommonTheme;
7
+ [key: string]: unknown;
8
+ };
9
+ export declare class TextNodeModel<P extends ITextNodeProperties = ITextNodeProperties> extends BaseNodeModel<P> {
4
10
  modelType: ModelType;
5
11
  getTextStyle(): {
6
12
  [x: string]: unknown;
7
- background?: import("../..").LogicFlow.CommonTheme | undefined;
8
- color?: string | undefined;
9
- fontSize: number;
10
- textWidth?: number | undefined;
11
- lineHeight?: number | undefined;
12
- textAnchor?: "middle" | "start" | "end" | undefined;
13
- dominantBaseline?: "middle" | "auto" | "text-bottom" | "alphabetic" | "ideographic" | "central" | "mathematical" | "hanging" | "text-top" | undefined;
14
13
  fill?: string | undefined;
15
14
  stroke?: string | undefined;
16
15
  strokeWidth?: number | undefined;
17
16
  radius?: number | undefined;
18
17
  rx?: number | undefined;
19
18
  ry?: number | undefined;
19
+ width?: number | undefined;
20
+ height?: number | undefined;
20
21
  path?: string | undefined;
21
- overflowMode?: "default" | "ellipsis" | "autoWrap" | undefined;
22
+ background?: LogicFlow.CommonTheme | undefined;
23
+ color?: string | undefined;
24
+ fontSize: number;
25
+ textWidth?: number | undefined;
26
+ lineHeight?: number | undefined;
27
+ textAnchor?: "middle" | "start" | "end" | undefined;
28
+ dominantBaseline?: "middle" | "central" | "auto" | "text-bottom" | "alphabetic" | "ideographic" | "mathematical" | "hanging" | "text-top" | undefined;
29
+ overflowMode?: "default" | "autoWrap" | "ellipsis" | undefined;
22
30
  wrapPadding?: string | undefined;
23
31
  };
24
32
  get width(): number;
@@ -70,7 +70,8 @@ var TextNodeModel = /** @class */ (function (_super) {
70
70
  TextNodeModel.prototype.getTextStyle = function () {
71
71
  var style = _super.prototype.getTextStyle.call(this);
72
72
  var text = this.graphModel.theme.text;
73
- return __assign(__assign({}, style), cloneDeep(text));
73
+ var textStyle = this.properties.textStyle;
74
+ return __assign(__assign(__assign({}, style), cloneDeep(text)), cloneDeep(textStyle));
74
75
  };
75
76
  Object.defineProperty(TextNodeModel.prototype, "width", {
76
77
  get: function () {
@@ -1 +1 @@
1
- {"version":3,"file":"TextNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/TextNodeModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAElD;IAAmC,iCAAa;IAAhD;;QACE,eAAS,GAAG,SAAS,CAAC,SAAS,CAAA;;IA+BjC,CAAC;IA7BC,oCAAY,GAAZ;QACE,IAAM,KAAK,GAAG,gBAAK,CAAC,YAAY,WAAE,CAAA;QAC1B,IAAA,IAAI,GAAK,IAAI,CAAC,UAAU,CAAC,KAAK,KAA1B,CAA0B;QACtC,6BACK,KAAK,GACL,SAAS,CAAC,IAAI,CAAC,EACnB;IACH,CAAC;IACS,sBAAI,gCAAK;aAAT;YACR,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAA,QAAQ,GAAK,IAAI,CAAC,YAAY,EAAE,SAAxB,CAAwB;YAChC,IAAA,KAAK,GAAK,qBAAqB,CAAC;gBACtC,IAAI,MAAA;gBACJ,QAAQ,UAAA;gBACR,UAAU,EAAE,IAAI,CAAC,MAAM;aACxB,CAAC,MAJW,CAIX;YACF,OAAO,KAAK,CAAA;QACd,CAAC;;;OAAA;IAES,sBAAI,iCAAM;aAAV;YACR,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAA,QAAQ,GAAK,IAAI,CAAC,YAAY,EAAE,SAAxB,CAAwB;YAChC,IAAA,MAAM,GAAK,qBAAqB,CAAC;gBACvC,IAAI,MAAA;gBACJ,QAAQ,UAAA;gBACR,UAAU,EAAE,IAAI,CAAC,MAAM;aACxB,CAAC,OAJY,CAIZ;YACF,OAAO,MAAM,CAAA;QACf,CAAC;;;OAAA;IApBS;QAAT,QAAQ;8CASR;IAES;QAAT,QAAQ;+CASR;IACH,oBAAC;CAAA,AAhCD,CAAmC,aAAa,GAgC/C;SAhCY,aAAa;AAkC1B,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"TextNodeModel.js","sourceRoot":"","sources":["../../../src/model/node/TextNodeModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAUlD;IAEU,iCAAgB;IAF1B;;QAGE,eAAS,GAAG,SAAS,CAAC,SAAS,CAAA;;IAkCjC,CAAC;IAhCC,oCAAY,GAAZ;QACE,IAAM,KAAK,GAAG,gBAAK,CAAC,YAAY,WAAE,CAAA;QAC1B,IAAA,IAAI,GAAK,IAAI,CAAC,UAAU,CAAC,KAAK,KAA1B,CAA0B;QAC9B,IAAA,SAAS,GAAK,IAAI,CAAC,UAAU,UAApB,CAAoB;QACrC,sCACK,KAAK,GACL,SAAS,CAAC,IAAI,CAAC,GACf,SAAS,CAAC,SAAS,CAAC,EACxB;IACH,CAAC;IAES,sBAAI,gCAAK;aAAT;YACR,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAA,QAAQ,GAAK,IAAI,CAAC,YAAY,EAAE,SAAxB,CAAwB;YAChC,IAAA,KAAK,GAAK,qBAAqB,CAAC;gBACtC,IAAI,MAAA;gBACJ,QAAQ,UAAA;gBACR,UAAU,EAAE,IAAI,CAAC,MAAM;aACxB,CAAC,MAJW,CAIX;YACF,OAAO,KAAK,CAAA;QACd,CAAC;;;OAAA;IAES,sBAAI,iCAAM;aAAV;YACR,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAA,QAAQ,GAAK,IAAI,CAAC,YAAY,EAAE,SAAxB,CAAwB;YAChC,IAAA,MAAM,GAAK,qBAAqB,CAAC;gBACvC,IAAI,MAAA;gBACJ,QAAQ,UAAA;gBACR,UAAU,EAAE,IAAI,CAAC,MAAM;aACxB,CAAC,OAJY,CAIZ;YACF,OAAO,MAAM,CAAA;QACf,CAAC;;;OAAA;IApBS;QAAT,QAAQ;8CASR;IAES;QAAT,QAAQ;+CASR;IACH,oBAAC;CAAA,AArCD,CAEU,aAAa,GAmCtB;SArCY,aAAa;AAuC1B,eAAe,aAAa,CAAA"}
package/es/options.d.ts CHANGED
@@ -1,29 +1,20 @@
1
1
  import { createElement as h } from 'preact/compat';
2
2
  import LogicFlow from './LogicFlow';
3
- import { GraphModel } from './model';
4
3
  import { KeyboardDef } from './keyboard';
5
- import { OverlapMode } from './constant';
4
+ import { OverlapMode, TextMode } from './constant';
5
+ import { Grid } from './view/overlay';
6
+ import GridOptions = Grid.GridOptions;
6
7
  export declare namespace Options {
7
8
  import NodeData = LogicFlow.NodeData;
8
9
  import EdgeData = LogicFlow.EdgeData;
9
- import ExtensionConstructor = LogicFlow.ExtensionConstructor;
10
10
  import GraphData = LogicFlow.GraphData;
11
+ import ExtensionType = LogicFlow.ExtensionType;
11
12
  type EdgeType = 'line' | 'polyline' | 'bezier' | string;
12
13
  type BackgroundConfig = {
13
14
  backgroundImage?: string;
14
15
  backgroundRepeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat' | 'initial' | 'inherit';
15
16
  [key: string]: any;
16
17
  };
17
- type GridOptions = {
18
- size?: number;
19
- visible?: boolean;
20
- graphModel?: GraphModel;
21
- type?: 'dot' | 'mesh';
22
- config?: {
23
- color: string;
24
- thickness?: number;
25
- };
26
- };
27
18
  type AnimationConfig = {
28
19
  node: boolean;
29
20
  edge: boolean;
@@ -43,12 +34,18 @@ export declare namespace Options {
43
34
  width?: number;
44
35
  height?: number;
45
36
  background?: false | BackgroundConfig;
37
+ /**
38
+ * Grid 网格配置
39
+ */
46
40
  grid?: number | boolean | GridOptions;
47
41
  partial?: boolean;
48
42
  keyboard?: KeyboardDef;
49
43
  style?: Partial<LogicFlow.Theme>;
50
44
  edgeType?: EdgeType;
51
45
  adjustEdge?: boolean;
46
+ textMode?: TextMode;
47
+ edgeTextMode?: TextMode;
48
+ nodeTextMode?: TextMode;
52
49
  allowRotate?: boolean;
53
50
  allowResize?: boolean;
54
51
  isSilentMode?: boolean;
@@ -62,7 +59,7 @@ export declare namespace Options {
62
59
  textEdit?: boolean;
63
60
  guards?: GuardsConfig;
64
61
  overlapMode?: OverlapMode;
65
- plugins?: ExtensionConstructor[];
62
+ plugins?: ExtensionType[];
66
63
  pluginsOptions?: Record<string, any>;
67
64
  disabledPlugins?: string[];
68
65
  disabledTools?: string[];
package/es/options.js CHANGED
@@ -1,14 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  var __rest = (this && this.__rest) || function (s, e) {
13
2
  var t = {};
14
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -21,43 +10,15 @@ var __rest = (this && this.__rest) || function (s, e) {
21
10
  return t;
22
11
  };
23
12
  import { assign } from 'lodash-es';
24
- import { DEFAULT_GRID_SIZE } from './constant';
25
13
  export var Options;
26
14
  (function (Options) {
27
15
  function get(options) {
28
- var grid = options.grid, others = __rest(options, ["grid"]);
16
+ var others = __rest(options, []);
29
17
  var container = options.container;
30
- if (container != null) {
31
- if (options.width == null) {
32
- others.width = container.clientWidth;
33
- }
34
- if (options.height == null) {
35
- others.height = container.clientHeight;
36
- }
37
- }
38
- else {
18
+ if (!container) {
39
19
  throw new Error('Ensure the container of LogicFlow is specified and valid.');
40
20
  }
41
- var result = assign({}, Options.defaults, others);
42
- var defaultGrid = {
43
- size: DEFAULT_GRID_SIZE,
44
- type: 'dot',
45
- visible: true,
46
- config: {
47
- color: '#ababab',
48
- thickness: 1,
49
- },
50
- };
51
- if (typeof grid === 'number') {
52
- result.grid = __assign(__assign({}, defaultGrid), { size: grid });
53
- }
54
- else if (typeof grid === 'boolean') {
55
- result.grid = __assign(__assign({}, defaultGrid), { visible: grid });
56
- }
57
- else {
58
- result.grid = __assign(__assign({}, defaultGrid), grid);
59
- }
60
- return result;
21
+ return assign({}, Options.defaults, others);
61
22
  }
62
23
  Options.get = get;
63
24
  })(Options || (Options = {}));
package/es/options.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAKlC,OAAO,EAAE,iBAAiB,EAAe,MAAM,YAAY,CAAA;AAgH3D,MAAM,KAAW,OAAO,CA4CvB;AA5CD,WAAiB,OAAO;IACtB,SAAgB,GAAG,CAAC,OAAwB;QAClC,IAAA,IAAI,GAAgB,OAAO,KAAvB,EAAK,MAAM,UAAK,OAAO,EAA7B,QAAmB,CAAF,CAAY;QACnC,IAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QACnC,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;gBAC1B,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,WAAW,CAAA;YACtC,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAA;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;QACH,CAAC;QAED,IAAM,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,QAAA,QAAQ,EAAE,MAAM,CAAuB,CAAA;QAEjE,IAAM,WAAW,GAAgB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,IAAI;YACb,MAAM,EAAE;gBACN,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,CAAC;aACb;SACF,CAAA;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,yBACN,WAAW,KACd,IAAI,EAAE,IAAI,GACX,CAAA;QACH,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,yBACN,WAAW,KACd,OAAO,EAAE,IAAI,GACd,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,yBAAQ,WAAW,GAAK,IAAI,CAAE,CAAA;QAC3C,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IA1Ce,WAAG,MA0ClB,CAAA;AACH,CAAC,EA5CgB,OAAO,KAAP,OAAO,QA4CvB;AAED,WAAiB,OAAO;IACT,gBAAQ,GAAwB;QAC3C,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK;QACd,aAAa,EAAE,EAAE;KAClB,CAAA;AACH,CAAC,EATgB,OAAO,KAAP,OAAO,QASvB"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAkHlC,MAAM,KAAW,OAAO,CAYvB;AAZD,WAAiB,OAAO;IACtB,SAAgB,GAAG,CAAC,OAAwB;QAC1C,IAAW,MAAM,UAAK,OAAO,EAAvB,EAAa,CAAU,CAAA;QAC7B,IAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;QACH,CAAC;QAED,OAAO,MAAM,CAAC,EAAE,EAAE,QAAA,QAAQ,EAAE,MAAM,CAAuB,CAAA;IAC3D,CAAC;IAVe,WAAG,MAUlB,CAAA;AACH,CAAC,EAZgB,OAAO,KAAP,OAAO,QAYvB;AAED,WAAiB,OAAO;IACT,gBAAQ,GAAwB;QAC3C,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK;QACd,aAAa,EAAE,EAAE;KAClB,CAAA;AACH,CAAC,EATgB,OAAO,KAAP,OAAO,QASvB"}
@@ -1,6 +1,6 @@
1
1
  import { Component } from 'preact/compat';
2
+ import { IToolProps } from '.';
2
3
  import { StepDrag, IDragParams } from '../util';
3
- import { IToolProps } from './tool';
4
4
  export default class MultipleSelect extends Component<IToolProps> {
5
5
  static toolName: string;
6
6
  stepDrag: StepDrag;
@@ -69,12 +69,12 @@ var MultipleSelect = /** @class */ (function (_super) {
69
69
  clientY: clientY,
70
70
  ctrlKey: ctrlKey,
71
71
  });
72
- (_b = (_a = _this.props.logicFlow.container) === null || _a === void 0 ? void 0 : _a.querySelector('.lf-canvas-overlay[name="canvas-overlay"]')) === null || _b === void 0 ? void 0 : _b.dispatchEvent(newEvent);
72
+ (_b = (_a = _this.props.lf.container) === null || _a === void 0 ? void 0 : _a.querySelector('.lf-canvas-overlay[name="canvas-overlay"]')) === null || _b === void 0 ? void 0 : _b.dispatchEvent(newEvent);
73
73
  };
74
74
  _this.onDragging = function (_a) {
75
75
  var deltaX = _a.deltaX, deltaY = _a.deltaY;
76
- var _b = _this.props, graphModel = _b.graphModel, logicFlow = _b.logicFlow;
77
- var _c = logicFlow.getTransform(), SCALE_X = _c.SCALE_X, SCALE_Y = _c.SCALE_Y;
76
+ var _b = _this.props, graphModel = _b.graphModel, lf = _b.lf;
77
+ var _c = lf.getTransform(), SCALE_X = _c.SCALE_X, SCALE_Y = _c.SCALE_Y;
78
78
  var selectElements = graphModel.getSelectElements(true);
79
79
  graphModel.moveNodes(selectElements.nodes.map(function (node) { return node.id; }), deltaX / SCALE_X, deltaY / SCALE_Y);
80
80
  };
@@ -116,7 +116,7 @@ var MultipleSelect = /** @class */ (function (_super) {
116
116
  MultipleSelect.prototype.render = function () {
117
117
  var _a, _b;
118
118
  var _c = this.props.graphModel, selectElements = _c.selectElements, transformModel = _c.transformModel;
119
- var _d = this.props.logicFlow.getTransform(), SCALE_X = _d.SCALE_X, SCALE_Y = _d.SCALE_Y;
119
+ var _d = this.props.lf.getTransform(), SCALE_X = _d.SCALE_X, SCALE_Y = _d.SCALE_Y;
120
120
  if (selectElements.size <= 1)
121
121
  return;
122
122
  var x = Number.MAX_SAFE_INTEGER;
@@ -149,7 +149,7 @@ var MultipleSelect = /** @class */ (function (_super) {
149
149
  };
150
150
  return (_jsx("div", { className: "lf-multiple-select", style: style, onMouseDown: this.handleMouseDown, onContextMenu: this.handleContextMenu, onWheel: this.handleWheelEvent }));
151
151
  };
152
- MultipleSelect.toolName = 'multipleSelect';
152
+ MultipleSelect.toolName = 'multiple-select-tool';
153
153
  MultipleSelect = __decorate([
154
154
  observer
155
155
  ], MultipleSelect);
@@ -1 +1 @@
1
- {"version":3,"file":"MultipleSelectTool.js","sourceRoot":"","sources":["../../src/tool/MultipleSelectTool.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultipleSelectTool.js","sourceRoot":"","sources":["../../src/tool/MultipleSelectTool.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAEzC,OAAO,EAAS,QAAQ,EAAE,MAAM,IAAI,CAAA;AAEpC,OAAO,EAAE,QAAQ,EAAe,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAKrE;IAA4C,kCAAqB;IAI/D,wBAAY,KAAiB;QAC3B,YAAA,MAAK,YAAC,KAAK,CAAC,SAAA;QAYd,qBAAe,GAAG,UAAC,EAAc;YAC/B,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;QACnC,CAAC,CAAA;QACD,wBAAwB;QACxB,sBAAgB,GAAG,UAAC,EAAc;;YAChC,EAAE,CAAC,cAAc,EAAE,CAAA;YACX,IAAA,MAAM,GAAwC,EAAE,OAA1C,EAAE,MAAM,GAAgC,EAAE,OAAlC,EAAE,OAAO,GAAuB,EAAE,QAAzB,EAAE,OAAO,GAAc,EAAE,QAAhB,EAAE,OAAO,GAAK,EAAE,QAAP,CAAO;YACxD,IAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE;gBACvC,MAAM,QAAA;gBACN,MAAM,QAAA;gBACN,OAAO,SAAA;gBACP,OAAO,SAAA;gBACP,OAAO,SAAA;aACR,CAAC,CAAA;YACF,MAAA,MAAA,KAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,0CACnB,aAAa,CAAC,2CAA2C,CAAC,0CAC1D,aAAa,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC,CAAA;QACD,gBAAU,GAAG,UAAC,EAA+B;gBAA7B,MAAM,YAAA,EAAE,MAAM,YAAA;YACtB,IAAA,KAAqB,KAAI,CAAC,KAAK,EAA7B,UAAU,gBAAA,EAAE,EAAE,QAAe,CAAA;YAC/B,IAAA,KAAuB,EAAE,CAAC,YAAY,EAAE,EAAtC,OAAO,aAAA,EAAE,OAAO,aAAsB,CAAA;YAC9C,IAAM,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACzD,UAAU,CAAC,SAAS,CAClB,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,EAAE,EAAP,CAAO,CAAC,EAC3C,MAAM,GAAG,OAAO,EAChB,MAAM,GAAG,OAAO,CACjB,CAAA;QACH,CAAC,CAAA;QACD,uBAAiB,GAAG,UAAC,EAAc;YACjC,EAAE,CAAC,cAAc,EAAE,CAAA;YACb,IAAA,KAGF,KAAI,CAAC,KAAK,EAFZ,UAAU,gBAAA,EACV,kBAA2C,EAA7B,WAAW,iBAAA,EAAE,cAAc,oBAC7B,CAAA;YACd,IAAM,QAAQ,GAAG,UAAU,CAAC,gBAAgB,CAAC;gBAC3C,CAAC,EAAE,EAAE,CAAC,OAAO;gBACb,CAAC,EAAE,EAAE,CAAC,OAAO;aACd,CAAC,CAAA;YACF,IAAM,eAAe,GAAc;gBACjC,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;aACV,CAAA;YACD,IAAM,MAAM,4BAAO,cAAc,CAAC,MAAM,EAAE,SAAC,CAAA;YAC3C,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;gBACnB,IAAI,KAAK,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;oBACxC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC7C,CAAC;gBACD,IAAI,KAAK,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;oBACxC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC,CAAC,CAAA;YACF,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE;gBAChD,IAAI,EAAE,eAAe;gBACrB,CAAC,EAAE,EAAE;gBACL,QAAQ,UAAA;aACT,CAAC,CAAA;QACJ,CAAC,CAAA;QAlEG,IAAA,KACE,KAAK,WAD8B,EAAvB,QAAQ,cAAA,EAAE,WAAW,iBAAE,CAC9B;QACT,KAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC;YAC3B,UAAU,EAAE,KAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,WAAW;YACtB,WAAW,aAAA;SACZ,CAAC,CAAA;;IACJ,CAAC;IA4DD,+BAAM,GAAN;;QAEI,IAAA,KACE,IAAI,CAAC,KAAK,WADkC,EAAhC,cAAc,oBAAA,EAAE,cAAc,oBAAE,CAClC;QACR,IAAA,KAAuB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,EAAjD,OAAO,aAAA,EAAE,OAAO,aAAiC,CAAA;QACzD,IAAI,cAAc,CAAC,IAAI,IAAI,CAAC;YAAE,OAAM;QACpC,IAAI,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAC/B,IAAI,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAC/B,IAAI,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAChC,IAAI,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAChC,cAAc,CAAC,OAAO,CAAC,UAAC,OAAO;YAC7B,IAAI,OAAsC,CAAA;YAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC1C,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;YACD,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC1C,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;YAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;gBAC1B,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;gBAC1B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBAC7B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;YAC/B,CAAC;QACH,CAAC,CAAC,CACD;QAAA,KAAA,OAAS,cAAc,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,EAArD,CAAC,QAAA,EAAE,CAAC,QAAA,CACL;QAAA,KAAA,OAAW,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAA,EAAzD,EAAE,QAAA,EAAE,EAAE,QAAA,CAAmD;QAC3D,IAAM,KAAK,GAAG;YACZ,IAAI,EAAE,UAAG,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,OAAI;YACnC,GAAG,EAAE,UAAG,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,OAAI;YAClC,KAAK,EAAE,UAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,OAAI;YACnC,MAAM,EAAE,UAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,OAAI;YACpC,cAAc,EAAE,UAAG,CAAC,GAAG,OAAO,OAAI;SACnC,CAAA;QACD,OAAO,CACL,cACE,SAAS,EAAC,oBAAoB,EAC9B,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,IAAI,CAAC,eAAe,EACjC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EACrC,OAAO,EAAE,IAAI,CAAC,gBAAgB,GAC9B,CACH,CAAA;IACH,CAAC;IAtHM,uBAAQ,GAAG,sBAAsB,AAAzB,CAAyB;IADrB,cAAc;QADlC,QAAQ;OACY,cAAc,CAwHlC;IAAD,qBAAC;CAAA,AAxHD,CAA4C,SAAS,GAwHpD;eAxHoB,cAAc"}
@@ -1,5 +1,5 @@
1
- import { Component } from 'preact';
2
- import { IToolProps } from './tool';
1
+ import { Component } from 'preact/compat';
2
+ import { IToolProps } from '.';
3
3
  type IState = {
4
4
  style: {
5
5
  left: number;
@@ -21,6 +21,6 @@ export declare class TextEditTool extends Component<IToolProps, IState> {
21
21
  inputHandler: (ev: any) => void;
22
22
  keydownHandler: (ev: any) => void;
23
23
  placeCaretAtEnd(el: any): void;
24
- render(): import("preact").JSX.Element | null;
24
+ render(): import("preact/compat").JSX.Element | null;
25
25
  }
26
26
  export default TextEditTool;
@@ -47,7 +47,7 @@ var __read = (this && this.__read) || function (o, n) {
47
47
  return ar;
48
48
  };
49
49
  import { jsx as _jsx } from "preact/jsx-runtime";
50
- import { createRef, Component } from 'preact';
50
+ import { createRef, Component } from 'preact/compat';
51
51
  import { ElementState, observer } from '..';
52
52
  import { ElementType, EventType, ModelType } from '../constant';
53
53
  var TextEditTool = /** @class */ (function (_super) {
@@ -176,7 +176,7 @@ var TextEditTool = /** @class */ (function (_super) {
176
176
  var style = this.state.style;
177
177
  return textEditElement ? (_jsx("div", { contentEditable: true, className: "lf-text-input", style: style, ref: this.ref, onKeyUp: this.keyupHandler, onKeyDown: this.keydownHandler, onKeyPress: this.keydownHandler, onInput: this.inputHandler, children: (_a = textEditElement.text) === null || _a === void 0 ? void 0 : _a.value }, textEditElement.id)) : null;
178
178
  };
179
- TextEditTool.toolName = 'textEdit';
179
+ TextEditTool.toolName = 'text-edit-tool';
180
180
  TextEditTool = __decorate([
181
181
  observer
182
182
  ], TextEditTool);
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditTool.js","sourceRoot":"","sources":["../../src/tool/TextEditTool.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextEditTool.js","sourceRoot":"","sources":["../../src/tool/TextEditTool.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,24 @@
1
- export * from './tool';
2
- export * from './snapline';
1
+ import { Component, ReactElement } from 'preact/compat';
2
+ import LogicFlow from '../LogicFlow';
3
+ import { GraphModel, BaseEdgeModel, BaseNodeModel } from '../model';
4
+ export type IToolProps = {
5
+ lf: LogicFlow;
6
+ graphModel: GraphModel;
7
+ textEditElement?: BaseNodeModel | BaseEdgeModel;
8
+ };
9
+ type ToolConstructor = new (props: IToolProps) => Component<IToolProps>;
10
+ export declare class Tool {
11
+ tools?: Component[];
12
+ components?: ReactElement<IToolProps>[];
13
+ toolMap: Map<string, ToolConstructor>;
14
+ disabledToolMap: Map<string, ToolConstructor>;
15
+ instance: LogicFlow;
16
+ constructor(instance: LogicFlow);
17
+ private isDisabled;
18
+ registerTool(name: string, component: ToolConstructor): void;
19
+ disableTool(name: string): boolean | Error;
20
+ enableTool(name: string): boolean | Error;
21
+ getTools(): ToolConstructor[];
22
+ getInstance(): LogicFlow;
23
+ }
24
+ export default Tool;
package/es/tool/index.js CHANGED
@@ -1,3 +1,83 @@
1
- export * from './tool';
2
- export * from './snapline';
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { action, observable } from 'mobx';
8
+ import { forEach } from 'lodash-es';
9
+ import TextEdit from './TextEditTool';
10
+ import MultipleSelect from './MultipleSelectTool';
11
+ import { ElementState, EventType } from '../constant';
12
+ // 默认内置的工具
13
+ var defaultTools = [TextEdit, MultipleSelect];
14
+ var Tool = /** @class */ (function () {
15
+ function Tool(instance) {
16
+ var _this = this;
17
+ this.toolMap = new Map();
18
+ this.disabledToolMap = new Map();
19
+ this.instance = instance;
20
+ forEach(defaultTools, function (tool) {
21
+ if (!_this.isDisabled(tool.toolName)) {
22
+ _this.registerTool(tool.toolName, tool);
23
+ }
24
+ });
25
+ // @see https://github.com/didi/LogicFlow/issues/152
26
+ var graphModel = instance.graphModel;
27
+ var eventCenter = graphModel.eventCenter;
28
+ eventCenter.on("".concat(EventType.GRAPH_TRANSFORM, ",").concat(EventType.NODE_CLICK, ",").concat(EventType.BLANK_CLICK, " "), function () {
29
+ var _a;
30
+ var textEditElement = graphModel.textEditElement, _b = graphModel.editConfigModel, edgeTextEdit = _b.edgeTextEdit, nodeTextEdit = _b.nodeTextEdit;
31
+ // fix #826, 保留之前的文本可以编辑点击空白才设置为不可编辑。如果以后有其他需求再改。
32
+ if ((edgeTextEdit || nodeTextEdit) && textEditElement) {
33
+ (_a = graphModel.textEditElement) === null || _a === void 0 ? void 0 : _a.setElementState(ElementState.DEFAULT);
34
+ }
35
+ });
36
+ }
37
+ Tool.prototype.isDisabled = function (toolName) {
38
+ var _a;
39
+ return ((_a = this.instance.options.disabledTools) === null || _a === void 0 ? void 0 : _a.indexOf(toolName)) !== -1;
40
+ };
41
+ // 注册工具
42
+ Tool.prototype.registerTool = function (name, component) {
43
+ this.toolMap.set(name, component);
44
+ };
45
+ // 禁用工具
46
+ Tool.prototype.disableTool = function (name) {
47
+ var tool = this.toolMap.get(name);
48
+ if (tool) {
49
+ this.disabledToolMap.set(name, tool);
50
+ this.toolMap.delete(name);
51
+ return true;
52
+ }
53
+ throw new Error('禁用失败,不存在名为 ${tool} 的工具');
54
+ };
55
+ Tool.prototype.enableTool = function (name) {
56
+ var tool = this.disabledToolMap.get(name);
57
+ if (tool) {
58
+ this.toolMap.set(name, tool);
59
+ this.disabledToolMap.delete(name);
60
+ return true;
61
+ }
62
+ throw new Error('不存在名为 ${tool} 的工具');
63
+ };
64
+ Tool.prototype.getTools = function () {
65
+ return Array.from(this.toolMap.values());
66
+ };
67
+ Tool.prototype.getInstance = function () {
68
+ return this.instance;
69
+ };
70
+ __decorate([
71
+ observable
72
+ ], Tool.prototype, "toolMap", void 0);
73
+ __decorate([
74
+ action
75
+ ], Tool.prototype, "disableTool", null);
76
+ __decorate([
77
+ action
78
+ ], Tool.prototype, "enableTool", null);
79
+ return Tool;
80
+ }());
81
+ export { Tool };
82
+ export default Tool;
3
83
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool/index.ts"],"names":[],"mappings":"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"}