@sanity/vision
Version:
Sanity plugin for running/debugging GROQ-queries against Sanity datasets
19 lines (15 loc) • 491 B
text/typescript
export function encodeQueryString(
query: string,
params: Record<string, unknown> = {},
options: Record<string, string | string[]> = {},
): string {
const searchParams = new URLSearchParams()
searchParams.set('query', query)
for (const [key, value] of Object.entries(params)) {
searchParams.set(`$${key}`, JSON.stringify(value))
}
for (const [key, value] of Object.entries(options)) {
if (value) searchParams.set(key, `${value}`)
}
return `?${searchParams}`
}