MCPcopy Create free account
hub / github.com/triggerdotdev/jsonhero-web / useJsonTree

Function useJsonTree

app/hooks/useJsonTree.tsx:49–69  ·  view source on GitHub ↗
(options: JsonTreeOptions)

Source from the content-addressed store, hash-verified

47}
48
49export function useJsonTree(options: JsonTreeOptions): UseJsonTreeInstance {
50 const parentRef = useRef<HTMLDivElement>(null);
51
52 const { doc } = useJsonDoc();
53 const [json] = useJson();
54 const jsonNodes = useMemo(() => {
55 return generateTreeViewNodes(json);
56 }, [json]);
57
58 const tree = useVirtualTree({
59 id: doc.id,
60 nodes: jsonNodes,
61 parentRef,
62 estimateSize: useCallback((index) => 32, []),
63 initialRect,
64 overscan: options.overscan,
65 persistState: true,
66 });
67
68 return { tree, parentRef };
69}
70
71export function useJsonTreeViewContext(): JsonTreeViewType {
72 const context = useContext(JsonTreeViewContext);

Callers 1

JsonTreeViewProviderFunction · 0.85

Calls 4

useJsonDocFunction · 0.90
useJsonFunction · 0.90
useVirtualTreeFunction · 0.90
generateTreeViewNodesFunction · 0.85

Tested by

no test coverage detected