UNPKG

@nuxtjs/sanity

Version:
15 lines (14 loc) 595 B
import { hash } from "ohash"; import { reactive } from "vue"; import { useLazyAsyncData } from "#imports"; import { useSanity } from "./useSanity.js"; export const useLazySanityQuery = (query, _params, _options = {}) => { const { client, ...options } = _options; const sanity = useSanity(client); const params = _params ? reactive(_params) : void 0; if (params) { options.watch = options.watch || []; options.watch.push(params); } return useLazyAsyncData("sanity-" + hash(query + (params ? JSON.stringify(params) : "")), () => sanity.fetch(query, params || {}), options); };