Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@vue-flow/core

bcakmakoglu210.6kMIT1.42.1TypeScript support: included

Vue flow top-language GitHub code size in bytes ![GitHub last commit](

vue, flow, diagram, editor, graph, node, link, port, slot, vue3, composition-api, vue-flow, vueflow, typescript

readme

Vue Flow 🌊

Vue flow top-language GitHub code size in bytes GitHub last commit

Vue Flow: A highly customizable Vue 3 Flowchart component.

You can find a detailed explanation on how to get started here or jump right into the examples.

Table of contents

⭐️ Features

  • 👶 Easy setup: Get started hassle-free - Built-in zoom- & pan features, element dragging, selection and much more

  • 🎨 Customizable: Use your custom nodes, edges and connection lines and expand on Vue Flows' functionality

  • 🚀 Fast: Tracks changes reactively and only re-renders the appropriate elements

  • 🧲 Utils & Composition: Comes with graph helper and state composable functions for advanced uses

  • 📦 Additional Components:

    • 🖼 Background: With two built-in patterns and some configuration options like height, width or color.

    • 🧭 Minimap: Shows current nodes in a small map shape in the bottom right corner

    • 🕹 Controls: Control zoom behavior from a panel on the bottom left

    • 🤖 And (many) more to come...

  • 🦾 Reliable: Fully written in TypeScript

🛠 Setup

$ npm i @vue-flow/core

# or
$ pnpm i @vue-flow/core

# or
$ yarn add @vue-flow/core

🎮 Quickstart

In Vue Flow, an application structure consists of nodes and edges, all of which are categorised as elements.

Each element requires a unique id.

Nodes additionally need an XY-position, while edges require a source and a target, both represented by node ids.

<!-- Flowchart.vue -->
<script setup>
import { ref } from 'vue'  
import { VueFlow } from '@vue-flow/core'

const nodes = ref([
  { id: '1', type: 'input', label: 'Node 1', position: { x: 250, y: 5 } },
  { id: '2', label: 'Node 2', position: { x: 100, y: 100 } },
  { id: '3', label: 'Node 3', position: { x: 400, y: 100 } },
  { id: '4', label: 'Node 4', position: { x: 400, y: 200 } },
])

const edges = ref([
  { id: 'e1-2', source: '1', target: '2', animated: true },
  { id: 'e1-3', source: '1', target: '3' },
])
</script>

<template>
  <VueFlow v-model:nodes="nodes" v-model:edges="edges"></VueFlow>
</template>

⚠️ Make sure to import the necessary styles:

/* import the required styles */
@import "@vue-flow/core/dist/style.css";

/* import the default theme (optional) */
@import "@vue-flow/core/dist/theme-default.css";

Do not scope these styles with scoped in your component.

🪴 Vue 2

This library doesn't work with Vue 2.

Vue Flow uses features that are exclusive to Vue 3, therefore there is no support for Vue 2, nor will there be any support in the future, sorry.

🧪 Development

Prerequisites

# install pnpm if you haven't already
$ npm i -g pnpm

# start examples
$ pnpm dev

# build all packages
$ pnpm build

🐳 Dev Container

To start using development containers, install the Docker extension for VSCode. After installing the extension, open the connection menu either on the bottom left or open it via the commands tab. Select the Open Folder in Container option to mount the project.

The development container will spin up all packages example apps and forward the ports to your machine.

discord logo Discord

Join the Vue Flow Discord server!

Here you can ask questions to the community, propose ideas for new features or share your work that you have built with Vue Flow.

💝 Special Thanks

This project is built with

  • React Flow

    • Vue flow is heavily based on webkids' ReactFlow. I wholeheartedly thank them for their amazing work! Without them VueFlow would not exist. Please consider donating or subscribing to ReactFlow Pro.
  • D3.js

    • D3 makes all the zoom and pan actions in Vue Flow possible.
  • VueUse

    • VueUse is a collection of essential vue composition utilities

⭐ Stargazers

Many thanks to the kind individuals who leave a star. Your support is much appreciated!

Stargazers for @vue-flow/core

changelog

Changelog

All notable changes to this project will be documented in this file.

[1.42.1] - 2025-01-16

5a5b2c1...d7f5506

Bug Fixes

  • Correct connection keys (#1749) (424f6cf)

Miscellaneous Tasks

  • Simplify animated layout example (#1747) (e94611a)

[1.42.0] - 2025-01-12

549d5ce...5a5b2c1

Bug Fixes

  • Hide minimap node if graph node is hidden (#1739) (0a0d8af)

Features

  • Add useNodeConnections composable (#1728) (268ed0e)

Miscellaneous Tasks

Refactor

  • Allow setting handleId in useNodeConnections (#1732) (3d1b85f)
  • Use connection lookup to check for selected elements (#1737) (6f3ed67)
  • Inherit attrs on edge path el in BaseEdge (#1742) (44b9232)
  • Rename useNodeConnections params (#1743) (f78c348)

[1.41.7] - 2025-01-04

265e03d...549d5ce

Bug Fixes

  • Add missing import (f438acb)
  • Use center position of handle as snapping point for connection lines (#1625) (b33da47)

Documentation

  • Add edge markers example (fe239b5)
  • Add docs section about v-modelling nodes and edges (2231ee4)

Miscellaneous Tasks

[1.41.6] - 2024-12-07

d22a239...265e03d

Bug Fixes

  • Prevent scrolling when using arrow keys to move nodes (#1698) (04d1355)
  • Prevent scrolling when using arrow keys to move node selection (#1702) (600d1a6)
  • Update source/target node of updated edge (#1705) (7a022c8)
  • Allow control key as pan activation key code (#1707) (f4f2494)

Documentation

  • Add loopback edge example (#1708) (4d09783)

[1.41.5] - 2024-11-13

6bb195d...d22a239

Bug Fixes

  • Check if dragEnd event is UseDrag or MouseTouch event (#1680) (5a028cf)
  • Set default offset to 0 (#1692) (129d543)
  • Allow using + as a key in key combinations (#1693) (2e2fa9a)
  • Release key combination presses (#1696) (4b8139d)
  • Escape node labels (#1695) (f7a2664)

Documentation

  • Add custom components to getting-started example (#1677) (f3075bc)
  • Add simple layout example (#1678) (61f4b0d)

[1.41.4] - 2024-11-01

367f894...6bb195d

Bug Fixes

  • If selection key code is true prevent pan on drag on left mouse btn (#1670) (1e3acb1)

[1.41.3] - 2024-11-01

becb928...367f894

Bug Fixes

  • Typo in SnappableConnectionLine.vue (#1638) (a90010b)
  • Allow pan on drag for non left-btn when selectionKeyCode is true (#1662) (fe552fc)
  • Use all handle bounds in loose connection mode (#1665) (cfc2332)
  • Start patterns at 0,0 (#1666) (900850d)
  • Set isPressed to true on blur and contextmenu events if permant keypress is enabled (#1667) (72e0e2e)
  • Allow pan on drag for other mouse btns if left is disabled (ecd21ce)

Miscellaneous Tasks

[1.41.2] - 2024-09-16

524d812...becb928

Bug Fixes

  • Allow pointer events if mouse evt listeners exist (#1618) (6338a9d)
  • Calculate distance to trigger drag-click (#1624) (6cc3042)

Miscellaneous Tasks

[1.41.1] - 2024-09-06

c555dfd...524d812

Bug Fixes

  • Prevent overwriting size in node styles object (#1608) (f4bde90)
  • Prevent drag click when multi selection is active (#1609) (43ed0a8)

[1.41.0] - 2024-08-30

b3e457a...c555dfd

Bug Fixes

  • Don't set user selection flags on pointer down (#1600) (eb12bdc)

Documentation

  • Add info on setting up vue project (f4bffeb)
  • Add info on listening to events (a7a9fd5)

Features

  • Add getHandleConnections action (#1595) (9c003d4)

Miscellaneous Tasks

[1.40.1] - 2024-08-20

538b03e...b3e457a

Bug Fixes

  • Inline event names (#1591) (47281fd)

[1.40.0] - 2024-08-19

809a9a4...538b03e

Bug Fixes

  • Correct controlled flow docs and replace applyChanges with applyDefault (#1574) (876c198)
  • Simplify event emit definitions to avoid hitting complexity limit of TS (#1585) (ebc604d)
  • Only display grab cursor when panOnDrag is on left mouse button (#1586) (e90f4cc)

Documentation

  • Update layouting example (#1576) (2976b11)

Refactor

  • Remove null as return type of data in useNodesData (#1575) (1d772af)

[1.39.3] - 2024-08-06

faeed3d...809a9a4

Bug Fixes

  • Push into changes arr instead of using index (#1569) (afa8861)

[1.39.2] - 2024-08-05

90a289e...faeed3d

Bug Fixes

  • Only capture pointer if valid selection has started (#1565) (a8d837b)

[1.39.1] - 2024-07-27

d9a133b...90a289e

Bug Fixes

  • Check if injected state matches options and scope id (#1562) (fff558f)

Miscellaneous Tasks

  • Enable sitemaps (#1554) (6d9535a)

[1.39.0] - 2024-07-15

f2ecf29...d9a133b

Bug Fixes

  • Dispatch click if drag move was attempted (#1534) (8539731)
  • Handle pointer capture for selection on drag (#1543) (f329831)
  • Prevent calling selectionEnd on selection click (#1545) (763f107)

Features

  • Add autoPanSpeed prop (#1535) (d4ccb11)
  • Add paneClickDistance (#1542) (180109c)

[1.38.5] - 2024-07-09

0814d42...f2ecf29

Bug Fixes

  • Ignore minor drag movements when marking aborted drag (dab5ab4)

Miscellaneous Tasks

[1.38.4] - 2024-07-08

d368263...0814d42

Bug Fixes

  • Emit node click if drag was aborted (#1525) (9d14595)

Miscellaneous Tasks

  • Cleanup deprecation notices (#1527) (0a0dfe9)

[1.38.3] - 2024-07-08

50b32ef...d368263

Bug Fixes

  • Remove backdrop filter (45c5961)
  • Emit node click event when drag was ended with no movement (#1522) (4548021)

[1.38.2] - 2024-07-01

d3b706e...50b32ef

Bug Fixes

  • Avoid re-snapping to same handle (#1514) (9154687)
  • Use post flush to re-observe nodes after toggling visibility (#1517) (d8ddc4d)

Miscellaneous Tasks

  • Upgrade turbo to latest (#1472) (8f53488)

[1.38.1] - 2024-07-01

d0728ac...d3b706e

Bug Fixes

  • Correct calculation of nodes inside selection (#1509) (c8b5522)

[1.38.0] - 2024-07-01

e2dec5c...d0728ac

Bug Fixes

  • Remove v-memo from edge renderer (#1506) (a52ac6e)
  • Correct pane pointer evt handlers (#1505) (e57f22c)

Documentation

  • Add section on changes (3ca9aca)
  • Add info on handle limit (ea59a71)
  • Add info on connection mode (182a6d9)

Features

  • Make useKeyPress public and export it (e435485)
  • Allow string array or object as class to node/edge objects (#1502) (410765b)

Miscellaneous Tasks

Refactor

  • Replace until watcher with onMounted in handle cmp (#1488) (cf32d59)
  • Allow passing target to useKeyPress (ea75f8a)
  • Use pointer evts in pane and prevent cancel of selection (4effbb0)
  • Calculate correct handle pos in handle lookup (#1494) (09e2221)
  • Remove useWindow (#1504) (545bb4e)
  • Use correct end handle position in connection line (#1508) (3489fae)

[1.37.1] - 2024-06-18

fdc656a...e2dec5c

Bug Fixes

  • Correct id access in useVueFlow (#1483) (e2ce205)

Refactor

  • Upgrade node to 20 (14ae927)
  • Remove qodana scan workflow file (aab43d5)

[1.37.0] - 2024-06-18

09a44b0...fdc656a

Documentation

Features

  • Add EdgePathParams type to edge utils (#1479) (9b4e3b2)

Miscellaneous Tasks

  • Add state injection section to useVueFlow docs (fe55415)
  • Update README (202d767)
  • Fix typo and update title (ff05551)
  • Cleanup v-model usages (889797e)
  • Update validation example (55a76cd)

Refactor

  • Use empty arr when updating all internals (#1476) (cff55c8)
  • Add overloads to useVueFlow (#1481) (4fe1a7b)

[1.36.0] - 2024-06-12

dd6aff2...09a44b0

Bug Fixes

  • Add width/height to icons (6ee3170)
  • Hide graph until initial fitview is done (#1459) (ed2e574)
  • Event type (19df6ca)

Documentation

  • Prettify example css files (51986d7)

Examples

  • Update pinia example (#1458) (6503b3e)
  • Add screenshot example (#1456) (f74be96)
  • Add math example (#1461) (a8ba973)
  • Add confirm delete example (#1466) (257c7aa)

Features

  • Add updateEdgeData action (#1452) (49dc8ae)
  • Add useEdgesData composable (#1462) (a9ccd61)

Miscellaneous Tasks

  • Cleanup math example (67da354)
  • Correct header styles (ba43421)
  • Update repl vue version (50a3b0e)
  • Update save and restore example (5e953bd)
  • Update math examples styles (ee8d30d)
  • Update interaction example styles (01e1b32)
  • Update visibility example styles (78f2635)
  • Update vitepress to latest (#1468) (5dc8711)
  • Update example styles (#1469) (d71de0a)
  • Update deps-dev (#1473) (a647472)
  • Cleanup unused event arg (#1475) (850f54a)

Refactor

  • Reduce node bounds calculation (#1453) (cd5103e)
  • Use for loop (9a7e4ac)
  • Remove initialized from graph-nodes (#1457) (0c5dfdd)
  • Remove node intersections arg from drag events (#1460) (0825101)
  • Remove connectedEdges from node mouse events (#1464) (798faf1)
  • Deprecate useVueFlow options arg (#1465) (70b39cc)
  • Replace arr reduce methods (#1467) (d658c1d)
  • Cleanup connection line component (#1470) (d429394)

[1.35.0] - 2024-06-06

c91b30f...dd6aff2

Bug Fixes

  • Disable zoom on mobile when zoomToPinch is false (#1449) (1b5e14a)
  • Disable drag when using multi-touch (#1448) (8bc1c99)
  • Use computed edge ref (faf67c2)

Documentation

Features

  • Add edge id to handle connections (1bb7a19)

Miscellaneous Tasks

Refactor

  • Use vue-flow__marker on marker defs el (5d3f87f)
  • Remove auto-generated handle ids (c822f9c)
  • Check if starting handle exists (660831c)
  • Use all nodes in node renderer (ea45545)
  • Render null if node is hidden (3498399)
  • Render null if edge is hidden (5e9db1c)
  • Remove hidden check from getNodes & getEdges (cc0b8b6)
  • Use node/edge id as only dependency for nodes/edges list (#1447) (876b71d)
  • Use node lookup map internally (#1450) (a592fbd)

Testing

  • Update handle ids in tests (82d9991)

[1.34.1] - 2024-05-31

2443752...c91b30f

Bug Fixes

  • Use separate prevConnections map (cd36279)

Features

  • Add maskBorderRadius prop (bbd44bb)

Miscellaneous Tasks

Refactor

[1.34.0] - 2024-05-28

20d2d6c...2443752

Bug Fixes

  • Allow PanelPositionType as position value (c59803e)
  • Allow PanelPositionType as position value (1c4e208)

Features

  • Add missing styles warning (8a8c8f5)
  • Export PanelPositionType (6bf4107)

Miscellaneous Tasks

[1.33.8] - 2024-05-15

e857398...20d2d6c

Bug Fixes

  • Set specific pnpm version (7267baa)
  • Prevent auto pan if set to false (96b78ce)

Miscellaneous Tasks

[1.33.7] - 2024-05-12

4cdf5f2...e857398

Bug Fixes

  • Allow wheel to bubble if not used by vf (7f51fae)

Miscellaneous Tasks

[1.33.6] - 2024-04-29

09009ce...4cdf5f2

Bug Fixes

  • Set ltr for vue flow wrapper (590afc8)
  • Allow pinch-zoom if preventScrolling is disabled (ffb649e)
  • Pass path options to edges (464dc58)
  • Add options to useKeyPress (b0f1bf0)
  • Prevent delete action if inside input field (84969ab)

Documentation

  • Replace source.id with source (#1369) (11229e4)

Miscellaneous Tasks

[1.33.5] - 2024-03-24

e776844...09009ce

Bug Fixes

  • Store vf instance on vue app for ssr (3170022)

Documentation

  • Fix custom-node example for safari (b2d37e5)

Miscellaneous Tasks

Refactor

  • Remove reactivity transform (f858d13)
  • Move storage to separate file (0a9e950)

[1.33.4] - 2024-03-06

e2bae63...e776844

Miscellaneous Tasks

Reverts

  • Revert extending events from separate interfaces (e06d2e6)

[1.33.3] - 2024-03-06

8a99069...e2bae63

Bug Fixes

  • Use separate interfaces for node/edge events (4e50efe)

Miscellaneous Tasks

[1.33.2] - 2024-02-28

41e0c0b...8a99069

Bug Fixes

  • Remove ref prop from BaseEdge (ba90a48)
  • Use nullish check to fallback to default center (a8c09a9)
  • Check if dimensions exist in useNodesInitialized (3ed91a0)

Miscellaneous Tasks

[1.33.1] - 2024-02-23

8e69e1d...41e0c0b

Bug Fixes

  • Correct typing of useNodesData return (1184941)

Miscellaneous Tasks

[1.33.0] - 2024-02-21

8fb6aba...8e69e1d

Bug Fixes

  • Correct prop names for node guide (#1321) (e64ab35)
  • Prevent esc keypress when a11y is disabled (f815ef6)
  • Use default cursor and apply drag cursor if node is draggable (c48d3c9)

Features

  • Add type and id to useNodesData (68ba907)

Miscellaneous Tasks

Refactor

  • Replace vueuse imports with vue (e5a8465)

Testing

  • Update useNodesData tests (4666fec)

[1.32.1] - 2024-02-15

303419d...8fb6aba

Bug Fixes

  • Correct smoothstep edge pathing (e5aaaa6)

Miscellaneous Tasks

[1.32.0] - 2024-02-15

fd4f0c8...303419d

Bug Fixes

  • Move node from edges array (6dd9514)
  • Wrap marker urls with quotes (5094e33)

Documentation

  • Add run process to layouting example (7bd2996)
  • Update class names in theming guide (d120aa8)

Examples

  • Add example for running a process tree (0ae7502)
  • Animation edge (43a1c9d)

Features

  • Add animation edge to layouting example (75355b0)
  • Wait for edge animation to finish to load node (fafad1e)
  • Add shuffle to layout example (a0abe3a)
  • Add useLayout composable (ce7333f)
  • Add useNodesInitialized composable (f2165af)
  • Add edgeId to useHandleConnections return (3a0dc0f)

Miscellaneous Tasks

Refactor

  • Use composable tester cmp (9837e0d)
  • Use connection line tester cmp (96b93e3)
  • Use data obj for labels in default nodes (6c638b8)
  • Deprecate bgcolor prop (d288a9b)
  • Deprecate getters (c8c77a2)
  • Use useNodesInitialized to emit nodesInitialized (ffdea45)
  • Rename useViewport to useViewportHelper (300c742)
  • Use all nodes for handle lookup (dda5b58)

Testing

  • Add useNodesInitialized test (3fa7fde)

[1.31.0] - 2024-02-05

b13d53d...fd4f0c8

Bug Fixes

  • Import pinia example (1c54e39)
  • Set opacity on intro until el are set (da8f82a)
  • Update node dimensions on next tick (4bbc14b)
  • Use existing node/edge obj for assignment (983971f)
  • Avoid options passed to useVueFlow overwriting default state (04658b2)
  • Avoid adding invalid edges (like null or undefined) (aaf1069)

Documentation

Features

  • Add useNodeId composable (00a1f9d)
  • Add useHandleConnections composable (064cfd8)
  • Add init hook (fd84025)
  • Add viewport helper to state (c855dfe)
  • Add updateNode & updateNodeData actions to store (fe1d801)
  • Add useNodesData composable (cecf9d4)
  • Add error args to err (f36fa77)

Miscellaneous Tasks

Performance

  • Replace Array.forEach loops (c4b4a04)

Refactor

  • Replace watchEffect with onMounted/onBeforeUnmount (d001d80)
  • Remove error from useNodeId (aab31f8)
  • Find handle by id regardless of num of handles (84c2f6d)
  • Remove unnecessary keys (97f4a17)
  • Move fitViewOnInit to node dimensions update (f09b7d9)
  • Omit events when calling toObject (72cc175)
  • Use useOnInitHandler to emit paneReady event (5798cc5)
  • Allow passing MaybeRefOrGetter to useNodesData (f4fb4d8)
  • Allow null instead of undefined as id for useHandleConnections (7161e9e)
  • Add missing viewport helper functions to actions (417a301)
  • Call nodes initialized whenever areNodesInitialized is true (584782b)
  • Show repl import map and tsconfig opts (6f33a3b)
  • Use wider styles for example pages (32700b1)
  • Call fitViewOnInit when node dimensions are initially set (0544fbd)
  • Pass renderers to viewport cmp as slots (cc9f4fb)
  • Cast zIndex to ref (259514a)
  • Remove exports from barrel files (308338f)

Testing

  • Add tests for updateNodeData & updateNode (4d8cd3c)
  • Add tests for useNodesData (7f6ae2f)

[1.30.1] - 2024-01-30

11a16da...b13d53d

Bug Fixes

  • Check if values are numeric in isRect (b7cc917)

Miscellaneous Tasks

[1.30.0] - 2024-01-29

a8feaaa...11a16da

Bug Fixes

  • Set full width on control btn svgs (ccaae21)

Miscellaneous Tasks

Refactor

  • Add fitViewOnInitDone to state (308cff5)
  • Emit pane ready after timeout of 1ms (abe6006)
  • Suspens transformation pane (ce229e5)
  • Remove suspension (b65f43c)
  • Use useResizeHandler composable (a5091b9)
  • Trigger fitViewOnInit together with paneReady (3977875)
  • Remove experimental flag (2259b2a)

Testing

  • Use transform matrix to confirm node positions (8a888a9)

[1.29.2] - 2024-01-25

35a2606...a8feaaa

Bug Fixes

  • Check if key or code exists before matching (2b82098)

Miscellaneous Tasks

[1.29.1] - 2024-01-21

c4becc3...35a2606

Bug Fixes

  • Watch shouldPanOnScroll & shouldPanOnDrag (9e51070)

Miscellaneous Tasks

[1.29.0] - 2024-01-21

d9dee8d...c4becc3

Bug Fixes

  • Add default handler when no handlers exist (e5c52a3)
  • Add fallback for connection-line type (5344fec)
  • Merge connection line styles (f1d3fa2)
  • Pass flow id to getMarkerId in connection line (2192fff)
  • Return false from bool key filter (347715d)
  • Allow panning on scroll when selection is active (e7fb681)
  • Await fitView before emitting pane-ready (ca70a7c)

Features

  • Expose handler functions (ffcc20a)
  • Expose onClick and onPointerDown handlers (2f0b00f)
  • Add useConnection composable (1012f2c)

Miscellaneous Tasks

Refactor

Reverts

[1.28.0] - 2024-01-03

aeed19e...d9dee8d

Bug Fixes

  • Fix the issue of pushing out the panel when copying a large amount of text to the textarea (c4fb1ee)

Features

  • Add minimap slot types (476e5d5)
  • Add MiniMapNodeEmits interface & export it (5f0a333)
  • Add source and target handle ids to edge removal change (d78a53f)

Miscellaneous Tasks

[1.27.1] - 2023-12-12

466711f...aeed19e

Bug Fixes

  • Remove ts-transform-paths and use relative paths (458b5d4)

Documentation

Miscellaneous Tasks

[1.27.0] - 2023-12-12

ff41107...466711f

Bug Fixes

  • Use nullish check when finding edge label renderer el (eff1afd)
  • Pass correct node id to resize control (6895795)

Documentation

  • Add codesandbox template link (a6be735)
  • Add controlled flow guide page (f203dea)

Miscellaneous Tasks

Refactor

  • Deprecate pkg (039f5a5)
  • Set default drag threshold to 1 (e2b30e0)
  • Return promise from fromObject (c995b80)

[1.26.0] - 2023-11-10

d963558...ff41107

Bug Fixes

  • Use correct prop value when watcher triggers (277979f)

Documentation

  • Fix typo in node-extent vue-flow property (6c3cff8)

Miscellaneous Tasks

Refactor

  • Keep connection line snapped to handle while hovering (ba0cf54)

[1.25.3] - 2023-11-09

4d1578a...d963558

Bug Fixes

  • Use node rect for intersection check (0c07bd4)
  • Respect zoom key when hovering nopan elements (cc89e99)

Documentation

  • Remove defaultZoom opt from config guide (91c5212)

Miscellaneous Tasks

[1.25.2] - 2023-11-08

ab59b71...4d1578a

Miscellaneous Tasks

Reverts

  • Cleanup imports from vueuse/core that exist in vue (6162389)

[1.25.1] - 2023-11-08

7489118...ab59b71

Miscellaneous Tasks

Reverts

  • Import toValue from vueuse/core to avoid ambiguous export (17e5966)
  • Wait for d3zoom before setting opts (e4e3188)

[1.25.0] - 2023-11-08

ea7f843...7489118

Documentation

Features

  • Add slots and emits type definition (196cafd)
  • Add nodes to isValidConnection args (c1603b2)

Miscellaneous Tasks

Refactor

[1.24.2] - 2023-11-04

41d325b...ea7f843

Bug Fixes

  • Add immediate flag to prop watchers (ac8dab3)
  • Do not wait for d3zoom to be available to set skipped opts (07b3783)
  • Use existing node for intersection check (5bda311)
  • Properly cleanup handlers when drag is disabled (c30ddc6)

Miscellaneous Tasks

[1.24.1] - 2023-10-30

c51ff79...41d325b

Bug Fixes

  • Allow pan on drag when pan key is activated (ffceea9)

Miscellaneous Tasks

[1.24.0] - 2023-10-30

9b6c6e3...c51ff79

Bug Fixes

  • Select nodes on drag when threshold is > 0 (ee45b4e)
  • Use correct filter for panOnScroll class (15c3fd5)
  • Create predicate for string key filters (11138a6)
  • Allow panning when panKey is pressed (049b1da)
  • Ensure events introduced by the watcher are released when no longer needed (8651019)
  • Push emit handlers into listeners set (2ecd8de)

Documentation

Features

  • Use nodes from state for getIntersectingNodes (03242dd)

Miscellaneous Tasks

Performance

  • Cleanup possible re-bindings of listeners in useKeyPress (785f147)
  • Cleanup computed vars (88cfd40)

Refactor

  • Add warning when viewport noop is triggered (a32c81a)
  • Disable minification (ec7653e)
  • Add stub for addEventListener in useWindow (2a407f5)
  • Remove primtive typeguards (3b175a5)
  • Allow adding edges with missing source or target nodes (7e7e0fb)
  • Remove default event listener void fn (7494817)
  • Rename onError arg to triggerError (0bf1260)

[1.23.0] - 2023-10-06

a838941...9b6c6e3

Bug Fixes

  • Unselect edge if selected and multi-selection is active (ad7d013)
  • Wait for node to be initialised before enforcing min/max size (75b1a69)
  • Respect pan on scroll class name (e369803)
  • Disable panning when panOnDrag is false (8716a6e)
  • Queue node dimensions update to nextTick (93f0802)

Documentation

Features

  • Add source and target node ids to edge remove changes (7a01377)
  • Allow passing a number as connectable prop (3e446fa)
  • Cleanup handle bounds from node when handle is unmounted (ce1647a)
  • Add getIncomers, getOutgoers & getConnectedEdges as store actions (edc7669)
  • Add areNodesInitialized getter (29f3d2d)
  • Add flowToScreenCoordinate & screenToFlowCoordinate to viewport actions (db894a5)
  • Add nodeDragThreshold option (e71a2aa)

Miscellaneous Tasks

Refactor

  • Allow using expandParent with parent extent (c916284)

[1.22.3] - 2023-08-21

921c8ce...a838941

Bug Fixes

  • Smooth step edge horizontally or vertically aligned nodes (16bf14c)
  • Add role img to edges if not focusable (bb1473a)
  • Pass missing minimap node props (5f83367)
  • Vertically or horizontally aligned nodes (8943ec7)
  • Use os specific key defaults (67704e5)
  • Horizontal scroll on windows (86957a0)
  • Better smoothstep edge label position (2f66300)
  • Allow passing key combination as string (0867637)
  • Clear key on keyup so combinations work during simultaneous keypress (f095917)
  • Reset isPressed value when switching from boolean to other keyfilter (505ecc4)
  • Enforce min/max width/height on nodes (06851e6)

Features

Miscellaneous Tasks

[1.22.2] - 2023-07-27

2174c5a...921c8ce

Bug Fixes

  • Check if viewport is defined before setting (9d1f5fa)

Miscellaneous Tasks

[1.22.1] - 2023-07-25

b3c70da...2174c5a

Bug Fixes

  • Wait for viewport helper in fromObject action (fd155e4)
  • Unwrap blur fn (ac86b77)

Miscellaneous Tasks

Refactor

  • Add viewport to export obj and deprecate position and zoom (eb29f96)

[1.22.0] - 2023-07-24

be8a83d...b3c70da

Bug Fixes

  • Dont wait for nodesInitialized to trigger for viewport helper (a2e4d99)
  • Watch applyDefault state in useVueFlow scope (620852b)
  • Use detached scope to dispose state and stop watcher (45f18d5)

Features

  • Resolve promise from viewport actions on transition end (7df2bfa)
  • Add setViewport and getViewport to viewport helper (9f63252)
  • Add hasListener to event hooks (987538a)
  • Add flag to removeNodes to remove children of a node (c4acb0d)
  • Allow passing node or id to getoutgoers/getincomers (2a597f8)

Miscellaneous Tasks

Refactor

  • Deprecate setTransform & getTransform (ed6c298)

[1.21.3] - 2023-07-24

07e9e8a...be8a83d

Bug Fixes

  • Get correct handle pos for connection line (17755dd)
  • Abort fit view when there's no nodes to fit around (6bd442f)

Features

Miscellaneous Tasks

[1.21.2] - 2023-07-19

2424cc2...07e9e8a

Bug Fixes

  • Use post flush when calculating new node pos (1415652)
  • Connection status prop as nullable (4f36cef)
  • Use noop viewport operations instead of waiting for promise (4d5bbab)
  • Pass handle dom node to valid handle result (08f749a)

Miscellaneous Tasks

[1.21.1] - 2023-07-10

f123ffb...2424cc2

Bug Fixes

  • Nested nodes extent calculation off (f52380d)

Miscellaneous Tasks

[1.21.0] - 2023-07-10

eca9ad9...f123ffb

Bug Fixes

  • Add style to base edge props (38bb4e1)
  • Add ref to base edge props (40732f2)
  • Use correct class name and style for handle controls (#1010) (61f8a68)
  • Prioritize handle below during handle lookup (245dd82)
  • Clamp node extent by node dimensions to avoid overflow (#1014) (82e79a6)

Miscellaneous Tasks

Refactor

  • Change nodeEl and edgeEl type to allow ref(null) (435cb9b)
  • Use sfc for base edge and bind template refs (80ad6f1)
  • Use normal components for edges (7d93915)
  • Resolve slots before returning default component (#1013) (5838454)

[1.20.2] - 2023-06-15

a16b7ca...eca9ad9

Bug Fixes

  • Set interaction edge styles so animation does not break pointer (d2c1c51)
  • Correct connection line calculation (33b6fe1)
  • Reset end handle on connection end (b017139)
  • Use validator with null handle when no closest can be found (6e2c3e5)
  • Handle pos calculation (9d3c358)
  • Trigger connect if end handle exist in state (b386c85)
  • Consider handle dimensions when checking for closest handle (f3931a2)

Miscellaneous Tasks

Refactor

  • Use separate svg container for edges (8e5d748)

[1.20.1] - 2023-05-25

0e7f3c2...a16b7ca

Bug Fixes

  • Use OR operator to determine isInteractive state (5d16068)
  • Set default viewport type as partial (1b39615)
  • Use all handles in radius and find closest valid one (1690891)
  • Filter closest handles by validity (e42897e)

Features

Miscellaneous Tasks

Refactor

  • Pass drag handle to useDrag (20a9521)
  • Remove unnecessary computed var (627cbf6)
  • Remove reactivity transform from connection line component (9b0b969)
  • Allow ref for isValidConnection in useHandle (4d505c9)
  • Disable zoom in/out btns when max/min zoom is reached (49fbdad)
  • Remove auto-imports (09a97da)
  • Remove auto-imports (9698691)
  • Remove auto-imports (bc0137b)
  • Remove auto-imports (6fd58b6)
  • Remove auto-imports (9a91278)
  • Remove auto-imports (0a11840)
  • Add explicit imports and remove auto-imports (e3e6a03)
  • Add explicit imports and remove auto-imports (ed4eaac)
  • Add explicit imports and remove auto-imports (5da86cb)
  • Allow passing null as id for find actions (4421ad0)
  • Avoid inserting invalid nodes (06ad0c0)
  • Check if element is object (4ad10c5)

Testing

  • Update edges tests (3a1b0ab)
  • Update nodes tests (669a2a3)
  • Update delete key code tests (f9462d1)
  • Use timeout to avoid cli run fails (9bf9c64)

[1.20.0] - 2023-05-11

ca54537...0e7f3c2

Bug Fixes

  • Do not render edges connected to a hidden node (4bc576e)

Features

  • Add parent class name to parent nodes (26be1d2)
  • Add fromObject action to load graph (abb302c)

Miscellaneous Tasks

Refactor

  • Allow passing single element to add actions (ca9eda9)
  • Remove reactivity transform in node wrapper (a7db003)
  • Allow passing single item to remove actions (073e987)
  • Pass id to base edge (fb09d08)
  • Pick target handle if handles are on top of each other (fb1181f)

[1.19.4] - 2023-05-10

d673020...ca54537

Bug Fixes

  • Check if transform changed before applying (0c34023)
  • Properly reset state and retain reactivity (6f3c22e)

Miscellaneous Tasks

Refactor

  • Remove reactivity transform from viewport component (e5591ee)

[1.19.3] - 2023-05-05

f8b8f27...d673020

Bug Fixes

  • Emit pane mouse move if no active selection exists (98e6f17)
  • Pass selectionKeyCode ref to useKeyPress (85dcbf4)
  • Check if node exists during drag (bec2e74)
  • Orphaned edge warn for undeletable edges when calculating max z-index (74a51f4)

Miscellaneous Tasks

Refactor

  • Return boolean from panBy (df54220)

[1.19.2] - 2023-04-26

c74996d...f8b8f27

Bug Fixes

  • Immediately watch route (86eb6c0)
  • Hide resizer when isVisible is false (a3f27fd)
  • Remove border, make the control look modern (ef97685)
  • Selected,focus & focus-visible styles not applying correct default colors (9bd48be)
  • Selected,focus (d6aa757)

Features

  • Add pinia example to vite-examples (18aeefb)

Miscellaneous Tasks

Refactor

  • Set vue flow version as regular string instead of ref (260a3d9)

[1.19.1] - 2023-04-23

544fd05...c74996d

Bug Fixes

  • Correct defaultEdgeOptions type in state (8db8dc8)
  • Set default edge opts before setting elements (e41a66d)
  • Use default color as fallback for css vars (cdef517)

Miscellaneous Tasks

[1.19.0] - 2023-04-11

fc8cd4b...544fd05

Bug Fixes

  • Allow extent when no parent exists (44049bf)
  • Prevent auto-pan from dragging into infinity (1b85842)
  • Add missing Type generic to edge types (aaeb6dc)
  • Add missing Type generic to node types (ab482bc)
  • Allow passing regular edges to getConnectedEdges (2b836dd)

Features

  • Add getConnectedNodes util (ec44dca)
  • Allow coordinate extent as range (4a24509)
  • Allow setting global node extent as range (717d8e0)
  • Allow setting padding as number (f3ee95c)
  • Allow passing node ids as string to getConnectedEdges (b3addf6)

Miscellaneous Tasks

Refactor

  • Replace computed arg with getter fn (f19e210)
  • Pass node and edge id computed to getters and actions (ebed966)
  • Search all edges for connected edges in useNode (f5c8a04)
  • Allow passing undefined as arg to findNode & findEdge (1171e01)
  • Remove unnecessary computed var (554ebeb)
  • Add onBeforeTransform arg to panBy action (bfff135)
  • Set default gap to 20 (1fd438b)

[1.18.2] - 2023-04-07

0c05490...fc8cd4b

Bug Fixes

  • Set handle connectable undefined as default (d659d48)

Miscellaneous Tasks

[1.18.1] - 2023-04-03

e1b7bfc...0c05490

Bug Fixes

  • Allow null values to be set (20dfdda)
  • Use fallback for connectable start and end (3222e97)
  • Remove duplicate event binding (8229ee8)
  • Use connection click start handle (c459653)

Miscellaneous Tasks

[1.18.0] - 2023-04-03

1ba8183...e1b7bfc

Bug Fixes

  • Correct isDef typeguard (eab9991)

Features

  • Add clickConnectStart & clickConnectEnd events (5a50cfd)
  • Add inversePan and zoomStep props (1790566)
  • Add connectableStart & connectableEnd props (1d3908d)
  • Add type to edge updater anchor class (4bb5321)

Miscellaneous Tasks

Refactor

  • Remove reactivity transform vars (e9ff4cc)
  • Remove reactivity transform vars (0f02296)
  • Do not remove orphaned edges from state (63808e5)
  • Add connection start and end handles to store state (4efc787)

[1.17.6] - 2023-04-02

c437e41...1ba8183

Bug Fixes

  • Reset nodes and edges before state (6c806e8)
  • Hide transformation pane to avoid flickering of graph (22accae)

Miscellaneous Tasks

[1.17.5] - 2023-03-31

977ccaa...c437e41

Bug Fixes

  • Handles with connectable false still considered valid (c4f287c)
  • Unwrap nodesConnectable in onClick of handle (f62e6df)
  • Connection line pos not matching edge pos (44d1a4e)

Miscellaneous Tasks

[1.17.4] - 2023-03-31

36da593...977ccaa

Miscellaneous Tasks

[1.17.3] - 2023-03-31

4a2598f...36da593

Bug Fixes

  • Object assign order when parsing node/edge (ce0002b)

Features

  • Add install deps action (d269f57)

Miscellaneous Tasks

[1.17.2] - 2023-03-29

0bc4b73...4a2598f

Bug Fixes

  • Make @wheel and @touchstart event passive (330a3b7)

Miscellaneous Tasks

[1.17.1] - 2023-03-24

e7b0c4b...0bc4b73

Bug Fixes

  • Correct return type of getIncomers & getOutgoers (0501151)
  • Only use visible nodes to check if nodes are initialized (c330686)
  • Add missing error event definition (976f7c2)

Miscellaneous Tasks

Refactor

  • Check if node handle bounds exist in getNodesInitialized (2944744)

[1.17.0] - 2023-03-23

0ab0de1...e7b0c4b

Bug Fixes

  • Remove erroneous window.stop in EdgeRendered (c93e405)

Features

  • Add onError hook (8c3f54e)
  • Add offset prop (1f49358)
  • Allow passing object with only id to getConnectedEdges (79a0967)

Miscellaneous Tasks

[1.16.5] - 2023-03-22

12af745...0ab0de1

Bug Fixes

  • Non-passive wheel event listener violation (e7c39b0)
  • Wrong pkg entries (988d4a2)
  • Use object assign to parse node (04598cd)

Miscellaneous Tasks

[1.16.4] - 2023-03-17

e58d24d...12af745

Bug Fixes

  • Unwrap refs and pass props (0476dff)
  • Rename parentNode prop to parent (fe46e6f)

[1.16.3] - 2023-03-17

b5d579e...e58d24d

Bug Fixes

  • Set source and target position on edge obj (c9d643d)
  • Use render fn for node wrapper (d8434e6)

Miscellaneous Tasks

[1.16.2] - 2023-03-10

15016ee...b5d579e

Bug Fixes

  • Check if valid connection func exists (79a6fa3)
  • Use computed for edge class and style (5bd1eed)

[1.16.1] - 2023-03-08

df87394...15016ee

Bug Fixes

  • Downgrade unplugin auto import (2b0e6fd)

Miscellaneous Tasks

[1.16.0] - 2023-03-08

619ce7f...df87394

Bug Fixes

  • Force update node dimensions (284e527)
  • Add connection target handle id to result type (046ee41)

Features

  • Export clamp util (5297fdc)
  • Add maxHeight and maxWidth props (afc29db)
  • Store handle validation in store state (9fb5515)
  • Pass targetNode and targetHandle as props (dc23bc8)
  • Add isValidConnection prop (05bc748)

Miscellaneous Tasks

Testing

  • Add custom connection line component test (7519b31)
  • Add isValidConnection prop test (929e2b5)
  • Test if custom props are passed to custom connection line (3f72713)

[1.15.5] - 2023-03-07

2fde41e...619ce7f

Bug Fixes

  • Check if handle is connectable (f83c87d)
  • Blur node after unselect (8cf8c51)

Miscellaneous Tasks

[1.15.4] - 2023-03-03

77d7ba4...2fde41e

Bug Fixes

  • Compare internal node dimensions when updating (da7dc3d)

Miscellaneous Tasks

[1.15.3] - 2023-03-02

585f1e8...77d7ba4

Bug Fixes

  • Prevent selecting nodes on drag when selectable disabled (7c026f0)
  • Wait until nodes are initialized (c5fee5c)
  • Make shouldReplaceId arg in updateEdge optional (f16e4db)
  • Remove duplicate connect start/end emits (22c4362)
  • Wait until fitting view on init (b509b11)
  • Remove edges before nodes (77d7ba4)

Miscellaneous Tasks

Refactor

  • Cleanup edge and node renderer (4d535ed)
  • Cleanup node styles (e3e3510)
  • Hide edges when we have no dimensions (50ee96d)
  • Update intro (5df92c3)
  • Trigger el functions before checking arr length (fc86787)

Testing

  • Update connect tests to check if events were emitted (13db453)

[1.15.2] - 2023-02-24

23b084e...585f1e8

Bug Fixes

  • Cast zIndex to number in node wrapper (79e7f3c)
  • Check if node el exists before observing (0ffc2f1)
  • Prevent undefined being passed to update node internals (c4b4826)
  • Wait until viewport helper is initialized (f2af818)
  • Add vite iife build file (a5644c0)
  • Use correct umd name for vue flow core (06b1753)
  • Correct umd export names (93b2fd0)

Miscellaneous Tasks

Refactor

  • Use lifecycle hooks to observe node dimensions (325efba)

Testing

[1.15.1] - 2023-02-22

8c22ce0...23b084e

Bug Fixes

[1.15.0] - 2023-02-22

7eba916...8c22ce0

Bug Fixes

  • Hide graph until nodes are ready (226caeb)

Features

  • Add option to avoid replacing edge id when updating (4bf4b63)
  • Add eslint-config to tooling pkgs (45cbdbf)
  • Add tsconfig to tooling pkgs (2a6077e)
  • Add vite config to tooling pkgs (8dd4536)
  • Use vite-config tooling pkg (2aa1857)

Miscellaneous Tasks

Refactor

  • Fix packages together in changeset config (578e6b4)
  • Package names (c60398d)
  • Rename e2e to tests (a3ec3b4)
  • Package name (5c0fb91)
  • Run build and test on next-release PR (7b590bd)
  • Rename tooling package scope (3df4edd)
  • Remove waiting for dimensions in zoom pan helper (d2c6b59)
  • Add useViewport for store viewport actions (7cab68e)
  • Use noop viewport helper when viewport is not ready (dfce24a)
  • Immediately set initialized flag (4b2a978)
  • Use snap grid to clamp initial node pos (fa6cb4c)
  • Omit internal properties when using toObject (10f5074)
  • Add release/* to branch triggers (eea05f9)

Testing

  • Update min/max zoom tests (12845eb)

[1.14.3] - 2023-02-15

2c574ac...7eba916

Bug Fixes

  • Prevent rendering edges that have been removed (c528726)
  • Allow null for deprecated connection line type (1ae5659)
  • Add missing straight path switch case (b7cfec7)
  • Connections for handles bigger than connection radius (8a5225a)
  • Correct checkout config (0bc9ce1)
  • Add compatConfig to all components (b19b9a8)

Examples

  • Cleanup examples and remove deprecated usages (72325d4)

Features

Miscellaneous Tasks

Refactor

  • Use computed to group edges (c62c18a)
  • Use watcheffect to observe node dimensions (a5ee9d9)
  • Fit view initially when node dimensions are updated (3f21dc7)
  • Immediately set node dimensions in store action (9d34251)
  • Use v-bind to pass connection line props (ea0696c)
  • Use MouseTouchEvent for EdgeMouseEvent type (09c56a6)
  • Pass original event to edge update event params (83636d4)
  • Set user-select: none for edge labels (b6f7cde)
  • Run publish action for next-release branch (757fa1b)
  • Change commit title (2de90c7)

[1.14.2] - 2023-02-07

aa59713...2c574ac

Bug Fixes

  • Exclude hidden nodes in fitView when includeHiddenNodes is false (26f16b7)
  • Avoid triggering edge update when mouse btn is not left (f849999)

Miscellaneous Tasks

  • Replace default-zoom with defaut-viewport (0192c65)
  • Use default values when defaultViewport values are missing (77de369)
  • Update auto-import file (26b92db)
  • Cleanup and replace const with function (bb2c4f4)
  • Cleanup useZoomPanHelper (35daa95)
  • Next release (2c574ac)

Refactor

  • Apply min width and height with aspect ratio (49aef1e)

[1.14.1] - 2023-02-06

6f02480...aa59713

Bug Fixes

  • Check if prevClosestHandle exists in pointer up (c800a86)

Miscellaneous Tasks

Refactor

  • Cleanup useHandle and set status on actions (619f4bf)

[1.14.0] - 2023-02-05

8328d78...6f02480

Bug Fixes

  • Ios connection error (f2f3e70)
  • Avoid undraggable selected nodes being dragged (c7e8bd7)

Features

  • Add shouldResize option (222b58a)
  • Add connection status to connection lines (c36cf59)
  • Add vue flow error class (dc60e11)

Miscellaneous Tasks

Refactor

  • Remove unnecessary warning (c72e75d)
  • Use opposite position for connection lines (6c00909)

[1.13.2] - 2023-02-02

b2cc3f5...8328d78

Bug Fixes

  • Ref access when passing default edge options (cae9562)

Miscellaneous Tasks

[1.13.1] - 2023-02-01

4f0ddcd...b2cc3f5

Bug Fixes

  • Pass valid connection func params (a5ebd48)

Miscellaneous Tasks

[1.13.0] - 2023-02-01

b80bade...4f0ddcd

Bug Fixes

  • Animated connection line style (2f81f2a)

Documentation

  • Update connection-radius example (539b85d)

Features

  • Export getSimpleEdgeCenter & getBezierEdgeCenter (492de08)
  • Implement connection radius (e74a20d)
  • Do not snap to invalid handles (e0fbefe)
  • Export isGraphNode & isGraphEdge typeguards (6ea6034)
  • Add auto pan props (84f2235)
  • Add auto pan utils (d0fefdf)
  • Add panBy action to store (7dba01d)
  • Add auto pan on node drag (0dcfd6f)
  • Add pan on connection drag (35d28ab)
  • Allow setting node/edge type with generic (7fa9203)

Miscellaneous Tasks

Refactor

  • First check element below (94e1282)
  • Move MaybeElement type (51270ca)
  • Throw warning if dimensions of viewport are 0 (522efd4)

[1.12.7] - 2023-01-23

c07e62b...b80bade

Bug Fixes

  • Hide node selection if no selected nodes exist (852d4b7)

Miscellaneous Tasks

[1.12.6] - 2023-01-19

28eeaad...c07e62b

Bug Fixes

  • Use computed var to get node in drag handler (c13d28d)

Examples

  • Cleanup save-restore controls (cd06585)

Miscellaneous Tasks

Refactor

  • Add warning if trying to duplicate an element (07dad4b)
  • Add warning if trying to remove non-existing element (ec346c3)
  • Look for parent node in next nodes (1f9578b)
  • Do not set preloaded state elements when calling useVueFlow (c250594)
  • Use removeSelectedNodes in click handler (f0d4763)
  • Remove extent option for setNodes & addNodes (994ae82)
  • Avoid re-setting elements twice on mount (a54a885)

[1.12.5] - 2023-01-18

df7603f...28eeaad

Bug Fixes

  • Re-group edges when nodes change (fba7b55)
  • Wait until node is initialized to clamp when extent is parent (19582de)
  • Increase timeout to 1 (000cfd9)

Examples

Miscellaneous Tasks

Refactor

  • Set node initialized after applying dimensions change (9276beb)
  • Emit nodes initialized if getNodesInitialized has same length as nodes state (d741bd1)
  • Pass initialized nodes to nodes initialized hook (c1228c4)
  • Wait for next tick to expand parent if parent is not initialized yet (f0fde0a)
  • Always install cypress before testing (fba062d)
  • Remove caching cypress binary (05e0b37)

Reverts

  • Await node initialization before clamping initial pos (de31136)

[1.12.4] - 2023-01-18

ca96cba...df7603f

Bug Fixes

  • Dont trigger ctx menu when dragging with right mouse btn (7fd2782)
  • Add timeout when updating positions after extent changes (3901752)

Miscellaneous Tasks

Refactor

[1.12.3] - 2023-01-18

e5855a5...ca96cba

Documentation

Miscellaneous Tasks

Refactor

  • Support key combinations for key codes (d51499d)
  • Keep user selection on right click (ce992db)

Reverts

  • Add vue-flow to deps-dev (220f0ff)

[1.12.2] - 2023-01-16

154472a...e5855a5

Bug Fixes

  • Check if position is a number and not if it's truthy (9e1ba45)
  • Always handle keyup (b7605d6)

Miscellaneous Tasks

[1.12.1] - 2023-01-12

459f08c...154472a

Bug Fixes

  • Bubble up keydown event in node wrapper (ab2a87f)
  • Place default slot outside of viewport el (726ee22)

Miscellaneous Tasks

[1.12.0] - 2023-01-11

d971e91...459f08c

Features

  • Add zIndex option to elements (93b463d)
  • Always group edges by z-index (148276d)
  • Use zIndex or style for node elevation (8c84d5c)

Miscellaneous Tasks

[1.11.1] - 2023-01-07

b835e17...d971e91

Bug Fixes

  • Add focus and focus-visible styles to nodes to avoid browser styles (5258d26)

Miscellaneous Tasks

Refactor

  • Update cache key for turborepo (0dab5de)
  • Use concurrency for publish action (993504c)

[1.11.0] - 2023-01-07

314f68f...b835e17

Bug Fixes

  • Prevent unselectable elements from being selected (7810769)

Features

  • Add deletable option to nodes and edges (13f80c0)

Miscellaneous Tasks

Refactor

  • Use pre flush in NodeWrapper (7a416ea)
  • Skip updating position if extent has not changed (6768734)
  • Only apply new positions if there are changes (afe0249)
  • Do not update positions when updateNodeInternals is triggered (75c11e5)

[1.10.3] - 2023-01-06

fafb2e4...314f68f

Bug Fixes

  • Correct package main field (2ed95e6)
  • Correct package main field (1d7c42f)
  • Correct package main field (dd8c45b)
  • Correct package main field (32f8e95)
  • Correct package main field (8653df4)

Documentation

  • Update intro component (09aa4ee)
  • Update info on dynamic handles (20dc364)

Miscellaneous Tasks

Refactor

  • Check if element still exists before attempting removal (8422dbd)

[1.10.2] - 2023-01-05

58fb546...fafb2e4

Bug Fixes

  • Use relative path for tsconfig (140c643)
  • Calculate position and computedPos correctly in calcNextPosition (6aec815)

Miscellaneous Tasks

[1.10.1] - 2023-01-04

c3848a1...58fb546

Bug Fixes

  • Reapply node extent on change (94344a6)

Miscellaneous Tasks

[1.10.0] - 2023-01-04

16d9bb1...c3848a1

Features

  • Allow setting padding for extent parent (de71b5a)

Miscellaneous Tasks

Refactor

  • Allow omitting width/height styles for parent nodes (732e773)

[1.9.4] - 2022-12-30

47b8211...16d9bb1

Bug Fixes

  • Slot props undefined on first render (c1b1821)
  • Pass focusable to edge wrapper (249250e)

Features

  • Add concurrency (3701ddc)
  • Add pnpm cache to build-and-test action (1e0037c)
  • Add pnpm cache to publish action (715b9fe)

Miscellaneous Tasks

Refactor

  • Remove nodes property from ConnectionLineProps (839fa6b)

[1.9.3] - 2022-12-29

5356e7b...47b8211

Bug Fixes

  • Use correct vue flow aria names (fbebe56)
  • Await target before teleporting to viewport (6b4a21c)
  • Add container styles to background (f2df224)

Miscellaneous Tasks

[1.9.2] - 2022-12-29

2e741a2...5356e7b

Bug Fixes

  • Correct edge component prop types (608f797)

Documentation

Miscellaneous Tasks

Refactor

[1.9.1] - 2022-12-25

d1a581c...2e741a2

Bug Fixes

  • Use regexp to fetch imports in slots patch (a8f92ba)

Miscellaneous Tasks

[1.9.0] - 2022-12-25

10d312d...d1a581c

Features

  • Add a11y support to nodes selection box (089859d)
  • Implement figma controls (fd79ab1)

Miscellaneous Tasks

Refactor

  • Move velocity logic into useUpdateNodePositions (4260e31)
  • Remove snapGrid option from nodes - use global one instead (2b513b5)
  • Remove selectionOnDrag prop and use selectionKeyCode to trigger selection (c3e1741)

Testing

[1.8.0] - 2022-12-21

3d62b07...10d312d

Bug Fixes

  • Prevent expandParent from moving parent node while expanding (b4daeb6)
  • Update EdgeRef injection type to SVGElement (912cba3)
  • Drag position update (dd1b150)

Documentation

Features

  • Add pathOptions to edge types (58ede73)
  • Add focusable and ariaLabel options to edge type (bbc2712)
  • Add edgesFocusable option to store (361c4b8)
  • Add A11yDescriptions component (f64e298)
  • Add disableKeyboardA11y option to store options (5386fc3)
  • Add a11y to edge wrapper (ffbbc35)
  • Implement a11y in nodes (9f50dd0)
  • Add ariaLabel to minimap options (9508dea)
  • Add A11yDescriptions to VueFlow container (7195582)

Miscellaneous Tasks

Refactor

  • Rename viewpane to viewport (9361a63)
  • Merge defaultZoom & defaultPosition to defaultViewport (8b2a21b)
  • Clamp invalid zoom values (9cbb7df)
  • Add vueFlowId to getMarkerId (b0e09f7)
  • Use pre flush for dimensions update on handle change (06dc2ee)

Reverts

[1.7.2] - 2022-12-19

952525e...3d62b07

Bug Fixes

  • Input focus preventing selection rect (9ac4a0f)

Features

  • Add elevateNodesOnSelect option (af53408)

Miscellaneous Tasks

Refactor

  • Make label coords optional (31cdd9f)
  • Group edges on edge selection changes (d06ce86)

[1.7.1] - 2022-12-18

88701d2...952525e

Miscellaneous Tasks

[1.7.0] - 2022-12-18

dfecf1c...88701d2

Bug Fixes

  • Overwrite state even if it's an empty arr (dd2a02a)
  • Node dimensions update condition to only force when dimensions defined (94c0883)
  • Move watcher timing to pre and sync immediately (15f73fb)
  • Only trigger store watcher immediately when els were set (f0a4941)
  • Pass flow props to store initializer (e99a289)

Features

  • Add getNodesInitialized getter to store (5334e73)

Miscellaneous Tasks

Refactor

  • Make handles optional in addEdges (fad7911)

Reverts

  • Force update on resize observer changes (657f33b)

[1.6.3] - 2022-12-14

9a0e975...dfecf1c

Bug Fixes

  • Add missing edge class to edge wrapper (f0f7e7e)

Miscellaneous Tasks

Refactor

  • Use vue-flow__handle in handle bounds selector (91aa97b)

[1.6.2] - 2022-12-14

eef24a3...9a0e975

Bug Fixes

  • Element watcher not emitting changes with addNodes / addEdges (dab20a6)

Miscellaneous Tasks

Refactor

  • Check if elements arr has length before overwriting (db3244c)
  • Remove forced update on resize observer trigger (4a8d77d)

[1.6.1] - 2022-12-14

4425faf...eef24a3

Bug Fixes

  • Add initialized prop to GraphNode (8734a16)
  • Await node init to add handle bounds in Handle (b411c1e)

Documentation

  • Correct component name (6d96898)
  • Remove ts from node-resizer example (92ac6e2)
  • Update component documentation (22da724)
  • Correct resizer example (af84c13)
  • Add node toolbar and resizer to config (9d5cda9)
  • Update component documentation with new examples (15ca63a)
  • Add migration page (eef24a3)

Miscellaneous Tasks

[1.6.0] - 2022-12-13

d02f738...4425faf

Documentation

  • Add node resizer example (f31f007)
  • Add node-resizer to typedocs config (8e5a9d0)

Features

  • Add node-resizer pkg (6815515)
  • Add useGetPointerPosition composable (5033bab)
  • Add dragging, selected and resizing flag to GraphNode (20c353a)
  • Implement node resizer components (d883ed7)
  • Add node resizer example (3f1d725)

Miscellaneous Tasks

Refactor

  • Move panel component to core pkg (4fb2653)
  • Remove additional components package (e44b683)
  • Move minimap to separate package (2812790)
  • Move background into separate package (c7b5102)
  • Move controls into separate package (a55f39b)
  • Replace additional-components package occurrences (000dd5c)
  • Apply multiple changes at once to element (9e05f02)
  • Apply multiple changes at once to element (99f5e18)
  • Apply multiple changes at once to element (5c726ec)

[1.5.11] - 2022-12-12

e1179d8...d02f738

Bug Fixes

  • Add missing dragging and selected flags to minimap node slots (dbeba2e)
  • Add missing dragging prop to GraphNode type (97426d5)

Miscellaneous Tasks

[1.5.10] - 2022-12-12

1a4a2a6...e1179d8

Miscellaneous Tasks

[1.5.9] - 2022-12-12

6a5f363...1a4a2a6

Bug Fixes

  • Add missing dragging flag to nodes (ddf6e5f)

Miscellaneous Tasks

[1.5.8] - 2022-12-12

dc2ff64...6a5f363

Bug Fixes

  • Use connectable prop or global connectable in Handle (47432a8)
  • Prevent watcher being stopped oncleanup (fdf9516)

Miscellaneous Tasks

[1.5.7] - 2022-12-10

ddddc7f...dc2ff64

Bug Fixes

  • Watcher not working with onMounted hook (ac8ef13)
  • Node extent not properly applied for child nodes (9142a2e)

Documentation

  • Add pkg entrypoints for typedocs (2e4d69f)

Refactor

  • Use next release as release commit message (dc2ff64)

[1.5.6] - 2022-12-09

a4cf9c0...ddddc7f

Documentation

Features

Miscellaneous Tasks

Refactor

  • Deep reactive nodes and edges (a8f679c)
  • Separate model and store watchers (473fd83)
  • Dispose v-model watchers on scope dispose (4103ef6)

[1.5.5] - 2022-12-08

61d28e8...a4cf9c0

Bug Fixes

  • Apply translate extent on pan (602fbad)
  • Properly calculate node extent (7daadfc)

Refactor

  • Only trigger dragging flag when a change has occured (dce5d86)

[1.5.4] - 2022-12-06

db2c1fd...61d28e8

Bug Fixes

  • Type marker prop in EdgeProps (c673b04)
  • Allow middle mouse pan over edges (0d44179)
  • Prevent valid connections on same node and handle (a1e1304)

Miscellaneous Tasks

Refactor

  • Add HandleConnectableFunc type (9cab025)
  • Remove barrel files and use auto-imports instead (f4a4736)
  • Enable vue macros betterDefine and remove duplicate interface defs (27c6c42)
  • Omit type prop for smooth step edge props (af699d3)

[1.5.3] - 2022-12-05

f3a6ab8...db2c1fd

Bug Fixes

  • Patch VueFlow slots after build and apply correct types (84f82b6)

[1.5.2] - 2022-12-05

298e44b...f3a6ab8

Bug Fixes

  • Check for arr length before triggering immediate model watcher (7dec8b7)
  • Allow null as key-code (91d7c9d)
  • Render minimap node slot (3999773)

Miscellaneous Tasks

Refactor

  • Change shallowReactive properties in elements to reactive (99c6786)

[1.5.1] - 2022-12-01

0c3ae1e...298e44b

Bug Fixes

  • Update model-value regardless of arr length (66f866e)
  • Nullish check for event obj (54fbfaa)
  • Nullish check for event obj (649bdb9)

Miscellaneous Tasks

[1.5.0] - 2022-11-19

ee9b1ed...0c3ae1e

Bug Fixes

  • Update position on dimensions change (1bc6a7d)

Features

  • Add __experimentalFeatures flag to store (3c66058)
  • Add nested flow support for edge alignment (connections dont work) (bae4324)
  • Support touch for connection creation (b3fdbd8)

Refactor

  • Add connecting class to SelectionPane while connecting (463b5d7)

[1.4.2] - 2022-11-17

64b3cb9...ee9b1ed

Bug Fixes

  • Elevate child nodes by zIndex +1 (13c2dfa)
  • Apply initial extent on nodes (6f8b16a)

Documentation

  • Add info on interactive minimap props (fd095d1)
  • Add vercel analytics (a2f125f)
  • Add vercel analytics (bce493c)

Features

  • Add maskStrokeColor and maskStrokeWidth props to MiniMap (e87bb53)

Miscellaneous Tasks

  • Update snap to handle page title (a56ea41)
  • Center dnd nodes after drop (d5a9ae0)
  • Disable debug mode of analytics (118d064)
  • Move analytics to mounted hook (f1b2250)
  • Cleanup unused prop (7100c7e)
  • Cleanup dimension update (0876a18)
  • Cleanup drag handler (4a1cc24)
  • Cleanup change handler (a379b4f)
  • Cleanup import paths (406b20b)
  • Cleanup node wrapper (3ca17d4)
  • Elevate nested flow on home page (62918cf)

Refactor

  • Elevate selected nodes zIndex by 1000 instead to 1000 (69ffa84)

[1.4.1] - 2022-11-14

99c15ca...64b3cb9

Bug Fixes

  • When connection mode is Loose use all handles as connection line source handle (cd4383d)
  • Improper check for selection key code in zoom-pan filter (d677292)

Documentation

  • Update examples (cd03034)
  • Snappable connection line example (bb18a68)

Miscellaneous Tasks

  • Wrap Repl in client only (3340377)
  • Pin vite version (101fa6b)
  • Set examples class name once (4da458b)
  • Use path el for transition edge example (d34cf4b)
  • Remove unnecessary type annotations (631552f)
  • Simplify edge components (c93ffaf)
  • Upgrade deps (2df9ebb)
  • Update vite config (9744571)
  • Pin vite version (5f63e7c)
  • Add missing connectionExists util export (45dbc95)

Refactor

  • Remove default val for edge style obj (354c721)

[1.4.0] - 2022-11-13

fc84b9c...99c15ca

Documentation

  • Cover screen with intro flow (537d4a7)
  • Update node internals on resize (b389418)

Features

  • Add pointerRadius prop to edges (a4fd0eb)

Miscellaneous Tasks

  • Rename pointerRadius prop to interactionWidth (ec6f870)
  • Remove default val for interactionWidth when parsing edges (d580a47)

Refactor

  • Use vue flow id for bg pattern id (3a0d0a9)

[1.3.3] - 2022-11-08

2bfb74d...fc84b9c

Bug Fixes

  • Use node name as class name (95ff059)
  • Render mini map nodes regardless of onlyRenderVisibleElements (7680c52)

Miscellaneous Tasks

  • Remove unnecessary imports (6106e90)

Performance

  • Inject slots to avoid performance drop (0c0bfe4)

[1.3.2] - 2022-11-08

845d88d...2bfb74d

Bug Fixes

  • Prevent edge defaults from overwriting actual edge values (5b397fa)
  • Fall back to default node or edge type (6c738bf)

Features

  • Setup turbo cache in gh action (49c53d0)

Miscellaneous Tasks

  • Use getter for edge/node types (3a5d06d)

Refactor

  • Place wrapper in separate stacking ctx (9d3c3fa)

Test

  • Add defaultEdgeOptions test (559daf0)
  • Use default element types in check (7dfc5f9)

[1.3.1] - 2022-11-07

98e5481...845d88d

Miscellaneous Tasks

Refactor

  • Use event.composedPath as event target for input dom node check (1f722f5)
  • Stop reset of user selection on mouse leave (fb8a830)

[1.3.0] - 2022-11-06

0dc1eb6...98e5481

Documentation

  • Add intersection example (8e3864d)
  • Use EdgeLabelRenderer in edges example (8c0acd6)

Examples

  • Use EdgeLabelRenderer in edges example (a26e83b)

Features

  • Add intersection utils (4782d70)
  • Pass node intersections when dragging a single node (632fa93)
  • Add nodesInitialized event hook (fe1ba03)
  • Add zoomable and pannable to mini map (bd7fa3c)

Miscellaneous Tasks

  • Update changeset (4c618e9)
  • Correct action name (8a51391)
  • Emit nodesInitialized after next tick (a2e260f)

Refactor

  • Add div based edge label renderer (43ff2a4)
  • Skip d3 events with no underlying source event (2a5afe7)
  • Use regular component for mini map nodes (9b60790)

Test

  • Correct drag test position (e9943d5)

[1.2.2] - 2022-11-04

fbfa2ef...0dc1eb6

Bug Fixes

  • Always set a handle id (84adeb7)
  • Skip connectable for handles unrelated to connected edges (49b44e4)
  • Use all handles when connection mode is Loose (43aa810)

Miscellaneous Tasks

  • Add blobity composable (6ab79d5)
  • Use blobity only on client side (2aae2d2)

Refactor

  • Show regular pointer if pane isn't draggable (73dfca5)

[1.2.1] - 2022-10-25

0bd8049...fbfa2ef

Bug Fixes

  • Disable user selection if elementsSelectable is false (e5dfdb6)
  • Prevent node selection box from appearing before mouseup (6e564da)
  • Use shallowReactive for node/edge data & events (096f67a)

Documentation

  • Show changelogs on docs page (787fc22)

Miscellaneous Tasks

  • Update copy plugin (89a3f48)
  • Add plugin logs (1322951)
  • Use regular script for changelog page gen (25010d2)

[1.2.0] - 2022-10-21

578929f...0bd8049

Bug Fixes

  • Correct filenames for output of pkgs (240074c)

Miscellaneous Tasks

  • Add examples group to changelog and filter publish commits (f3dc89a)

Refactor

  • Log warnings for non-prod node envs (395fcd2)

Reverts

  • Update changelog only on tag push (a8831a4)

[1.1.4] - 2022-10-18

9fbd653...578929f

Bug Fixes

  • Allow undefined as custom theme var value (dcf607f)
  • Add overflow visible to control btn svgs (c5aebf6)
  • Set node dragging on start and end (ad0f8ff)

Documentation

  • Remove 0.x.x warning (37d2cd0)
  • Fix additional-components imports (90eac57)

Miscellaneous Tasks

  • Generate base changelog on push into master (8cfea47)

Refactor

  • Add generics to isNode/isEdge fn (ce8b04b)
  • Add generics to Elements/FlowElements types (c0fc95d)
  • Data and event properties to be definitely typed (e6f97b8)

[1.1.3] - 2022-10-14

e9a784a...9fbd653

Bug Fixes

  • Edge text not properly calculating dimensions (d4fb795)
  • Edge text not properly calculating dimensions (72c203e)

[1.1.2] - 2022-10-14

a33adf0...e9a784a

Bug Fixes

  • Add missing dragging class to node selection rect (58d11db)
  • Elements not correctly unselected (583efe6)
  • Edge text not aligning correctly into center (53c70a0)
  • Pass edge styles to edge path (34685a5)

Miscellaneous Tasks

Refactor

  • Use flowElements type as arg for removeSelectedElements (ea9da0a)

Reverts

  • Add dragging class to node on drag instead of dragstart (9f48095)

[1.1.0] - 2022-10-13

6c5523d...b7697de

Bug Fixes

  • Edges not returned by getter on pane ready event (607c7c0)
  • Pass connectable to correct prop (bc80807)
  • Only check for matching handle id if an id exists (a7845c6)
  • connectOnClick reset before connections can be made (d420fea)

Examples

Features

  • Add vueflow pkg that exports all features (9c78528)
  • Allow setting connectable to single for single connection handles (624438a)
  • Add Panel component (3541b24)
  • Add position prop to MiniMap & Controls (875d954)
  • Add dragging class to pane (0044a14)

Miscellaneous Tasks

Refactor

  • Run turbo pipe before publish (32aa9e8)
  • Rename core pkg dir to core (082050b)
  • Set default for connectable to true (0215d49)
  • Use HandleConnectable type for nodes connectable prop (283846c)
  • Update base styles (908b327)
  • Remove docs from build process and use separate script (e9d6ec1)
  • Simplify useHandle (2684272)
  • Move edge event handlers into Wrapper component (13fed0a)
  • Trigger dragging on drag start (00a5ee0)

Testing

  • Search edges for random data (f7dd7f1)
  • Add connectOnClick test (655a27d)
  • Add viewpane tests (0613350)
  • Add tryAssertion command to replace cy.wait (5aa94e2)
  • Properly check element transforms (e0016db)

[1.0.0] - 2022-10-08

8fc28f9...6c5523d

Bug Fixes

  • Remove action not properly removing elements (9168d7b)

Documentation

  • Add transition example (447699c)
  • Dynamic transition duration (62a8750)
  • Update typedocs config to support new module structure (afb3fc7)
  • Move typedoc to root deps (6aaef27)
  • Move typedoc to docs deps (13d576d)
  • Update docs and mention removed edge center functions (42219d3)
  • Bump minimum node version to 14 (6ac3503)

Features

Miscellaneous Tasks

  • Add issue templates config.yml (fd07402)
  • Update bug report template & config.yml (0c018a5)
  • Update pr template (660fb36)
  • Update deps and resolve peer deps (674fe4f)
  • Update workflow file (6bfb2b8)
  • Lint (4593550)
  • Remove typedoc script from additional-components pkg (acc0526)
  • Add typedocs script to root (32c024c)
  • Remove vueuse (97d498c)
  • Add ignore list to changeset config (667078e)
  • Rename docs pkg (7d799de)
  • Add changelog-github (151eae9)
  • Remove node cache step (77953a8)
  • Update publish script (756b36b)
  • Bump version (6c5523d)

Refactor

  • Remove useEventListener from user selection (5bc5f10)
  • Prevent crash when checking if input dom node (2a6763c)
  • Change pkg scope to vue-flow (8567e37)
  • Move additional components into separate pkg (c1bcc02)
  • Simplify edge paths and center calculations (2d76bf3)
  • Remove getEdgeCenter usage (b1e56f0)

Testing

  • Update remove action tests (f9cd905)
  • Add default type to generated nodes (438ad57)
  • Correct selected elements calculation (1601733)
  • Check all nodes/edges for selected class (ca29a08)
  • Update drag test position (664953b)
  • Cleanup unused imports (7eb6c52)
  • Defer checking for selected elements (a6b6a83)
  • Rename flow dir to vue-flow (b547a1f)
  • Small delay when checking removed elements (fd8061d)
  • Add selection key code tests (145d934)
  • Add delete key code tests (ef11069)
  • Add additional components tests (26b2518)

[0.4.41] - 2022-10-07

247f248...8fc28f9

Bug Fixes

  • Use resize observer to set viewpane dimensions (a8d0830)
  • Calculate proper dimensions for view el (55e4403)
  • Edge-renderer to update on edge updates (8c0982a)
  • Use filter to remove orphaned edges (1ad6073)
  • Interrupt edge hidden check if orphaned edge found (d7282cc)
  • Move resize observer to mounted hooks (de6220b)
  • Undo handle validation wrapping itself (f508e6e)
  • Zoom action tests to check for containing str (72dd98b)
  • Check if element exists in isNode/Edge (fc263a6)

Documentation

  • Add blobity opensource license key (d118888)
  • Fix typo (78f35d5)
  • Use removeEdges in custom edge (fe918c0)

Features

  • Add from position to position change event (a29d7c8)
  • Add useNode composable (70871df)
  • Add nodeRef injection (7d992b5)
  • Add generics to findNode action (9b943df)
  • Add useEdge composable (44a65b3)
  • Add connection actions to store (b0c168f)
  • Add vue flow mount command (dc30ef4)
  • Add default command timeout of 1000 (e81bea1)
  • Add tests for add, find & remove actions (9f59be7)
  • Add selected elements action tests (cc4a007)
  • Add remove selected elements action tests (e3327eb)
  • Add set min/max zoom action tests (3770083)
  • Add update edge test (fa5b5da)
  • Add data-id prop to edges (3461602)
  • Add connection line action tests (9fde0bc)
  • Add dragging nodes test (63dae2c)
  • Add connecting nodes test (e429fdf)
  • Add update edge tests (1526ecd)
  • Add data-type to edge anchors (9cea132)

Miscellaneous Tasks

Refactor

  • Use dom matrix to calculate handle bounds zoom (ee56ddb)
  • Only update position on mount (70dd73f)
  • Cleanup handle calculation logic (31b0bcb)
  • Use single resize observer for nodes (a780813)
  • Remove unnecessary scope (bf7594f)
  • Remove flush timing from drag (091c3df)
  • Make handlebounds shallow reactive (726471c)
  • Calculate bounds on mount (1d1447e)
  • Use connection start handle and remove other props from store (a443d38)
  • Emit connection events start and end with actions (7a657f1)
  • Upgrade to cypress 10 (8928eb8)
  • Move test files (6e0c0c7)

[0.4.40] - 2022-09-14

f7c18df...247f248

Bug Fixes

Miscellaneous Tasks

[0.4.39] - 2022-09-12

ff51560...f7c18df

Bug Fixes

  • Skip applying node extent on mount (018d711)

Features

  • Save frame data of node (c222bb9)
  • Updated smoothstep edge routing (c113d3b)

Miscellaneous Tasks

[0.4.38] - 2022-08-30

3e398d4...ff51560

Bug Fixes

  • Watch translate extent separately (a204f86)
  • Cast watchable props to ref (9440d4f)
  • Apply global node extent when changed (e8a6dc3)
  • Add missing updateNodeInternals event (487c287)
  • Apply initial node extent (058fb5a)

Documentation

Features

Miscellaneous Tasks

  • Upgrade deps (b48234e)
  • Cleanup unused vars and remove setState usage (a110cdc)
  • Re-apply node extent only if flow is ready (955f683)
  • Pass vueflow id to scope on each call (2beb48d)
  • Bump version (ff51560)

Refactor

  • Set fixed styles on resize rotate node (5f5dd49)
  • Allow ref to be passed to useKeyPress (be2bcf5)

[0.4.37] - 2022-08-09

f1a1321...3e398d4

Bug Fixes

  • Pass node as prop to wrapper (6221663)

Miscellaneous Tasks

[0.4.36] - 2022-08-08

16b6f42...f1a1321

Bug Fixes

  • Use flush timing post in NodeWrapper.vue (80fd818)

Miscellaneous Tasks

[0.4.35] - 2022-08-03

f473dac...16b6f42

Documentation

Features

  • Block keypress on inputs and .nokey elements (250965d)

Miscellaneous Tasks

Refactor

  • Move watch flush timing to pre (8b6afd3)

[0.4.34] - 2022-08-01

dc0ec7a...f473dac

Bug Fixes

  • Force update clause in updateDimensions (0d10adc)
  • Cleanup default change handlers on watch scope dispose (9031b46)

Documentation

Miscellaneous Tasks

Refactor

  • Accept KeyFilter instead of KeyCode (bd36253)
  • Recreate scope on mount (d468fb7)
  • Re-bind hooks on mount and use hooks ref (8b02d7d)
  • Reset store on unmount and skip re-creating hooks on re-mount (90b3bd0)

[0.4.33] - 2022-07-30

9aa5172...dc0ec7a

Bug Fixes

  • Fix methods (onMouseEnter, onMouseMove, onMouseLeave) not being able to emit event (4e93b2b)
  • Dimensions not properly set on mount (899d3af)
  • Pan on scroll blocks any zoom handling (228b9d1)

Miscellaneous Tasks

[0.4.32] - 2022-07-28

4766510...9aa5172

Bug Fixes

  • Prevent initial dimensions being emitted twice (1db74cf)

Miscellaneous Tasks

[0.4.31] - 2022-07-27

600922a...4766510

Bug Fixes

  • Prevent falsy values from stopping prop watcher (93a9a99)
  • Remove generic from node getter (b0fc5ad)
  • Only run scope dispose on parent caller (d62c330)
  • Create new effect scope when pane ready is called (54eef97)

Features

  • Expose flow store and element ref (97d89bf)
  • Set vueflow & viewport elements in store (376f91e)
  • Add findNode & findEdge actions (f2321f2)
  • Add viewpane mouseevents (8ea2130)
  • Bind pane mouse events (953155d)
  • Add $destroy action (73bf4db)

Miscellaneous Tasks

Refactor

Reverts

  • Explicitly bind emits (31f0dba)
  • Use state viewport zoom to calculate handlebounds (98ff311)

[0.4.30] - 2022-07-22

7596c4d...600922a

Bug Fixes

  • Use correct edge event types (d96e944)

Miscellaneous Tasks

[0.4.29] - 2022-07-18

b696eb0...7596c4d

Bug Fixes

  • Check parent dimensions before extending (7d66094)
  • Remove child nodes when parent gets removed (9bca73d)

Miscellaneous Tasks

[0.4.28] - 2022-07-16

32e7ee9...b696eb0

Bug Fixes

  • getIncomers always returning itself (1abd18d)
  • Auto-connector always triggered even when not set (95afba3)
  • Correctly calculate handle pos by using viewport zoom (b7428e9)
  • Pass auto-connector result as new edge params (4b83ae0)

Documentation

  • Add seo plugins (b11feaf)
  • Update pinia example to use latest version of vue flow (1f035fb)

Miscellaneous Tasks

Refactor

  • Don't interrupt while zoom/pan is active (45163f3)

[0.4.27] - 2022-06-26

9fdac11...32e7ee9

Documentation

  • Documentation for updateNodeInternals event listener (f8be3cb)
  • Documentation for new connectionLineOptions prop (b2834b9)

Features

  • Allow node internals to be updated by event (2a8f4a1)
  • Add connectionLineOptions prop (1578d40)

Miscellaneous Tasks

  • Move icons into floating container (3ea7355)
  • Move icons into header but in container (a24fc52)
  • Update deps (2678112)
  • Correct tooltip position (48dc16c)
  • Set transition mode (e022978)
  • Fix typo (0c5473a)
  • Check if node ref exists before updating dimensions (ae5d5b4)
  • Bump version (32e7ee9)

[0.4.26] - 2022-06-24

16ec3cc...9fdac11

Documentation

  • Move examples into nodes and edges dir (7534ad9)
  • Add animated background to intro (f1a0568)

Features

  • Add pattern-container slot to Background (89daa82)

Miscellaneous Tasks

  • Color github logo white (8d975c6)
  • Randomize animation durations (2932a8c)
  • Have animations be at least 5 seconds long (74f367c)
  • Color github logo black when light mode (6e2ae48)
  • Enable animated background on intro node click (07e7484)
  • Allow intro nodes to be dragged and use bezier edges (d265a62)
  • Change blobity mode (491f2dc)
  • Elevate edges on select in intro (fd1cc00)
  • Bump version (9fdac11)

Refactor

  • Trigger viewport size update on window resize (3cb3ada)

[0.4.25] - 2022-06-24

f4201fd...16ec3cc

Bug Fixes

  • Use v-if on slots instead of lock icons (a183c7d)

Documentation

  • Add github, discord and react flow icons to header (097b859)
  • Use edge style function to style edges on node select (c27c895)

Miscellaneous Tasks

  • Push from changelog workflow to master branch (7d9a7b6)
  • Let windicss scan theme dir (a0541cb)
  • Update auto-imports.d.ts (d37b67c)
  • Remove d3 and move types/d3 to deps-dev (eeed10c)
  • Bump version (16ec3cc)

[0.4.24] - 2022-06-23

c866df6...f4201fd

Bug Fixes

  • Apply node extent (77c43aa)
  • Use correct zindex on selection (4e431a1)
  • Remove sourcePosition & targetPosition from initial edge options (acc27a7)

Documentation

  • Move button style to index.css (119bcab)
  • Rename button class to docs-button (04907fc)
  • Add minimap node docs to sidebar (597cfad)
  • Update minimap-node.md (1dcfb2d)
  • Add typedoc links and fix edge docs (9a72a5a)
  • Add sidebar links for actions, getters and events (d0d9a34)
  • Add deprecation notice for useZoomPanHelper (17d3f8d)
  • Add notice about FlowInstance removal (92fc866)
  • Add docs for new connection line class (5a031e3)
  • Update documentation on custom node props (439aa49)
  • Documentation for new node events property (7d47904)
  • Fix links for docsearch (345cf9b)
  • Update nested example (6c06eee)
  • Documentation for new elevateEdgesOnSelect option (6dfeebf)
  • Documentation for new edge events property (905a6fb)

Features

  • Move connection lines to separate container (2a9cdd6)
  • Add contextual node events (b363e94)
  • Add useNodeHooks composable (394f9a0)
  • Update node event types (b5998ee)
  • Add contextual edge events (730f49e)

Miscellaneous Tasks

  • Remove repository ref from changelog workflow (b4d123c)
  • Allow manual workflow dispatch (2e1150c)
  • Add name to changelog workflow (e154b60)
  • Use fetch-depth 0 (14a1843)
  • Update vite-config.ts (d75feb6)
  • Deprecate useZoomPanHelper (f5b02c3)
  • Add generic for custom events on node associated types (38d8565)
  • Remove computedPosition from NodeProps (a84dc91)
  • Remove nodeElement from NodeProps type (e395cc7)
  • Use scope for node watchers (eb28934)
  • Simplify elevateEdgesOnSelect logic (d036769)
  • Correct name of useNodeHooks (fb51f8d)
  • Update package deps (580de08)
  • Bump version (f4201fd)

Performance

  • Too many loops in grouping watcher (f25f6bf)

Refactor

  • Apply node specific snapGrid on drag (c5e4264)
  • Use content-box for resize observer (78e15b2)
  • Edges z-index 0 by default (c0920bf)
  • Remove unnecessary generics (be68a27)

[0.4.23] - 2022-06-16

893b35b...c866df6

Documentation

  • Improve teleport example with transitions (2de1215)
  • Add multiple transition animations to teleport example (597f799)
  • Set inheritAttrs to false on teleportable nodes (77e481b)
  • Use updateNodeInternals in teleport example (47bc652)
  • Fix docs links (2526d76)
  • Add documentation on autoConnect option (5a563e4)

Examples

Features

Miscellaneous Tasks

  • Update CHANGELOG.md (e55a3fb)
  • Add workflow to generate changelog on v*-tags push (87ad709)
  • Move update position into own function (c2303f4)
  • Rename postrelease script to changelog (4a2345b)
  • Bump version (c866df6)

Refactor

  • Move position: absolute to required handle styles (8e911de)
  • Remove ctrl key from drag filter condition (1aa9230)
  • Add updateNodeInternals action (648350c)
  • Remove computed position as prop from custom nodes (4b824b5)

[0.4.22] - 2022-06-15

59b6424...893b35b

Documentation

  • Use mutation observer to check dark mode class (669f9a0)
  • Integrate TypeDocs into vuepress output (be5df65)
  • Skip readme when generating typedocs (fc98108)
  • Generate own document for all reflections (12c27e9)
  • Generate typedocs sidebar dynamically from subdirectories (d3e6f63)
  • Disable sources (281b0fc)
  • Set repl store on mounted (2bd81fe)
  • Fit view on features flows on wrapper resize (1400011)
  • Add slot documentation for Controls (3162b79)
  • Add documentation for ControlButton (33cd638)
  • Replace old typedoc links (e469708)
  • Add documentation for MiniMapNode (3587478)
  • Replace old typedoc links (53a85bf)
  • Add documentation for Vue Flow slots (0726a98)

Features

  • Export MiniMapNode component (06420ac)

Miscellaneous Tasks

Refactor

  • Hide/show slots in Controls.vue (32086e0)

[0.4.21] - 2022-06-10

fd6c34c...59b6424

Miscellaneous Tasks

[0.4.20] - 2022-06-10

7597c0c...fd6c34c

Documentation

  • Update Basic.vue class and style functions (2e1b2db)
  • Remove unnecessary div (9a4c4d6)
  • Use mutation observer to check dark mode class (8fd5505)

Miscellaneous Tasks

  • Bump version (9d94dfd)
  • Remove NodeProps generic from node label type (7de3509)
  • Commit version bump on postpublish (62c45d3)
  • Commit all files on postpublish (fd6c34c)

Refactor

  • Remove BaseElement type (37fd017)

[0.4.19] - 2022-06-10

c755208...7597c0c

Bug Fixes

  • Bind edge mouse events to correct names (7fe5171)

Documentation

  • Update typedoc to use src/index.ts as entry (c289e7e)
  • Add typedoc.json file (f94f72d)
  • Update deps (650606e)
  • Update intro lightmode styles (3668caa)

Features

  • Explicitly define events in VueFlow component (9ae97f4)
  • Export BaseEdgeProps (ac93894)

Miscellaneous Tasks

Reverts

[0.4.18] - 2022-06-07

0649c0a...c755208

Bug Fixes

  • Triggers recursively when store changes (a86eded)
  • Set viewpane functions on Transform mount (8a570be)
  • Pass edge markers to wrapper (c755208)

Documentation

Features

  • Add removeNodes and removeEdges utilities to store (7276a39)
  • Allow connected edges to be removed with removeNodes (f434ab0)
  • Add effect scope to useDrag utility (382a3b6)
  • Defer viewport functions until pane is ready (7dd79f6)

Miscellaneous Tasks

  • Bump version (425e558)
  • Update CHANGELOG.md (deef900)
  • Fix missing imports (9929278)
  • Remove unnecessary imports (c81362d)
  • Set dimensions after mount (e8923c8)
  • Wait for paneReady to set zoompan (5b55d6b)
  • Trigger fitViewOnInit after paneReady (90af73d)

Refactor

  • Remove instance property and merge into useVueFlow (58783fd)
  • Remove FlowInstance type (5277506)
  • Set resize observer before mount (87f97ef)

[0.4.17] - 2022-06-03

f624c1a...0649c0a

Bug Fixes

  • Performance issue with getNode (0102ebc)

Documentation

Miscellaneous Tasks

[0.4.16] - 2022-06-03

a260f04...f624c1a

Bug Fixes

  • getNode not returning proper node element (0b21708)

Documentation

  • Update vuepress version (99499dd)
  • Use vueflow version from composable instead of pkg (d22773d)
  • Fix version link (c6bda81)

Examples

  • Move current examples into examples/vite (8dd7c79)
  • Add quasar example (330d6d7)
  • Add nuxt3 example (f21d317)

Miscellaneous Tasks

Refactor

  • Replace yarn with pnpm as package manager (c07069d)

Testing

  • Update import path for utils (0373dae)

[0.4.15] - 2022-06-01

eef7c49...a260f04

Bug Fixes

  • Set applyDefault regardless of true/false (42ea2de)
  • Unregister apply handlers when applyDefault is false (30efd62)
  • Use computed pos to calculate relative node pos (29439f0)
  • Apply rotation correctly (4f506b6)

Documentation

  • Change stroke color of intro example node (95104fd)
  • Remove onPaneReady handler from Intro.vue (3828378)
  • Add margin top to h1 elements (700156f)

Features

  • Show moveable when dragging (4866e26)

Miscellaneous Tasks

[0.4.14] - 2022-05-29

30db19b...eef7c49

Bug Fixes

  • Filter by nodrag class name (d8bae03)
  • Remove unnecessary filter from updateEdge util (ab09a9b)

Documentation

  • Use new vuepress plugin api (713ef07)

Miscellaneous Tasks

  • Update CHANGELOG.md (bcfc403)
  • Update README.md (015e34b)
  • Fix readme discord link (7afbd87)
  • Update typescript to 4.7.2 and vue-tsc to 0.35.0 (f32dd24)

[0.4.13] - 2022-05-27

f6d2509...30db19b

Bug Fixes

  • Default edge options not applied on new edges (b846a3f)
  • Destruct bounding box (567b55b)
  • Jumping when drag is out of sync with last pos (de60d92)
  • Check if connection exists (975d551)
  • Unselect nodes on click when multi selection active (ddac5b0)
  • Unselect nodes on drag start (660c0bc)
  • Update xyz on select (b63d3da)
  • Check if node position was manually changed since last drag (128c1a4)
  • Extent not applied (7479534)
  • Set dragging to false after drag (957918e)
  • Properly expand parent (048775d)
  • Missing source / target node (a3f3077)
  • Use correct bbox for edge text (008929a)

Documentation

  • Update examples (8e3f1a3)
  • Add horizontal layout example (488b632)
  • Update stress example (4e9ad11)
  • Update stress example (a6e6f31)
  • Add teleport example (d9e7c7a)
  • Add teleportable example (5d94a98)
  • Remove unused edges from nested example (643f752)
  • Pin repl version to 1.1.2 (1b8d9cf)

Examples

Features

  • Add connected edges to node mouse events (5b307b5)
  • Add width and height options to minimap (0cd6eaf)
  • Add mouse over events for minimap nodes (7c360bb)
  • Add mouseover events for minimap nodes (d519eba)
  • Add teleport option to nodes (0d35f1c)
  • Only allow teleport on graph nodes (e38cb4e)
  • Implement useDrag in NodesSelection.vue (674a657)

Miscellaneous Tasks

Refactor

  • Change edge-text prop type to extend svgattributes (0d17d00)
  • Use reactivity transform in edge-texts (0a2a467)
  • Add node/edge add changes (1ddeffe)
  • Move pull request template to up a directory (ce7569d)
  • Use d3-drag (95e36d0)
  • Remove dragging from graph nodes (86ba26f)
  • Remove node and parent node props from wrapper (80878a2)
  • Remove selectedNodesBbox from store (f9671b1)
  • Remove get type call for names (4cb4d9c)
  • Mark nodes edges as shallow reactive (3312739)
  • Reduce nodewrapper re-render (a65d856)
  • Make edge wrapper functional component (ce13007)
  • Move classes to Wrapper.ts (d5a19cd)
  • Remove v-model (c059b59)
  • Add remove selected elements actions (ec7901e)
  • Simplify event defs (9cdad4d)
  • Use absolute positions instead of deltas (cec8f4d)
  • Remove reactive options (e2f3da8)
  • Watch dimensions for xyzpos (e483da2)
  • Remove v-html from template tag (d4ce7b8)

Update

[0.4.12] - 2022-05-26

e714fe6...f6d2509

Bug Fixes

  • Pass markers to correct attributes (6494b65)

Documentation

  • Replace codesandbox embed with repl (#122) (98a8931)

[0.4.11] - 2022-05-22

9627f23...e714fe6

Bug Fixes

  • Regexp for replacing transform values (f0e2bc0)

Features

  • Add pathfinding edge pkg to packages dir (4ee7eb9)
  • Add resize-rotate-node pkg (66312b5)
  • Add moveable to ResizeRotateNode.vue (b120c22)
  • Add onResize handler (37bc17f)
  • Implement onResize & onRotate handlers (b4c12fb)
  • Hide moveable on pane interaction (8246e6e)
  • Add devcontainer files (e4c296a)
  • Export ControlButton.vue (0702fb8)
  • Add top slot to Controls.vue (045a768)
  • Add and export props type (0a285d6)

Miscellaneous Tasks

Refactor

  • Move vue-flow into separate pkg directory (b9dbb97)
  • CamelCase custom events in Controls.vue (263b6df)

[0.4.10] - 2022-05-14

bcaf346...9627f23

Bug Fixes

  • Check if connection exists for new connection (d36402e)

Examples

  • Update node example color (1d2322e)

Miscellaneous Tasks

[0.4.9] - 2022-05-11

233d585...bcaf346

Bug Fixes

  • Use scaleBy instead of scaleTo for zoom (fa23617)
  • Dispose effects on unmount (ad07b5b)
  • Watcher not re-binding when initialized with empty arr (f69118e)
  • Add draggable watchers (4eb7754)
  • Use label content as inner html (14ef119)
  • Missing mouseevent on minimap node click (c6840a3)
  • Cancel edge update if connection exists (9cc7806)
  • Ensure scope dispose is run (c4f9b2c)
  • Wrong elements removed when index can't be found (b68dc4c)
  • Fit view not respecting options nodes (5fb0280)
  • Add edges not respecting default edge options (e2e3a65)

Examples

  • Add initial class to basic (bb30db7)

Features

Miscellaneous Tasks

Refactor

  • Accept maybe refs as options for usevueflow (04fcd08)
  • Directly bind instance functions (7ff48b8)
  • Controlled computed in minimap (6c2c7c4)
  • Change base edge to functional component (f1bbed1)
  • Remove base edge from default edge types (7f54d3a)
  • Change defaults to functional components (8d33014)
  • Change minimap nodes to functional components (f5174eb)
  • Use reactivity transform and remove store property (e722f49)
  • Destructure props with reactivity transform (dc1d71d)
  • Re-set nodes arr on addNodes (cf7a8ec)
  • Pass type component as prop (b6848e3)
  • Defer grouping to next tick (e2fd3b4)
  • Minimize position change loops (0becad7)
  • Remove scoped slot props from handles (1b97109)
  • Update edge type to include default edge types (1fab031)
  • Use watchEffect for keypress (8e91e4a)

Testing

  • Update tests to work with removed store property (2918b68)

Regression

Update

  • Add explicit action types (0b23112)

[0.4.7] - 2022-04-21

8f4d1b3...233d585

Bug Fixes

  • Selection not working twice in a row (ec0f3ef)
  • Import paths (1e23893)
  • Replace watchDebounced with debouncedWatch (2d7e2a7)
  • Await until d3zoom is rdy (8c22271)
  • Cast styles to css properties (b206ff1)
  • Use correct handleId (8627fef)
  • Parenthesis in handleId computed (38b7e07)
  • Trigger computedPosition watcher when selected changes (3064e28)
  • Remove v-if (3838ffc)
  • Return empty arrays if pane isn't ready yet (ea69dc5)
  • Emit paneReady when dimensions are ready (e14cf12)
  • Await dimensions before using zoompan utils (c0c67c6)
  • Remove waiting for node dimensions in transformation pane (ca2a72c)
  • Node/edge label type (440ad3c)
  • Lint scripts (3937d56)
  • Remove 'Floo' from EdgeText.vue (1e1ee65)
  • Recalculate handle bounds on position change (79ede4c)
  • Clamp zoom pan helper transformations (86c72ab)
  • Enforce extent on viewport transforms (f35167c)
  • Remove orphaned edges (ee38f4a)
  • Reactive key bindings for delete, select etc. (5951beb)
  • Base-edge throwing attrs warnings for curvature (8b3acda)
  • Duplicate setState on vue flow mount (12e42e6)

Documentation

  • Add pwa plugin & update manifest (f63e157)
  • Add floating edges example (eb81b9d)
  • Document changed classnames (e5dbbe6)
  • Disable blobity for mobile (f06b224)
  • Rename section to Selection Options (cb99000)
  • Update docsDir in themeConfig (ff4f110)
  • Add logo to header (4fbb16f)
  • Remove next tick cb in Home.vue (969dd87)
  • Update node positions (07ee6ed)
  • Fix node pos on resize (c4ddeeb)
  • Fix missing handles in new connection (8508423)
  • Add icon resolver (dc5ca5d)
  • Center intro text (b704bc6)
  • Fitview mixing edges up on resize (0184cdd)
  • Update examples wordings (d35eb96)
  • Update guide wordings (b94c0ab)
  • Update README.md (3925e24)
  • Add acknowledgement node to intro (9b11d8f)

Features

  • Promisify updateNodePosition (bf2c77f)
  • Assign default handle id and allow for actual loose connections (158be8a)
  • Add PositionFunc as node position type (1e9cbc0)
  • Add floating edges example (7aa1773)
  • Allow add and set actions to have a setter input (aae37a5)
  • Add name to BaseEdge.vue (2cc387f)
  • Allow node/edge template per element (88f8087)
  • Add turbo to root deps-dev (2a836d7)
  • Use frozen-lockfile in build-and-test.yml (b2d5196)
  • Add turbo pipelines for types and themes (ca5033b)
  • Test pipeline (08204fd)
  • Add dependency to dev pipeline (82fd35c)
  • Add dependency to dev pipeline (c40d17c)
  • Add turbo repo cache to workflow (1628cf4)
  • MiniMapNode slot (567ce96)
  • Add mini map node events (e178a3c)
  • Extend minimap node type (2eacdc9)
  • Extend ValidConnectionFunc (2d43806)
  • Add issue and pr templates (7cb7eb2)
  • Add source/target nodes to graph edges (a19474c)

Miscellaneous Tasks

Refactor

  • Remove width/height attribute (fdde631)
  • Remove DraggableCore component and use composable (4f026e8)
  • Remove dimensions option, replace with width and height (8f2d94a)
  • Replace DraggableCore with composable (342d030)
  • Remove paneReady state value (60feb5d)
  • Use computed properties for class and styles (2048423)
  • Use computed properties for class and styles (5f6a805)
  • Remove position func (c964fb6)
  • Add nodeElements prop again (6b76b8b)
  • Change label-type to string | VNode | Object (8e3fef5)
  • Change zoom pane into viewport (3d67d29)
  • Transformation-pane class renamed to transformationpane (30d66a6)
  • Change transform to viewport (fcdbc21)
  • Remove memoization of group edges fn (c1b6fc0)
  • Remove generics from types except nodes, edges, elements (e3270d5)

Testing

  • Fix test checking for wrong element type (e877643)

Regression

  • Edge update also triggering new connection (9a5b546)

Update

  • Use proper handle bounds (bc88e18)
  • Allow void return for styles/class func (106d287)
  • NodeProps comments (817f69c)
  • Connection target and source as non-nullable strings (8fbb1cf)
  • Default nodrag/nowheel/nopan class as type (365a8a8)
  • Typeguard input type (636598b)

[0.4.1] - 2022-04-05

1c429fc...8f4d1b3

Documentation

  • Update vue flow version (cc76a76)
  • Remove data script and fetch data in Banner.vue (bec26f3)

Features

  • Add name to TransformationPane.vue (fdf2a6e)

Miscellaneous Tasks

Refactor

  • ElementData as any type (92a0817)

[0.4.0] - 2022-04-04

f3b3062...1c429fc

Bug Fixes

  • Pass all required props to node components (c818a58)
  • Pass parentNode id instead of parentNode to components (266678d)
  • Expand nodes correctly when prop enabled (4644af5)
  • Setting store state after init (188156d)
  • Connection line style prop (66a166d)
  • Destructure useHandle (cd6b03d)
  • Source/targetHandle type (e9f4b5f)
  • Default prop value for zoomActivationKeyCode (2b2aad8)
  • Use correct functions for center/path in simple bezier edge (3acb43d)
  • Use correct vars for center in straight edge (6674350)
  • Check if prop label exists before using dynamic component (f30288d)
  • Missing source/target node props on smoothstep edges (de534e9)
  • Prevent scroll when zoom on scroll is false (70a349f)
  • Edges not selected on user selection (271d793)
  • Add no pan class name to nodes selection (43692aa)
  • Check for scope before trying injection (0d0ac9d)
  • Cleanup of state (fddebb9)
  • Check if window exists before binding event listener for keypress (fa6c7b7)
  • Change modelValue/node-/edge-prop when elements are added to state (cb3e123)
  • Use empty string instead of null when source-/target-handle is not present (9b94014)
  • Check if scope exists before accessing id (e136c28)
  • Try to resolve component before falling back to default (0d6bc39)
  • Prevent onClick from creating edges inside same node (2027731)
  • Set default prop as undefined for connectOnClick (9a87543)
  • Store & usevueflow types (95bc46e)
  • Check if type exists before using as index (bf3506d)
  • Check if type exists before using as index (c12e07b)
  • Use node.extent before trying global nodeExtent (d1e8c0f)
  • Short circuit passing slots to renderer (74bc231)
  • Force focus into node selection (ddeb70a)
  • Getter type (73a9016)
  • Use global nodeExtent if node.extent is undefined (8e6e85a)
  • Compute type in wrapper (546dd4b)
  • No transform of id to ref (71e21e5)
  • Injection missing (ca74d7b)
  • Computed getter type (981511c)
  • Dont inherit attrs on smoothstep/stepedges (c68b1bf)
  • Initial state tests (a686d62)
  • Remove vue from dev-deps (9b08271)
  • Immediate execution of watchers (041f22d)
  • Check for scope before providing store (3d66775)
  • Remove duplicate source/targetHandle prop (453f155)

Documentation

Features

  • Enable passing components as node/edge-types (6a2c1b0)
  • Enable using a parentNode / parentNodeId to add child nodes (9a8caf4)
  • Add updateNodeDimensions actions (0093df4)
  • Add onClick handler (b42c1b0)
  • Add & export bezierCenter function (18758fa)
  • Add base edge (aba67a4)
  • Add default edge options (9a8bf69)
  • Add noPanClassName, noWheelClassName & noDragClassName (c544a02)
  • Add d3zoom event to hooks (a5e853c)
  • Add SimpleBezierEdge (56f7e3b)
  • Add dimensions to nodeprops (7747456)
  • Add ResizableNode to Basic example (88a8ecb)
  • Implement workspaces (cd817b7)
  • Add publish script (57f8428)
  • Add path alias for local dev (8362d7f)
  • Pass node slots as injections to wrapper (4cbdf0c)
  • Use slot injection for custom connection lines (3079170)
  • Use slot injection for custom edges (3f15983)
  • Export apply changes utilities for options api (d95a833)
  • Add vitepress for docs & docs workspace (e71b9d5)
  • Debounce scaling to avoid lag spikes (e97d9a1)
  • Add icons (9230f32)
  • Allow class or styles to be bound with function (a50101b)
  • Add data script (4d668f8)
  • RGB demo coloring (4e8b03d)
  • Add windicss scrollbar plugin (631a764)
  • Nested demo (31cb99b)
  • Add additional demo (e27ab86)
  • Replace vitepress with vuepress (3bbe92a)
  • Add docsearch plugin (4cc3199)
  • Add auto import plugin (0d2c165)
  • Add page footer (39683ca)
  • Layout styles (c05c737)
  • Return new edge from updateEdge utility (d02ade0)
  • Responsive pos of elements (3c48913)
  • Disable pan on mobile (59ac645)
  • Add guide index page (3bc0e87)
  • Add getting started page (13fea5e)
  • Add theming (e91af56)
  • Add css vars for overwriting node colors (d179838)
  • Add node pages (47e3336)
  • Allow pre-defined dimensions of a node (094c4ff)
  • Add state page (91416c9)
  • Add blobity to home (9aa42ed)
  • Add cliff.toml for git-cliff (3c838b9)
  • Add changelog.yml for changelog generation (f52f626)
  • Add changelog.md (9adf6d1)
  • Add prerelease script to generate fresh changelog (035cf69)

Miscellaneous Tasks

Refactor

  • Shorten default state setter function (3539937)
  • Shorten watcher (5cc0da2)
  • Shorten setState (7d4a5fd)
  • Use null instead of undefined for optional state properties (7280465)
  • Reduce node props (35f3d89)
  • Remove node and edges export (c75f00a)
  • Remove scaling from edge text (e5f6b45)
  • Rename paneMovable to panOnDrag (0bb54d6)
  • Make zoomActivationKeyCode non-optional again (4af0ee0)
  • Make zoomActivationKeyCode non-optional again (7d91aa2)
  • Rename selectionActive to userSelectionActive (da2e95a)
  • Change children API to parentNode API (0a079af)
  • Remove background variant none (aaba123)

Regression

  • Add slot to connection line (9a47c15)
  • Calculate handle bounds regardless of update (0e48b77)
  • Use computed to get current node/edge (a5a918a)
  • Add slots to vue flow container to indicate possible slot names (37fc1fc)
  • Removing nodes/edges breaks renderer (528cac5)
  • Enable pointer events on zoom pane (85f563a)

Update

  • Set vueFlow var to null on scope dispose (833cf5e)
  • Remove typecast (af5b048)
  • Add edge text to exports (2b4dbba)
  • Move mounted hooks up (024a434)
  • Try fetching instance when out of scope (544a62e)
  • Rename update to updates (to fit arr type) (c955d19)
  • Rename typedocs out dir to typedocs (cc96739)
  • Move examples into src dir (c1594b0)
  • Parse style.css with postcss instead of including it with vite (8f3a2b9)
  • V-if on existing edges before looping wrapper (9dd71c2)
  • Support fragments as node slots (1347304)
  • Support fragments as edge slots (70646c5)
  • Support fragments as connection line slot (0bfca93)
  • Add windicss (36e3299)
  • Disable pointer events on zoom pane when zoom key is active (fb1c828)
  • Short circuit connection line slot (83ea905)
  • Update stress example syntax (94e5bda)
  • Set zindex to 0 on initial parse (9344365)
  • Color transitions (611aee5)
  • RGB demo (39c8f60)
  • Import order (d913df6)
  • Split features into separate files (6cb13f1)
  • Remove logs (349ecf8)
  • Remove unnecessary type exports (ade61ca)
  • Generic types (186b96f)
  • Fitview on breakpoint change (6fd1ebc)
  • Add button edge example (d6b41af)
  • Footer (39df62f)
  • Mobile styles (13aae6a)
  • Dark mode colors for home (6c7fde0)
  • Add css vars to theming page (14ffbaf)

[0.4.0-8] - 2022-03-23

11da181...f3b3062

Bug Fixes

  • Use rect only if bgColor is present (ea93d55)
  • Edges not connecting when mixed with top/btm & left/right (f7c939e)

Features

  • Use a storage class to map flow instances (65d079d)

Miscellaneous Tasks

Update

  • Use bgColor on extra rect (d9c67be)
  • Return vueFlow even if scope doesnt exist (3f5c7ea)

[0.4.0-7] - 2022-03-16

93e3d8b...11da181

Refactor

  • Move paneReady event to transformation pane mounted hook (0592929)

Update

  • Remove useWindow export (dcd2ec4)

[0.4.0-6] - 2022-03-14

79bac64...93e3d8b

Update

[0.4.0-5] - 2022-03-14

f3b1c5e...79bac64

Miscellaneous Tasks

  • Update auto-imports.d.ts (c70c816)

Update

[0.4.0-4] - 2022-03-14

e4e5e67...f3b1c5e

Bug Fixes

  • Prevent zoom when zoomOnScroll is disabled (afaa038)

Features

  • Allow zoomOnScroll & panOnScroll to be used without an activation key (d948f5e)
  • Allow background height/width to be set (2fa7e22)
  • Add typedoc (25e5b92)
  • Use postcss to parse default theme into a simple css file (3b8c49e)
  • Add comments to types (c21ac7d)

Update

  • Use Shift for panOnScroll on Windows OS (9317f78)

[0.4.0-3] - 2022-03-08

0c5e4a4...e4e5e67

Bug Fixes

  • Markers not displayed (1def3a9)
  • Fix typo in paneMovable prop (6746d6b)
  • Edge text not aligning to center (4f42fd0)
  • Edge text height not centered (b7c1954)
  • UpdateEdge action not fully updating an edge (46a63c2)
  • FitViewOnInit not passed to zoomPane (fd951e8)

Features

  • Add nodeElement as Prop to Nodes (2bb3ecb)
  • Add names (node-types as name) to minimap node slots (743b0bd)
  • Allow markers to have unique id (994b403)

Refactor

  • Add default theme to style.css (36ac64f)

Update

  • Unidirectional example (158f81d)
  • Deprecate modelValue prop (ac6f62f)
  • Remove copy plugin (300886c)
  • Remove scope dispose from useHandle (cd2b898)
  • Filter edges of hidden nodes (c31deb8)
  • Deprecare setElements action (40bb91f)

[0.4.0-2] - 2022-02-22

776000c...0c5e4a4

Refactor

[0.4.0-1] - 2022-02-21

082bc51...776000c

Bug Fixes

  • Typings for UseVueFlow (2731d0b)
  • Typings for UseVueFlow (8260eab)
  • Clear all empty values before passing as props (1756160)

Features

  • Add OptionsAPI example (78c5868)
  • Try to dispose states on unmount (c5b39d4)

Miscellaneous Tasks

Refactor

  • Remove useElementsState utility (ca85d80)
  • Use dist pkg for examples (54e8301)

Update

  • Set store instance before emitting pane-ready event (1699749)
  • Use prop for fitViewOnInit (a3b2348)
  • Add missing property to store (d835e45)
  • Add tsconfig.build.json (b51c26f)

[0.4.0-0] - 2021-12-20

4663bb2...082bc51

Bug Fixes

  • Edges not properly calculating position (2350d83)
  • Correct usage of store in testing (44f8eb1)
  • Connection line not showing up when no edges are defined (9abd768)
  • Move replace & copy plugin (9dea4bc)
  • Marker types & flowstate id removed from state (0eb162f)
  • Duplicate prop binding (db726d1)
  • Correct tests (d2961de)
  • Improper style encapsulation (6dcf5d8)
  • Correct test for testing custom node/edge types (97f4c0e)
  • Replace useStore with useVueFlow (f6007d0)
  • Add props to smoothstep edge explicitly (ca33de0)
  • Replace store id with flow id (600e386)
  • Import path of initial state helper (304e8f5)
  • Re-set elements if elements are empty and modelValue contains els (535f7e6)
  • Check if state initialized (bb91ab7)
  • Properly set store (63bf3b3)
  • Shims overwriting component internal instance type (25b64fe)
  • Selection changes overwriting itself (425fc50)
  • Handles emitting connect and update simulteanously (983c86c)
  • Correctly calculate xyzpos from parent (0e82420)
  • Watch parent nodes deeply to trigger xyz-pos calculation (fbe62b9)

Features

  • Add store id as class to handles (9c1f044)
  • Export getNodesInside utility (106342c)
  • Extend Element generics to DataNode and DataEdge (368b0de)
  • Add grouping example (ecd38b2)
  • Nested boundaries (3f0b0db)
  • Flatten child map of nodes (0450ba2)
  • Add addSelectedNodes, addSelectedEdges, updateNodePosition actions (2d611b8)
  • Add transformation pane (2210c59)
  • Group edges by z-index level (3dae06c)
  • Calculate xyz pos if nested (eead00a)
  • Add new zoom pan helper functions + transition for all helpers (7cb6192)
  • Remove node/edge-types prop (774cb2e)
  • Add handlebounds type (46a76b7)
  • Add event listener to vueflow object (d875cfe)
  • Add apply changes handlers (81c8145)
  • Add useNode/useEdge-state helpers (c80ab8f)
  • Add setNodes and OnNodesChange / setEdges OnEdgesChange utils to useNode/Edge-state (65b2e0d)
  • Add utilities to useState functions (518d12d)
  • Use vModel for elements, nodes and edges (be725c6)
  • Add store as refs to useVueFlow (91009e1)
  • Add source-target-pos to graph-edge (1b206c9)
  • Export applychanges utilities separately (994dd99)
  • Add option to disable default change handlers globally (e2e094b)
  • Add selectable option to edges (e91188d)
  • Add state as refs, getters and actions to vueFlow object for easier access (7736915)
  • Narrow options type for useNodesState/useEdgesState/useElementsState (a9e7eb3)

Miscellaneous Tasks

  • Update draggable to ^0.4.1 (fe3f6e6)
  • Remove unused imports (3e42948)
  • Update vite-plugin-vue-type-imports to ^0.1.3 (cc7cedf)
  • Remove unused imports (b9a417a)

Refactor

  • Remove get and invoke imports (c522806)
  • Use vite-plugin-import-types (74c3037)
  • Change xPos yPos props to position (4ef58e9)
  • Remove Node/TranslateExtent (da54bc3)
  • Change node and edge types to extend element (fe0eeae)
  • Remove ElementId type (f00f34d)
  • Remove internal __vf field (f28e10b)
  • Remove elements and replace with nodes and edges (b803414)
  • Use plugin to import prop interface (5359e3a)
  • Remove draggable options, boolean only (419b123)
  • Use plugin to import prop interface (076ff4c)
  • Remove index from keys (76ae73c)
  • Use stored node data when re-parsing elements (6bdea72)
  • Properly nest components (c96f62f)
  • Set stored elements from nodes and edges (4353104)
  • Move store utils to state (6903dcb)
  • Remove arrowhead and replace with markertype (056bcd5)
  • Use selection change hook (d367f3a)
  • Replace selectedElements with selectedNodes and selectedEdges (14fc678)
  • Remove renderer and move logic to zoom pane (943479e)
  • Move user selection rect drawing into component (7a8aed4)
  • Use markerEnd and markerStart (a7bacb7)
  • Use computedPosition when checking inner bounds (b365e94)
  • Add selectednodesbbox back to state (4065354)
  • Use watcher to calc xyzpos (60fcbc2)
  • Remove useStore.ts and move logic to store.ts (a80d475)
  • Add getters for selected nodes/edges (ca2eca4)
  • When adding elements as selected disable emit (02911b4)
  • Replace useStore with useVueFlow (a604dd8)
  • Move hooks to store dir (c1da504)
  • Replace store injection with VueFlow injection (17a1b08)
  • Add slots to node/edge labels (d9e0675)
  • Use plugin to import prop types (fe4798e)
  • Apply default change handlers by default (9f95749)
  • Rename isReady to paneReady (758f4f2)
  • Use watcher to change every prop as a single item (f8a23c5)
  • Export useNodesState and useEdgesState separately from useVueFlow (39501d0)
  • Remove separate apply changes function and add them to useNodesState useEdgesState (423f6aa)
  • Disable connecting handles inside the same node (8118325)
  • Lowercase event names (OnPaneLoad -> onPaneLoad) (b12863f)
  • Add options to useElementsState (4c7cf39)
  • Remove setting elements without parsing in state (5457106)
  • Watch models (ee6bf32)
  • Make nodes/edges for useStates helpers optional (35165c3)
  • Replace getMarkerEnd utility with getMarkerId (8fbfca1)
  • Make opts for useElementsState optional (c283769)
  • Set elements when initializing store (2910731)
  • Remove defaults for props (dcbe986)

Update

  • Use MouseTouchEvent type for drag events (8cf2279)
  • Add getElements helper (c82ca4e)
  • Add source/target nodes on edge parsing (e2d60be)
  • Remove omit elements from flowoptions type (9e06d6e)
  • Add new stylings for container and transformation pane (232fd30)
  • Filter edges by visibility (1060370)
  • Add utils to state (63301cc)
  • Remove slots (c8d701d)
  • Remove transform from NodeRenderer (503264a)
  • Implement new marker props (2b34b12)
  • Clean up edgewrapper props (c9ff178)
  • Add container class to background (d54c981)
  • Adapt examples (d730869)
  • Use node 14 (d1809a5)
  • Add new zoom pan helper functions to instance (55b8434)
  • Add slot for zoom-pane (cd41090)
  • Defer update pos to nexttick (97c0254)
  • Remove LoadingIndicator.vue (aaf216a)
  • Use computedPosition in GroupNode.vue (a983858)
  • Correct examples (5139b07)
  • Fix examples (69dc45c)
  • Add draggable,selectable and connectable as props to nodes (947baef)
  • Use node/edge component type to define defaults (212c911)
  • Watch source/target pos to update position so edges get properly re-rendered (8f6ce13)
  • Remove computed properties in nodes selection (a62a891)
  • Rename FlowActions/FlowGetters etc. to Actions, Getters (e64f6b7)
  • Add key to NodesSelection.vue (f0f68ff)
  • Use draggablecore for nodes selection (a76e2ca)
  • Correct examples (445718d)
  • V-if on node/edgerenderer (7367345)
  • Correctly overwrite nodes on re-parsing (d2ac41e)
  • Remove v-if on edge-renderer (df17da7)
  • Use computed getters to group edges by z-level (f2fe93f)
  • Correct examples (124338b)

[0.3.1] - 2021-12-04

527a70c...4663bb2

Update

[0.3.0] - 2021-12-04

f0ca05f...527a70c

Bug Fixes

  • NodeExtent not set on position update (27e3979)
  • TranslateExtent not set correctly (043ba21)
  • Zoom related state to update when flow is ready (229bbb7)
  • Correct injection and remove id from refs (3b44810)

Features

  • Add option to zoom to specific node ids and transitionDuration for smooth transitions on fitView (43b68c1)
  • Add cypress for testing (796c604)
  • Add container.spec.ts (b838977)

Miscellaneous Tasks

  • Move comment in vite.config.ts (19a5575)

Refactor

  • Remove pinia (58a8f9d)
  • Remove transition and loading.transition property (b1f541b)
  • Rename param of setState (f8cf71c)

Update

  • Add updatable as prop to edges (b88f210)
  • Add elementsProcessed event hook (4740a2c)
  • Exclude cypress dir from build (a664252)
  • Try to get active pinia before using new one (58f5c25)
  • Add cjs to build (70b44db)
  • Rename FlowStore to Store and ReactiveFlowStore to FlowStore (3c9840c)
  • Remove pinia from tests (55e738f)
  • Remove microdiff (55122ed)
  • Remove pinia (0816bf0)
  • Only inject if in current instance (bf9ce37)
  • Add test mode (9abc222)
  • Remove Loading type from components.ts (eab715b)
  • Add more flow tests (aa72527)
  • Static id for store state (0fcf8bb)
  • Disable loading component if prop not passed (491c83d)
  • Overload flowoptions typings with non-nullables in flowstate (1a3b683)
  • Remove node zoom from basic example (f5caf94)

[0.2.2] - 2021-11-26

166d837...f0ca05f

Refactor

  • Make edge updating optional (4630f3e)

Update

  • Watch node height too for updating dimensions (98b6fdb)
  • Use setElements for addElements with force set false (512df8e)

[0.2.1] - 2021-11-25

50fc0f2...166d837

Bug Fixes

  • Import paths in components (c3f8809)
  • SetState syntax error (01f5456)

Refactor

  • Async process elements (4408ca1)
  • Deferr initial loading to Renderer.vue component (5b00049)

Update

  • Watch nodes width for dimension update (0b27640)
  • Zoom-pane style (e73a55a)

[0.2.0] - 2021-11-25

7829b6a...50fc0f2

Bug Fixes

  • Hooks to return a graph-node type (db70409)
  • Missing element click event (5011bf0)
  • Pass correct store values to node wrapper (f5dcd51)
  • Interaction example firing events wrong (f455939)
  • Add watcher that observes elements length for re-parsing (e065df5)
  • Check diff before re-parsing elements (b140b84)
  • Wrong type added to button-edge (409a268)
  • Edge-text typing (7916b20)
  • Check if state option is typeof undefined before setting (not just false-ish) (5ceee98)
  • Parsing overwriting __vf fields or not writing them at all (fd83a6d)
  • Props not being watched on time (bb0b904)

Features

  • Add offset to fitview-params (073b25e)
  • Add DefaultEdgeTypes-type (1eac951)
  • Allow nodes to have their own snapGrid option (71a10b2)
  • Allow nodes to pass all draggable options (da4fd4f)
  • Make addEdge and removeElement mutate the array passed in (74cc61a)
  • Add option to pass a valid target pos / valid source pos func to nodes (9e94196)

Refactor

  • Remove __vf.position (84bad86)
  • Use v-model to reactively change node props (8f65918)
  • Remove vf prop (729ae4c)
  • Remove updateNodePosDiff from node selection (ac2e2d5)
  • Remove node-pos actions (fa63dee)
  • Remove nodes/edges field (725dc8a)
  • Remove worker and store option (708fa1f)
  • Remove SourceTargetNode-type (8b0ddc9)
  • Move parseElements to graph utils (5ffeb92)
  • Move init function to store as setState (1ce41cc)
  • Check if state variables have to be re-set (96d54c5)

Update

  • Use getNodes in minimap instead of directly accessing nodes state val (04b64de)
  • Pass source node to ConnectionLine as prop (89849f4)
  • Import path in node wrapper (e6a54d4)
  • Use getNodes in zoom pan helper (23bceea)
  • Remove watchEffect from UpdateNodeExample.vue (729d3d5)
  • Types in SelectionPane.vue (cf2ded4)
  • Add edge as param to edgeupdateend event (929a6e6)
  • Remove promise from addelements (9c7c236)
  • Typing of edges (7b4dde4)
  • Set modelValue after initialization of elements (95fc013)
  • Remove promise from setState (233e915)
  • Remove worker prop (3855e9f)
  • Add __vf to node props (f2e38ca)
  • Remove store, worker props (bd140f1)
  • Mutate elements arr on updateEdge (6c3bce8)

[0.1.7] - 2021-11-23

d57b94d...7829b6a

Bug Fixes

  • Edges not reacting to hidden nodes (d22e210)

Features

Update

  • When zoom is deactivated we disbale scrolling (ca46d6a)
  • Export flowprops and custom connection line props type (091f3f8)

[0.1.6] - 2021-11-23

65250c2...d57b94d

Bug Fixes

  • PreventScrolling missing in props definition (c286b3b)

[0.1.5] - 2021-11-23

8ec494d...65250c2

Bug Fixes

  • Missing props on Draggable (54d5780)
  • Node selection not working if selectable === undefined (dbe82a7)

Miscellaneous Tasks

  • Update revue-draggable to 0.3.9 (3f758c5)

Update

  • Remove fallback operator (8d08f67)
  • Add scale prop to draggable (c0f7e5c)

[0.1.4] - 2021-11-23

3453127...8ec494d

Features

  • Extend connection line props for more advanced usage (67634fd)

[0.1.3] - 2021-11-23

1f77b77...3453127

Bug Fixes

  • Remove deep flag from elements and store-elements watcher (9ec1c4d)
  • Dont select nodes when selectable=false closes (17f7e4b)

Features

  • Use quadratic bezier curve for top-left and bottom-right edges (0e80383)
  • Add preventScrolling option (46ecec5)

[0.1.2] - 2021-11-23

94dcb0c...1f77b77

Bug Fixes

  • Connection line position incorrectly calculated (d87388f)

[0.1.1] - 2021-11-22

a03f658...94dcb0c

Bug Fixes

Refactor

  • Pass props to edge/nodewrapper separately (c35673c)
  • Change prop types for EdgeWrapper (f86033c)
  • Change prop types for NodeWrapper (c7dca2c)
  • Remove node/edge-renderer slots (0b57ee1)

Update

  • Pass down values as props instead of relying on store (6059b02)
  • Remove renderer exports (ebd0f9e)
  • Pass store state as props to edge-renderer and edge (2b065b4)
  • Use controlledComputed for edges/nodes (049b701)
  • Remove useStore from handle (5c3a1fb)
  • Pass selected elements as prop to nodesselection (1ea6e4f)
  • Define emittable events for EdgeWrapper (4932c64)
  • Remove null types and use undefined (b9bb3cf)

[0.1.0] - 2021-11-21

d1e59ef...a03f658

Bug Fixes

  • Zoom values being initialized before zoom is ready (71ba905)
  • Add missing click and doubleclick events to nodes/edges (c48a0a9)
  • Minimap prop type missing (a67e6c4)
  • Skip dimensions check when ssr (3e4433c)

Features

  • Offload parsing elements to worker (d335944)
  • Add loading indicator slot and prop (4e8ff62)
  • Add dedicated default loading component (668fed1)
  • Make worker optional (e648e1a)
  • Add node and edge renderer slots (da29a61)
  • Add draghandle prop to node (a55e33f)

Refactor

  • Remove elements prop, change EdgeTypes/NodeTypes prop to string[] (39b21fa)
  • Rename internal data field to __vf (0e9f8c5)
  • Change ConnectionLineComponentProps to ConnectionLineProps (b102070)

Update

  • Some comments (0a1c2d4)
  • Correct __vf typing (e4ead73)
  • UseAttrs on edges to use style (ba24f3c)
  • Graphnode and node typing (062aee4)
  • Move component related types to component-type file (d24de0c)
  • Add names to components (fd71e1e)
  • Add hmr to statestore (502be52)
  • Add name to flow component (f64ae24)

[0.0.34] - 2021-11-20

f5f16b6...d1e59ef

Bug Fixes

Update

  • Dont render nodes, edges if dimensions dont return a truthy value (2b87d53)
  • Make types for nodes and edges a computed prop (1b6ea1e)

[0.0.33] - 2021-11-20

a4e3bf5...f5f16b6

Bug Fixes

  • Suspension not working properly (d25fa57)

[0.0.32] - 2021-11-20

c40e496...a4e3bf5

Bug Fixes

  • OnLoad being triggered when elements aren't ready (990126b)

[0.0.31] - 2021-11-19

52351c3...c40e496

Bug Fixes

  • Flow not properly pre-loading state (6a1571e)

[0.0.30] - 2021-11-19

08b9afb...52351c3

Features

  • Add NodeTypes and EdgeTypes (37388dd)
  • Merge store with props (6a68292)

Update

  • A couple more perfomance related updates (f92c546)
  • Rgb flow styles (ee95fbe)
  • Move watcher to onMounted hook (8c4747a)
  • Remove hooks context (921d93c)

[0.0.29] - 2021-11-19

9c0e293...08b9afb

Update

  • Add default null value to injections (3f139df)

[0.0.28] - 2021-11-19

5e399a6...9c0e293

Bug Fixes

  • Storage not properly preloading (b91d65f)

Features

Update

  • Merge props with state objects (48da1ec)
  • Use vmodel for custom node (f99dca1)

[0.0.27] - 2021-11-19

95550b3...5e399a6

Bug Fixes

  • V-model implemented again (f534572)

[0.0.26] - 2021-11-19

de93473...95550b3

Bug Fixes

  • Props and composable not merging together properly (70b077a)

Features

  • Export default edge and node types object (8605909)

Update

  • Add return type to useVueFlow default export (c8d3ff6)

[0.0.25] - 2021-11-18

0cca54e...de93473

Features

Update

[0.0.24] - 2021-11-18

e98be05...0cca54e

Features

  • Add useVueFlow composable (a493168)

Update

  • Mini map to accept node slot instead of "nodes" slot (3e24a35)

[0.0.23] - 2021-11-18

b2d124e...e98be05

Bug Fixes

  • Default value for label (6bcd708)

Features

  • Bind props to slots (0be492b)
  • Add zoom-pane slot (54dfd84)
  • Add suspensions to node, noderenderer and around zoom-pane (14980e3)

Miscellaneous Tasks

Update

  • Clamp transform values (60327c4)
  • Remove watcher and use until (90a2a65)

[0.0.22] - 2021-11-18

6353f15...b2d124e

Bug Fixes

  • Event propagation from zoom (b918eb6)

[0.0.21] - 2021-11-18

f22a3ba...6353f15

Features

  • Add slots to edges and nodes (8b82c4f)

[0.0.20] - 2021-11-18

0373436...f22a3ba

Bug Fixes

  • Move slots outside of zoom pane (812a7da)

Miscellaneous Tasks

  • Update revue-draggable to v0.3.4 (1deb417)

Update

  • Quickstart example in README.md (091ed3e)

[0.0.19] - 2021-11-17

e9b3265...0373436

Reverts

  • Inject necessary styles directly to bundle (872ad1d)

Update

  • Invoke until func in zoom pane (43ce523)

[0.0.18] - 2021-11-17

7b9ca28...e9b3265

Features

  • Add suspension to zoom pane (954722a)

Update

[0.0.17] - 2021-11-17

c7f735d...7b9ca28

Features

  • Inject necessary styles directly to bundle (074d284)

Update

[0.0.16] - 2021-11-17

a21238f...c7f735d

Update

[0.0.15] - 2021-11-16

e05e546...a21238f

Bug Fixes

  • Properly check if node is connectable/draggable/connectable (677c9a8)

Update

  • README.md (6b4cb9e)
  • Hide edges with v-show instead of v-if (23ad66d)

[0.0.14] - 2021-11-16

3b4e164...e05e546

Bug Fixes

  • Node dimensions not updating properly (694dc7e)

[0.0.13] - 2021-11-16

0bde39f...3b4e164

Bug Fixes

  • Remove force-update from node (808c6b1)
  • Pass props to store state (9b604e7)

Update

  • Count store id gradually up instead of "randomizing" one (93730a7)

[0.0.12] - 2021-11-16

2d730cf...0bde39f

Update

  • Export default nodes and edges (e1e656c)

[0.0.11] - 2021-11-16

fc19dde...2d730cf

Bug Fixes

  • Remove sourceX/Y, targetX/Y attributes from edge type (6c2bdcd)

[0.0.10] - 2021-11-16

525a188...fc19dde

Update

  • Merge EdgeProps into Edge type (413c7ac)

[0.0.9] - 2021-11-16

a092185...525a188

Bug Fixes

  • Disable inherting attrs on nodes/edges to avoid warnings (a58d952)

Update

[0.0.8] - 2021-11-16

e560cdd...a092185

Bug Fixes

  • Missing script lang in README.md (b077241)
  • Cancel keypress for input dom nodes (4fb55ab)

[0.0.7] - 2021-11-16

b8c8142...e560cdd

Bug Fixes

Update

  • Remove update node internals composable (7c66cf5)
  • Remove js files after declaration generation (8414ee1)

[0.0.6] - 2021-11-16

d9e3104...b8c8142

Features

  • Extend options to pass custom nodes / edges (d1dab4c)

[0.0.5] - 2021-11-16

814212e...d9e3104

Update

  • README.md (7c72507)
  • Transform d.ts file paths to resolve correctly (65b73d3)

[0.0.4] - 2021-11-15

eeb6047...814212e

Update

[0.0.3] - 2021-11-15

9dc8c09...eeb6047

Update

[0.0.2] - 2021-11-15

4d7712f...9dc8c09

Bug Fixes

  • Proper events for listeners (482a1aa)
  • Warnings when NaN values are passed to svg transformations (9c3eeef)
  • Wrong watch source in nodes (d6ee5f8)

Refactor

  • Perfomance optimisations through less dependency tracking (3705a39)

Update

  • Hide edge if source/target pos are NaN-ish (dec2774)
  • Remove docs dir (98d7053)
  • Rename Flow container to VueFlow (ffdadda)
  • README.md (0a55693)

[0.0.1] - 2021-11-06

087eb52...4d7712f

Bug Fixes

  • Typos in README.md (51b120b)
  • Remove DraggableEvent type from utils file (doesn't exist anymore) (e77797a)
  • Types (1a7f3da)
  • Copy preloadedstate object for pinia to avoid using an existing state when re-creating store (6347cf9)
  • Return render function (e2162c9)
  • Edges not updating text (16e93af)
  • Default position for handle on output node (05c111e)
  • Custom node positions (e7513b8)
  • Custom edges not displayed correctly (9e397e6)
  • Marker arrowheads not displayed (adb5ec5)
  • Rollup bundling css in d.ts file (9e76d07)
  • Version (af87f08)
  • Shims-tsx.d.ts having duplicate string identifier? whatever that error meant... (3cd0693)
  • Header showing an empty option (15f968c)
  • Connection line not working properly (regression) (9d8b49e)
  • Add measurment (px) to EdgeText width and height (3f6d499)
  • Edge updating too much (ece1fec)
  • Return transform from useZoom (9b2f4b7)
  • Minimap (6b4e7ab)
  • Zoom pan helper (c3fb3cd)
  • Correct event listeners in examples (fede792)
  • Too many re-render on edges and nodes (17f2517)
  • Clamp transform values (b3d276b)
  • Edge anchor (7ecbcba)
  • Edges and edge anchors not re-calculating correctly (61dc9de)
  • Label type in edges (ff7ee5c)
  • Store actions blocking main thread (5f500bc)
  • Nodeposdiff not updating correctly on node selection (c062601)
  • Zoom pan helper not being initialized timely (ca2901b)
  • Valid connection func in handle (e11fddf)
  • Node type change not triggering recalculation of node dimensions (cd02dd0)
  • Node not updating handlebounds when handle pos changes (26b3901)
  • Missing bgcolor in background (ee07aff)
  • Missing node id in node components/slots (cb96b1a)
  • Typings (6ec8258)
  • Dedupe and add alias for vue (3931a59)
  • Zoom pane not scaling (a8f7cc2)
  • Custom node example not fitting view (5437d48)
  • Draggable not updating on nodes (ea7db92)

Features

  • Add edge with button example (74a2a3d)
  • Add edge types example (stress tests) (384c052)
  • Add empty canvas example (489e12a)
  • Add hidden example (e4a0940)
  • Add interaction demo (23c5d24)
  • Add cb to useKeyPress (5ed1094)
  • Script setup style (9307c90)
  • Script setup style (f8728f0)
  • Scope edge and node slots by name (8c54dae)
  • Add useStore and useHooks composables that provide default store/hooks (b2b1fe8)
  • Use v-html for node labels (636eeff)
  • Add node/edge types id (0a45e09)
  • Initial commit for docs in nuxt 3 (64df75d)
  • Add path alias for src (aaf5f60)
  • Copy default theme css file separately to dist (066155b)
  • Add docs index page (9f329c8)

Miscellaneous Tasks

  • Remove rollup-plugin-vue (e5d8338)
  • Update vueuse to 6.0.0 (908e741)
  • Update eslint rules (77eac0c)
  • Use pnpm instead of yarn (769378a)
  • Remove unused deps (6cfe5f6)
  • Update draggable (e9392b1)
  • Downgrade draggale to 0.2.5 due to transformation issue with current version (9532615)

Refactor

  • Resize handler and zoom pan helper to watch until refs are resolved (a6f7678)
  • Back to jsx 🥇 (1d542ab)
  • Split types into separate files (3557284)
  • Update usekeypress functions (fec2ef4)

Update

  • Edge label bg true by default (6b9c608)
  • Redirect to basic example as default (6912993)
  • Button edge example to remove edge on click (156b312)
  • Remove effect watcher from zoom pane (8d8a4a3)
  • Add effect scope to useZoomPanHelper.ts (b8ce50a)
  • Add key to node (22a1dc6)
  • Add measurment (px) to nodes width and font size (e0bc7e2)
  • Color prop optional in MarkerDefinitions (d6a8ed6)
  • Pass selection key code to zoom pane (347f1ed)
  • Fix node perfomance (f6f7564)
  • Refactor remaining files to script setup style (560bdc2)
  • Refactor additional-components (1ff3a8d)
  • Fix examples (29c6df1)
  • Add slots to Background.vue, Controls.vue and MiniMap.vue (1853c21)
  • Add injection keys (a895853)
  • Disable vue-tsc for now (9373533)
  • Remove render tracking hooks (cfc8f77)
  • Add slots to CustomConnectionLine.vue, Edge.vue, Node.vue (9d9a90e)
  • Change name to vue flow (2bfecf7)
  • Replace vue version when rolling bundle (31c896e)
  • Types (77d2e01)
  • Remove babel (no jsx used anymore) (5d3845b)
  • Background properties (24316e1)
  • Add validConnectFunc as prop to handle (0e79718)
  • Remove nodes selection props (6d197d7)
  • Add layouting example (712cf3e)
  • Add multi flows example (0a9c1b0)
  • Remove "hack" from layouting example (a9f1876)
  • Fix names (20e9d1d)
  • Add Provider example (eb9714b)
  • Add Save & Restore example (3f863ef)
  • Disable no-console rule (89efc0b)
  • Add stress example (5611f79)
  • Add switch example (c23bbfa)
  • Add Unidirectional and updatable edge example (0cc7ef4)
  • Add update node example (cd32f14)
  • Flow instance provides update node internals func (babcbd0)
  • Add validation and zoom pan helper example (8779a58)
  • Remove rollup and use vite to build lib (6177963)
  • Add all examples (e99dfc3)
  • Use yarn instead of pnpm (c21ad94)
  • Disable ssr (67876cd)
  • Fix view height (ae0772b)
  • Remove examples-app dir (27c72e0)
  • Styling of sidebar and header (412a84a)
  • README.md (1b0602d)

[0.0.37] - 2021-07-15

041fe11...087eb52

Bug Fixes

  • Create store instance for every revue flow instance (ec45cd7)

Features

  • Add drag n drop example (9b78c0f)

Refactor

  • Use injected store so we can use a distinct instance not a global one (6c9d88b)

Update

  • Renaming stuff from react flow to revue flow (d491c01)
  • README.md (3f126f0)
  • Base page to basic (no overview currently) (8f727a4)

[0.0.35] - 2021-07-10

Bug Fixes

  • Try to deploy as package... (99548a0)
  • Entry (07721e9)
  • Add vue-demi to external deps in vite.config.ts (f1ee5b6)
  • Add vue-demi to external deps in vite.config.ts (b9b2615)
  • Proptype (6a6c5c9)
  • Some bundle stuff (f685c7a)

Features

  • Transform react-flow to vue-jsx (52e1188)
  • Make edges work (b2c250e)
  • Show connection lines when holding down on handle (ea98c2a)
  • Update graph on new elements pushed (1253403)
  • Implement MiniMap, Background and Controls components (4319e2a)
  • Add np (5c15967)
  • Add siroc config (3094cc2)

Bugfix

  • Types file (bf95b23)
  • Utils file (c977946)
  • Utils file (e400b48)
  • Pinia instance not created internally and thus missing from app if not explicitly included (c8150a2)

Update