diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index bdaa4791..574cdf5d 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -4,6 +4,9 @@ - update internals on node resizer updates - re-observe node when `node.hidden` is toggled +- update `updateNodeData` argument type - thanks @ogroppo +- add `selectable`, `deletable` and `draggable` to node and edge props +- add `parentId` to node props ## 12.0.0-next.18 diff --git a/packages/react/src/components/NodeWrapper/index.tsx b/packages/react/src/components/NodeWrapper/index.tsx index 3768a6d2..279cda82 100644 --- a/packages/react/src/components/NodeWrapper/index.tsx +++ b/packages/react/src/components/NodeWrapper/index.tsx @@ -218,6 +218,7 @@ export function NodeWrapper({ dragging={dragging} dragHandle={node.dragHandle} zIndex={internals.z} + parentId={node.parentId} {...nodeDimensions} /> diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 5078722c..fbcf479a 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,10 @@ # @xyflow/svelte +## 0.1.4 + +- add `selectable`, `deletable` and `draggable` to node and edge props +- add `parentId` to node props + ## 0.1.3 - fix `NodeToolbar` for subflows diff --git a/packages/svelte/src/lib/components/NodeWrapper/NodeWrapper.svelte b/packages/svelte/src/lib/components/NodeWrapper/NodeWrapper.svelte index a70fa7f4..6fe6b648 100644 --- a/packages/svelte/src/lib/components/NodeWrapper/NodeWrapper.svelte +++ b/packages/svelte/src/lib/components/NodeWrapper/NodeWrapper.svelte @@ -44,6 +44,8 @@ export let height: $$Props['height'] = undefined; export let dragHandle: $$Props['dragHandle'] = undefined; export let initialized: $$Props['initialized'] = false; + export let parentId: $$Props['parentId'] = undefined; + let className: string = ''; export { className as class }; @@ -201,6 +203,7 @@ {dragging} {draggable} {dragHandle} + {parentId} type={nodeType} isConnectable={$connectableStore} positionAbsoluteX={positionX} diff --git a/packages/svelte/src/lib/components/NodeWrapper/types.ts b/packages/svelte/src/lib/components/NodeWrapper/types.ts index 56924ead..c0f5ca79 100644 --- a/packages/svelte/src/lib/components/NodeWrapper/types.ts +++ b/packages/svelte/src/lib/components/NodeWrapper/types.ts @@ -21,6 +21,7 @@ export type NodeWrapperProps = Pick< | 'height' | 'initialWidth' | 'initialHeight' + | 'parentId' > & { measuredWidth?: number; measuredHeight?: number; diff --git a/packages/svelte/src/lib/container/NodeRenderer/NodeRenderer.svelte b/packages/svelte/src/lib/container/NodeRenderer/NodeRenderer.svelte index ecc1aede..4afc5637 100644 --- a/packages/svelte/src/lib/container/NodeRenderer/NodeRenderer.svelte +++ b/packages/svelte/src/lib/container/NodeRenderer/NodeRenderer.svelte @@ -83,6 +83,7 @@ initialHeight={node.initialHeight} measuredWidth={node.measured.width} measuredHeight={node.measured.height} + parentId={node.parentId} {resizeObserver} on:nodeclick on:nodemouseenter diff --git a/packages/system/src/types/nodes.ts b/packages/system/src/types/nodes.ts index b728ad0b..5f70660b 100644 --- a/packages/system/src/types/nodes.ts +++ b/packages/system/src/types/nodes.ts @@ -87,7 +87,18 @@ export type InternalNodeBase = NodeType & */ export type NodeProps = Pick< NodeType, - 'id' | 'data' | 'width' | 'height' | 'sourcePosition' | 'targetPosition' | 'selected' | 'dragHandle' | 'selectable' | 'deletable' | 'draggable' + | 'id' + | 'data' + | 'width' + | 'height' + | 'sourcePosition' + | 'targetPosition' + | 'selected' + | 'dragHandle' + | 'selectable' + | 'deletable' + | 'draggable' + | 'parentId' > & Required> & { /** whether a node is connectable or not */