UNPKG

svelte-query-params

Version:

A lightweight, dead-simple, type-safe reactive query parameter store built for Svelte 5.

35 lines (34 loc) 826 B
// src/lib/adapters/sveltekit.ts import { browser, building } from "$app/environment"; import { goto } from "$app/navigation"; import { redirect } from "@sveltejs/kit"; var DUMMY_URL = new URL("https://kit.svelte.dev"); function sveltekit(options = {}) { const { replace = false } = options; return { isBrowser: () => browser, browser: { read() { if (building) return DUMMY_URL; return window.location; }, save(search, hash) { const searchString = search.length ? search : "?"; goto(`${searchString}${hash}`, { keepFocus: true, noScroll: true, replaceState: replace }); } }, server: { save(search) { if (building) return; redirect(307, search); } } }; } export { sveltekit };