Commit Graph
44 Commits
Author SHA1 Message Date
Braks b42c1b02de feat(handle): Add onClick handler
* for touch enabled connections
2022-04-04 21:42:48 +02:00
Braks 728046505c refactor(store): use null instead of undefined for optional state properties
* remove setConnectionNodeId action
2022-04-04 21:42:48 +02:00
Braks 983c86c938 fix(edges): Handles emitting connect and update simulteanously
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-12-20 19:29:52 +01:00
Braks 212c91107f update(types): Use node/edge component type to define defaults
* import handleprops from types
*

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-12-20 19:29:52 +01:00
Braks 600e3866c4 fix: replace store id with flow id
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-12-20 19:29:52 +01:00
Braks a604dd8ab1 refactor: replace useStore with useVueFlow
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-12-20 19:29:52 +01:00
Braks 9c1f04426e feat(nodes): add store id as class to handles
* for better identification, add a class to handle according to the current store id

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-12-20 19:29:52 +01:00
Braks 9e941966a4 feat(nodes): add option to pass a valid target pos / valid source pos func to nodes
* edge updater cannot discern a valid connection by itself so we allow an option to pass a valid connection func to nodes which will then be used to determine if updating connection is valid
* it is optional, by default all connections are valid

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-25 15:21:36 +01:00
Braks 5c3a1fba13 update: remove useStore from handle
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-22 14:22:11 +01:00
Braks fd71e1e16e update: Add names to components
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-21 16:54:59 +01:00
Braks 6a68292f7c feat: merge store with props
* if options are passed to useVueFlow, we want to merge them with possibly passed props
* renamed flowStore to stateStore
* fix examples
* add store prop to pass an already existing store to flow

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-19 23:45:39 +01:00
Braks 37388ddf47 feat(types): Add NodeTypes and EdgeTypes
* Interface for passing an object of NodeTypes/EdgeTypes
* Object needs to be passed with components markedRaw

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-19 17:47:57 +01:00
Braks 470ab3782a update: remove useHooks usage
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
2021-11-18 23:17:09 +01:00
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 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 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 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 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 e11fddf70a fix: valid connection func in handle 2021-10-21 15:10:42 +02:00
Braks 0e79718720 update: Add validConnectFunc as prop to handle 2021-10-21 14:28:11 +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 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 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 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 77eac0c12a chore(lint): Update eslint rules
* Remove semi
2021-10-20 22:39:54 +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 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 ffd41fb679 refactor: Refactor some jsx files to vue files
feat: add global hooks to emulate sort of an event bus between components
* global hooks are not exposed to user but emit events upward from Revue-flow component, just more convenient
2021-08-08 19:28:45 +02:00
Braks 8cfbc89d23 chore: remove some logs
fix: inject store instance to handle component
2021-07-17 23:19:50 +02:00
Braks ec45cd74e9 fix: create store instance for every revue flow instance 2021-07-11 09:32:51 +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
Braks 6f39ae6de8 update: more changes to bundle config... 2021-07-10 12:31:09 +02:00
Braks 082d460e12 update: more changes to bundle config... 2021-07-10 12:21:45 +02:00
Braks 92caccfd6e update: use vue-demi again to add compatability to vue2
* add vite.config.app.ts for demo generation
2021-07-10 11:51:12 +02:00
Braks 59b6af384c update: remove vue-demi 2021-07-10 00:45:46 +02:00
Braks 99548a0dba fix: try to deploy as package... 2021-07-09 21:54:05 +02:00
Braks ea98c2afa1 feat: Show connection lines when holding down on handle 2021-07-09 16:09:58 +02:00
Braks 52e1188d04 feat: Transform react-flow to vue-jsx 2021-07-08 23:37:11 +02:00