Commit Graph
56 Commits
Author SHA1 Message Date
Braks 99dbd4b2cc feat!: Add hooks to store
* For easier access and to avoid context issues with injections hooks are put into the store
* hooks can be accessed and will emit events when the flow has bound its emit function to the hooks
* useHooks and useStore are not exported anymore! Instead, useVueFlow is provided, which will return an instance of the current vue flow store
* Rename NodeIdContextKey to NodeId
* Add addElements function to store to add elements without having to re-set the whole store
* use v-model for elements, re-set elements only if there's an actual change

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-18 21:24:20 +01:00
Braks 14980e38b7 feat: Add suspensions to node, noderenderer and around zoom-pane
* bind zoompanhelper functions to zoom-pane slot

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-18 14:08:46 +01:00
Braks 0be492b7c6 feat: bind props to slots
* bind props to slots in edges, handle, nodes

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-18 13:40:06 +01:00
Braks 8b82c4fb33 feat: Add slots to edges and nodes
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-18 03:19:13 +01:00
Braks 10215b4631 update: create vue.d.ts files
* add vue-tsc to emit d.ts files from vue components
* use absolute paths in components
* avoids conflicts with ts custom paths in vue-tsc generated vue.d.ts files

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-17 01:39:50 +01:00
Braks 677c9a8b5e fix: properly check if node is connectable/draggable/connectable
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-17 00:45:43 +01:00
Braks 694dc7e691 fix: node dimensions not updating properly
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-16 23:20:06 +01:00
Braks 808c6b17e0 fix: remove force-update from node
* update dimensions directly, not on next tick

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-16 20:00:09 +01:00
Braks a58d952e9f fix: disable inherting attrs on nodes/edges to avoid warnings
* disable context warnings for non-dev environments

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-16 16:01:44 +01:00
Braks d6ee5f8868 fix: wrong watch source in nodes
* causes console warnings

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-15 12:50:03 +01:00
Braks 3705a39fa8 refactor: perfomance optimisations through less dependency tracking
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-15 11:22:56 +01:00
Braks ea7db92b6e fix: draggable not updating on nodes
* remove alias for dagre

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-06 09:43:31 +01:00
Braks aaf5f608f5 feat: add path alias for src
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-06 09:38:02 +01:00
Braks e99dfc3dd2 update(docs): Add all examples 2021-11-06 08:54:35 +01:00
Braks 61779638ac update(dist): Remove rollup and use vite to build lib
* Remove custom tsconfig paths to avoid resolving issues on published package
2021-11-06 08:54:35 +01:00
Braks 64df75d405 feat(docs): Initial commit for docs in nuxt 3 2021-11-06 08:54:35 +01:00
Braks 6ec8258f33 fix: typings 2021-10-22 14:29:27 +02:00
Braks cb96b1ab00 fix: missing node id in node components/slots 2021-10-22 13:04:33 +02:00
Braks 26b3901bd5 fix: node not updating handlebounds when handle pos changes
* watch source & target pos and update node dimensions on next tick
2021-10-22 08:16:32 +02:00
Braks cd02dd0444 fix: node type change not triggering recalculation of node dimensions 2021-10-21 16:23:23 +02:00
Braks 636eeff9fe feat: use v-html for node labels
* add span tag as wrapper for node labels

feat(examples):

