Commit Graph
840 Commits
Author SHA1 Message Date
Braks d98d3b57c2 revert(core): block pane ctx menu if panOnDrag includes [2] (right-click) (#2001)
* revert(core): block pane ctx menu if panOnDrag includes [2] (right-click)

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-12-17 10:27:28 +01:00
Braks 474e830d08 fix(core): use connecting handle to update connection (#1996)
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-12-17 10:27:28 +01:00
Braks 0ced769236 fix(core): use position instead of computedPos as keyboard move pos (#1989)
* fix(core): use position instead of computedPos as keyboard move pos

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-11-21 21:53:58 +01:00
Braks ce4a8fb001 fix(core): unwrap disableKeyboardA11y to check if keyboard movement is allowed (#1988)
* fix(core): unwrap disableKeyboardA11y to check if keyboard movement is disabled

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-11-21 21:53:58 +01:00
Braks 6008d63304 refactor(core): separate import and export objects and interfaces (#1978)
* refactor(core): separate import and export objects and interfaces

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* chore: cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-11-21 21:53:58 +01:00
Braks cca5ab8c44 feat(core): replace fitView option offset with expressive padding (#1967)
* feat(core): replace fitView option `offset` with expressive `padding`

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* chore: cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-10-02 09:12:54 +02:00
Braks 7729eff1f0 fix(core): unwrap connection line status ref (#1962)
* fix(core): unwrap connection line status ref

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-09-22 11:19:36 +02:00
Braks 2ebe3d9088 fix(core): remove node border styles from required styles (#1954)
* fix(core): remove node border styles from required styles

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-09-11 15:14:45 +02:00
Braks 67832e528d fix(core): add nullish operator to check visibility (#1942)
* fix(core): add nullish operator to check visibility

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-09-05 19:51:15 +02:00
Braks 2bacaa8b2d fix(core): only emit position changes if change occurred (#1939)
* fix(core): only emit position changes if a position change occurred

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 14:16:26 +02:00
Braks bd606b98a2 refactor(core): avoid passing reactive values to position changes (#1937)
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 13:59:37 +02:00
Braks 490473d997 fix(core): prevent multi touch from aborting connections (#1938)
* fix(core): prevent multi touch from aborting connections

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 13:59:37 +02:00
Braks c9c26d02f6 fix(core): skip resize handler if node not visible (#1936)
* fix(core): skip resize handler if node not visible

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 13:59:37 +02:00
Braks e9f0cdff3d fix(core): correctly check if an event has any listeners bound to it (#1935)
* fix(core): separate listeners from emitter for correct check on hasListeners

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): check for listeners bound via emits

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 13:59:37 +02:00
Braks dd48e47d02 fix(core): use valid handle result as connecting handle (#1932)
* fix(core): use valid handle result as connecting handle

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-31 13:59:37 +02:00
Braks 299a04531e refactor(core): use event target for Handle pointer down events (#1924)
* refactor(core): use event target for Handle pointer down events

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-15 13:25:11 +02:00
Braks c2aad1e43b fix(core): fetch correct source and target nodes for isValidConnection (#1922)
* fix(core): fetch correct source and target nodes for isValidConnection

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-15 13:25:11 +02:00
Braks 58a52e1374 fix(minimap): use 1 as zoomstep for minimap and apply factor based on macOs (#1923)
* fix(minimap): use 1 as zoomstep for minimap and apply factor based on macOs

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* refactor(core): expose isMacOs

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-15 13:25:11 +02:00
Braks 5fbbc826e5 feat(core): expose wheelDelta utility (#1918)
* feat(core): expose wheelDelta utility

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* fix(minimap): apply wheel delta to zoom

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-15 13:25:11 +02:00
Braks e97a65b6b5 fix(core): calculate overlapping area correctly (#1914)
* fix(core): calculate overlapping area correctly

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-07 15:39:59 +02:00
Braks ed18865525 fix(core): emit node drag-start, drag and drag-end events on selection drag (#1913)
* fix(core): emit node drag-start, drag and drag-end events on selection drag

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-07 15:39:59 +02:00
Braks a43da6f1ec fix(core): use correct handlesuffix in getHandleConnections (#1880)
* fix(core): use correct handlesuffix in `getHandleConnections`

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-08-07 15:39:59 +02:00
BraksandKirill Zaytsev 8fa70107a0 feat(core): add dom attributes option for nodes and edges (#1869)
* feat(core): add dom attributes option for nodes and edges (#1861)

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* chore: cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
Co-authored-by: Kirill Zaytsev <zaytsev.cmath10@gmail.com>
2025-06-10 16:24:11 +02:00
Kirill ZaytsevandBraks 4c1b064230 feat(core): add dom attributes option for nodes (#1861)
feat: Possibility to customize nodes HTML attributes
2025-06-10 16:24:11 +02:00
Braks 505fbfef74 feat(core): add interpolate option to viewport transforming functions (#1851)
* chore(core): add d3-interpolate to deps

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* feat(core): add interpolate option to viewport transforming functions

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* feat(core): add interpolate option to viewport transforming functions

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-05-19 17:35:54 +02:00
Braks 00bc28bf1b feat(core): add ease option to viewport transform functions (#1848)
* chore(core): update d3-deps

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* feat(core): add ease option to viewport transform functions

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

* chore: cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-05-19 17:35:54 +02:00
BraksandGitHub b792d7f536 refactor(core): use shallowRef where possible (#1847)
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-05-19 13:56:01 +02:00
Braks 735c81c63f fix(core): use whole handle for snapping area (#1843)
* chore(changeset): add

* fix(core): use whole handle for snapping area

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-05-15 18:37:14 +02:00
Braks 666e4eabab fix(core): allow multiselect when input is focused (#1842)
* fix(core): allow multiselect when input is focused

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-05-15 18:37:14 +02:00
Braks ae9c6a0fe2 fix(core): add missing vue-flow__container class to marker defs (#1833) 2025-04-24 15:45:36 +02:00
Braks cc65f12af9 fix(core): fall back to changedTouches for touchend events (#1830)
* fix(core): fall back to changedTouches for touchend events

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-04-23 20:39:08 +02:00
Braks 265f928f13 fix(core): subtract container bounds when getting pointer position (#1829)
* fix(core): subtract container bounds when getting pointer position

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore: cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-04-23 20:39:08 +02:00
Braks 7d9ffe3f35 chore(core): cleanup getHandleBounds (#1828)
chore(core): cleanup getHandleBounds

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-04-23 20:39:08 +02:00
Braks 7a09afa12a refactor(core): allow passing null/undefined to use node connection args (#1820)
* refactor(core): allow passing null/undefined to use node connection args

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-04-23 20:39:08 +02:00
Braks cb588c8aa9 fix(core): add aria hidden to markers (#1817)
* fix(core): add aria hidden to markers

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-04-23 20:39:08 +02:00
Braks 967569aa6d fix(core): add button to elements to ignore in useKeyPress (#1807)
* fix(core): add button to elements to ignore in useKeyPress

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): add prevent default option to useKeyPress

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-29 16:57:08 +01:00
Braks 05e4df2cb6 fix(core): remove edge lookup update when updating connection lookup
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-17 12:47:52 +01:00
Braks b85b0ec66f fix(core): reset drag items on drag end (#1798)
* fix(core): reset drag items on drag end

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-17 12:47:52 +01:00
Braks c9fd24dc82 fix(core): use null as fallback id for edge source handle (#1794)
* fix(core): use null as fallback id for edge source handle

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-17 12:47:52 +01:00
Braks 410a59df5b fix(core): unwrap ref when checking if connection in progress (#1789)
* fix(core): unwrap ref when checking if connection in progress

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-13 06:56:32 +01:00
Braks dd9c92ff81 fix(core): avoid removing handle bounds on handle unmount (#1781)
* fix(core): avoid removing handle bounds on handle unmount

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-09 10:10:38 +01:00
Braks 49b2780740 fix(core): prevent pane click event when connection is in progress (#1776)
* fix(core): prevent pane click event when connection is in progress

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-03-09 10:10:38 +01:00
Braks 424f6cf63c fix(core): correct connection keys (#1749)
* fix(core): correct connection keys

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-16 11:42:01 +01:00
Braks f78c348947 refactor(core): rename useNodeConnections params (#1743)
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-12 10:05:01 +01:00
Braks 44b9232b19 refactor(core): inherit attrs on edge path el in BaseEdge (#1742)
* refactor(core): inherit attrs on edge path el in base edge

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-12 10:05:01 +01:00
Braks 6f3ed67463 refactor(core): use connection lookup to check for selected elements (#1737)
* refactor(core): use connection lookup to check for selected elements

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-12 10:05:01 +01:00
Braks 3d1b85fce2 refactor(core): allow setting handleId in useNodeConnections (#1732)
* refactor(core): allow setting handleId in useNodeConnections

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): deprecate useHandleConnections

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(examples): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(docs): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(docs): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-12 10:05:01 +01:00
Braks 268ed0e84e feat(core): add useNodeConnections composable (#1728)
* feat(core): add `useNodeConnections` composable

* chore(core): export `useNodeConnections`

* chore(docs): update math example

* docs: add guide for `useNodeConnections`

* chore(changeset): add
2025-01-12 10:05:01 +01:00
Braks b33da47a3a fix(core): use center position of handle as snapping point for connection lines (#1625)
* fix(core): calculate handle positions correctly

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): remove handleId check

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup click connect handlers

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): add flow id to handle ids

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* tests: correct updateEdge test

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): use center position of handle

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(examples): cleanup easy connect example

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* refactor(tests): run actions on chrome

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(workflows): correctly hash lock file

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2025-01-04 16:56:00 +01:00
Braks f4f2494fd1 fix(core): allow control key as pan activation key code (#1707)
* fix(core): allow control key as pan activation key code

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): allow drag regardless of btn chosen

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): prevent browser ctx menu on pane right click

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup useKeyPress handler

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* fix(core): check `panOnDrag` prop for allowed drag buttons

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(changeset): add

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

* chore(core): cleanup

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>

---------

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
2024-12-07 16:39:07 +01:00