Braks
8fbfca1e7a
refactor(edges)!: Replace getMarkerEnd utility with getMarkerId
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
35165c3a98
refactor: make nodes/edges for useStates helpers optional
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a9e7eb31ea
feat(flow): Narrow options type for useNodesState/useEdgesState/useElementsState
...
* remove storageKey
* make modelValue optional
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
ee6bf3252e
refactor(flow): Watch models
...
* replace model value after re-setting elements/nodes/edges
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
5457106905
refactor(store): remove setting elements without parsing in state
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
df17da71fa
update: remove v-if on edge-renderer
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
4c7cf39e7b
refactor(flow): add options to useElementsState
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d2ac41e4f7
update: correctly overwrite nodes on re-parsing
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
7367345d8d
update: v-if on node/edgerenderer
...
* add applyDefault to state
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
445718d6f4
update(examples): correct examples
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
b12863f297
refactor(flow): lowercase event names (OnPaneLoad -> onPaneLoad)
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
425fc500b0
fix: selection changes overwriting itself
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a76e2cacf4
update: use draggablecore for nodes selection
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
f0f68ff63f
update: add key to NodesSelection.vue
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
7736915720
feat(flow): Add state as refs, getters and actions to vueFlow object for easier access
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
e64f6b7bc6
update(types)!: Rename FlowActions/FlowGetters etc. to Actions, Getters
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a62a891243
update(nodes): Remove computed properties in nodes selection
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
8f6ce13226
update(nodes, edges): watch source/target pos to update position so edges get properly re-rendered
...
* use standard computed for source/target pos in edges
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
947baefa02
update(nodes): Add draggable,selectable and connectable as props to nodes
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
e91188de5c
feat(edges): add selectable option to edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
69dc45c3be
update(examples): fix examples
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
8118325d4e
refactor(edges): Disable connecting handles inside the same node
...
* Disable connecting a nodes source handle with its own target handle
* disable emitting connections when node is not connectable
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
e2e094b987
feat(flow): Add option to disable default change handlers globally
...
* overwrites applyDefault setting for useEdgeState/useNodeState/useElementsState
* export apply change handlers
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
423f6aa78d
refactor(flow): remove separate apply changes function and add them to useNodesState useEdgesState
...
* immedatiely execute props watcher
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
25b64fe3a7
fix(types): shims overwriting component internal instance type
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
5139b0786b
update(examples): correct examples
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
994dd9929c
feat(flow): export applychanges utilities separately
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
39501d0bb0
refactor(flow): export useNodesState and useEdgesState separately from useVueFlow
...
* bind vueFlow instance to currentInstance when useVueFlow is called multiple times in a single setup call
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
63bf3b3a26
fix(tests): properly set store
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
bb91ab711b
fix(tests): check if state initialized
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
b9a417a629
chore: remove unused imports
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
535f7e60f2
fix(flow): re-set elements if elements are empty and modelValue contains els
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
304e8f5423
fix(tests): import path of initial state helper
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
1b206c942c
feat(edges): Add source-target-pos to graph-edge
...
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
f8a23c59ec
refactor(flow)!: Use watcher to change every prop as a single item
...
* instead of replacing the whole state on each watch trigger, split into multiple watchers that set a single state
* improve reacitivty and two-way binding for v-models
* remove elements option -> only modelValue (old api) or nodes/edges
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
cc7cedfda0
chore(deps-dev): Update vite-plugin-vue-type-imports to ^0.1.3
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
91009e1dca
feat(store): add store as refs to useVueFlow
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
be725c6d2d
feat(flow): use vModel for elements, nodes and edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
758f4f23ff
refactor(store): Rename isReady to paneReady
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
9f957492fe
refactor(flow): apply default change handlers by default
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
ca33de0556
fix(edges): add props to smoothstep edge explicitly
...
* plugin doesn't allow for nested/extended types currently
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
fe4798ea5b
refactor(components): Use plugin to import prop types
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d9e0675385
refactor(nodes, edges): Add slots to node/edge labels
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
518d12d381
feat(flow): add utilities to useState functions
2021-12-20 19:29:52 +01:00
Braks
65b2e0d148
feat(flow): Add setNodes and OnNodesChange / setEdges OnEdgesChange utils to useNode/Edge-state
...
* add option to apply default change handler
2021-12-20 19:29:52 +01:00
Braks
17a1b08ee0
refactor(store)!: replace store injection with VueFlow injection
2021-12-20 19:29:52 +01:00
Braks
c80ab8fe50
feat(store, flow)!: Add useNode/useEdge-state helpers
...
* for two way binding use the helpers
2021-12-20 19:29:52 +01:00
Braks
81c8145f3a
feat(store, flow)!: Add apply changes handlers
...
* flow will not update changes unless a handler to apply changes is passed
* a default handler is available in the useVueFlow composable
* removeElements export removed
2021-12-20 19:29:52 +01:00
Braks
f6007d026c
fix(tests): replace useStore with useVueFlow
2021-12-20 19:29:52 +01:00
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
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
46a76b783e
feat(types): add handlebounds type
...
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
97f4c0e847
fix(test): correct test for testing custom node/edge types
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
6dcf5d8434
fix(nodes): improper style encapsulation
...
* import path in hooks.ts
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a983858acf
update(examples): use computedPosition in GroupNode.vue
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d2961dec9f
fix(tests): correct tests
...
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
aaf216a31e
update!: Remove LoadingIndicator.vue
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
97c025478d
update(node): defer update pos to nexttick
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
cd41090575
update(flow): Add slot for zoom-pane
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
55b843482b
update(zoom): Add new zoom pan helper functions to instance
...
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
b365e947e1
refactor(flow): use computedPosition when checking inner bounds
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
7cb6192591
feat(zoom): Add new zoom pan helper functions + transition for all helpers
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d1809a58ee
update(workflow): use node 14
...
* add max space size
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
db726d14a8
fix(nodes): duplicate prop binding
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
0eb162f622
fix(types): marker types & flowstate id removed from state
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
9dea4bcd61
fix: move replace & copy plugin
...
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
d730869443
update(examples): adapt examples
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
44f8eb1fe7
fix(test): correct usage of store in testing
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
a7bacb754a
refactor(edges)!: use markerEnd and markerStart
...
* remove markerEndId
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d54c981aad
update(components): add container class to background
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
c9ff178d38
update(edges): clean up edgewrapper props
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
eead00a255
feat(nodes): calculate xyz pos if nested
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
7a8aed4ec4
refactor(selection)!: Move user selection rect drawing into component
...
* remove corresponding store state
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
3dae06c936
feat(edges): group edges by z-index level
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
2b34b124b0
update(edges): implement new marker props
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
503264ae51
update(nodes): remove transform from NodeRenderer
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
c8d701d3b4
update(pane): remove slots
...
* remove ref and set store state directly
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
2210c59bf8
feat: add transformation pane
...
* instead of using transform on each child node, wrap them in a transformed div
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
943479e2c7
refactor(zoom): Remove renderer and move logic to zoom pane
...
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
232fd30f1d
update(styles): add new stylings for container and transformation pane
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
14fc678c31
refactor(types)!: replace selectedElements with selectedNodes and selectedEdges
...
* Remove initd3zoompayload
* fix export path
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
d367f3a2aa
refactor(hooks)!: use selection change hook
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
056bcd5dd9
refactor(types)!: remove arrowhead and replace with markertype
...
* remove markerEndId
* rename arrowHeadColor to defaultMarkerColor
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
6903dcb139
refactor(utils): move store utils to state
...
* set z index on edge
* extend edgeVisibleParams by dimensions of target and node edge
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
43531043e9
refactor(store): set stored elements from nodes and edges
...
Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com >
2021-12-20 19:29:52 +01:00
Braks
c96f62f622
refactor(flow)!: properly nest components
...
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