@rxflow/base 0.0.1-alpha.0

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 (442) hide show
  1. package/README.md +44 -0
  2. package/cjs/Flow.d.ts +14 -0
  3. package/cjs/Flow.d.ts.map +1 -0
  4. package/cjs/Flow.js +236 -0
  5. package/cjs/components/CollapseButton/index.d.ts +11 -0
  6. package/cjs/components/CollapseButton/index.d.ts.map +1 -0
  7. package/cjs/components/CollapseButton/index.js +58 -0
  8. package/cjs/components/CollapseButton/index.less +68 -0
  9. package/cjs/components/Controls/icons.d.ts +8 -0
  10. package/cjs/components/Controls/icons.d.ts.map +1 -0
  11. package/cjs/components/Controls/icons.js +85 -0
  12. package/cjs/components/Controls/index.d.ts +13 -0
  13. package/cjs/components/Controls/index.d.ts.map +1 -0
  14. package/cjs/components/Controls/index.js +195 -0
  15. package/cjs/components/DebugInfo/index.d.ts +5 -0
  16. package/cjs/components/DebugInfo/index.d.ts.map +1 -0
  17. package/cjs/components/DebugInfo/index.js +33 -0
  18. package/cjs/components/DebugInfo/index.less +6 -0
  19. package/cjs/components/EdgeText/index.d.ts +6 -0
  20. package/cjs/components/EdgeText/index.d.ts.map +1 -0
  21. package/cjs/components/EdgeText/index.js +48 -0
  22. package/cjs/components/Handle/index.d.ts +3 -0
  23. package/cjs/components/Handle/index.d.ts.map +1 -0
  24. package/cjs/components/Handle/index.js +24 -0
  25. package/cjs/components/Handle/index.module.less +9 -0
  26. package/cjs/components/HiddenHandle/index.css +9 -0
  27. package/cjs/components/HiddenHandle/index.d.ts +4 -0
  28. package/cjs/components/HiddenHandle/index.d.ts.map +1 -0
  29. package/cjs/components/HiddenHandle/index.js +23 -0
  30. package/cjs/components/Legend/index.d.ts +6 -0
  31. package/cjs/components/Legend/index.d.ts.map +1 -0
  32. package/cjs/components/Legend/index.js +72 -0
  33. package/cjs/components/Legend/index.less +41 -0
  34. package/cjs/components/LoadingButton.d.ts +16 -0
  35. package/cjs/components/LoadingButton.d.ts.map +1 -0
  36. package/cjs/components/LoadingButton.js +86 -0
  37. package/cjs/components/MarkerDefinitions/Mark.d.ts +11 -0
  38. package/cjs/components/MarkerDefinitions/Mark.d.ts.map +1 -0
  39. package/cjs/components/MarkerDefinitions/Mark.js +48 -0
  40. package/cjs/components/MarkerDefinitions/Symbols/Arrow.d.ts +11 -0
  41. package/cjs/components/MarkerDefinitions/Symbols/Arrow.d.ts.map +1 -0
  42. package/cjs/components/MarkerDefinitions/Symbols/Arrow.js +31 -0
  43. package/cjs/components/MarkerDefinitions/Symbols/ArrowClosed.d.ts +11 -0
  44. package/cjs/components/MarkerDefinitions/Symbols/ArrowClosed.d.ts.map +1 -0
  45. package/cjs/components/MarkerDefinitions/Symbols/ArrowClosed.js +32 -0
  46. package/cjs/components/MarkerDefinitions/index.d.ts +6 -0
  47. package/cjs/components/MarkerDefinitions/index.d.ts.map +1 -0
  48. package/cjs/components/MarkerDefinitions/index.js +45 -0
  49. package/cjs/components/MarkerDefinitions/styles.less +5 -0
  50. package/cjs/components/MarkerDefinitions/symbols.d.ts +5 -0
  51. package/cjs/components/MarkerDefinitions/symbols.d.ts.map +1 -0
  52. package/cjs/components/MarkerDefinitions/symbols.js +22 -0
  53. package/cjs/components/MarkerDefinitions/types.d.ts +21 -0
  54. package/cjs/components/NodeRenderFactory.d.ts +11 -0
  55. package/cjs/components/NodeRenderFactory.d.ts.map +1 -0
  56. package/cjs/components/NodeRenderFactory.js +26 -0
  57. package/cjs/components/Nodes/DefaultNode.d.ts +3 -0
  58. package/cjs/components/Nodes/DefaultNode.d.ts.map +1 -0
  59. package/cjs/components/Nodes/DefaultNode.js +30 -0
  60. package/cjs/components/Nodes/GroupNode.d.ts +3 -0
  61. package/cjs/components/Nodes/GroupNode.d.ts.map +1 -0
  62. package/cjs/components/Nodes/GroupNode.js +13 -0
  63. package/cjs/components/Nodes/InputNode.d.ts +3 -0
  64. package/cjs/components/Nodes/InputNode.d.ts.map +1 -0
  65. package/cjs/components/Nodes/InputNode.js +25 -0
  66. package/cjs/components/Nodes/OutputNode.d.ts +3 -0
  67. package/cjs/components/Nodes/OutputNode.d.ts.map +1 -0
  68. package/cjs/components/Nodes/OutputNode.js +25 -0
  69. package/cjs/components/Popover/index.d.ts +11 -0
  70. package/cjs/components/Popover/index.d.ts.map +1 -0
  71. package/cjs/components/Popover/index.js +100 -0
  72. package/cjs/components/Tooltip/index.d.ts +12 -0
  73. package/cjs/components/Tooltip/index.d.ts.map +1 -0
  74. package/cjs/components/Tooltip/index.js +110 -0
  75. package/cjs/components/index.d.ts +16 -0
  76. package/cjs/components/index.d.ts.map +1 -0
  77. package/cjs/components/index.js +100 -0
  78. package/cjs/constants/InnerFlowType.d.ts +12 -0
  79. package/cjs/constants/InnerFlowType.d.ts.map +1 -0
  80. package/cjs/constants/InnerFlowType.js +18 -0
  81. package/cjs/constants/NodeRoleType.d.ts +16 -0
  82. package/cjs/constants/NodeRoleType.d.ts.map +1 -0
  83. package/cjs/constants/NodeRoleType.js +22 -0
  84. package/cjs/constants/SelectionStrategy.d.ts +14 -0
  85. package/cjs/constants/SelectionStrategy.d.ts.map +1 -0
  86. package/cjs/constants/SelectionStrategy.js +20 -0
  87. package/cjs/edges/SmartEdge/index.d.ts +15 -0
  88. package/cjs/edges/SmartEdge/index.d.ts.map +1 -0
  89. package/cjs/edges/SmartEdge/index.js +54 -0
  90. package/cjs/hoc/createFlow.d.ts +14 -0
  91. package/cjs/hoc/createFlow.d.ts.map +1 -0
  92. package/cjs/hoc/createFlow.js +67 -0
  93. package/cjs/hoc/withFlowProvider.d.ts +11 -0
  94. package/cjs/hoc/withFlowProvider.d.ts.map +1 -0
  95. package/cjs/hoc/withFlowProvider.js +29 -0
  96. package/cjs/hooks/edges/useGetEdgesChangeHandlers.d.ts +11 -0
  97. package/cjs/hooks/edges/useGetEdgesChangeHandlers.d.ts.map +1 -0
  98. package/cjs/hooks/edges/useGetEdgesChangeHandlers.js +24 -0
  99. package/cjs/hooks/edges/useOnEdgesChange.d.ts +11 -0
  100. package/cjs/hooks/edges/useOnEdgesChange.d.ts.map +1 -0
  101. package/cjs/hooks/edges/useOnEdgesChange.js +31 -0
  102. package/cjs/hooks/index.d.ts +22 -0
  103. package/cjs/hooks/index.d.ts.map +1 -0
  104. package/cjs/hooks/index.js +159 -0
  105. package/cjs/hooks/node/useCheckUnMount.d.ts +2 -0
  106. package/cjs/hooks/node/useCheckUnMount.d.ts.map +1 -0
  107. package/cjs/hooks/node/useCheckUnMount.js +27 -0
  108. package/cjs/hooks/node/useInitialized.d.ts +2 -0
  109. package/cjs/hooks/node/useInitialized.d.ts.map +1 -0
  110. package/cjs/hooks/node/useInitialized.js +20 -0
  111. package/cjs/hooks/node/useNodeDragging.d.ts +2 -0
  112. package/cjs/hooks/node/useNodeDragging.d.ts.map +1 -0
  113. package/cjs/hooks/node/useNodeDragging.js +20 -0
  114. package/cjs/hooks/node/useNodeInitialize.d.ts +2 -0
  115. package/cjs/hooks/node/useNodeInitialize.d.ts.map +1 -0
  116. package/cjs/hooks/node/useNodeInitialize.js +23 -0
  117. package/cjs/hooks/node/useNodeTypeMap.d.ts +11 -0
  118. package/cjs/hooks/node/useNodeTypeMap.d.ts.map +1 -0
  119. package/cjs/hooks/node/useNodeTypeMap.js +20 -0
  120. package/cjs/hooks/node/useNodes.d.ts +10 -0
  121. package/cjs/hooks/node/useNodes.d.ts.map +1 -0
  122. package/cjs/hooks/node/useNodes.js +12 -0
  123. package/cjs/hooks/node/useSetNodeDragging.d.ts +2 -0
  124. package/cjs/hooks/node/useSetNodeDragging.d.ts.map +1 -0
  125. package/cjs/hooks/node/useSetNodeDragging.js +26 -0
  126. package/cjs/hooks/props/useGetProps.d.ts +6 -0
  127. package/cjs/hooks/props/useGetProps.d.ts.map +1 -0
  128. package/cjs/hooks/props/useGetProps.js +29 -0
  129. package/cjs/hooks/props/useProps.d.ts +2 -0
  130. package/cjs/hooks/props/useProps.d.ts.map +1 -0
  131. package/cjs/hooks/props/useProps.js +20 -0
  132. package/cjs/hooks/props/usePropsSelector.d.ts +13 -0
  133. package/cjs/hooks/props/usePropsSelector.d.ts.map +1 -0
  134. package/cjs/hooks/props/usePropsSelector.js +37 -0
  135. package/cjs/hooks/render/useForceUpdate.d.ts +2 -0
  136. package/cjs/hooks/render/useForceUpdate.d.ts.map +1 -0
  137. package/cjs/hooks/render/useForceUpdate.js +28 -0
  138. package/cjs/hooks/render/useForceUpdateTimes.d.ts +2 -0
  139. package/cjs/hooks/render/useForceUpdateTimes.d.ts.map +1 -0
  140. package/cjs/hooks/render/useForceUpdateTimes.js +20 -0
  141. package/cjs/hooks/state/useGetState.d.ts +11 -0
  142. package/cjs/hooks/state/useGetState.d.ts.map +1 -0
  143. package/cjs/hooks/state/useGetState.js +27 -0
  144. package/cjs/hooks/state/useSelector.d.ts +13 -0
  145. package/cjs/hooks/state/useSelector.d.ts.map +1 -0
  146. package/cjs/hooks/state/useSelector.js +28 -0
  147. package/cjs/hooks/state/useSetState.d.ts +11 -0
  148. package/cjs/hooks/state/useSetState.d.ts.map +1 -0
  149. package/cjs/hooks/state/useSetState.js +27 -0
  150. package/cjs/hooks/useFlowId.d.ts +6 -0
  151. package/cjs/hooks/useFlowId.d.ts.map +1 -0
  152. package/cjs/hooks/useFlowId.js +24 -0
  153. package/cjs/hooks/useListenRender.d.ts +2 -0
  154. package/cjs/hooks/useListenRender.d.ts.map +1 -0
  155. package/cjs/hooks/useListenRender.js +48 -0
  156. package/cjs/hooks/useNodeTypes.d.ts +14 -0
  157. package/cjs/hooks/useNodeTypes.d.ts.map +1 -0
  158. package/cjs/hooks/useNodeTypes.js +54 -0
  159. package/cjs/hooks/useTheme.d.ts +9 -0
  160. package/cjs/hooks/useTheme.d.ts.map +1 -0
  161. package/cjs/hooks/useTheme.js +25 -0
  162. package/cjs/hooks/useThemeVars.d.ts +15 -0
  163. package/cjs/hooks/useThemeVars.d.ts.map +1 -0
  164. package/cjs/hooks/useThemeVars.js +37 -0
  165. package/cjs/index.d.ts +28 -0
  166. package/cjs/index.d.ts.map +1 -0
  167. package/cjs/index.js +180 -0
  168. package/cjs/index.less +7 -0
  169. package/cjs/index.module.less +10 -0
  170. package/cjs/plugins/export/index.d.ts +18 -0
  171. package/cjs/plugins/export/index.d.ts.map +1 -0
  172. package/cjs/plugins/export/index.js +52 -0
  173. package/cjs/plugins/scrollbar/hooks/useScrollerOptions.d.ts +11 -0
  174. package/cjs/plugins/scrollbar/hooks/useScrollerOptions.d.ts.map +1 -0
  175. package/cjs/plugins/scrollbar/hooks/useScrollerOptions.js +46 -0
  176. package/cjs/plugins/scrollbar/index.d.ts +5 -0
  177. package/cjs/plugins/scrollbar/index.d.ts.map +1 -0
  178. package/cjs/plugins/scrollbar/index.js +215 -0
  179. package/cjs/plugins/scrollbar/index.less +10 -0
  180. package/cjs/plugins/scrollbar/types.d.ts +24 -0
  181. package/cjs/plugins/scrollbar/types.d.ts.map +1 -0
  182. package/cjs/plugins/scrollbar/types.js +5 -0
  183. package/cjs/providers/FlowProvider.d.ts +27 -0
  184. package/cjs/providers/FlowProvider.d.ts.map +1 -0
  185. package/cjs/providers/FlowProvider.js +91 -0
  186. package/cjs/store/PropsStore.d.ts +16 -0
  187. package/cjs/store/PropsStore.d.ts.map +1 -0
  188. package/cjs/store/PropsStore.js +75 -0
  189. package/cjs/types.d.ts +223 -0
  190. package/cjs/types.d.ts.map +1 -0
  191. package/cjs/types.js +5 -0
  192. package/cjs/utils/dimension.d.ts +20 -0
  193. package/cjs/utils/dimension.d.ts.map +1 -0
  194. package/cjs/utils/dimension.js +96 -0
  195. package/cjs/utils/getPopupContainer.d.ts +10 -0
  196. package/cjs/utils/getPopupContainer.d.ts.map +1 -0
  197. package/cjs/utils/getPopupContainer.js +19 -0
  198. package/cjs/utils/getThemeWithDefaultValue.d.ts +10 -0
  199. package/cjs/utils/getThemeWithDefaultValue.d.ts.map +1 -0
  200. package/cjs/utils/getThemeWithDefaultValue.js +23 -0
  201. package/cjs/utils/hasDimensionsChange.d.ts +10 -0
  202. package/cjs/utils/hasDimensionsChange.d.ts.map +1 -0
  203. package/cjs/utils/hasDimensionsChange.js +23 -0
  204. package/cjs/utils/layouts/base.d.ts +16 -0
  205. package/cjs/utils/layouts/base.d.ts.map +1 -0
  206. package/cjs/utils/layouts/base.js +27 -0
  207. package/cjs/utils/layouts/mindmap.d.ts +7 -0
  208. package/cjs/utils/layouts/mindmap.d.ts.map +1 -0
  209. package/cjs/utils/layouts/mindmap.js +133 -0
  210. package/cjs/utils/measureText.d.ts +21 -0
  211. package/cjs/utils/measureText.d.ts.map +1 -0
  212. package/cjs/utils/measureText.js +76 -0
  213. package/cjs/utils/parse.d.ts +11 -0
  214. package/cjs/utils/parse.d.ts.map +1 -0
  215. package/cjs/utils/parse.js +29 -0
  216. package/cjs/utils/preCreateInnerNode.d.ts +11 -0
  217. package/cjs/utils/preCreateInnerNode.d.ts.map +1 -0
  218. package/cjs/utils/preCreateInnerNode.js +44 -0
  219. package/cjs/utils/uuid.d.ts +10 -0
  220. package/cjs/utils/uuid.d.ts.map +1 -0
  221. package/cjs/utils/uuid.js +16 -0
  222. package/esm/Flow.d.ts +14 -0
  223. package/esm/Flow.d.ts.map +1 -0
  224. package/esm/Flow.js +251 -0
  225. package/esm/components/CollapseButton/index.d.ts +11 -0
  226. package/esm/components/CollapseButton/index.d.ts.map +1 -0
  227. package/esm/components/CollapseButton/index.js +59 -0
  228. package/esm/components/CollapseButton/index.less +68 -0
  229. package/esm/components/Controls/icons.d.ts +8 -0
  230. package/esm/components/Controls/icons.d.ts.map +1 -0
  231. package/esm/components/Controls/icons.js +75 -0
  232. package/esm/components/Controls/index.d.ts +13 -0
  233. package/esm/components/Controls/index.d.ts.map +1 -0
  234. package/esm/components/Controls/index.js +201 -0
  235. package/esm/components/DebugInfo/index.d.ts +5 -0
  236. package/esm/components/DebugInfo/index.d.ts.map +1 -0
  237. package/esm/components/DebugInfo/index.js +23 -0
  238. package/esm/components/DebugInfo/index.less +6 -0
  239. package/esm/components/EdgeText/index.d.ts +6 -0
  240. package/esm/components/EdgeText/index.d.ts.map +1 -0
  241. package/esm/components/EdgeText/index.js +52 -0
  242. package/esm/components/Handle/index.d.ts +3 -0
  243. package/esm/components/Handle/index.d.ts.map +1 -0
  244. package/esm/components/Handle/index.js +21 -0
  245. package/esm/components/Handle/index.module.less +9 -0
  246. package/esm/components/HiddenHandle/index.css +9 -0
  247. package/esm/components/HiddenHandle/index.d.ts +4 -0
  248. package/esm/components/HiddenHandle/index.d.ts.map +1 -0
  249. package/esm/components/HiddenHandle/index.js +21 -0
  250. package/esm/components/Legend/index.d.ts +6 -0
  251. package/esm/components/Legend/index.d.ts.map +1 -0
  252. package/esm/components/Legend/index.js +68 -0
  253. package/esm/components/Legend/index.less +41 -0
  254. package/esm/components/LoadingButton.d.ts +16 -0
  255. package/esm/components/LoadingButton.d.ts.map +1 -0
  256. package/esm/components/LoadingButton.js +112 -0
  257. package/esm/components/MarkerDefinitions/Mark.d.ts +11 -0
  258. package/esm/components/MarkerDefinitions/Mark.d.ts.map +1 -0
  259. package/esm/components/MarkerDefinitions/Mark.js +44 -0
  260. package/esm/components/MarkerDefinitions/Symbols/Arrow.d.ts +11 -0
  261. package/esm/components/MarkerDefinitions/Symbols/Arrow.d.ts.map +1 -0
  262. package/esm/components/MarkerDefinitions/Symbols/Arrow.js +25 -0
  263. package/esm/components/MarkerDefinitions/Symbols/ArrowClosed.d.ts +11 -0
  264. package/esm/components/MarkerDefinitions/Symbols/ArrowClosed.d.ts.map +1 -0
  265. package/esm/components/MarkerDefinitions/Symbols/ArrowClosed.js +26 -0
  266. package/esm/components/MarkerDefinitions/index.d.ts +6 -0
  267. package/esm/components/MarkerDefinitions/index.d.ts.map +1 -0
  268. package/esm/components/MarkerDefinitions/index.js +37 -0
  269. package/esm/components/MarkerDefinitions/styles.less +5 -0
  270. package/esm/components/MarkerDefinitions/symbols.d.ts +5 -0
  271. package/esm/components/MarkerDefinitions/symbols.d.ts.map +1 -0
  272. package/esm/components/MarkerDefinitions/symbols.js +16 -0
  273. package/esm/components/MarkerDefinitions/types.d.ts +21 -0
  274. package/esm/components/NodeRenderFactory.d.ts +11 -0
  275. package/esm/components/NodeRenderFactory.d.ts.map +1 -0
  276. package/esm/components/NodeRenderFactory.js +23 -0
  277. package/esm/components/Nodes/DefaultNode.d.ts +3 -0
  278. package/esm/components/Nodes/DefaultNode.d.ts.map +1 -0
  279. package/esm/components/Nodes/DefaultNode.js +27 -0
  280. package/esm/components/Nodes/GroupNode.d.ts +3 -0
  281. package/esm/components/Nodes/GroupNode.d.ts.map +1 -0
  282. package/esm/components/Nodes/GroupNode.js +6 -0
  283. package/esm/components/Nodes/InputNode.d.ts +3 -0
  284. package/esm/components/Nodes/InputNode.d.ts.map +1 -0
  285. package/esm/components/Nodes/InputNode.js +21 -0
  286. package/esm/components/Nodes/OutputNode.d.ts +3 -0
  287. package/esm/components/Nodes/OutputNode.d.ts.map +1 -0
  288. package/esm/components/Nodes/OutputNode.js +21 -0
  289. package/esm/components/Popover/index.d.ts +11 -0
  290. package/esm/components/Popover/index.d.ts.map +1 -0
  291. package/esm/components/Popover/index.js +109 -0
  292. package/esm/components/Tooltip/index.d.ts +12 -0
  293. package/esm/components/Tooltip/index.d.ts.map +1 -0
  294. package/esm/components/Tooltip/index.js +121 -0
  295. package/esm/components/index.d.ts +16 -0
  296. package/esm/components/index.d.ts.map +1 -0
  297. package/esm/components/index.js +15 -0
  298. package/esm/constants/InnerFlowType.d.ts +12 -0
  299. package/esm/constants/InnerFlowType.d.ts.map +1 -0
  300. package/esm/constants/InnerFlowType.js +13 -0
  301. package/esm/constants/NodeRoleType.d.ts +16 -0
  302. package/esm/constants/NodeRoleType.d.ts.map +1 -0
  303. package/esm/constants/NodeRoleType.js +16 -0
  304. package/esm/constants/SelectionStrategy.d.ts +14 -0
  305. package/esm/constants/SelectionStrategy.d.ts.map +1 -0
  306. package/esm/constants/SelectionStrategy.js +15 -0
  307. package/esm/edges/SmartEdge/index.d.ts +15 -0
  308. package/esm/edges/SmartEdge/index.d.ts.map +1 -0
  309. package/esm/edges/SmartEdge/index.js +45 -0
  310. package/esm/hoc/createFlow.d.ts +14 -0
  311. package/esm/hoc/createFlow.d.ts.map +1 -0
  312. package/esm/hoc/createFlow.js +66 -0
  313. package/esm/hoc/withFlowProvider.d.ts +11 -0
  314. package/esm/hoc/withFlowProvider.d.ts.map +1 -0
  315. package/esm/hoc/withFlowProvider.js +24 -0
  316. package/esm/hooks/edges/useGetEdgesChangeHandlers.d.ts +11 -0
  317. package/esm/hooks/edges/useGetEdgesChangeHandlers.d.ts.map +1 -0
  318. package/esm/hooks/edges/useGetEdgesChangeHandlers.js +17 -0
  319. package/esm/hooks/edges/useOnEdgesChange.d.ts +11 -0
  320. package/esm/hooks/edges/useOnEdgesChange.d.ts.map +1 -0
  321. package/esm/hooks/edges/useOnEdgesChange.js +24 -0
  322. package/esm/hooks/index.d.ts +22 -0
  323. package/esm/hooks/index.d.ts.map +1 -0
  324. package/esm/hooks/index.js +22 -0
  325. package/esm/hooks/node/useCheckUnMount.d.ts +2 -0
  326. package/esm/hooks/node/useCheckUnMount.d.ts.map +1 -0
  327. package/esm/hooks/node/useCheckUnMount.js +18 -0
  328. package/esm/hooks/node/useInitialized.d.ts +2 -0
  329. package/esm/hooks/node/useInitialized.d.ts.map +1 -0
  330. package/esm/hooks/node/useInitialized.js +12 -0
  331. package/esm/hooks/node/useNodeDragging.d.ts +2 -0
  332. package/esm/hooks/node/useNodeDragging.d.ts.map +1 -0
  333. package/esm/hooks/node/useNodeDragging.js +14 -0
  334. package/esm/hooks/node/useNodeInitialize.d.ts +2 -0
  335. package/esm/hooks/node/useNodeInitialize.d.ts.map +1 -0
  336. package/esm/hooks/node/useNodeInitialize.js +15 -0
  337. package/esm/hooks/node/useNodeTypeMap.d.ts +11 -0
  338. package/esm/hooks/node/useNodeTypeMap.d.ts.map +1 -0
  339. package/esm/hooks/node/useNodeTypeMap.js +14 -0
  340. package/esm/hooks/node/useNodes.d.ts +10 -0
  341. package/esm/hooks/node/useNodes.d.ts.map +1 -0
  342. package/esm/hooks/node/useNodes.js +9 -0
  343. package/esm/hooks/node/useSetNodeDragging.d.ts +2 -0
  344. package/esm/hooks/node/useSetNodeDragging.d.ts.map +1 -0
  345. package/esm/hooks/node/useSetNodeDragging.js +18 -0
  346. package/esm/hooks/props/useGetProps.d.ts +6 -0
  347. package/esm/hooks/props/useGetProps.d.ts.map +1 -0
  348. package/esm/hooks/props/useGetProps.js +21 -0
  349. package/esm/hooks/props/useProps.d.ts +2 -0
  350. package/esm/hooks/props/useProps.d.ts.map +1 -0
  351. package/esm/hooks/props/useProps.js +14 -0
  352. package/esm/hooks/props/usePropsSelector.d.ts +13 -0
  353. package/esm/hooks/props/usePropsSelector.d.ts.map +1 -0
  354. package/esm/hooks/props/usePropsSelector.js +31 -0
  355. package/esm/hooks/render/useForceUpdate.d.ts +2 -0
  356. package/esm/hooks/render/useForceUpdate.d.ts.map +1 -0
  357. package/esm/hooks/render/useForceUpdate.js +20 -0
  358. package/esm/hooks/render/useForceUpdateTimes.d.ts +2 -0
  359. package/esm/hooks/render/useForceUpdateTimes.d.ts.map +1 -0
  360. package/esm/hooks/render/useForceUpdateTimes.js +14 -0
  361. package/esm/hooks/state/useGetState.d.ts +11 -0
  362. package/esm/hooks/state/useGetState.d.ts.map +1 -0
  363. package/esm/hooks/state/useGetState.js +20 -0
  364. package/esm/hooks/state/useSelector.d.ts +13 -0
  365. package/esm/hooks/state/useSelector.d.ts.map +1 -0
  366. package/esm/hooks/state/useSelector.js +21 -0
  367. package/esm/hooks/state/useSetState.d.ts +11 -0
  368. package/esm/hooks/state/useSetState.d.ts.map +1 -0
  369. package/esm/hooks/state/useSetState.js +20 -0
  370. package/esm/hooks/useFlowId.d.ts +6 -0
  371. package/esm/hooks/useFlowId.d.ts.map +1 -0
  372. package/esm/hooks/useFlowId.js +19 -0
  373. package/esm/hooks/useListenRender.d.ts +2 -0
  374. package/esm/hooks/useListenRender.d.ts.map +1 -0
  375. package/esm/hooks/useListenRender.js +39 -0
  376. package/esm/hooks/useNodeTypes.d.ts +14 -0
  377. package/esm/hooks/useNodeTypes.d.ts.map +1 -0
  378. package/esm/hooks/useNodeTypes.js +46 -0
  379. package/esm/hooks/useTheme.d.ts +9 -0
  380. package/esm/hooks/useTheme.d.ts.map +1 -0
  381. package/esm/hooks/useTheme.js +19 -0
  382. package/esm/hooks/useThemeVars.d.ts +15 -0
  383. package/esm/hooks/useThemeVars.d.ts.map +1 -0
  384. package/esm/hooks/useThemeVars.js +26 -0
  385. package/esm/index.d.ts +28 -0
  386. package/esm/index.d.ts.map +1 -0
  387. package/esm/index.js +27 -0
  388. package/esm/index.less +7 -0
  389. package/esm/index.module.less +10 -0
  390. package/esm/plugins/export/index.d.ts +18 -0
  391. package/esm/plugins/export/index.d.ts.map +1 -0
  392. package/esm/plugins/export/index.js +71 -0
  393. package/esm/plugins/scrollbar/hooks/useScrollerOptions.d.ts +11 -0
  394. package/esm/plugins/scrollbar/hooks/useScrollerOptions.d.ts.map +1 -0
  395. package/esm/plugins/scrollbar/hooks/useScrollerOptions.js +38 -0
  396. package/esm/plugins/scrollbar/index.d.ts +5 -0
  397. package/esm/plugins/scrollbar/index.d.ts.map +1 -0
  398. package/esm/plugins/scrollbar/index.js +198 -0
  399. package/esm/plugins/scrollbar/index.less +10 -0
  400. package/esm/plugins/scrollbar/types.d.ts +24 -0
  401. package/esm/plugins/scrollbar/types.d.ts.map +1 -0
  402. package/esm/plugins/scrollbar/types.js +1 -0
  403. package/esm/providers/FlowProvider.d.ts +27 -0
  404. package/esm/providers/FlowProvider.d.ts.map +1 -0
  405. package/esm/providers/FlowProvider.js +90 -0
  406. package/esm/store/PropsStore.d.ts +16 -0
  407. package/esm/store/PropsStore.d.ts.map +1 -0
  408. package/esm/store/PropsStore.js +67 -0
  409. package/esm/types.d.ts +223 -0
  410. package/esm/types.d.ts.map +1 -0
  411. package/esm/types.js +1 -0
  412. package/esm/utils/dimension.d.ts +20 -0
  413. package/esm/utils/dimension.d.ts.map +1 -0
  414. package/esm/utils/dimension.js +89 -0
  415. package/esm/utils/getPopupContainer.d.ts +10 -0
  416. package/esm/utils/getPopupContainer.d.ts.map +1 -0
  417. package/esm/utils/getPopupContainer.js +12 -0
  418. package/esm/utils/getThemeWithDefaultValue.d.ts +10 -0
  419. package/esm/utils/getThemeWithDefaultValue.d.ts.map +1 -0
  420. package/esm/utils/getThemeWithDefaultValue.js +22 -0
  421. package/esm/utils/hasDimensionsChange.d.ts +10 -0
  422. package/esm/utils/hasDimensionsChange.d.ts.map +1 -0
  423. package/esm/utils/hasDimensionsChange.js +28 -0
  424. package/esm/utils/layouts/base.d.ts +16 -0
  425. package/esm/utils/layouts/base.d.ts.map +1 -0
  426. package/esm/utils/layouts/base.js +19 -0
  427. package/esm/utils/layouts/mindmap.d.ts +7 -0
  428. package/esm/utils/layouts/mindmap.d.ts.map +1 -0
  429. package/esm/utils/layouts/mindmap.js +131 -0
  430. package/esm/utils/measureText.d.ts +21 -0
  431. package/esm/utils/measureText.d.ts.map +1 -0
  432. package/esm/utils/measureText.js +69 -0
  433. package/esm/utils/parse.d.ts +11 -0
  434. package/esm/utils/parse.d.ts.map +1 -0
  435. package/esm/utils/parse.js +26 -0
  436. package/esm/utils/preCreateInnerNode.d.ts +11 -0
  437. package/esm/utils/preCreateInnerNode.d.ts.map +1 -0
  438. package/esm/utils/preCreateInnerNode.js +42 -0
  439. package/esm/utils/uuid.d.ts +10 -0
  440. package/esm/utils/uuid.d.ts.map +1 -0
  441. package/esm/utils/uuid.js +10 -0
  442. package/package.json +82 -0
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _FullscreenExitOutlined = _interopRequireDefault(require("@ant-design/icons/FullscreenExitOutlined"));
8
+ var _FullscreenOutlined = _interopRequireDefault(require("@ant-design/icons/FullscreenOutlined"));
9
+ var _ZoomInOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons/ZoomInOutlined"));
10
+ var _ZoomOutOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons/ZoomOutOutlined"));
11
+ var _react = require("@xyflow/react");
12
+ var _ahooks = require("ahooks");
13
+ var _antd = require("antd");
14
+ var _classcat = _interopRequireDefault(require("classcat"));
15
+ var _react2 = _interopRequireWildcard(require("react"));
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ var _shallow = require("zustand/shallow");
18
+ var _icons = require("./icons");
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+ /*
23
+ * @author: yanxianliang
24
+ * @date: 2025-06-09 09:45
25
+ * @desc: 画布控制器
26
+ *
27
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
28
+ */
29
+
30
+ const selector = s => ({
31
+ isInteractive: s.nodesDraggable || s.nodesConnectable || s.elementsSelectable,
32
+ minZoomReached: s.transform[2] <= s.minZoom,
33
+ maxZoomReached: s.transform[2] >= s.maxZoom
34
+ });
35
+ function Controls({
36
+ style,
37
+ showZoom = true,
38
+ showFitView = true,
39
+ showInteractive = false,
40
+ showFullscreen = true,
41
+ showMiniMap,
42
+ containerRef,
43
+ fitViewOptions,
44
+ onZoomIn,
45
+ onZoomOut,
46
+ onFitView,
47
+ onInteractiveChange,
48
+ className,
49
+ children,
50
+ position = 'bottom-left',
51
+ orientation = 'vertical',
52
+ 'aria-label': ariaLabel = 'React Flow controls',
53
+ minimapVisible,
54
+ setMinimapVisible,
55
+ showForceLayout
56
+ }) {
57
+ const [isFullscreen, {
58
+ toggleFullscreen
59
+ }] = (0, _ahooks.useFullscreen)(containerRef);
60
+ const store = (0, _react.useStoreApi)();
61
+ const {
62
+ isInteractive,
63
+ minZoomReached,
64
+ maxZoomReached
65
+ } = (0, _react.useStore)(selector, _shallow.shallow);
66
+ const {
67
+ zoomIn,
68
+ zoomOut,
69
+ fitView
70
+ } = (0, _react.useReactFlow)();
71
+ const onZoomInHandler = () => {
72
+ zoomIn();
73
+ onZoomIn?.();
74
+ };
75
+ const onZoomOutHandler = () => {
76
+ zoomOut();
77
+ onZoomOut?.();
78
+ };
79
+ const onFitViewHandler = () => {
80
+ fitView(fitViewOptions);
81
+ onFitView?.();
82
+ };
83
+ const onToggleInteractivity = () => {
84
+ store.setState({
85
+ nodesDraggable: !isInteractive,
86
+ nodesConnectable: !isInteractive,
87
+ elementsSelectable: !isInteractive
88
+ });
89
+ onInteractiveChange?.(!isInteractive);
90
+ };
91
+ const onForceLayout = () => {
92
+ // TODO 美化布局
93
+ };
94
+ const onToggleMiniMap = () => {
95
+ setMinimapVisible(!minimapVisible);
96
+ };
97
+ const orientationClass = orientation === 'horizontal' ? 'horizontal' : 'vertical';
98
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Panel, {
99
+ className: (0, _classcat.default)(['react-flow__controls', orientationClass, className]),
100
+ position: position,
101
+ style: style,
102
+ "data-testid": "rf__controls",
103
+ "aria-label": ariaLabel,
104
+ children: [showZoom && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
105
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
106
+ title: '放大',
107
+ placement: 'right',
108
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
109
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
110
+ onClick: onZoomInHandler,
111
+ className: "react-flow__controls-zoomin",
112
+ title: '放大',
113
+ "aria-label": 'zoom in',
114
+ disabled: maxZoomReached,
115
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomInOutlined.default, {})
116
+ })
117
+ })
118
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
119
+ title: '缩小',
120
+ placement: 'right',
121
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
122
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
123
+ onClick: onZoomOutHandler,
124
+ className: "react-flow__controls-zoomout",
125
+ title: '缩小',
126
+ "aria-label": 'zoom out',
127
+ disabled: minZoomReached,
128
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ZoomOutOutlined.default, {})
129
+ })
130
+ })
131
+ })]
132
+ }), showFitView && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
133
+ title: '自适应视图',
134
+ placement: 'right',
135
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
136
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
137
+ className: "react-flow__controls-fitview",
138
+ onClick: onFitViewHandler,
139
+ title: '自适应视图',
140
+ "aria-label": 'fit view',
141
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.FitViewIcon, {})
142
+ })
143
+ })
144
+ }), showFullscreen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
145
+ title: isFullscreen ? '取消全屏' : '全屏',
146
+ placement: 'right',
147
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
148
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
149
+ className: "react-flow__controls-fullscreen",
150
+ onClick: toggleFullscreen,
151
+ title: isFullscreen ? '取消全屏' : '全屏',
152
+ "aria-label": "toggle fullscreen",
153
+ children: isFullscreen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_FullscreenExitOutlined.default, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_FullscreenOutlined.default, {})
154
+ })
155
+ })
156
+ }), showMiniMap && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
157
+ title: minimapVisible ? '关闭缩略图' : '开启缩略图',
158
+ placement: 'right',
159
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
160
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
161
+ className: "react-flow__controls-interactive",
162
+ onClick: onToggleMiniMap,
163
+ title: minimapVisible ? '关闭缩略图' : '开启缩略图',
164
+ "aria-label": "toggle minimap",
165
+ children: minimapVisible ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.UnMinimap, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.Minimap, {})
166
+ })
167
+ })
168
+ }), showInteractive && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
169
+ title: isInteractive ? '解锁' : '锁定',
170
+ placement: 'right',
171
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
172
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
173
+ className: "react-flow__controls-interactive",
174
+ onClick: onToggleInteractivity,
175
+ title: isInteractive ? '解锁' : '锁定',
176
+ "aria-label": "toggle interactivity",
177
+ children: isInteractive ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.UnlockIcon, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LockIcon, {})
178
+ })
179
+ })
180
+ }), showForceLayout && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, {
181
+ title: '美化布局',
182
+ placement: 'right',
183
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
184
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.ControlButton, {
185
+ className: "react-flow__controls-layout",
186
+ onClick: onForceLayout,
187
+ title: '美化布局',
188
+ "aria-label": "force layout",
189
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.ForceLayout, {})
190
+ })
191
+ })
192
+ }), children]
193
+ });
194
+ }
195
+ var _default = exports.default = /*#__PURE__*/(0, _react2.memo)(Controls);
@@ -0,0 +1,5 @@
1
+ import './index.less';
2
+ export declare const DebugInfo: ({ debug }: {
3
+ debug?: boolean | undefined;
4
+ }) => import("react/jsx-runtime").JSX.Element | null;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"AAUA,OAAO,cAAc,CAAC;AAEtB,eAAO,MAAM,SAAS;;oDAUrB,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DebugInfo = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactFpsStats = _interopRequireDefault(require("react-fps-stats"));
9
+ require("./index.less");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ /**
13
+ * @author: yanxianliang
14
+ * @date: 2025-07-29 10:17
15
+ * @modified:2025/7/29 10:17 by yanxianliang
16
+ * @desc: 性能分析调试组件
17
+ *
18
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
19
+ */
20
+
21
+ const DebugInfo = ({
22
+ debug
23
+ }) => {
24
+ const show = debug || window[Symbol.for('rxflow_debug')] === true;
25
+ if (!show) {
26
+ return null;
27
+ }
28
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
29
+ className: 'rxflow-debug',
30
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactFpsStats.default, {})
31
+ });
32
+ };
33
+ exports.DebugInfo = DebugInfo;
@@ -0,0 +1,6 @@
1
+ .rxflow-debug {
2
+ position: absolute;
3
+ & > div {
4
+ position: absolute!important;
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { EdgeTextProps } from "@xyflow/react";
3
+ declare function EdgeText({ x, y, label, labelStyle, labelShowBg, labelBgStyle, labelBgPadding, labelBgBorderRadius, children, className, ...rest }: EdgeTextProps): import("react/jsx-runtime").JSX.Element | null;
4
+ declare const _default: import("react").MemoExoticComponent<typeof EdgeText>;
5
+ export default _default;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":";AASA,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAE5C,iBAAS,QAAQ,CACf,EACE,CAAC,EACD,CAAC,EACD,KAAK,EACL,UAAU,EACV,WAAkB,EAClB,YAAY,EACZ,cAAuB,EACvB,mBAAuB,EACvB,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACR,EAAE,aAAa,kDAqBjB;;AAED,wBAA8B"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _classcat = _interopRequireDefault(require("classcat"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ /*
12
+ * @author: yanxianliang
13
+ * @date: 2025-06-08 11:16
14
+ * @desc: 边文字组件支持左对齐/右对齐
15
+ *
16
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
17
+ */
18
+
19
+ function EdgeText({
20
+ x,
21
+ y,
22
+ label,
23
+ labelStyle,
24
+ labelShowBg = true,
25
+ labelBgStyle,
26
+ labelBgPadding = [2, 4],
27
+ labelBgBorderRadius = 2,
28
+ children,
29
+ className,
30
+ ...rest
31
+ }) {
32
+ const edgeTextClasses = (0, _classcat.default)(['react-flow__edge-textwrapper', className]);
33
+ if (!label) {
34
+ return null;
35
+ }
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", {
37
+ transform: `translate(${x} ${y})`,
38
+ className: edgeTextClasses,
39
+ ...rest,
40
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("text", {
41
+ className: "react-flow__edge-text",
42
+ dy: "0.3em",
43
+ style: labelStyle,
44
+ children: label
45
+ }), children]
46
+ });
47
+ }
48
+ var _default = exports.default = /*#__PURE__*/(0, _react.memo)(EdgeText);
@@ -0,0 +1,3 @@
1
+ import { HandleProps } from '@xyflow/react';
2
+ export default function (props: HandleProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAS,WAAW,EAAC,MAAM,eAAe,CAAA;AAGjD,MAAM,CAAC,OAAO,WAAW,KAAK,EAAE,WAAW,2CAO1C"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+ var _react = require("@xyflow/react");
8
+ var _indexModule = _interopRequireDefault(require("./index.module.less"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ /*
12
+ * @author: yanxianliang
13
+ * @date: 2025-06-07 11:45
14
+ * @desc: Handle 自定义
15
+ *
16
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
17
+ */
18
+
19
+ function _default(props) {
20
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Handle, {
21
+ ...props,
22
+ className: _indexModule.default.handle
23
+ });
24
+ }
@@ -0,0 +1,9 @@
1
+ .handle {
2
+ visibility: hidden;
3
+ width: 0;
4
+ height: 0;
5
+ min-width: 0;
6
+ min-height: 0;
7
+ border: none;
8
+ z-index: 5;
9
+ }
@@ -0,0 +1,9 @@
1
+ .rxflow-hidden-handle.react-flow__handle {
2
+ visibility: hidden;
3
+ width: 0;
4
+ height: 0;
5
+ min-width: 0;
6
+ min-height: 0;
7
+ border: none;
8
+ z-index: 5;
9
+ }
@@ -0,0 +1,4 @@
1
+ import { HandleProps } from '@xyflow/react';
2
+ import './index.css';
3
+ export default function (props: HandleProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAS,WAAW,EAAC,MAAM,eAAe,CAAA;AACjD,OAAO,aAAa,CAAC;AAErB,MAAM,CAAC,OAAO,WAAW,KAAK,EAAE,WAAW,2CAO1C"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+ var _react = require("@xyflow/react");
8
+ require("./index.css");
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ /*
11
+ * @author: yanxianliang
12
+ * @date: 2025-06-07 11:45
13
+ * @desc: Handle 自定义
14
+ *
15
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
16
+ */
17
+
18
+ function _default(props) {
19
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Handle, {
20
+ ...props,
21
+ className: 'rxflow-hidden-handle'
22
+ });
23
+ }
@@ -0,0 +1,6 @@
1
+ import "./index.less";
2
+ import { IBaseFlowProps } from "../../types";
3
+ export declare const Legend: ({ showLegend }: {
4
+ showLegend: IBaseFlowProps['showLegend'];
5
+ }) => import("react/jsx-runtime").JSX.Element | null;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"AAWA,OAAO,cAAc,CAAC;AAKtB,OAAO,EAAC,cAAc,EAAkB,MAAM,aAAa,CAAC;AAE5D,eAAO,MAAM,MAAM;gBAIH,cAAc,CAAC,YAAY,CAAC;oDAkD3C,CAAA"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Legend = void 0;
7
+ require("./index.less");
8
+ var _react = require("@xyflow/react");
9
+ var _antd = require("antd");
10
+ var _react2 = _interopRequireWildcard(require("react"));
11
+ var _hooks = require("../../hooks");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ /*
16
+ * @author: yanxianliang
17
+ * @date: 2025-06-03 19:33
18
+ * @desc: 图例标准组件。按照节点类型进行分类展示。
19
+ *
20
+ * 遍历当前的nodes 列表,根据类型定义解析出图例列表。
21
+ *
22
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
23
+ */
24
+
25
+ const Legend = ({
26
+ showLegend
27
+ }) => {
28
+ const nodes = (0, _react.useNodes)();
29
+ const showAll = typeof showLegend === "boolean" ? true : showLegend?.showAll ?? true; // 默认值为 true
30
+
31
+ // 节点定义列表
32
+ const nodeTypeList = (0, _hooks.usePropsSelector)(state => state.nodeTypes);
33
+ const legendList = (0, _react2.useMemo)(() => {
34
+ const showTypeList = [];
35
+ const nodeTypeSet = new Set();
36
+ if (!showAll) {
37
+ nodes.forEach(node => {
38
+ const type = node.type;
39
+ nodeTypeSet.add(type);
40
+ });
41
+ }
42
+ nodeTypeList?.forEach(nodeType => {
43
+ if (!nodeType.hideInLegend && (showAll || nodeTypeSet.has(nodeType.type))) {
44
+ showTypeList.push(nodeType);
45
+ }
46
+ });
47
+ return showTypeList;
48
+ }, [nodes, nodeTypeList]);
49
+ if (legendList.length === 0) {
50
+ return null;
51
+ }
52
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
53
+ className: 'rxflow-legend-container',
54
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Space, {
55
+ size: 10,
56
+ children: legendList.map(legend => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
57
+ className: 'rxflow-legend-item',
58
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
59
+ className: 'rxflow-legend-tag',
60
+ style: {
61
+ backgroundColor: legend.color
62
+ },
63
+ children: legend.icon
64
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
65
+ className: 'rxflow-legend-label',
66
+ children: legend.label
67
+ })]
68
+ }, legend.label))
69
+ })
70
+ });
71
+ };
72
+ exports.Legend = Legend;
@@ -0,0 +1,41 @@
1
+ /*
2
+ * @author: yanxianliang
3
+ * @date: 2025-06-03 19:47
4
+ * @desc: 样式
5
+ *
6
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
7
+ */
8
+ .rxflow-legend {
9
+ &-container {
10
+ position: absolute;
11
+ top: 0;
12
+ left: 0;
13
+ right: 52px;
14
+ padding: 5px 10px;
15
+ z-index: 200;
16
+ }
17
+
18
+ &-item {
19
+ display: flex;
20
+ align-items: center;
21
+ }
22
+
23
+ &-tag{
24
+ width: 14px;
25
+ height: 14px;
26
+ border-radius: 2px;
27
+ margin-right: 3px;
28
+ display: flex;
29
+ align-items: center;
30
+ justify-content: center;
31
+ img {
32
+ width: 14px;
33
+ height: 14px;
34
+ }
35
+ }
36
+
37
+ &-label {
38
+ font-size: 14px;
39
+ color: #474747;
40
+ }
41
+ }
@@ -0,0 +1,16 @@
1
+ import { ButtonProps } from 'antd';
2
+ /**
3
+ * LoadingButton 组件
4
+ * - 支持 loading 状态受控/非受控
5
+ * - 支持点击防抖(防止重复点击)
6
+ * - 支持异步 onClick
7
+ *
8
+ * @param props
9
+ * onClick: 点击事件,支持返回 Promise
10
+ * throttle: 防抖间隔,默认 300ms
11
+ */
12
+ export declare const LoadingButton: (props: Omit<ButtonProps, "onClick"> & {
13
+ onClick?: ((e: React.MouseEvent<HTMLButtonElement>) => Promise<void> | void) | undefined;
14
+ throttle?: number | undefined;
15
+ }) => import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=LoadingButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadingButton.d.ts","sourceRoot":"","sources":["LoadingButton.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAU,WAAW,EAAE,MAAM,MAAM,CAAC;AAG3C;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa;mBAER,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,QAAQ,IAAI,CAAC,GAAG,IAAI;;6CAuD7E,CAAC"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LoadingButton = void 0;
7
+ var _ahooks = require("ahooks");
8
+ var _antd = require("antd");
9
+ var _react = require("react");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ /*
12
+ * @author: yanxianliang
13
+ * @date: 2025-05-23 15:19
14
+ * @desc: Loading Button
15
+ *
16
+ * 支持业务防抖
17
+ *
18
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
19
+ */
20
+
21
+ /**
22
+ * LoadingButton 组件
23
+ * - 支持 loading 状态受控/非受控
24
+ * - 支持点击防抖(防止重复点击)
25
+ * - 支持异步 onClick
26
+ *
27
+ * @param props
28
+ * onClick: 点击事件,支持返回 Promise
29
+ * throttle: 防抖间隔,默认 300ms
30
+ */
31
+ const LoadingButton = props => {
32
+ const lockRef = (0, _react.useRef)(false); // 点击锁,loading 无法解决鼠标连击问题
33
+ const throttle = props.throttle ?? 300;
34
+
35
+ /**
36
+ * loading 状态受控/非受控
37
+ */
38
+ const [loading, setLoading] = (0, _ahooks.useControllableValue)(props, {
39
+ valuePropName: 'loading',
40
+ trigger: 'onLoadingChange'
41
+ });
42
+
43
+ /**
44
+ * 包装点击事件,支持防抖和 loading
45
+ */
46
+ const onButtonClick = (0, _ahooks.useMemoizedFn)(e => {
47
+ if (lockRef.current) {
48
+ return; // 防抖拦截
49
+ }
50
+ lockRef.current = true;
51
+ const result = props.onClick?.(e);
52
+ if (result && result instanceof Promise) {
53
+ (async () => {
54
+ setLoading(true);
55
+ try {
56
+ await result;
57
+ // eslint-disable-next-line @typescript-eslint/no-shadow
58
+ } catch (e) {
59
+ /* empty */
60
+ } finally {
61
+ setLoading(false);
62
+ setTimeout(() => {
63
+ lockRef.current = false;
64
+ }, throttle);
65
+ }
66
+ })();
67
+ } else {
68
+ setTimeout(() => {
69
+ /**
70
+ * 纯前端交互的,进行前端防抖
71
+ */
72
+ lockRef.current = false;
73
+ }, throttle);
74
+ }
75
+ });
76
+
77
+ /**
78
+ * 渲染按钮
79
+ */
80
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Button, {
81
+ ...props,
82
+ loading: loading,
83
+ onClick: onButtonClick
84
+ });
85
+ };
86
+ exports.LoadingButton = LoadingButton;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @author: yanxianliang
3
+ * @date: 2025-07-23 16:29
4
+ * @modified:2025/7/23 16:29 by yanxianliang
5
+ * @desc: Mark
6
+ *
7
+ * Copyright (c) 2025 by yanxianliang, All Rights Reserved.
8
+ */
9
+ import { MarkerProps } from "@xyflow/system";
10
+ export declare const Marker: ({ id, type, color, width, height, markerUnits, strokeWidth, orient, }: MarkerProps) => import("react/jsx-runtime").JSX.Element | null;
11
+ //# sourceMappingURL=Mark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mark.d.ts","sourceRoot":"","sources":["Mark.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAI3C,eAAO,MAAM,MAAM,0EAUd,WAAW,mDAsBf,CAAC"}