diff --git a/docs/components/examples/edges/App.vue b/docs/components/examples/edges/App.vue
index 58a8e602..dc9d0a55 100644
--- a/docs/components/examples/edges/App.vue
+++ b/docs/components/examples/edges/App.vue
@@ -1,5 +1,5 @@
-
+
+
diff --git a/docs/components/examples/edges/CustomEdge2.vue b/docs/components/examples/edges/CustomEdge2.vue
index c9948f77..07bfc7c6 100644
--- a/docs/components/examples/edges/CustomEdge2.vue
+++ b/docs/components/examples/edges/CustomEdge2.vue
@@ -1,5 +1,5 @@
-
-
-
-import { Background, BackgroundVariant, Controls, MiniMap } from '@vue-flow/additional-components'
+import { Background, BackgroundVariant, MiniMap, Panel, PanelPosition } from '@vue-flow/additional-components'
import { VueFlow, useVueFlow } from '@vue-flow/core'
const { nodes, addNodes, edges, addEdges, onConnect, onPaneReady, onNodeDragStop, dimensions } = useVueFlow()
onConnect((params) => addEdges([params]))
-onPaneReady((flowInstance) => console.log('flow loaded:', flowInstance))
-onNodeDragStop((node) => console.log('drag stop', node))
const addRandomNode = () => {
const nodeId = (nodes.value.length + 1).toString()
+
const newNode = {
id: nodeId,
label: `Node: ${nodeId}`,
position: { x: Math.random() * dimensions.value.width, y: Math.random() * dimensions.value.height },
}
+
addNodes([newNode])
}
@@ -22,11 +22,11 @@ const addRandomNode = () => {
-
+
-
+
+
+
diff --git a/docs/components/examples/hidden/App.vue b/docs/components/examples/hidden/App.vue
index d631393a..a0f8efa3 100644
--- a/docs/components/examples/hidden/App.vue
+++ b/docs/components/examples/hidden/App.vue
@@ -1,7 +1,7 @@
-
-
-
+
+
-
+
diff --git a/docs/components/examples/horizontal/App.vue b/docs/components/examples/horizontal/App.vue
index 8add1df2..14e2d538 100644
--- a/docs/components/examples/horizontal/App.vue
+++ b/docs/components/examples/horizontal/App.vue
@@ -19,10 +19,12 @@ onConnect((params) => addEdges([params]))
:default-zoom="1.5"
:min-zoom="0.2"
:max-zoom="4"
- :fit-view-on-init="true"
+ fit-view-on-init
>
+
+
diff --git a/docs/components/examples/index.ts b/docs/components/examples/index.ts
index 966fb2cf..526d1066 100644
--- a/docs/components/examples/index.ts
+++ b/docs/components/examples/index.ts
@@ -96,7 +96,7 @@ export const exampleImports = {
'App.vue': TeleportApp,
'Sidebar.vue': TeleportSidebar,
'TeleportableNode.vue': TeleportableNode,
- 'useTransition.js': TeleportableUseTransition,
+ 'useTeleport.js': TeleportableUseTransition,
'style.css': TeleportCSS,
},
transition: {
diff --git a/docs/components/examples/interaction/App.vue b/docs/components/examples/interaction/App.vue
index f557a211..79ba7a9c 100644
--- a/docs/components/examples/interaction/App.vue
+++ b/docs/components/examples/interaction/App.vue
@@ -14,7 +14,7 @@ const elements = ref([
-
+
diff --git a/docs/components/examples/interaction/InteractionControls.vue b/docs/components/examples/interaction/InteractionControls.vue
index ce68e1e3..83b7a3b6 100644
--- a/docs/components/examples/interaction/InteractionControls.vue
+++ b/docs/components/examples/interaction/InteractionControls.vue
@@ -23,14 +23,21 @@ const {
} = useVueFlow()
const captureZoomClick = ref(false)
+
const captureZoomScroll = ref(false)
onConnect((params) => addEdges([params]))
+
onNodeDragStart((e) => console.log('drag start', e))
+
onNodeDragStop((e) => console.log('drag stop', e))
+
onPaneClick((event) => captureZoomClick.value && console.log('pane click', event))
+
onPaneScroll((event) => captureZoomScroll.value && console.log('pane scroll', event))
+
onPaneContextMenu((event) => captureZoomClick.value && console.log('pane ctx menu', event))
+
onMoveEnd((flowTransform) => console.log('move end', flowTransform))
diff --git a/docs/components/examples/interaction/style.css b/docs/components/examples/interaction/style.css
index b979c3c7..49f8f8de 100644
--- a/docs/components/examples/interaction/style.css
+++ b/docs/components/examples/interaction/style.css
@@ -6,7 +6,7 @@
font-size: 11px;
background-color: lightgray;
border-bottom-right-radius: 10px;
- padding: 12px;
+ padding: 8px;
}
.interactionflow .controls .label {
diff --git a/docs/components/examples/multi/App.vue b/docs/components/examples/multi/App.vue
index 2f9b72a7..e791cf50 100644
--- a/docs/components/examples/multi/App.vue
+++ b/docs/components/examples/multi/App.vue
@@ -5,6 +5,7 @@ import Flow from './Flow.vue'
+
diff --git a/docs/components/examples/multi/Flow.vue b/docs/components/examples/multi/Flow.vue
index 1f9e9d80..2f1d89be 100644
--- a/docs/components/examples/multi/Flow.vue
+++ b/docs/components/examples/multi/Flow.vue
@@ -1,6 +1,6 @@
-
+
-
+
-
-
+
+
diff --git a/docs/components/examples/nested/App.vue b/docs/components/examples/nested/App.vue
index 720d73a1..db76b501 100644
--- a/docs/components/examples/nested/App.vue
+++ b/docs/components/examples/nested/App.vue
@@ -1,11 +1,10 @@
-
+
diff --git a/docs/components/examples/save-restore/Controls.vue b/docs/components/examples/save-restore/Controls.vue
index 70ab4f53..92e161cd 100644
--- a/docs/components/examples/save-restore/Controls.vue
+++ b/docs/components/examples/save-restore/Controls.vue
@@ -1,4 +1,5 @@
-
+
-
+
diff --git a/docs/components/examples/save-restore/style.css b/docs/components/examples/save-restore/style.css
index ab1c9790..12734511 100644
--- a/docs/components/examples/save-restore/style.css
+++ b/docs/components/examples/save-restore/style.css
@@ -1,12 +1,8 @@
-.save__controls {
- position: absolute;
- left: 10px;
- top: 10px;
- z-index: 4;
+.save-restore-controls {
font-size: 12px;
}
-.save__controls button {
+.save-restore-controls button {
margin-left: 5px;
padding: 5px;
border-radius: 5px;
@@ -18,8 +14,7 @@
cursor: pointer;
}
-.save__controls button:hover {
- opacity: 0.8;
+.save-restore-controls button:hover {
transform: scale(105%);
transition: 250ms all ease-in-out;
}
diff --git a/docs/components/examples/stress/App.vue b/docs/components/examples/stress/App.vue
index 91b71d49..dbf23198 100644
--- a/docs/components/examples/stress/App.vue
+++ b/docs/components/examples/stress/App.vue
@@ -1,4 +1,5 @@
diff --git a/docs/components/examples/teleport/TeleportableNode.vue b/docs/components/examples/teleport/TeleportableNode.vue
index 2c94d929..8f580845 100644
--- a/docs/components/examples/teleport/TeleportableNode.vue
+++ b/docs/components/examples/teleport/TeleportableNode.vue
@@ -1,6 +1,6 @@
-
+
diff --git a/docs/components/examples/transition/TransitionEdge.vue b/docs/components/examples/transition/TransitionEdge.vue
index bec2bb6c..77bc8a27 100644
--- a/docs/components/examples/transition/TransitionEdge.vue
+++ b/docs/components/examples/transition/TransitionEdge.vue
@@ -1,7 +1,7 @@
-
+
+
-import { Controls } from '@vue-flow/additional-components'
-import { ConnectionMode, VueFlow, addEdge, updateEdge } from '@vue-flow/core'
+import { Background } from '@vue-flow/additional-components'
+import { VueFlow, useVueFlow } from '@vue-flow/core'
import { ref } from 'vue'
const elements = ref([
@@ -24,25 +24,26 @@ const elements = ref([
{ id: 'e1-2', source: '1', target: '2', label: 'Updateable edge', updatable: true },
])
-const onLoad = (flowInstance) => flowInstance.fitView()
+const { updateEdge, addEdges } = useVueFlow()
+
const onEdgeUpdateStart = (edge) => console.log('start update', edge)
+
const onEdgeUpdateEnd = (edge) => console.log('end update', edge)
-const onEdgeUpdate = ({ edge, connection }) => {
- elements.value = updateEdge(edge, connection, elements.value)
-}
-const onConnect = (params) => (elements.value = addEdge(params, elements.value))
+
+const onEdgeUpdate = ({ edge, connection }) => updateEdge(edge, connection)
+
+const onConnect = (params) => addEdges([params])
-
+
diff --git a/docs/components/examples/validation/App.vue b/docs/components/examples/validation/App.vue
index d2c5ada4..c846166c 100644
--- a/docs/components/examples/validation/App.vue
+++ b/docs/components/examples/validation/App.vue
@@ -16,8 +16,8 @@ const elements = ref([
{ id: 'C', type: 'custom', position: { x: 250, y: 300 }, isValidSourcePos: (connection) => connection.target === 'B' },
])
-const onLoad = (flowInstance) => flowInstance.fitView()
const onConnectStart = ({ nodeId, handleType }) => console.log('on connect start', { nodeId, handleType })
+
const onConnectEnd = (event) => console.log('on connect end', event)
const onConnect = (params) => {
@@ -29,15 +29,16 @@ const onConnect = (params) => {
+