Commit Graph
100 Commits
Author SHA1 Message Date
Braks cd85eb1842 chore: disable inheriting attrs 2022-04-24 13:34:22 +02:00
Braks 21570209d8 chore: remove unused attrs 2022-04-24 13:34:22 +02:00
Braks 4c86e3e2bb chore: remove log 2022-04-24 13:34:22 +02:00
Braks 4e73c5b2fb regression: reassign keys 2022-04-24 13:34:22 +02:00
Braks 8d33014291 refactor(nodes,edges): change defaults to functional components
# What's changed?

* Change default node/edge components to functional components
2022-04-24 13:34:22 +02:00
Braks 0519bd0f25 chore: Remove casting node/edge to null on unmount 2022-04-24 13:34:22 +02:00
Braks 7f54d3a38e refactor(edges): Remove base edge from default edge types
# What's changed?

* Remove base-edge component for performance
2022-04-24 13:34:22 +02:00
Braks f1bbed1751 refactor(edges): Change base edge to functional component
# What's changed?

* Change base edge into a functional component (doesn't need a state)
* Export base edge for convenience
2022-04-24 13:34:22 +02:00
Braks 6c2c7c4fd4 refactor: controlled computed in minimap
# What's changed?

* Use controlled computed properties in Minimap to improve performance
2022-04-24 13:34:22 +02:00
Braks b6d8b57859 chore: Performance optimizations
# What's changed?

* Remove keys
* Stabilize props
* Force reset store on unmount
2022-04-24 13:34:22 +02:00
Braks ad07b5b6ea fix: Dispose effects on unmount
# What's changed?

* Dispose prop watcher effects and event bindings when vue flow is unmounted/its scope is disposed
2022-04-24 13:34:22 +02:00
Braks 7ff48b8dfa refactor: directly bind instance functions 2022-04-24 13:34:22 +02:00
Braks b06ef3f9ab chore(types): Remove control events type 2022-04-24 13:34:22 +02:00
Braks fa23617ff1 fix(zoom): Use scaleBy instead of scaleTo for zoom 2022-04-24 13:34:22 +02:00
Braks 4e3f4541a1 chore(nodes): flush watcher on post hook 2022-04-24 13:34:22 +02:00
Braks 04fcd082d1 refactor: Accept maybe refs as options for usevueflow
# What's changed?

* Allow user to pass refs to composable (will not trigger an automatic re-set of state when refs are changed)
2022-04-24 13:34:22 +02:00
Braks 233d585a92 v0.4.7 2022-04-21 10:53:58 +02:00
Braks 2e13344d4e chore: Update CHANGELOG.md 2022-04-21 10:53:39 +02:00
Braks a19474c341 feat(edges): Add source/target nodes to graph edges
# What's changed?

* Bind source and target nodes to graph edges for convenience
2022-04-21 10:47:53 +02:00
Braks e3270d5f94 refactor(types)!: Remove generics from types except nodes, edges, elements
# What's changed?

* Superfluous generics removed from types like store, state etc. as they haven't really served a well-defined purpose
2022-04-21 10:47:53 +02:00
Braks 12e42e6871 fix: duplicate setState on vue flow mount
# What's changed?

* Set props on watcher initialization, so we avoid duplicate setStates (from composable and watchers)
* Fix pausable watchers not starting up
* Flush watchers on post
2022-04-21 10:47:53 +02:00
Braks 8b3acda42e fix(edges): base-edge throwing attrs warnings for curvature 2022-04-21 10:47:53 +02:00
Braks c1b6fc01d5 refactor: Remove memoization of group edges fn 2022-04-21 10:47:53 +02:00
Braks 0a21f3c068 chore(nodes,edges): Remove duplicate keys on nodes/edges 2022-04-21 10:47:53 +02:00
Braks 5951beb85a fix: Reactive key bindings for delete, select etc.
# What's changed?

* Use ref for keycodes from store to reactively listen to keyboard events and trigger delete etc.
2022-04-21 10:47:53 +02:00
Braks ee38f4af9b fix(edges): Remove orphaned edges
# What's changed?

* Remove source/targetNode properties from GraphEdge type, the source/target will be fetched with getters if necessary
* Remove edges when they have no existing source or target nodes that can be found in the state
* Add nodes to custom edge test
2022-04-21 10:47:53 +02:00
Braks 9a5b5465b6 regression(edges): Edge update also triggering new connection
# What's changed?

* Fix edge update causing double connections
* Fix updateEdge utility adding two edges on update
2022-04-21 10:47:53 +02:00
Braks 99d062728a chore: update vue flow version in docs/tests/examples 2022-04-21 10:47:53 +02:00
Braks f35167ca72 fix: enforce extent on viewport transforms 2022-04-21 10:47:53 +02:00
Braks 86c72ab08a fix: clamp zoom pan helper transformations
# What's changed?

* Clamp x, y positions before applying transformations so we can't position the d3container outside the permissable translate extent
2022-04-14 17:19:30 +02:00
Braks 71fbc2b8a4 chore: Update issue templates 2022-04-14 17:19:30 +02:00
Braks 7cb7eb2dfd feat: Add issue and pr templates 2022-04-14 12:51:52 +02:00
Braks 1f8b9ce547 v0.4.6 2022-04-13 22:48:23 +02:00
Braks 1765da8877 chore: Update CHANGELOG.md 2022-04-13 22:48:23 +02:00
Braks 2d43806523 feat: Extend ValidConnectionFunc
# What's changed?

* Add current edges, sourceNode & targetNode as parameter to valid connection func, so we can possibly prevent new connections based on current elements
2022-04-13 22:48:23 +02:00
Braks 2eacdc9830 feat: Extend minimap node type 2022-04-13 22:48:23 +02:00
Braks e178a3ce44 feat: Add mini map node events
# What's changed?

* Add events for mini map node click & dbl click
* Receives event + node as parameters
2022-04-13 22:48:23 +02:00
Braks dca6960086 v0.4.5 2022-04-13 22:48:23 +02:00
Braks 24c5e11d86 chore: Update CHANGELOG.md 2022-04-13 22:48:23 +02:00
Braks 567ce96640 feat: MiniMapNode slot
# What's changed?

* Add a slot to minimap nodes to allow customizing the node content
* slots receive current node position and dimensions to position elements and selected + dragging params
2022-04-13 22:48:23 +02:00
Braks 79ede4cf84 fix(nodes): Recalculate handle bounds on position change 2022-04-13 22:48:23 +02:00
Braks 0dba6913a8 chore: bump versions 2022-04-13 22:48:23 +02:00
Braks 1625cd7e8e v0.4.4 2022-04-11 18:09:41 +02:00
Braks 82fcb5c234 chore: Update CHANGELOG.md 2022-04-11 18:09:41 +02:00
Braks 9b11d8f4f2 docs: Add acknowledgement node to intro
# What's changed?

* Move acknowledgement to bottom of page above footer
* Add acknowledgement node that scrolls down
* Reword home page
2022-04-11 18:09:41 +02:00
Braks 3925e24aa1 docs: update README.md 2022-04-11 18:09:41 +02:00
Braks 1e1ee65de7 fix: remove 'Floo' from EdgeText.vue 2022-04-11 18:09:41 +02:00
Braks dd2ddfe7c6 v0.4.3 2022-04-11 16:43:07 +02:00
Braks f2363e2e08 chore: Update CHANGELOG.md 2022-04-11 16:43:07 +02:00
Braks efe68d7b54 chore: type fix in examples 2022-04-11 16:43:07 +02:00
Braks e17fb8094b chore: remove comment 2022-04-11 16:43:07 +02:00
Braks b94c0ab607 docs: Update guide wordings 2022-04-11 16:43:07 +02:00
Braks d35eb96c1f docs: update examples wordings
# What's changed?

* Change example pages wordings
* Add Acknowledgement banner
2022-04-11 16:43:07 +02:00
Braks ae4cefefbc chore: update LICENSE
# What's changed?

Add webkid copyright to license
2022-04-11 16:43:07 +02:00
Braks f824e035b8 v0.4.2 2022-04-11 11:30:10 +02:00
Braks 0be67d2485 chore: Update CHANGELOG.md 2022-04-11 11:30:10 +02:00
Braks 8e83d6a2af chore: update release script 2022-04-11 11:30:10 +02:00
Braks 914db337cf chore: Remove .vscode dir 2022-04-11 11:30:10 +02:00
Braks 1628cf4e64 feat: Add turbo repo cache to workflow 2022-04-11 11:30:10 +02:00
Braks 0184cdd2a9 docs: fitview mixing edges up on resize 2022-04-11 11:30:10 +02:00
Braks 4ebfb2ada5 chore: remove lint pipeline dependency 2022-04-11 11:30:10 +02:00
Braks 38103a25e0 chore: add typedoc pipeline output 2022-04-11 11:30:10 +02:00
Braks de75e257a5 chore: change destination dir for docs output 2022-04-11 11:30:10 +02:00
Braks c40d17c7d6 feat: Add dependency to dev pipeline 2022-04-11 11:30:10 +02:00
Braks e558ad5bc5 chore(deps-dev): Move typedoc to package
* Move typedoc script to package
* Add typedoc pipeline
2022-04-11 11:30:10 +02:00
Braks 82fd35c315 feat: Add dependency to dev pipeline 2022-04-11 11:30:10 +02:00
Braks 08204fdcbb feat: Test pipeline
* Rename tests dir to e2e as tests gets ignored as "package" by turbo
2022-04-11 11:30:10 +02:00
Braks ca5033b272 feat: Add turbo pipelines for types and themes 2022-04-11 11:30:10 +02:00
Braks 31423889d2 chore: update author field 2022-04-11 11:30:10 +02:00
Braks 3937d564a8 fix: lint scripts 2022-04-11 11:30:10 +02:00
Braks b2d5196944 feat: Use frozen-lockfile in build-and-test.yml 2022-04-11 11:30:10 +02:00
Braks 2a836d705d feat: Add turbo to root deps-dev 2022-04-11 11:30:10 +02:00
Braks b704bc6e11 docs: center intro text 2022-04-11 11:30:10 +02:00
Braks dc5ca5d1d6 docs: Add icon resolver
* move intro flow into separate file
2022-04-11 11:30:10 +02:00
Braks 8508423196 docs: fix missing handles in new connection 2022-04-11 11:30:10 +02:00
Braks 440ad3c681 fix(types): node/edge label type
* add Component to label type
2022-04-11 11:30:10 +02:00
Braks 88f808711a feat: Allow node/edge template per element
* Allow templates to be overwritten per element with template option
2022-04-11 11:30:10 +02:00
Braks 367c7fdf40 chore: Remove export 2022-04-11 11:30:10 +02:00
Braks c4ddeebe91 docs: fix node pos on resize 2022-04-11 11:30:10 +02:00
Braks 2cc387fb2f feat: Add name to BaseEdge.vue 2022-04-11 11:30:10 +02:00
Braks ca2a72c3a8 fix: remove waiting for node dimensions in transformation pane
* Fixes node dimensions having 0 values when paneReady is fired
2022-04-11 11:30:10 +02:00
Braks 07ee6eddf7 docs: update node positions 2022-04-11 11:30:10 +02:00
Braks 969dd87e71 docs: Remove next tick cb in Home.vue 2022-04-11 11:30:10 +02:00
Braks c0c67c6ee6 fix(viewport): await dimensions before using zoompan utils 2022-04-11 11:30:10 +02:00
Braks e14cf124ff fix(viewport): emit paneReady when dimensions are ready
* Wait for viewport & nodes to have their dimensions established before emitting paneReady
* Avoids getting 0 values for dimensions on paneReady
2022-04-11 11:30:10 +02:00
Braks 4fbb16f6ad docs: Add logo to header 2022-04-11 11:30:10 +02:00
Braks ff4f110f5d docs: update docsDir in themeConfig 2022-04-11 11:30:10 +02:00
Braks cb99000c97 docs: Rename section to Selection Options 2022-04-11 11:30:10 +02:00
Braks f06b224aa9 docs: disable blobity for mobile 2022-04-11 11:30:10 +02:00
Braks f011ea61b1 chore: Remove unused eslint-rules & lint files 2022-04-11 11:30:10 +02:00
Braks 103fc71857 v0.4.2-4 2022-04-11 11:30:10 +02:00
Braks 9bfd8105b8 chore: Update CHANGELOG.md 2022-04-11 11:30:10 +02:00
Braks aae37a5416 feat(flow): Allow add and set actions to have a setter input 2022-04-11 11:30:10 +02:00
Braks ea69dc58ee fix: Return empty arrays if pane isn't ready yet 2022-04-11 11:30:10 +02:00
Braks 636598ba1a update(types): Typeguard input type 2022-04-11 11:30:10 +02:00
Braks e877643354 tests: fix test checking for wrong element type
* remove negation from check
2022-04-11 11:30:10 +02:00
Braks fcdbc21d34 refactor(flow!): Change transform to viewport
* Change array type to object type and rename transform type to viewport
* Update examples & docs
2022-04-11 11:30:10 +02:00
Braks 47f5a761a1 v0.4.2-3 2022-04-11 11:30:10 +02:00
Braks 65d1ea2300 chore: Update CHANGELOG.md 2022-04-11 11:30:10 +02:00
Braks 553355dd86 chore: remove log 2022-04-11 11:30:10 +02:00