* Add overview example
2021-10-21 15:29:17 +02:00
Braks 5f500bca18 fix: store actions blocking main thread
* map function overwriting nodes causes main thread to be blocked
* instead use splice
2021-10-20 23:46:47 +02:00
Braks 2bfecf7148 update: change name to vue flow
* Add gif to readme

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-10-20 22:39:54 +02:00
Braks 64a4b8c418 fix: nodes as fragments
feat: accept vnode as edge text
2021-10-20 22:39:54 +02:00
Braks b2b1fe822f feat: add useStore and useHooks composables that provide default store/hooks 2021-10-20 22:39:54 +02:00
Braks 9d9a90e9a7 update: Add slots to CustomConnectionLine.vue, Edge.vue, Node.vue 2021-10-20 22:39:54 +02:00
Braks 17f2517ab4 fix: too many re-render on edges and nodes 2021-10-20 22:39:54 +02:00
Braks c3fb3cd10a fix: zoom pan helper 2021-10-20 22:39:54 +02:00
Braks a895853b64 update: Add injection keys 2021-10-20 22:39:54 +02:00
Braks a5ae6a4e48 update(deps): Add unplugin-components
fix: Excessive rerender of edge texts
update(script-setup): Update some examples

* Remove more jsx files
2021-10-20 22:39:54 +02:00
Braks 1ff3a8dc9c update(script-setup): Refactor additional-components
* Remove jsx files

fix: ConnectionLine.vue not recalculating properly
2021-10-20 22:39:54 +02:00
Braks 560bdc203b update(script-setup): Refactor remaining files to script setup style 2021-10-20 22:39:54 +02:00
Braks f8728f0d6e feat: script setup style
* Add Node.vue
2021-10-20 22:39:54 +02:00
Braks 77eac0c12a chore(lint): Update eslint rules
* Remove semi
2021-10-20 22:39:54 +02:00
Braks f6f7564894 update(perfomance): Fix node perfomance 2021-08-17 23:16:10 +02:00
Braks e4a094017d feat(example): Add hidden example
* Check if node/edge is hidden before rendering
2021-08-16 21:41:16 +02:00
Braks 384c05240f feat(example): Add edge types example (stress tests)
* Remove a lot of computed functions or merge them into existing ones
*
2021-08-16 21:17:38 +02:00
Braks 545eb0ede7 fix: add intrinsicattributes to shims
* remove declaration from shims-vue.d.ts
2021-08-08 22:36:28 +02:00
Braks 05c111e5df fix: default position for handle on output node 2021-08-08 19:28:45 +02:00
Braks 3b5857febb fix: typecast edges and nodes
* make GraphView props all required
refactor: renamed "NodesTypeType" to "NodeType" and "EdgesTypeType" to "EdgeType"
2021-08-08 19:28:45 +02:00
Braks 1d542aba65 refactor: back to jsx 🥇 2021-08-08 19:28:45 +02:00
Braks 25c92ecd84 update: Remove wrapEdge and wrapNode files
* implement Edge.tsx and Node.vue to wrap the components accordingly
refactor!: Removing callbacks from props in favor of events
chore: upgrade vue and vite vue plugin
2021-08-08 19:28:45 +02:00
Braks 7eb7cb1dc3 chore: update revue-draggable to latest version
fix: selection not draggable after creation selection (stop event propagation)
* naming collision with eventlistener and callback on draggable component (everything being called 2x)
2021-07-23 14:08:39 +02:00
Braks 86ead92839 fix: scale being incorrect when passed to draggable causing weirdly fast drags
chore: upgrade revue-draggable to latest on tag next
2021-07-20 20:39:42 +02:00
Braks b4fcab4004 fix: inject store instance components
chore: update revue-draggable to next tag
2021-07-20 20:01:10 +02:00
Braks 7c7c31b46f fix: no use of fragments for nodes as it results in warning from vue and we got enough of those as is
* some typing issues
2021-07-17 22:54:52 +02:00
Braks f5580b6d96 feat: Add revue-draggable
refactor: remove vue-draggable
* couple of prop default changes
2021-07-14 15:41:59 +02:00
Braks 6c9d88b09d refactor: use injected store so we can use a distinct instance not a global one 2021-07-13 16:13:15 +02:00
Braks 881655d483 update: renaming stuff from react to "revue" 2021-07-10 18:33:38 +02:00
Braks d50d74598b update: no vue-2 compatability (doesn't work with current build)
* README.md
2021-07-10 16:42:39 +02:00