import { redirect } from "@sveltejs/kit"; import version from "$lib/json/version.json"; import wheel from "$lib/json/wheel.json"; export const prerender = true; const DOCS_BUCKET = "https://gradio-docs-json.s3.us-west-2.amazonaws.com"; const VERSION = version.version; let cache = new Map(); async function load_release_docs( version: string ): Promise { if (cache.has(version)) { return cache.get(version); } let docs_json = await fetch(`${DOCS_BUCKET}/${version}/docs.json`); let json = await docs_json.json(); cache.set(version, json); return json; } async function load_main_docs(): Promise { return await import("$lib/json/docs.json"); } export async function load({ params, url }) { if (params?.version === VERSION) { throw redirect(302, url.href.replace(`/${params.version}`, "")); } let docs_json = params?.version === "main" ? await load_main_docs() : await load_release_docs(params.version || VERSION); await load_main_docs(); let docs: { [key: string]: any } = docs_json.docs; let js = docs_json.js || {}; let js_pages = docs_json.js_pages || []; let js_client = docs_json.js_client; let on_main = params.version === "main"; let pages: any = docs_json.pages; let url_version = params?.version || VERSION; return { docs, js, js_pages, on_main, wheel, pages, js_client, url_version, VERSION }; }