import { Display } from "@/lib/types/types"; import { useAuth } from "@clerk/nextjs"; export type UpdateDisplayData = Partial; export const fetcher = async ( url: string, getToken: () => Promise, options?: RequestInit ) => { const token = await getToken(); const res = await fetch(url, { ...options, headers: { "Content-Type": "application/json", Authorization: `Bearer ${token}`, ...options?.headers, }, }); if (!res.ok) { const error = new Error("An error occurred while fetching the data."); const info = await res.json().catch(() => ({})); (error as any).info = info; (error as any).status = res.status; throw error; } if (res.status === 204) { return null; } return res.json(); };