From 9ae083a5dafe360e71c86bf8e4127508e6db7473 Mon Sep 17 00:00:00 2001 From: Dymonelewis <120695700@qq.com> Date: Mon, 1 Dec 2025 19:16:19 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=BE=8E=E5=8C=96=E6=95=B4=E4=BD=93UI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/pages/graph/index.tsx | 42 +- .../feature-examples/src/pages/grid/index.tsx | 2 +- .../src/pages/theme/config.ts | 644 +++++++++++++++ .../src/pages/theme/index.tsx | 741 +++--------------- packages/core/src/LogicFlow.tsx | 6 + packages/core/src/constant/index.ts | 2 + packages/core/src/constant/theme.ts | 698 +++++++++++++++++ packages/core/src/model/GraphModel.ts | 26 +- packages/core/src/model/TransformModel.ts | 18 +- packages/core/src/model/edge/BaseEdgeModel.ts | 12 +- .../core/src/model/edge/PolylineEdgeModel.ts | 27 +- packages/core/src/model/node/BaseNodeModel.ts | 10 +- packages/core/src/model/node/HtmlNodeModel.ts | 13 + .../core/src/model/node/PolygonNodeModel.ts | 2 + packages/core/src/options.ts | 2 +- packages/core/src/util/edge.ts | 3 +- packages/core/src/util/geometry.ts | 99 +++ packages/core/src/util/theme.ts | 315 +------- packages/core/src/view/Control.tsx | 25 +- packages/core/src/view/edge/PolylineEdge.tsx | 16 +- packages/core/src/view/node/HtmlNode.tsx | 34 +- packages/core/src/view/overlay/Grid.tsx | 228 +++++- .../core/src/view/overlay/OutlineOverlay.tsx | 82 +- packages/core/src/view/overlay/gridConfig.ts | 112 +++ packages/core/src/view/shape/Polygon.tsx | 61 +- .../extension/src/components/control/index.ts | 30 +- packages/extension/src/style/index.less | 101 ++- packages/extension/src/style/raw.ts | 90 ++- 28 files changed, 2285 insertions(+), 1156 deletions(-) create mode 100644 examples/feature-examples/src/pages/theme/config.ts create mode 100644 packages/core/src/constant/theme.ts create mode 100644 packages/core/src/view/overlay/gridConfig.ts diff --git a/examples/feature-examples/src/pages/graph/index.tsx b/examples/feature-examples/src/pages/graph/index.tsx index 0bcf09562..6473d7f34 100644 --- a/examples/feature-examples/src/pages/graph/index.tsx +++ b/examples/feature-examples/src/pages/graph/index.tsx @@ -324,7 +324,19 @@ export default function BasicNode() { ;(window as any).lf = lf } }, []) - + const handleRandomEdgeOffset = () => { + if (lfRef.current) { + const { edges } = lfRef.current.getGraphData() as GraphData + forEach(edges, (edge) => { + if (edge.type !== 'polyline') return + const offset = Math.random() * 100 + console.log('handleRandomEdgeOffset offset', offset) + lfRef.current?.setProperties(edge.id, { + offset, + }) + }) + } + } const setArrow = (arrowName: string) => { const lf = lfRef.current if (lf) { @@ -337,7 +349,19 @@ export default function BasicNode() { }) } } - + const handleRandomEdgeRadius = () => { + if (lfRef.current) { + const { edges } = lfRef.current.getGraphData() as GraphData + forEach(edges, (edge) => { + if (edge.type !== 'polyline') return + const radius = Math.random() * 100 + console.log('handleRandomEdgeRadius radius', radius) + lfRef.current?.setProperties(edge.id, { + radius, + }) + }) + } + } const focusOn = () => { lfRef?.current?.focusOn({ id: 'custom-node-1', @@ -713,6 +737,20 @@ export default function BasicNode() { > 开启边动画 + +