diff --git a/packages/vue-flow/src/components/ConnectionLine/ConnectionLine.vue b/packages/vue-flow/src/components/ConnectionLine/ConnectionLine.vue index c72872ed..a71d71d8 100644 --- a/packages/vue-flow/src/components/ConnectionLine/ConnectionLine.vue +++ b/packages/vue-flow/src/components/ConnectionLine/ConnectionLine.vue @@ -4,6 +4,7 @@ import type { GraphNode, HandleElement, HandleType } from '../../types' import { ConnectionLineType, Position } from '../../types' import { useVueFlow } from '../../composables' import { Slots } from '../../context' +import { getMarkerId } from '../../utils' const { sourceNode } = defineProps<{ sourceNode: GraphNode @@ -17,6 +18,7 @@ const { connectionLineType, connectionLineStyle, connectionNodeId, + connectionLineOptions, viewport, } = $(useVueFlow()) @@ -44,7 +46,7 @@ const targetY = $computed(() => (connectionPosition.y - viewport.y) / viewport.z const dAttr = computed(() => { let path = `M${sourceX},${sourceY} ${targetX},${targetY}` - switch (connectionLineType) { + switch (connectionLineType || connectionLineOptions.type) { case ConnectionLineType.Bezier: path = getBezierPath({ sourceX, @@ -99,13 +101,21 @@ export default { targetX, targetY, targetPosition, - connectionLineType, - connectionLineStyle, nodes: getNodes, sourceNode, sourceHandle, + markerEnd: `url(#${getMarkerId(connectionLineOptions.markerEnd)})`, + markerStart: `url(#${getMarkerId(connectionLineOptions.markerStart)})`, }" /> - + diff --git a/packages/vue-flow/src/container/EdgeRenderer/EdgeRenderer.vue b/packages/vue-flow/src/container/EdgeRenderer/EdgeRenderer.vue index d680a9de..af621809 100644 --- a/packages/vue-flow/src/container/EdgeRenderer/EdgeRenderer.vue +++ b/packages/vue-flow/src/container/EdgeRenderer/EdgeRenderer.vue @@ -18,7 +18,6 @@ const { connectionNodeId, nodesConnectable, connectionHandleType, - defaultMarkerColor, edgesUpdatable, elementsSelectable, getSelectedNodes, @@ -181,7 +180,7 @@ export default {