Braks
c1da504fa9
refactor(store): move hooks to store dir
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d875cfede3
feat(flow): Add event listener to vueflow object
...
* event listener also exist in store state (hooksOn)
* add applyChangesHandlers to vueflow object, can be used to apply changes i.e. deleting etc.
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
02911b4177
refactor(store): when adding elements as selected disable emit
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
ca2eca4265
refactor(store): add getters for selected nodes/edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a80d475216
refactor(store): remove useStore.ts and move logic to store.ts
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
60fcbc2d06
refactor(nodes): use watcher to calc xyzpos
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
774cb2e644
feat(flow)!: Remove node/edge-types prop
...
* infer node/edge types from types used in elements
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
4065354c10
refactor(store): add selectednodesbbox back to state
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
9abd768bce
fix(edges): connection line not showing up when no edges are defined
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
63301cc000
update(store): Add utils to state
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
106037056e
update(store): filter edges by visibility
...
* add getSelectedElements getter
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
2d611b8bbe
feat(store): add addSelectedNodes, addSelectedEdges, updateNodePosition actions
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
6bdea72b20
refactor(store)!: use stored node data when re-parsing elements
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
0450ba2eae
feat(store): flatten child map of nodes
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
e2d60bedfd
update(store): add source/target nodes on edge parsing
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
3e42948cac
chore: remove unused imports
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
b80341467b
refactor(types)!: Remove elements and replace with nodes and edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
f28e10b05a
refactor(types): Remove internal __vf field
...
* fields are merged into the GraphNode / Node interface
* Remove passing props from VueFlow container, use injected state
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
3f0b0dbd70
feat(nodes): nested boundaries
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
fe0eeaeae9
refactor(types)!: change node and edge types to extend element
...
* element type provides intersection interface of nodes and edges
* rename isHidden to hidden
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
f8cf71cfb8
refactor(store): rename param of setState
...
* newState -> opts
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
3b448100d6
fix(store): correct injection and remove id from refs
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
0fcf8bbeaa
update(store): static id for store state
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
55122ed187
update(store, deps): remove microdiff
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
3c9840cc50
update(types): Rename FlowStore to Store and ReactiveFlowStore to FlowStore
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
58a8f9d4df
refactor(store)!: remove pinia
...
* replace pinia with a reactive state object and inject/provide
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
update(store)!: inject store if possible, otherwise create a new one by id
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
58f5c2568c
update(store): try to get active pinia before using new one
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-04 15:42:18 +01:00
Braks
229bbb7a3c
fix(store): zoom related state to update when flow is ready
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-28 10:01:23 +01:00
Braks
4740a2c8fe
update(hooks): add elementsProcessed event hook
...
* triggered after elements have been processed and updated in store
* add missing selection change trigger to store
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-26 13:54:49 +01:00
Braks
512df8e42b
update(store): use setElements for addElements with force set false
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-26 11:26:37 +01:00
Braks
4630f3efc1
refactor(edges): Make edge updating optional
...
* add an option to enable edge updating globally
* pass an option to an edge to enable updating for a single edge
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-26 11:08:12 +01:00
Braks
01f5456407
fix: setState syntax error
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 19:30:19 +01:00
Braks
0b2764028f
update(nodes): watch nodes width for dimension update
...
* add force param to setElements, if set we clear the elements arr (default true)
* wait for store watcher until store is ready (i.e. a state has been set)
* move renderer css class to Renderer.vue
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 19:29:13 +01:00
Braks
4408ca1eb7
refactor(graph): async process elements
...
* process elements in chunks of 50 per ms to avoid blocking main thread
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
refactor(flow): deferr initial loading to Renderer.vue component
2021-11-25 19:29:13 +01:00
Braks
233e915376
update(store): remove promise from setState
...
* add default values for nodeTypes/edgeTypes - empty array for customs
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
5ceee98e9b
fix(store): check if state option is typeof undefined before setting (not just false-ish)
...
update: export useWindow
update: remove logs from useHandle
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
95fc013613
update(flow): set modelValue after initialization of elements
...
* remove extra edge parsing
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
7b4dde4411
update(store): typing of edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
9c7c2368a0
update(types): remove promise from addelements
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
update(store): remove promise from setElements
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
96d54c59dc
refactor(store): check if state variables have to be re-set
...
* instead of just pasting over the state constantly check what needs to be re-set
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
1ce41ccd40
refactor: move init function to store as setState
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
5ffeb928ae
refactor: move parseElements to graph utils
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
8b0ddc9be9
refactor(types): Remove SourceTargetNode-type
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
708fa1f970
refactor(options)!: remove worker and store option
...
* either unnecessary, broken or needs more work
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
725dc8acb7
refactor(store): remove nodes/edges field
...
* nodes/edges are accessed via getter - that retains reactivity on elements
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
fa63dee37a
refactor: remove node-pos actions
...
* add getSelectedNodes getter
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-25 15:21:36 +01:00
Braks
d22e21041d
fix(edges): edges not reacting to hidden nodes
...
* Change getEdges to parse edges with source & target nodes and filter if one of them is missing
* add new type for Edges w sourceTargetNode called GraphEdge which is the return type of getEdges
*
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-23 18:25:08 +01:00
Braks
8d08f67ee6
update: remove fallback operator
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-23 16:17:20 +01:00
Braks
9ec1c4dc2b
fix: remove deep flag from elements and store-elements watcher
...
* deep watching causes a reset after positions change
* fallback to non-worker parsing
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-23 13:55:41 +01:00
Braks
2b065b4e56
update: pass store state as props to edge-renderer and edge
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-11-22 13:40:25 +01:00