chore(docs): update example

This commit is contained in:
braks
2022-10-14 23:47:32 +02:00
committed by Braks
parent 34685a50c6
commit ce30581651
+16 -19
View File
@@ -16,13 +16,19 @@ const getNodeClass: ClassFunc<GraphNode> = (el) => {
return classes.join(' ') return classes.join(' ')
} }
const getEdgeClass = (el: GraphEdge, color: string) => { const getEdgeClass: ClassFunc<GraphEdge> = (el) => {
const sourceNodeSelected = el.sourceNode.selected const classes = ['transition-colors duration-300', el.selected || el.sourceNode.selected ? 'font-semibold' : '']
const classes = ['transition-colors duration-300', el.selected || sourceNodeSelected ? `bg-${color}` : '']
return classes.join(' ') return classes.join(' ')
} }
const getEdgeStyle: StyleFunc<GraphEdge> = (el) => {
const sourceNodeSelected = el.sourceNode.selected
return {
transition: 'stroke ease-in-out 300ms',
stroke: el.selected || sourceNodeSelected ? 'var(--secondary)' : '',
}
}
const { onPaneReady, onConnect, addEdges, viewport } = useVueFlow({ const { onPaneReady, onConnect, addEdges, viewport } = useVueFlow({
connectionLineType: ConnectionLineType.SmoothStep, connectionLineType: ConnectionLineType.SmoothStep,
connectionLineStyle: { connectionLineStyle: {
@@ -57,18 +63,20 @@ const { onPaneReady, onConnect, addEdges, viewport } = useVueFlow({
label: 'animated edge', label: 'animated edge',
target: '2', target: '2',
animated: true, animated: true,
class: (el) => getEdgeClass(el, 'green'), class: getEdgeClass,
style: getEdgeStyle,
}, },
{ {
id: 'e1-3', id: 'e1-3',
source: '1', source: '1',
target: '3', target: '3',
label: 'default edge', label: 'default edge',
class: (el) => getEdgeClass(el, 'red'), class: getEdgeClass,
style: (el: GraphEdge) => { style: (el: GraphEdge) => {
const sourceNodeSelected = el.sourceNode.selected const sourceNodeSelected = el.sourceNode.selected
return { return {
transition: 'stroke ease-in-out 300ms', transition: 'stroke ease-in-out 300ms',
stroke: el.selected || sourceNodeSelected ? 'red' : '',
} }
}, },
}, },
@@ -78,7 +86,8 @@ const { onPaneReady, onConnect, addEdges, viewport } = useVueFlow({
target: '4', target: '4',
type: 'step', type: 'step',
animated: true, animated: true,
class: (el) => getEdgeClass(el, 'green'), class: getEdgeClass,
style: getEdgeStyle,
}, },
], ],
}) })
@@ -132,16 +141,4 @@ onConnect((param) => {
.basic .vue-flow__node-output.selected .vue-flow__handle { .basic .vue-flow__node-output.selected .vue-flow__handle {
@apply bg-green-500; @apply bg-green-500;
} }
.vue-flow__edge.bg-green {
.vue-flow__edge-path {
stroke: var(--secondary);
}
}
.vue-flow__edge.bg-red {
.vue-flow__edge-path {
stroke: red;
}
}
</style> </style>