UNPKG

@sanity/vision

Version:

Sanity plugin for running/debugging GROQ-queries against Sanity datasets

19 lines (14 loc) 599 B
import {type SanityClient} from '@sanity/client' import {useEffect, useState} from 'react' export function useDatasets(client: SanityClient): string[] | Error | undefined { const projectId = client.config().projectId const [datasets, setDatasets] = useState<string[] | Error | undefined>() useEffect(() => { const datasets$ = client.observable.datasets.list().subscribe({ next: (result) => setDatasets(result.map((ds) => ds.name)), error: (err) => setDatasets(err), }) return () => datasets$.unsubscribe() }, [client, projectId]) return datasets || undefined }