diff --git a/.changeset/nasty-forks-drum.md b/.changeset/nasty-forks-drum.md new file mode 100644 index 000000000000..ac3d51918db0 --- /dev/null +++ b/.changeset/nasty-forks-drum.md @@ -0,0 +1,5 @@ +--- +'@sveltejs/kit': patch +--- + +fix: use fallback if `untrack` doesn't exist in svelte package diff --git a/packages/kit/src/runtime/client/client.js b/packages/kit/src/runtime/client/client.js index 84beeb95d79a..7d07af6aa5a6 100644 --- a/packages/kit/src/runtime/client/client.js +++ b/packages/kit/src/runtime/client/client.js @@ -1,5 +1,8 @@ import { BROWSER, DEV } from 'esm-env'; -import { onMount, tick, untrack } from 'svelte'; +import * as svelte from 'svelte'; +const { onMount, tick } = svelte; +// Svelte 4 and under don't have `untrack`, so we have to fallback if `untrack` is not exported +const untrack = svelte.untrack ?? ((value) => value()); import { decode_params, decode_pathname,