1
1
import type { ComputedRef } from 'vue'
2
2
import { computed } from 'vue'
3
+ import type { MaybeRefOrGetter } from '@vueuse/core'
4
+ import { toValue } from '@vueuse/core'
3
5
import type { GraphNode , Node } from '../types'
4
6
import { useVueFlow } from './useVueFlow'
5
7
@@ -13,17 +15,23 @@ type NodeData<NodeType extends Node = GraphNode> = NonNullable<NodeType['data']>
13
15
* @param guard - Optional guard function to narrow down the node type
14
16
* @returns An array of data objects
15
17
*/
16
- export function useNodesData < NodeType extends Node = GraphNode > ( nodeId : string ) : ComputedRef < NodeData < NodeType > | null >
17
- export function useNodesData < NodeType extends Node = GraphNode > ( nodeIds : string [ ] ) : ComputedRef < NodeData < NodeType > [ ] >
18
18
export function useNodesData < NodeType extends Node = GraphNode > (
19
- nodeIds : string [ ] ,
19
+ nodeId : MaybeRefOrGetter < string > ,
20
+ ) : ComputedRef < NodeData < NodeType > | null >
21
+ export function useNodesData < NodeType extends Node = GraphNode > (
22
+ nodeIds : MaybeRefOrGetter < string [ ] > ,
23
+ ) : ComputedRef < NodeData < NodeType > [ ] >
24
+ export function useNodesData < NodeType extends Node = GraphNode > (
25
+ nodeIds : MaybeRefOrGetter < string [ ] > ,
20
26
guard : ( node : Node ) => node is NodeType ,
21
27
) : ComputedRef < NodeData < NodeType > [ ] >
22
- export function useNodesData ( nodeIds : any ) : any {
28
+ export function useNodesData ( _nodeIds : any ) : any {
23
29
const { findNode } = useVueFlow ( )
24
30
25
31
return computed ( {
26
32
get ( ) {
33
+ const nodeIds = toValue ( _nodeIds )
34
+
27
35
if ( ! Array . isArray ( nodeIds ) ) {
28
36
return findNode ( nodeIds ) ?. data || null
29
37
}
0 commit comments