@neo4j-nvl/base 1.2.2 → 2.0.0-1e695738
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -1
- package/README.md +8 -0
- package/dist/base.mjs +35891 -2
- package/dist/types/index.d.ts +382 -386
- package/dist/types/layouts/animatedlayout/AnimatedLayout.d.ts +23 -23
- package/dist/types/layouts/animatedlayout/animationUtils.d.ts +3 -3
- package/dist/types/layouts/circularLayout/CircularLayout.d.ts +14 -14
- package/dist/types/layouts/d3forcelayout/circularLayout.d.ts +4 -4
- package/dist/types/layouts/d3forcelayout/constants.d.ts +3 -4
- package/dist/types/layouts/d3forcelayout/d3ForceLayout.d.ts +31 -31
- package/dist/types/layouts/d3forcelayout/types.d.ts +7 -7
- package/dist/types/layouts/forcedirectedlayout/PhysLayout.d.ts +275 -0
- package/dist/types/layouts/forcedirectedlayout/clustering/ClusterByMerger.d.ts +62 -0
- package/dist/types/layouts/forcedirectedlayout/clustering/SolarMerger.d.ts +56 -0
- package/dist/types/layouts/forcedirectedlayout/clustering/clustering-utils.d.ts +143 -0
- package/dist/types/layouts/forcedirectedlayout/clustering/types.d.ts +59 -0
- package/dist/types/layouts/forcedirectedlayout/glwrapper.d.ts +4 -0
- package/dist/types/layouts/forcedirectedlayout/shaders/multilevel-fragment.d.ts +2 -0
- package/dist/types/layouts/forcedirectedlayout/shaders/multilevel-repulsive-fragment.d.ts +2 -0
- package/dist/types/layouts/forcedirectedlayout/shaders/multilevel-update-fragment.d.ts +2 -0
- package/dist/types/layouts/forcedirectedlayout/shaders/sim-vertex.d.ts +2 -0
- package/dist/types/layouts/freeLayout/FreeLayout.d.ts +23 -25
- package/dist/types/layouts/gridLayout/GridLayout.d.ts +26 -30
- package/dist/types/layouts/hierarchicallayout/HierarchicalLayout.d.ts +28 -23
- package/dist/types/layouts/hierarchicallayout/constants.d.ts +2 -2
- package/dist/types/modules/CallbackHelper.d.ts +23 -23
- package/dist/types/modules/ExternalCallbackHandler.d.ts +33 -39
- package/dist/types/modules/NvlController.d.ts +212 -129
- package/dist/types/modules/Shader.d.ts +17 -17
- package/dist/types/modules/ZoomTransitionHandler.d.ts +24 -24
- package/dist/types/modules/dataset.d.ts +26 -24
- package/dist/types/modules/logging.d.ts +4 -4
- package/dist/types/modules/state/constants.d.ts +2 -2
- package/dist/types/modules/state/state.d.ts +2 -2
- package/dist/types/modules/state/types.d.ts +338 -228
- package/dist/types/modules/state/utils.d.ts +36 -36
- package/dist/types/renderers/ClusterOverlay.d.ts +73 -0
- package/dist/types/renderers/domrenderer/BaseRenderer.d.ts +69 -69
- package/dist/types/renderers/domrenderer/canvasrenderer/Animation.d.ts +57 -57
- package/dist/types/renderers/domrenderer/canvasrenderer/AnimationHandler.d.ts +65 -65
- package/dist/types/renderers/domrenderer/canvasrenderer/CanvasRenderer.d.ts +84 -85
- package/dist/types/renderers/domrenderer/canvasrenderer/arrowDrawing.d.ts +31 -31
- package/dist/types/renderers/domrenderer/canvasrenderer/nodeDrawing.d.ts +32 -32
- package/dist/types/renderers/domrenderer/shared/ImageCache.d.ts +16 -15
- package/dist/types/renderers/domrenderer/shared/arrows/ArrowBundle.d.ts +89 -89
- package/dist/types/renderers/domrenderer/shared/arrows/ArrowBundler.d.ts +42 -42
- package/dist/types/renderers/domrenderer/shared/arrows/arrows.d.ts +49 -49
- package/dist/types/renderers/domrenderer/shared/arrows/constants.d.ts +4 -4
- package/dist/types/renderers/domrenderer/shared/nodes/nodes.d.ts +21 -21
- package/dist/types/renderers/domrenderer/shared/types.d.ts +29 -30
- package/dist/types/renderers/domrenderer/shared/util.d.ts +4 -4
- package/dist/types/renderers/domrenderer/shared/vectorUtils.d.ts +10 -10
- package/dist/types/renderers/domrenderer/shared/wordwrap.d.ts +10 -10
- package/dist/types/renderers/domrenderer/svgrenderer/SvgRenderer.d.ts +18 -19
- package/dist/types/renderers/domrenderer/svgrenderer/arrowDrawing.d.ts +15 -15
- package/dist/types/renderers/domrenderer/svgrenderer/nodeDrawing.d.ts +4 -4
- package/dist/types/renderers/domrenderer/svgrenderer/svgUtils.d.ts +21 -21
- package/dist/types/renderers/webglrenderer/Controller.d.ts +83 -61
- package/dist/types/renderers/webglrenderer/IconLayerRegistry.d.ts +14 -0
- package/dist/types/renderers/webglrenderer/Renderer.d.ts +91 -51
- package/dist/types/renderers/webglrenderer/node-animation-fragment.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/node-animation-vertex.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/node-fragment-point.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/node-vertex-point.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/rel-fragment-line.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/rel-glsl-utils.d.ts +1 -0
- package/dist/types/renderers/webglrenderer/rel-vertex-arrow.d.ts +2 -0
- package/dist/types/renderers/webglrenderer/rel-vertex-line.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/viewport-box-fragment.d.ts +2 -2
- package/dist/types/renderers/webglrenderer/viewport-box-vertex.d.ts +2 -2
- package/dist/types/types/graph-element.d.ts +109 -101
- package/dist/types/types/nvl-window-functions.d.ts +12 -13
- package/dist/types/types/utils.d.ts +1 -1
- package/dist/types/utils/ariaUtils.d.ts +2 -2
- package/dist/types/utils/canvasManagement.d.ts +8 -2
- package/dist/types/utils/circularUtils.d.ts +2 -2
- package/dist/types/utils/clusterGeometry.d.ts +14 -0
- package/dist/types/utils/clusterHitRegions.d.ts +42 -0
- package/dist/types/utils/colorUtils.d.ts +2 -2
- package/dist/types/utils/constants.d.ts +12 -6
- package/dist/types/utils/errors.d.ts +6 -6
- package/dist/types/utils/geometry.d.ts +91 -48
- package/dist/types/utils/graphObjectUtils.d.ts +9 -9
- package/dist/types/utils/hitTest.d.ts +84 -0
- package/dist/types/utils/jsDriverResultTransformer.d.ts +27 -25
- package/dist/types/utils/layoutSeeding.d.ts +7 -0
- package/dist/types/utils/mouseUtils.d.ts +5 -5
- package/dist/types/utils/segmentAnalytics.d.ts +42 -42
- package/dist/types/utils/webWorkerUtils.d.ts +2 -2
- package/dist/types/utils/zoomFunctions.d.ts +24 -16
- package/package.json +15 -15
- package/skills/neo4j-nvl-skill/README.md +39 -0
- package/skills/neo4j-nvl-skill/SKILL.md +296 -0
- package/skills/neo4j-nvl-skill/references/api/base/classes/NVL.md +977 -0
- package/skills/neo4j-nvl-skill/references/api/base/functions/getZoomTargetForNodePositions.md +37 -0
- package/skills/neo4j-nvl-skill/references/api/base/index.md +71 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/CircularOptions.md +11 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/ClusteringOptions.md +14 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/ExternalCallbacks.md +18 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/ForceDirectedOptions.md +12 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/HierarchicalOptions.md +13 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/HitTargetCluster.md +13 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/HitTargetNode.md +16 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/HitTargetRelationship.md +15 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/Node.md +32 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/NvlMouseEvent.md +16 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/NvlOptions.md +38 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/Point.md +12 -0
- package/skills/neo4j-nvl-skill/references/api/base/interfaces/Relationship.md +32 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/CanvasRendererType.md +14 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/Cluster.md +20 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/ClusterByFn.md +20 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/ClusterId.md +10 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/HitTargets.md +22 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/HitTestTarget.md +7 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/Layout.md +15 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/LayoutOptions.md +12 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/NodeWithClientPosition.md +18 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/PartialNode.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/PartialRelationship.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/Renderer.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/StyledCaption.md +21 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/WebGLRendererType.md +14 -0
- package/skills/neo4j-nvl-skill/references/api/base/type-aliases/ZoomOptions.md +25 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/CircularLayoutType.md +11 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/ForceDirectedLayoutType.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/FreeLayoutType.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/GridLayoutType.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/HierarchicalLayoutType.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/d3ForceLayoutType.md +9 -0
- package/skills/neo4j-nvl-skill/references/api/base/variables/nvlResultTransformer.md +38 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/BoxSelectInteraction.md +163 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/ClickInteraction.md +163 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/DragNodeInteraction.md +164 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/HoverInteraction.md +160 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/KeyboardInteraction.md +185 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/LassoInteraction.md +163 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/PanInteraction.md +196 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/classes/ZoomInteraction.md +164 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/index.md +37 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/BoxSelectInteractionCallbacks.md +19 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/BoxSelectInteractionOptions.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/ClickInteractionCallbacks.md +39 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/ClickInteractionOptions.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/DragNodeInteractionCallbacks.md +21 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/DrawInteractionOptions.md +22 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/HoverInteractionCallbacks.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/HoverInteractionOptions.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/KeyboardInteractionCallbacks.md +35 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/KeyboardInteractionOptions.md +55 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/LassoInteractionCallbacks.md +19 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/LassoInteractionOptions.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/PanInteractionCallbacks.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/PanInteractionOptions.md +19 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/ZoomInteractionCallbacks.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/interaction-handlers/type-aliases/ZoomInteractionOptions.md +17 -0
- package/skills/neo4j-nvl-skill/references/api/react/functions/StaticPictureWrapper.md +35 -0
- package/skills/neo4j-nvl-skill/references/api/react/index.md +34 -0
- package/skills/neo4j-nvl-skill/references/api/react/interfaces/BasicReactWrapperProps.md +24 -0
- package/skills/neo4j-nvl-skill/references/api/react/interfaces/InteractiveNvlWrapperProps.md +27 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/InteractionOptions.md +10 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/KeyboardEvent.md +7 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/KeyboardEventCallbacks.md +10 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/MouseEvent.md +10 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/MouseEventCallbacks.md +10 -0
- package/skills/neo4j-nvl-skill/references/api/react/type-aliases/StaticPictureWrapperProps.md +27 -0
- package/skills/neo4j-nvl-skill/references/api/react/variables/BasicNvlWrapper.md +50 -0
- package/skills/neo4j-nvl-skill/references/api/react/variables/InteractiveNvlWrapper.md +17 -0
- package/skills/neo4j-nvl-skill/references/clustering.md +87 -0
- package/skills/neo4j-nvl-skill/references/data-from-neo4j.md +67 -0
- package/skills/neo4j-nvl-skill/references/labels-and-overlays.md +76 -0
- package/skills/neo4j-nvl-skill/references/layouts-and-positions.md +65 -0
- package/skills/neo4j-nvl-skill/references/lifecycle-and-updates.md +65 -0
- package/skills/neo4j-nvl-skill/references/migrating-1x-to-2.md +50 -0
- package/skills/neo4j-nvl-skill/references/react-wrappers.md +88 -0
- package/skills/neo4j-nvl-skill/references/verifying-nvl-apps.md +52 -0
- package/skills/neo4j-nvl-skill/references/vite-and-bundlers.md +62 -0
- package/dist/base.mjs.LICENSE.txt +0 -21
- package/dist/types/layouts/animatedlayout/AnimatedLayout.test.d.ts +0 -1
- package/dist/types/layouts/animatedlayout/animationUtils.test.d.ts +0 -1
- package/dist/types/layouts/d3forcelayout/__mocks__/d3ForceLayout.d.ts +0 -10
- package/dist/types/layouts/d3forcelayout/circularLayout.test.d.ts +0 -1
- package/dist/types/layouts/d3forcelayout/d3ForceLayout.test.d.ts +0 -1
- package/dist/types/layouts/forcedirectedlayout/ForceCytoLayout.d.ts +0 -22
- package/dist/types/layouts/forcedirectedlayout/cosebilkentlayout/CoseBilkentLayout.d.ts +0 -33
- package/dist/types/layouts/forcedirectedlayout/physlayout/PhysLayout.d.ts +0 -174
- package/dist/types/layouts/forcedirectedlayout/physlayout/PhysLayout.test.d.ts +0 -1
- package/dist/types/layouts/forcedirectedlayout/physlayout/glwrapper.d.ts +0 -4
- package/dist/types/layouts/forcedirectedlayout/physlayout/shaders/multilevel-fragment.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/shaders/multilevel-repulsive-fragment.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/shaders/multilevel-update-fragment.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/shaders/sim-vertex.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/shaders/workaround-fragment.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/SolarMerger.bench.d.ts +0 -1
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/SolarMerger.d.ts +0 -21
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/SolarMerger.test.d.ts +0 -1
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/solar-placer.d.ts +0 -2
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/solar-placer.test.d.ts +0 -1
- package/dist/types/layouts/forcedirectedlayout/physlayout/solarmerger/types.d.ts +0 -49
- package/dist/types/modules/NvlController.test.d.ts +0 -1
- package/dist/types/modules/ZoomTransitionHandler.test.d.ts +0 -1
- package/dist/types/modules/dataset.test.d.ts +0 -1
- package/dist/types/modules/state/state.test.d.ts +0 -1
- package/dist/types/modules/state/utils.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/BaseRenderer.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/canvasrenderer/Animation.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/canvasrenderer/CanvasRenderer.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/canvasrenderer/arrowDrawing.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/canvasrenderer/nodeDrawing.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/ImageCache.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/arrows/ArrowBundle.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/arrows/ArrowBundler.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/arrows/arrows.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/nodes/nodes.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/util.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/shared/wordwrap.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/svgrenderer/SvgRenderer.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/svgrenderer/arrowDrawing.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/svgrenderer/nodeDrawing.test.d.ts +0 -1
- package/dist/types/renderers/domrenderer/svgrenderer/svgUtils.test.d.ts +0 -1
- package/dist/types/renderers/webglrenderer/Controller.test.d.ts +0 -1
- package/dist/types/renderers/webglrenderer/Renderer.test.d.ts +0 -1
- package/dist/types/utils/ariaUtils.test.d.ts +0 -1
- package/dist/types/utils/canvasManagement.test.d.ts +0 -1
- package/dist/types/utils/circularUtils.test.d.ts +0 -1
- package/dist/types/utils/colorUtils.test.d.ts +0 -1
- package/dist/types/utils/errors.test.d.ts +0 -1
- package/dist/types/utils/geometry.test.d.ts +0 -1
- package/dist/types/utils/graphObjectUtils.test.d.ts +0 -1
- package/dist/types/utils/hittest.d.ts +0 -58
- package/dist/types/utils/hittest.test.d.ts +0 -1
- package/dist/types/utils/jsDriverResultTransformer.test.d.ts +0 -1
- package/dist/types/utils/mouseUtils.test.d.ts +0 -1
- package/dist/types/utils/webWorkerUtils.test.d.ts +0 -1
- package/dist/types/utils/zoomFunctions.test.d.ts +0 -1
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Class: ZoomInteraction
|
|
4
|
+
|
|
5
|
+
Interaction handler for zooming the canvas, which is achieved by:
|
|
6
|
+
- Scrolling the mouse wheel on the canvas
|
|
7
|
+
- Using trackpad pinch gestures (equivalent to Ctrl/Cmd + scroll)
|
|
8
|
+
|
|
9
|
+
For examples, head to the [Zoom Interaction documentation page](https://neo4j.com/docs/nvl/current/interaction-handlers/#_zoominteraction).
|
|
10
|
+
|
|
11
|
+
## Extends
|
|
12
|
+
|
|
13
|
+
- `BaseInteraction`\<[`ZoomInteractionOptions`](../type-aliases/ZoomInteractionOptions.md)\>
|
|
14
|
+
|
|
15
|
+
## Constructors
|
|
16
|
+
|
|
17
|
+
### Constructor
|
|
18
|
+
|
|
19
|
+
```ts
|
|
20
|
+
new ZoomInteraction(nvl, options?): ZoomInteraction;
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Creates a new instance of the zoom interaction handler.
|
|
24
|
+
|
|
25
|
+
#### Parameters
|
|
26
|
+
|
|
27
|
+
| Parameter | Type | Description |
|
|
28
|
+
| ------ | ------ | ------ |
|
|
29
|
+
| `nvl` | `NVL` | The NVL instance to attach the interaction handler to. |
|
|
30
|
+
| `options` | [`ZoomInteractionOptions`](../type-aliases/ZoomInteractionOptions.md) | Options to customize the zoom interaction behavior. |
|
|
31
|
+
|
|
32
|
+
#### Returns
|
|
33
|
+
|
|
34
|
+
`ZoomInteraction`
|
|
35
|
+
|
|
36
|
+
#### Overrides
|
|
37
|
+
|
|
38
|
+
```ts
|
|
39
|
+
BaseInteraction<ZoomInteractionOptions>.constructor
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Accessors
|
|
43
|
+
|
|
44
|
+
### currentOptions
|
|
45
|
+
|
|
46
|
+
#### Get Signature
|
|
47
|
+
|
|
48
|
+
```ts
|
|
49
|
+
get currentOptions(): P;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Returns the current options of the interaction.
|
|
53
|
+
|
|
54
|
+
##### Returns
|
|
55
|
+
|
|
56
|
+
`P`
|
|
57
|
+
|
|
58
|
+
The current options of the interaction.
|
|
59
|
+
|
|
60
|
+
#### Inherited from
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
BaseInteraction.currentOptions
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Methods
|
|
67
|
+
|
|
68
|
+
### destroy()
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
destroy(): void;
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Removes the relevant event listeners from the canvas.
|
|
75
|
+
|
|
76
|
+
#### Returns
|
|
77
|
+
|
|
78
|
+
`void`
|
|
79
|
+
|
|
80
|
+
#### Overrides
|
|
81
|
+
|
|
82
|
+
```ts
|
|
83
|
+
BaseInteraction.destroy
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
***
|
|
87
|
+
|
|
88
|
+
### removeCallback()
|
|
89
|
+
|
|
90
|
+
```ts
|
|
91
|
+
removeCallback(name): void;
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Remove a callback for a given event of type.
|
|
95
|
+
|
|
96
|
+
#### Parameters
|
|
97
|
+
|
|
98
|
+
| Parameter | Type | Description |
|
|
99
|
+
| ------ | ------ | ------ |
|
|
100
|
+
| `name` | `string` | The name of the event. |
|
|
101
|
+
|
|
102
|
+
#### Returns
|
|
103
|
+
|
|
104
|
+
`void`
|
|
105
|
+
|
|
106
|
+
#### Inherited from
|
|
107
|
+
|
|
108
|
+
```ts
|
|
109
|
+
BaseInteraction.removeCallback
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
***
|
|
113
|
+
|
|
114
|
+
### toggleGlobalTextSelection()
|
|
115
|
+
|
|
116
|
+
```ts
|
|
117
|
+
toggleGlobalTextSelection(enable, eventFunction?): void;
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Enables or disables global text selection during a drag or pan operation.
|
|
121
|
+
|
|
122
|
+
#### Parameters
|
|
123
|
+
|
|
124
|
+
| Parameter | Type | Description |
|
|
125
|
+
| ------ | ------ | ------ |
|
|
126
|
+
| `enable` | `boolean` | Whether to enable or disable global text selection. |
|
|
127
|
+
| `eventFunction?` | (`this`, `ev`) => `void` | The event function to be added/removed when text selection is disabled/enabled. |
|
|
128
|
+
|
|
129
|
+
#### Returns
|
|
130
|
+
|
|
131
|
+
`void`
|
|
132
|
+
|
|
133
|
+
#### Inherited from
|
|
134
|
+
|
|
135
|
+
```ts
|
|
136
|
+
BaseInteraction.toggleGlobalTextSelection
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
***
|
|
140
|
+
|
|
141
|
+
### updateCallback()
|
|
142
|
+
|
|
143
|
+
```ts
|
|
144
|
+
updateCallback(name, callback): void;
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
Add or update a callback for a given event of type.
|
|
148
|
+
|
|
149
|
+
#### Parameters
|
|
150
|
+
|
|
151
|
+
| Parameter | Type | Description |
|
|
152
|
+
| ------ | ------ | ------ |
|
|
153
|
+
| `name` | `string` | The name of the event. |
|
|
154
|
+
| `callback` | `boolean` \| ((...`args`) => `void`) | The callback to be called when the event is triggered. |
|
|
155
|
+
|
|
156
|
+
#### Returns
|
|
157
|
+
|
|
158
|
+
`void`
|
|
159
|
+
|
|
160
|
+
#### Inherited from
|
|
161
|
+
|
|
162
|
+
```ts
|
|
163
|
+
BaseInteraction.updateCallback
|
|
164
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# @neo4j-nvl/interaction-handlers
|
|
4
|
+
|
|
5
|
+
## Classes
|
|
6
|
+
|
|
7
|
+
| Class | Description |
|
|
8
|
+
| ------ | ------ |
|
|
9
|
+
| [BoxSelectInteraction](classes/BoxSelectInteraction.md) | An interaction handler for multi-selecting nodes and relationships. When dragging the cursor, it draws a box on the scene and all nodes and relationships inside the box are selected. |
|
|
10
|
+
| [ClickInteraction](classes/ClickInteraction.md) | Click interaction handler that handles click, double click and right click events on nodes, relationships, clusters, and the scene. |
|
|
11
|
+
| [DragNodeInteraction](classes/DragNodeInteraction.md) | Interaction handler for dragging nodes, which is achieved by clicking and moving the node. When multiple nodes are selected, they are all dragged. |
|
|
12
|
+
| [HoverInteraction](classes/HoverInteraction.md) | Interaction handler for hovering nodes and relationships. |
|
|
13
|
+
| [KeyboardInteraction](classes/KeyboardInteraction.md) | Opinionated interaction handler for keyboard-driven focus navigation through graph elements (nodes and relationships). |
|
|
14
|
+
| [LassoInteraction](classes/LassoInteraction.md) | An interaction handler that lets you select nodes and relationships by drawing a lasso around them. When dragging, a line is drawn on the scene and all elements inside are selected. |
|
|
15
|
+
| [PanInteraction](classes/PanInteraction.md) | Interaction handler for panning the scene, which is achieved by clicking and moving the scene. |
|
|
16
|
+
| [ZoomInteraction](classes/ZoomInteraction.md) | Interaction handler for zooming the canvas, which is achieved by: - Scrolling the mouse wheel on the canvas - Using trackpad pinch gestures (equivalent to Ctrl/Cmd + scroll) |
|
|
17
|
+
|
|
18
|
+
## Type Aliases
|
|
19
|
+
|
|
20
|
+
| Type Alias | Description |
|
|
21
|
+
| ------ | ------ |
|
|
22
|
+
| [BoxSelectInteractionCallbacks](type-aliases/BoxSelectInteractionCallbacks.md) | Callbacks for the box select interaction handler. |
|
|
23
|
+
| [BoxSelectInteractionOptions](type-aliases/BoxSelectInteractionOptions.md) | Options for the multi-select interaction handler to customize its behavior. |
|
|
24
|
+
| [ClickInteractionCallbacks](type-aliases/ClickInteractionCallbacks.md) | Callbacks for the click interaction handler. |
|
|
25
|
+
| [ClickInteractionOptions](type-aliases/ClickInteractionOptions.md) | Options for the click interaction handler to customize its behavior. |
|
|
26
|
+
| [DragNodeInteractionCallbacks](type-aliases/DragNodeInteractionCallbacks.md) | Callbacks for the drag node interaction handler. |
|
|
27
|
+
| [DrawInteractionOptions](type-aliases/DrawInteractionOptions.md) | Options for the draw interaction handler. |
|
|
28
|
+
| [HoverInteractionCallbacks](type-aliases/HoverInteractionCallbacks.md) | Callbacks for the hover interaction handler. |
|
|
29
|
+
| [HoverInteractionOptions](type-aliases/HoverInteractionOptions.md) | Options for the hover interaction handler to customize its behavior. |
|
|
30
|
+
| [KeyboardInteractionCallbacks](type-aliases/KeyboardInteractionCallbacks.md) | Callbacks for the keyboard interaction handler. |
|
|
31
|
+
| [KeyboardInteractionOptions](type-aliases/KeyboardInteractionOptions.md) | Options for the keyboard interaction handler. Allows configuring which keys trigger specific navigation actions. Each key combo is an array of strings: the last element is the primary key (`event.key`), and any preceding elements are modifier keys (`'Shift'`, `'Ctrl'`, `'Alt'`, `'Meta'`). |
|
|
32
|
+
| [LassoInteractionCallbacks](type-aliases/LassoInteractionCallbacks.md) | Callbacks for the lasso interaction handler. |
|
|
33
|
+
| [LassoInteractionOptions](type-aliases/LassoInteractionOptions.md) | Options for the lasso interaction handler to customize its behavior. |
|
|
34
|
+
| [PanInteractionCallbacks](type-aliases/PanInteractionCallbacks.md) | Callbacks for the pan interaction handler. |
|
|
35
|
+
| [PanInteractionOptions](type-aliases/PanInteractionOptions.md) | Options for the pan interaction handler to customize its behavior. |
|
|
36
|
+
| [ZoomInteractionCallbacks](type-aliases/ZoomInteractionCallbacks.md) | Callbacks for the zoom interaction handler. |
|
|
37
|
+
| [ZoomInteractionOptions](type-aliases/ZoomInteractionOptions.md) | Options for the zoom interaction handler to customize its behavior. |
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: BoxSelectInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type BoxSelectInteractionCallbacks = {
|
|
7
|
+
onBoxSelect?: (({ nodes, rels }, event) => void) | boolean;
|
|
8
|
+
onBoxStarted?: ((event) => void) | boolean;
|
|
9
|
+
};
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Callbacks for the box select interaction handler.
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
| Property | Type | Description |
|
|
17
|
+
| ------ | ------ | ------ |
|
|
18
|
+
| `onBoxSelect?` | ((`{ nodes, rels }`, `event`) => `void`) \| `boolean` | Called once the user releases the mouse after multi-selecting. **Param** **selectionObject** The selected nodes and relationships. **Param** **event** The original mouse event. |
|
|
19
|
+
| `onBoxStarted?` | ((`event`) => `void`) \| `boolean` | Called once when the user presses the mouse on the canvas, starting the box selection. **Param** **event** The original mouse event. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: BoxSelectInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type BoxSelectInteractionOptions = {
|
|
7
|
+
selectOnRelease?: boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Options for the multi-select interaction handler to customize its behavior.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `selectOnRelease?` | `boolean` | If true, the selection will be applied when the mouse is released. **Default** `false` |
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: ClickInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type ClickInteractionCallbacks = {
|
|
7
|
+
onCanvasClick?: ((event) => void) | boolean;
|
|
8
|
+
onCanvasDoubleClick?: ((event) => void) | boolean;
|
|
9
|
+
onCanvasRightClick?: ((event) => void) | boolean;
|
|
10
|
+
onClusterClick?: ((cluster, hitElements, event) => void) | boolean;
|
|
11
|
+
onClusterDoubleClick?: ((cluster, hitElements, event) => void) | boolean;
|
|
12
|
+
onClusterRightClick?: ((cluster, hitElements, event) => void) | boolean;
|
|
13
|
+
onNodeClick?: ((node, hitElements, event) => void) | boolean;
|
|
14
|
+
onNodeDoubleClick?: ((node, hitElements, event) => void) | boolean;
|
|
15
|
+
onNodeRightClick?: ((node, hitElements, event) => void) | boolean;
|
|
16
|
+
onRelationshipClick?: ((relationship, hitElements, event) => void) | boolean;
|
|
17
|
+
onRelationshipDoubleClick?: ((relationship, hitElements, event) => void) | boolean;
|
|
18
|
+
onRelationshipRightClick?: ((relationship, hitElements, event) => void) | boolean;
|
|
19
|
+
};
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Callbacks for the click interaction handler.
|
|
23
|
+
|
|
24
|
+
## Properties
|
|
25
|
+
|
|
26
|
+
| Property | Type | Description |
|
|
27
|
+
| ------ | ------ | ------ |
|
|
28
|
+
| `onCanvasClick?` | ((`event`) => `void`) \| `boolean` | Called when the canvas is clicked. **Param** **event** The original mouse event. |
|
|
29
|
+
| `onCanvasDoubleClick?` | ((`event`) => `void`) \| `boolean` | Called when the canvas is double-clicked. **Param** **event** The original mouse event. |
|
|
30
|
+
| `onCanvasRightClick?` | ((`event`) => `void`) \| `boolean` | Called when the canvas is right-clicked. **Param** **event** The original mouse event. |
|
|
31
|
+
| `onClusterClick?` | ((`cluster`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a cluster hull is clicked (empty space inside a clusterBy hull). **Param** **cluster** The cluster that was clicked. **Param** **hitElements** All elements that were hit by the click. **Param** **event** The original mouse event. |
|
|
32
|
+
| `onClusterDoubleClick?` | ((`cluster`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a cluster hull is double-clicked. **Param** **cluster** The cluster that was double-clicked. **Param** **hitElements** All elements that were hit by the double-click. **Param** **event** The original mouse event. |
|
|
33
|
+
| `onClusterRightClick?` | ((`cluster`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a cluster hull is right-clicked. **Param** **cluster** The cluster that was right-clicked. **Param** **hitElements** All elements that were hit by the right-click. **Param** **event** The original mouse event. |
|
|
34
|
+
| `onNodeClick?` | ((`node`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a node is clicked. **Param** **node** The node that was clicked. **Param** **hitElements** All elements that were hit by the click. **Param** **event** The original mouse event. |
|
|
35
|
+
| `onNodeDoubleClick?` | ((`node`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a node is double-clicked. **Param** **node** The node that was double-clicked. **Param** **hitElements** All elements that were hit by the double-click. **Param** **event** The original mouse event. |
|
|
36
|
+
| `onNodeRightClick?` | ((`node`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a node is right-clicked. **Param** **node** The node that was right-clicked. **Param** **hitElements** All elements that were hit by the right-click. **Param** **event** The original mouse event. |
|
|
37
|
+
| `onRelationshipClick?` | ((`relationship`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a relationship is clicked. **Param** **relationship** The relationship that was clicked. **Param** **hitElements** All elements that were hit by the click. **Param** **event** The original mouse event. |
|
|
38
|
+
| `onRelationshipDoubleClick?` | ((`relationship`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a relationship is double-clicked. **Param** **relationship** The relationship that was double-clicked. **Param** **hitElements** All elements that were hit by the double-click. **Param** **event** The original mouse event. |
|
|
39
|
+
| `onRelationshipRightClick?` | ((`relationship`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a relationship is right-clicked. **Param** **relationship** The relationship that was right-clicked. **Param** **hitElements** All elements that were hit by the right-click. **Param** **event** The original mouse event. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: ClickInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type ClickInteractionOptions = {
|
|
7
|
+
selectOnClick?: boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Options for the click interaction handler to customize its behavior.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Default value | Description |
|
|
16
|
+
| ------ | ------ | ------ | ------ |
|
|
17
|
+
| `selectOnClick?` | `boolean` | `false` | Whether to select the node, relationship, or cluster members on click. Clicking something that is already selected clears the selection. |
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: DragNodeInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type DragNodeInteractionCallbacks = {
|
|
7
|
+
onDrag?: ((nodes, evt) => void) | boolean;
|
|
8
|
+
onDragEnd?: ((nodes, evt) => void) | boolean;
|
|
9
|
+
onDragStart?: ((nodes, evt) => void) | boolean;
|
|
10
|
+
};
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Callbacks for the drag node interaction handler.
|
|
14
|
+
|
|
15
|
+
## Properties
|
|
16
|
+
|
|
17
|
+
| Property | Type | Description |
|
|
18
|
+
| ------ | ------ | ------ |
|
|
19
|
+
| `onDrag?` | ((`nodes`, `evt`) => `void`) \| `boolean` | Called when node(s) are dragged **Param** **nodes** The node(s) being dragged. **Param** **event** The original mouse event. |
|
|
20
|
+
| `onDragEnd?` | ((`nodes`, `evt`) => `void`) \| `boolean` | Called once when node(s) are finished being dragged **Param** **nodes** The node(s) being dragged. **Param** **event** The original mouse event. |
|
|
21
|
+
| `onDragStart?` | ((`nodes`, `evt`) => `void`) \| `boolean` | Called once when node(s) are started to being dragged **Param** **nodes** The node(s) being dragged. **Param** **event** The original mouse event. |
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: DrawInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type DrawInteractionOptions = {
|
|
7
|
+
ghostGraphStyling?: {
|
|
8
|
+
node?: Pick<Node, "color" | "size">;
|
|
9
|
+
relationship?: Pick<Relationship, "color" | "width">;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Options for the draw interaction handler.
|
|
15
|
+
|
|
16
|
+
## Properties
|
|
17
|
+
|
|
18
|
+
| Property | Type | Description |
|
|
19
|
+
| ------ | ------ | ------ |
|
|
20
|
+
| `ghostGraphStyling?` | \{ `node?`: `Pick`\<`Node`, `"color"` \| `"size"`\>; `relationship?`: `Pick`\<`Relationship`, `"color"` \| `"width"`\>; \} | Styling for the ghost graph that is shown when drawing. |
|
|
21
|
+
| `ghostGraphStyling.node?` | `Pick`\<`Node`, `"color"` \| `"size"`\> | Styling for the ghost node. |
|
|
22
|
+
| `ghostGraphStyling.relationship?` | `Pick`\<`Relationship`, `"color"` \| `"width"`\> | Styling for the ghost relationship. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: HoverInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type HoverInteractionCallbacks = {
|
|
7
|
+
onHover?: ((element, hitElements, event) => void) | boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Callbacks for the hover interaction handler.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `onHover?` | ((`element`, `hitElements`, `event`) => `void`) \| `boolean` | Called when a node or relationship is hovered. **Param** **element** The highest-priority node or relationship under the pointer, or `undefined` if nothing is hovered. **Param** **hitElements** All nodes, relationships, and clusters under the pointer. **Param** **event** The original mouse event. This callback is called every time the mouse moves, even when no element is hovered or the current element is already hovered. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: HoverInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type HoverInteractionOptions = {
|
|
7
|
+
drawShadowOnHover?: boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Options for the hover interaction handler to customize its behavior.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `drawShadowOnHover?` | `boolean` | Whether to draw a shadow on hover for nodes/relationships **Default** `false` |
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: KeyboardInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type KeyboardInteractionCallbacks = {
|
|
7
|
+
onCanvasBlur?: ((event) => void) | boolean;
|
|
8
|
+
onCanvasFocus?: ((event) => void) | boolean;
|
|
9
|
+
onContextMenu?: ((element, event) => void) | boolean;
|
|
10
|
+
onKeyDown?: ((event, focusedElement?) => void) | boolean;
|
|
11
|
+
onKeyUp?: ((event, focusedElement?) => void) | boolean;
|
|
12
|
+
onNodeBlur?: ((node, event) => void) | boolean;
|
|
13
|
+
onNodeFocus?: ((node, event) => void) | boolean;
|
|
14
|
+
onNodeMove?: ((nodes, event) => void) | boolean;
|
|
15
|
+
onRelationshipBlur?: ((relationship, event) => void) | boolean;
|
|
16
|
+
onRelationshipFocus?: ((relationship, event) => void) | boolean;
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Callbacks for the keyboard interaction handler.
|
|
21
|
+
|
|
22
|
+
## Properties
|
|
23
|
+
|
|
24
|
+
| Property | Type | Description |
|
|
25
|
+
| ------ | ------ | ------ |
|
|
26
|
+
| `onCanvasBlur?` | ((`event`) => `void`) \| `boolean` | Called when the NVL canvas container loses DOM focus **Param** **event** The original focus event. |
|
|
27
|
+
| `onCanvasFocus?` | ((`event`) => `void`) \| `boolean` | Called when the NVL canvas container receives DOM focus **Param** **event** The original focus event. |
|
|
28
|
+
| `onContextMenu?` | ((`element`, `event`) => `void`) \| `boolean` | Called when the context menu key is pressed while the NVL container is focused. **Param** **element** The focused node or relationship, or undefined if the canvas itself is focused. **Param** **event** The original keyboard event. |
|
|
29
|
+
| `onKeyDown?` | ((`event`, `focusedElement?`) => `void`) \| `boolean` | Called when a key is pressed while the NVL container is focused. Fires for all key events, including those handled by the built-in navigation. **Param** **event** The original keyboard event. **Param** **focusedElement** The currently focused node or relationship, if any. |
|
|
30
|
+
| `onKeyUp?` | ((`event`, `focusedElement?`) => `void`) \| `boolean` | Called when a key is released while the NVL container is focused **Param** **event** The original keyboard event. **Param** **focusedElement** The currently focused node or relationship, if any. |
|
|
31
|
+
| `onNodeBlur?` | ((`node`, `event`) => `void`) \| `boolean` | Called when a node loses focus (via keyboard navigation) **Param** **node** The node that lost focus. **Param** **event** The original keyboard event that triggered the focus change. |
|
|
32
|
+
| `onNodeFocus?` | ((`node`, `event`) => `void`) \| `boolean` | Called when a node receives focus (via keyboard navigation) **Param** **node** The node that received focus. **Param** **event** The original keyboard event that triggered the focus change. |
|
|
33
|
+
| `onNodeMove?` | ((`nodes`, `event`) => `void`) \| `boolean` | Called when node(s) are moved with the keyboard. **Param** **nodes** The moved node(s), with their updated positions. **Param** **event** The original keyboard event. |
|
|
34
|
+
| `onRelationshipBlur?` | ((`relationship`, `event`) => `void`) \| `boolean` | Called when a relationship loses focus (via keyboard navigation) **Param** **relationship** The relationship that lost focus. **Param** **event** The original keyboard event that triggered the focus change. |
|
|
35
|
+
| `onRelationshipFocus?` | ((`relationship`, `event`) => `void`) \| `boolean` | Called when a relationship receives focus (via keyboard navigation) **Param** **relationship** The relationship that received focus. **Param** **event** The original keyboard event that triggered the focus change. |
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: KeyboardInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type KeyboardInteractionOptions = {
|
|
7
|
+
canvasOutlineColor?: string;
|
|
8
|
+
contextMenuKey?: string[];
|
|
9
|
+
enterGraphKey?: string[];
|
|
10
|
+
exitGraphKey?: string[];
|
|
11
|
+
largeMoveStep?: number;
|
|
12
|
+
largeMoveStepModifier?: "Shift" | "Ctrl" | "Alt" | "Meta";
|
|
13
|
+
moveDownKey?: string[];
|
|
14
|
+
moveLeftKey?: string[];
|
|
15
|
+
moveRightKey?: string[];
|
|
16
|
+
moveStep?: number;
|
|
17
|
+
moveUpKey?: string[];
|
|
18
|
+
navigateBackwardKey?: string[];
|
|
19
|
+
navigateForwardKey?: string[];
|
|
20
|
+
};
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Options for the keyboard interaction handler.
|
|
24
|
+
Allows configuring which keys trigger specific navigation actions.
|
|
25
|
+
Each key combo is an array of strings: the last element is the primary key (`event.key`),
|
|
26
|
+
and any preceding elements are modifier keys (`'Shift'`, `'Ctrl'`, `'Alt'`, `'Meta'`).
|
|
27
|
+
|
|
28
|
+
## Example
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
import { KeyboardInteractionOptions } from '@neo4j-nvl/interaction-handlers'
|
|
32
|
+
|
|
33
|
+
const options: KeyboardInteractionOptions = {
|
|
34
|
+
navigateForwardKey: ['Tab'],
|
|
35
|
+
contextMenuKey: ['Shift', 'F10']
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Properties
|
|
40
|
+
|
|
41
|
+
| Property | Type | Description |
|
|
42
|
+
| ------ | ------ | ------ |
|
|
43
|
+
| `canvasOutlineColor?` | `string` | The color of the outline shown when the canvas receives keyboard focus. Default: `'#30839D'` |
|
|
44
|
+
| `contextMenuKey?` | `string`[] | Key combo for opening the context menu on the focused element. Default: `['Shift', 'F10']` |
|
|
45
|
+
| `enterGraphKey?` | `string`[] | Key combo for entering the graph and focusing the first element. Default: `['Enter']` |
|
|
46
|
+
| `exitGraphKey?` | `string`[] | Key combo for exiting the graph (blur focused element and container). Default: `['Escape']` |
|
|
47
|
+
| `largeMoveStep?` | `number` | Distance in screen pixels the node(s) are moved per key press while [KeyboardInteractionOptions.largeMoveStepModifier](#largemovestepmodifier) is held. Default: `50` |
|
|
48
|
+
| `largeMoveStepModifier?` | `"Shift"` \| `"Ctrl"` \| `"Alt"` \| `"Meta"` | Modifier key that, held together with a move key, applies [KeyboardInteractionOptions.largeMoveStep](#largemovestep) instead of [KeyboardInteractionOptions.moveStep](#movestep). Default: `'Shift'` |
|
|
49
|
+
| `moveDownKey?` | `string`[] | Key combo for moving the selected (or focused) node(s) down. Default: `['ArrowDown']` |
|
|
50
|
+
| `moveLeftKey?` | `string`[] | Key combo for moving the selected (or focused) node(s) left. Default: `['ArrowLeft']` |
|
|
51
|
+
| `moveRightKey?` | `string`[] | Key combo for moving the selected (or focused) node(s) right. Default: `['ArrowRight']` |
|
|
52
|
+
| `moveStep?` | `number` | Distance in screen pixels the node(s) are moved per key press. Converted to graph coordinates using the current zoom level, so the node travels the same visible distance however far the graph is zoomed in or out. Default: `5` |
|
|
53
|
+
| `moveUpKey?` | `string`[] | Key combo for moving the selected (or focused) node(s) up. Default: `['ArrowUp']` |
|
|
54
|
+
| `navigateBackwardKey?` | `string`[] | Key combo for navigating focus to the previous element. Default: `['Shift', 'Tab']` |
|
|
55
|
+
| `navigateForwardKey?` | `string`[] | Key combo for navigating focus to the next element. Default: `['Tab']` |
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: LassoInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type LassoInteractionCallbacks = {
|
|
7
|
+
onLassoSelect?: (({ nodes, rels }, event) => void) | boolean;
|
|
8
|
+
onLassoStarted?: ((event) => void) | boolean;
|
|
9
|
+
};
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Callbacks for the lasso interaction handler.
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
| Property | Type | Description |
|
|
17
|
+
| ------ | ------ | ------ |
|
|
18
|
+
| `onLassoSelect?` | ((`{ nodes, rels }`, `event`) => `void`) \| `boolean` | Called once when the user releases the mouse after lasso selecting. **Param** **selectionObject** The selected nodes and relationships. **Param** **event** The original mouse event. |
|
|
19
|
+
| `onLassoStarted?` | ((`event`) => `void`) \| `boolean` | Called once when the user presses the mouse on the canvas, starting the lasso. **Param** **event** The original mouse event. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: LassoInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type LassoInteractionOptions = {
|
|
7
|
+
selectOnRelease?: boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Options for the lasso interaction handler to customize its behavior.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `selectOnRelease?` | `boolean` | If true, the selected items will be automatically selected when the gesture is finished. **Default** `false` |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: PanInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PanInteractionCallbacks = {
|
|
7
|
+
onPan?: ((panning, event) => void) | boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Callbacks for the pan interaction handler.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `onPan?` | ((`panning`, `event`) => `void`) \| `boolean` | Called when the canvas is panned. **Param** **panning** The panning coordinates. **Param** **event** The original mouse event. |
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: PanInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type PanInteractionOptions = {
|
|
7
|
+
controlledPan?: boolean;
|
|
8
|
+
excludeNodeMargin?: boolean;
|
|
9
|
+
};
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Options for the pan interaction handler to customize its behavior.
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
| Property | Type | Default value | Description |
|
|
17
|
+
| ------ | ------ | ------ | ------ |
|
|
18
|
+
| `controlledPan?` | `boolean` | `false` | If true, the interaction handler will not update the NVL instance directly. Instead, it will only call the onPan callback with the calculated values, allowing the parent application to control when and how to apply the pan update. |
|
|
19
|
+
| `excludeNodeMargin?` | `boolean` | `false` | Whether to not pan when dragging within a certain margin of a node |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: ZoomInteractionCallbacks
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type ZoomInteractionCallbacks = {
|
|
7
|
+
onZoomAndPan?: ((zoomLevel, panX, panY, event) => void) | boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Callbacks for the zoom interaction handler.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Description |
|
|
16
|
+
| ------ | ------ | ------ |
|
|
17
|
+
| `onZoomAndPan?` | ((`zoomLevel`, `panX`, `panY`, `event`) => `void`) \| `boolean` | Called when the canvas is zoomed and panned. **Param** **zoomLevel** The zoom level. **Param** **panX** The new pan X coordinate. **Param** **panY** The new pan Y coordinate. **Param** **event** The original mouse wheel event. |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Type Alias: ZoomInteractionOptions
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
type ZoomInteractionOptions = {
|
|
7
|
+
controlledZoom?: boolean;
|
|
8
|
+
};
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Options for the zoom interaction handler to customize its behavior.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
| Property | Type | Default value | Description |
|
|
16
|
+
| ------ | ------ | ------ | ------ |
|
|
17
|
+
| `controlledZoom?` | `boolean` | `false` | If true, the interaction handler will not update the NVL instance directly. Instead, it will only call the onZoomAndPan callback with the calculated values, allowing the parent application to control when and how to apply the zoom update. |
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
[//]: # (This file is auto-generated by scripts/docs/generate-skills.mjs, do not edit it manually)
|
|
2
|
+
|
|
3
|
+
# Function: StaticPictureWrapper()
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
function StaticPictureWrapper(props): Element | null;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
A React component that creates a static picture of a graph using NVL.
|
|
10
|
+
This component is useful for generating static visualizations of graphs without requiring user interaction.
|
|
11
|
+
The component automatically fits all nodes in the viewport before capturing the image
|
|
12
|
+
NVL is automatically destroyed after capturing the image to free up resources.
|
|
13
|
+
|
|
14
|
+
## Parameters
|
|
15
|
+
|
|
16
|
+
| Parameter | Type | Description |
|
|
17
|
+
| ------ | ------ | ------ |
|
|
18
|
+
| `props` | [`StaticPictureWrapperProps`](../type-aliases/StaticPictureWrapperProps.md) | The component properties |
|
|
19
|
+
|
|
20
|
+
## Returns
|
|
21
|
+
|
|
22
|
+
`Element` \| `null`
|
|
23
|
+
|
|
24
|
+
An img element displaying the graph visualization, or null during rendering
|
|
25
|
+
|
|
26
|
+
## Example
|
|
27
|
+
|
|
28
|
+
```tsx
|
|
29
|
+
<StaticPictureWrapper
|
|
30
|
+
nodes={nodes}
|
|
31
|
+
rels={relationships}
|
|
32
|
+
width={500}
|
|
33
|
+
height={500}
|
|
34
|
+
/>
|
|
35
|
+
```
|