diff --git a/.changeset/sveltekit-peer-kit3.md b/.changeset/sveltekit-peer-kit3.md new file mode 100644 index 0000000000..2691a183eb --- /dev/null +++ b/.changeset/sveltekit-peer-kit3.md @@ -0,0 +1,5 @@ +--- +"better-auth": patch +--- + +SvelteKit 3 projects can now install Better Auth without `--legacy-peer-deps`. The `@sveltejs/kit` peer range now includes `^3.0.0`; SvelteKit 2 projects are unaffected. diff --git a/.gitignore b/.gitignore index 06ed0db736..974d2bdcb2 100644 --- a/.gitignore +++ b/.gitignore @@ -128,6 +128,7 @@ out # Nuxt.js build / generate output .nuxt +.svelte-kit dist # Gatsby files diff --git a/docs/content/docs/concepts/cli.mdx b/docs/content/docs/concepts/cli.mdx index 8d02c01ed8..d9357b83ab 100644 --- a/docs/content/docs/concepts/cli.mdx +++ b/docs/content/docs/concepts/cli.mdx @@ -197,6 +197,6 @@ npx auth@latest secret **Error: Cannot find module X** -The CLI resolves most imports for you: `tsconfig.json` path aliases (including SvelteKit's `$lib`) and stubbed framework virtual modules (`$env/*`, `$app/*`, `cloudflare:workers`, Vite assets like `?raw`). For SvelteKit, run `svelte-kit sync` first so `.svelte-kit/tsconfig.json` exists. +The CLI resolves most imports for you: `tsconfig.json` path aliases, `package.json` subpath imports (including SvelteKit 3's `#lib`), and stubbed framework virtual modules (`$env/*`, `$app/*`, `cloudflare:workers`, Vite assets like `?raw`). On SvelteKit 2, run `svelte-kit sync` first so `.svelte-kit/tsconfig.json` exists and `$lib` resolves. A few module types can't load outside their bundler (e.g. `.svelte` components or `import.meta.glob`). Keep those out of your config file's import graph. diff --git a/docs/content/docs/installation.mdx b/docs/content/docs/installation.mdx index b181948c97..66c91d0018 100644 --- a/docs/content/docs/installation.mdx +++ b/docs/content/docs/installation.mdx @@ -277,9 +277,9 @@ description: Learn how to configure Better Auth in your project. ```ts title="hooks.server.ts" - import { auth } from "$lib/auth"; // path to your auth file + import { auth } from "#lib/auth.js"; // SvelteKit 2: "$lib/auth" import { svelteKitHandler } from "better-auth/svelte-kit"; - import { building } from '$app/environment' + import { building } from "$app/env"; // SvelteKit 2: "$app/environment" export async function handle({ event, resolve }) { return svelteKitHandler({ event, resolve, auth, building }); diff --git a/docs/content/docs/integrations/svelte-kit.mdx b/docs/content/docs/integrations/svelte-kit.mdx index f2e3804ad7..6cfa055480 100644 --- a/docs/content/docs/integrations/svelte-kit.mdx +++ b/docs/content/docs/integrations/svelte-kit.mdx @@ -7,14 +7,20 @@ description: Integrate Better Auth with SvelteKit. Before you start, make sure you have a Better Auth instance configured. If you haven't done that yet, check out the [installation](/docs/installation). + + The examples use SvelteKit 3 imports. On SvelteKit 2, import your files from + `$lib/...` instead of `#lib/...` and `building` from `$app/environment` + instead of `$app/env`. + + ### Mount the handler We need to mount the handler to SvelteKit server hook. ```ts title="hooks.server.ts" -import { auth } from "$lib/auth"; +import { auth } from "#lib/auth.js"; import { svelteKitHandler } from "better-auth/svelte-kit"; -import { building } from "$app/environment"; +import { building } from "$app/env"; export async function handle({ event, resolve }) { return svelteKitHandler({ event, resolve, auth, building }); @@ -26,9 +32,9 @@ export async function handle({ event, resolve }) { The `svelteKitHandler` does not automatically populate `event.locals.user` or `event.locals.session`. If you want to access the current session in your server code (e.g., in `+layout.server.ts`, actions, or endpoints), populate `event.locals` in your `handle` hook: ```ts title="hooks.server.ts" -import { auth } from "$lib/auth"; +import { auth } from "#lib/auth.js"; import { svelteKitHandler } from "better-auth/svelte-kit"; -import { building } from "$app/environment"; +import { building } from "$app/env"; export async function handle({ event, resolve }) { // Fetch current session from Better Auth @@ -87,7 +93,7 @@ Some of the actions are reactive. The client use [nano-store](https://github.com ```svelte
diff --git a/e2e/integration/sveltekit/e2e/sveltekit.spec.ts b/e2e/integration/sveltekit/e2e/sveltekit.spec.ts new file mode 100644 index 0000000000..c6cb336620 --- /dev/null +++ b/e2e/integration/sveltekit/e2e/sveltekit.spec.ts @@ -0,0 +1,68 @@ +import type { ChildProcessWithoutNullStreams } from "node:child_process"; +import { spawn } from "node:child_process"; +import { fileURLToPath } from "node:url"; +import { terminate } from "@better-auth-test/test-utils/playwright"; +import { expect, test } from "@playwright/test"; + +const root = fileURLToPath(new URL("..", import.meta.url)); + +let server: ChildProcessWithoutNullStreams; +let baseURL: string; + +test.beforeAll(async () => { + server = spawn("pnpm", ["run", "dev"], { + cwd: root, + stdio: "pipe", + env: { ...process.env, NO_COLOR: "1" }, + }); + server.stderr.on("data", (data) => console.error(data.toString())); + baseURL = await new Promise((resolve, reject) => { + server.stdout.on("data", (data) => { + const match = data.toString().match(/http:\/\/localhost:\d+/); + if (match) resolve(match[0]); + }); + server.on("exit", (code) => + reject(new Error(`vite dev exited with code ${code}`)), + ); + }); +}); + +test.afterAll(async () => { + if (server?.pid) await terminate(server.pid); +}); + +/** + * @see https://github.com/better-auth/better-auth/issues/10928 + */ +test("signs up through a SvelteKit 3 form action and reads the session", async ({ + page, +}) => { + await page.goto(baseURL); + await page.getByLabel("Name").fill("Kit User"); + await page.getByLabel("Email").fill("kit@example.com"); + await page.getByLabel("Password").fill("password123"); + await Promise.all([ + page.waitForResponse((response) => response.request().method() === "POST"), + page.getByRole("button", { name: "Sign up" }).click(), + ]); + + // `sveltekitCookies` forwards the session cookie set inside the action. + const cookies = await page.context().cookies(); + expect( + cookies.find((cookie) => cookie.name === "better-auth.session_token"), + ).toBeDefined(); + + // `getSession` in `hooks.server.ts` reads it on the next request. + await page.goto(baseURL); + await expect( + page.getByRole("heading", { name: "Signed in as Kit User" }), + ).toBeVisible(); + + // `svelteKitHandler` routes auth endpoints to Better Auth. + const sessionResponse = await page.request.get( + `${baseURL}/api/auth/get-session`, + ); + expect(await sessionResponse.json()).toMatchObject({ + user: { name: "Kit User" }, + }); +}); diff --git a/e2e/integration/sveltekit/package.json b/e2e/integration/sveltekit/package.json new file mode 100644 index 0000000000..1345a333c6 --- /dev/null +++ b/e2e/integration/sveltekit/package.json @@ -0,0 +1,25 @@ +{ + "name": "@better-auth-test/fixtures-sveltekit", + "private": true, + "type": "module", + "scripts": { + "dev": "vite dev", + "typecheck:consumer": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json" + }, + "imports": { + "#lib/*": "./src/lib/*" + }, + "dependencies": { + "better-auth": "workspace:*" + }, + "devDependencies": { + "@better-auth-test/test-utils": "workspace:*", + "@playwright/test": "~1.58.2", + "@sveltejs/kit": "3.0.1", + "@sveltejs/vite-plugin-svelte": "7.3.1", + "svelte": "5.57.2", + "svelte-check": "4.7.6", + "typescript": "catalog:", + "vite": "8.2.0" + } +} diff --git a/e2e/integration/sveltekit/src/app.d.ts b/e2e/integration/sveltekit/src/app.d.ts new file mode 100644 index 0000000000..7b659fd22d --- /dev/null +++ b/e2e/integration/sveltekit/src/app.d.ts @@ -0,0 +1,9 @@ +declare global { + namespace App { + interface Locals { + userName: string | null; + } + } +} + +export {}; diff --git a/e2e/integration/sveltekit/src/app.html b/e2e/integration/sveltekit/src/app.html new file mode 100644 index 0000000000..b2e1b4032d --- /dev/null +++ b/e2e/integration/sveltekit/src/app.html @@ -0,0 +1,10 @@ + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ + diff --git a/e2e/integration/sveltekit/src/hooks.server.ts b/e2e/integration/sveltekit/src/hooks.server.ts new file mode 100644 index 0000000000..9fedc314c8 --- /dev/null +++ b/e2e/integration/sveltekit/src/hooks.server.ts @@ -0,0 +1,12 @@ +import type { Handle } from "@sveltejs/kit/hooks"; +import { svelteKitHandler } from "better-auth/svelte-kit"; +import { auth } from "#lib/auth.js"; +import { building } from "$app/env"; + +export const handle: Handle = async ({ event, resolve }) => { + const session = await auth.api.getSession({ + headers: event.request.headers, + }); + event.locals.userName = session?.user.name ?? null; + return svelteKitHandler({ event, resolve, auth, building }); +}; diff --git a/e2e/integration/sveltekit/src/lib/auth.ts b/e2e/integration/sveltekit/src/lib/auth.ts new file mode 100644 index 0000000000..f6346b6532 --- /dev/null +++ b/e2e/integration/sveltekit/src/lib/auth.ts @@ -0,0 +1,24 @@ +import { betterAuth } from "better-auth"; +import { memoryAdapter } from "better-auth/adapters/memory"; +import { sveltekitCookies } from "better-auth/svelte-kit"; +import { getRequestEvent } from "$app/server"; + +const database = { + user: [], + session: [], + account: [], + verification: [], +}; + +export const auth = betterAuth({ + baseURL: { + allowedHosts: ["localhost:*"], + protocol: "http", + }, + database: memoryAdapter(database), + secret: "better-auth-sveltekit-test-secret", + emailAndPassword: { + enabled: true, + }, + plugins: [sveltekitCookies(getRequestEvent)], +}); diff --git a/e2e/integration/sveltekit/src/routes/+page.server.ts b/e2e/integration/sveltekit/src/routes/+page.server.ts new file mode 100644 index 0000000000..c66c3d8128 --- /dev/null +++ b/e2e/integration/sveltekit/src/routes/+page.server.ts @@ -0,0 +1,20 @@ +import { auth } from "#lib/auth.js"; +import type { Actions, PageServerLoad } from "./$types"; + +export const load: PageServerLoad = ({ locals }) => ({ + userName: locals.userName, +}); + +export const actions: Actions = { + default: async ({ request }) => { + const form = await request.formData(); + await auth.api.signUpEmail({ + body: { + name: String(form.get("name")), + email: String(form.get("email")), + password: String(form.get("password")), + }, + headers: request.headers, + }); + }, +}; diff --git a/e2e/integration/sveltekit/src/routes/+page.svelte b/e2e/integration/sveltekit/src/routes/+page.svelte new file mode 100644 index 0000000000..d1747f7aaa --- /dev/null +++ b/e2e/integration/sveltekit/src/routes/+page.svelte @@ -0,0 +1,18 @@ + + +{#if data.userName} +

Signed in as {data.userName}

+{:else} +

Signed out

+
+ + + + +
+{/if} diff --git a/e2e/integration/sveltekit/tsconfig.json b/e2e/integration/sveltekit/tsconfig.json new file mode 100644 index 0000000000..7509b4e86f --- /dev/null +++ b/e2e/integration/sveltekit/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "$app/tsconfig", + "compilerOptions": { + "strict": true + }, + "include": ["src"] +} diff --git a/e2e/integration/sveltekit/vite.config.ts b/e2e/integration/sveltekit/vite.config.ts new file mode 100644 index 0000000000..6b9eb5d390 --- /dev/null +++ b/e2e/integration/sveltekit/vite.config.ts @@ -0,0 +1,6 @@ +import { sveltekit } from "@sveltejs/kit/vite"; +import { defineConfig } from "vite"; + +export default defineConfig({ + plugins: [sveltekit()], +}); diff --git a/packages/better-auth/package.json b/packages/better-auth/package.json index e74bf3517c..959aeee639 100644 --- a/packages/better-auth/package.json +++ b/packages/better-auth/package.json @@ -521,7 +521,7 @@ "peerDependencies": { "@lynx-js/react": "*", "@prisma/client": "^5.0.0 || ^6.0.0 || ^7.0.0", - "@sveltejs/kit": "^2.0.0", + "@sveltejs/kit": "^2.0.0 || ^3.0.0", "@tanstack/react-start": "^1.0.0", "@tanstack/solid-start": "^1.0.0", "drizzle-kit": ">=0.31.4 || >=1.0.0-beta.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ad63d29074..e6df4fb7b8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -302,7 +302,7 @@ importers: version: 1.38.0 '@vercel/analytics': specifier: ^2.0.1 - version: 2.0.1(@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(nuxt@4.5.2(8ef6acf144585147fdc629df1320a580))(react@19.2.7)(svelte@5.56.0)(vue@3.5.42(typescript@6.0.3)) + version: 2.0.1(@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(nuxt@4.5.2(8ef6acf144585147fdc629df1320a580))(react@19.2.7)(svelte@5.57.2)(vue@3.5.42(typescript@6.0.3)) '@vercel/og': specifier: ^0.11.1 version: 0.11.1(@types/node@25.9.4) @@ -338,7 +338,7 @@ importers: version: 15.0.12(@types/mdast@4.0.4)(@types/mdx@2.0.14)(@types/react@19.2.17)(fumadocs-core@16.12.0(@mdx-js/mdx@3.1.1)(@tanstack/react-router@1.170.41(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@types/estree-jsx@1.0.5)(@types/hast@3.0.4)(@types/mdast@4.0.4)(@types/react@19.2.17)(lucide-react@1.21.0(react@19.2.7))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(zod@4.5.4))(mdast-util-directive@3.1.0)(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react@19.2.7)(rolldown@1.2.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) fumadocs-typescript: specifier: ^5.2.6 - version: 5.2.6(68f004805581973de2150e24a06510a1) + version: 5.2.6(fcbb58a8ffc1eadf629bb3b69d2f2b59) fumadocs-ui: specifier: 16.12.0 version: 16.12.0(@types/mdx@2.0.14)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(fumadocs-core@16.12.0(@mdx-js/mdx@3.1.1)(@tanstack/react-router@1.170.41(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@types/estree-jsx@1.0.5)(@types/hast@3.0.4)(@types/mdast@4.0.4)(@types/react@19.2.17)(lucide-react@1.21.0(react@19.2.7))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(zod@4.5.4))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(tailwindcss@4.3.1) @@ -777,6 +777,37 @@ importers: specifier: workspace:* version: link:../test-utils + e2e/integration/sveltekit: + dependencies: + better-auth: + specifier: workspace:* + version: link:../../../packages/better-auth + devDependencies: + '@better-auth-test/test-utils': + specifier: workspace:* + version: link:../test-utils + '@playwright/test': + specifier: ~1.58.2 + version: 1.58.2 + '@sveltejs/kit': + specifier: 3.0.1 + version: 3.0.1(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + '@sveltejs/vite-plugin-svelte': + specifier: 7.3.1 + version: 7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + svelte: + specifier: 5.57.2 + version: 5.57.2 + svelte-check: + specifier: 4.7.6 + version: 4.7.6(picomatch@4.0.4)(svelte@5.57.2)(typescript@6.0.3) + typescript: + specifier: 'catalog:' + version: 6.0.3 + vite: + specifier: 8.2.0 + version: 8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0) + e2e/integration/test-utils: devDependencies: terminate: @@ -1100,7 +1131,7 @@ importers: version: 2.10.0(@opentelemetry/api@1.9.1) '@sveltejs/kit': specifier: ^2.70.1 - version: 2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + version: 2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) '@tanstack/react-start': specifier: ^1.168.60 version: 1.168.60(esbuild@0.28.1)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(rolldown@1.2.2)(rollup@4.60.4)(vite-plugin-solid@2.11.10(solid-js@1.9.11)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) @@ -3856,6 +3887,9 @@ packages: '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/sourcemap-codec@1.6.0': + resolution: {integrity: sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==} + '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} @@ -6928,6 +6962,11 @@ packages: peerDependencies: acorn: ^8.9.0 + '@sveltejs/acorn-typescript@1.0.13': + resolution: {integrity: sha512-wgKggnhZVL9Bfx1OaKKTrYY9BFRk6C8UAkQNUcIv1+llzYrIqy+RZm5HPKzn0NpEBvTVhTqB4kQyllZywsRBRQ==} + peerDependencies: + acorn: ^8.9.0 + '@sveltejs/kit@2.70.2': resolution: {integrity: sha512-RzRoRpuR2KXqc5yMO0akQHDZeT4AslOlznGITURsqHaVbtyYP4Wn3eE3gxj9JcDyNYO0crkxhdwFHc+2vkVm6w==} engines: {node: '>=18.13'} @@ -6944,20 +6983,32 @@ packages: typescript: optional: true - '@sveltejs/vite-plugin-svelte-inspector@5.0.2': - resolution: {integrity: sha512-TZzRTcEtZffICSAoZGkPSl6Etsj2torOVrx6Uw0KpXxrec9Gg6jFWQ60Q3+LmNGfZSxHRCZL7vXVZIWmuV50Ig==} - engines: {node: ^20.19 || ^22.12 || >=24} + '@sveltejs/kit@3.0.1': + resolution: {integrity: sha512-8JMCCq7ZUJELi3hbhb0+c9Rs8qnbHW90vhOfM+t1FSF4fhIpG9/FOsH4IYgcITMhbdkSrrn+Kvd9G+q8A+UO6Q==} + engines: {node: '>=22.17'} + hasBin: true peerDependencies: - '@sveltejs/vite-plugin-svelte': ^6.0.0-next.0 - svelte: '>=5.55.7 <6' - vite: '>=6.4.3 <7' + '@opentelemetry/api': ^1.0.0 + '@sveltejs/vite-plugin-svelte': ^7.0.0 + svelte: ^5.57.1 + typescript: ^6.0.0 + vite: ^8.0.12 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + typescript: + optional: true - '@sveltejs/vite-plugin-svelte@6.2.1': - resolution: {integrity: sha512-YZs/OSKOQAQCnJvM/P+F1URotNnYNeU3P2s4oIpzm1uFaqUEqRxUB0g5ejMjEb5Gjb9/PiBI5Ktrq4rUUF8UVQ==} + '@sveltejs/load-config@0.2.3': + resolution: {integrity: sha512-VT3qmUb8pRV2QrZjd8iAmtg8lf4W0TIjZbvXtz5MKei/q96teWZgGJyyidJzOjzZzvdq616eSRVeMYIQChUTAQ==} + engines: {node: '>= 18.0.0'} + + '@sveltejs/vite-plugin-svelte@7.3.1': + resolution: {integrity: sha512-ZPsLN8B1e/En+Ak5s4V7srFDT532oS0qieLsQwu63NGKsS+iAjoO2Js1BochlHlglcU+Pt7WAO3C5Ee+4f6gVA==} engines: {node: ^20.19 || ^22.12 || >=24} peerDependencies: svelte: '>=5.55.7 <6' - vite: '>=6.4.3 <7' + vite: ^8.0.0-beta.7 || ^8.0.0 '@swc/helpers@0.5.23': resolution: {integrity: sha512-5lSsMOTXURePglDfvuAQUqkGek9Hg2kksOYay2m0+XR++b2NWYL/4sWyuvVBIs8oKnJaxkdi9whaL/sqN13afw==} @@ -7423,6 +7474,9 @@ packages: '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/estree@1.0.9': + resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} + '@types/express-serve-static-core@5.1.1': resolution: {integrity: sha512-v4zIMr/cX7/d2BpAEX3KNKL/JrT1s43s96lLvvdTmza1oEvDudCqK9aF/djc/SWgy8Yh0h30TZx5VpzqFCxk5A==} @@ -8827,6 +8881,10 @@ packages: resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} engines: {node: '>=18'} + cookie@2.0.1: + resolution: {integrity: sha512-yuToqVvRrj6pfDXREyQAAv8SkAEk/8GS3jQRTiUMm66TVtBYmqQeoEjL2Lmq8Rpo6271vH76InTChTitEAm65w==} + engines: {node: '>=22'} + core-js-compat@3.49.0: resolution: {integrity: sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==} @@ -9282,6 +9340,9 @@ packages: devalue@5.9.2: resolution: {integrity: sha512-po4PAY5c53tw5XMocSnf8A/5OHhbbUftpr93aEN6BBoAdntUmK7vu7wOATqvt7cXO7m1Cl4gMVn6p7n6n4mj0w==} + devalue@5.9.4: + resolution: {integrity: sha512-sPAT4pztbu6586/hrhOnMKS17IJrvg12mXiSPSS3W5qDeN2RGgvZ0diZCm31dBbnevfVmujNO3IM2wrS4Y2Rhg==} + devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} @@ -9790,6 +9851,14 @@ packages: '@typescript-eslint/types': optional: true + esrap@2.4.0: + resolution: {integrity: sha512-CQPcneEHw/czj32uwQC52nYnax8H4SXt25FCM+LIwGZ49cMIxpOj3bP8wmzcI+Z0HIy5KkClaPhRLfCySzwHPA==} + peerDependencies: + '@typescript-eslint/types': ^8.2.0 + peerDependenciesMeta: + '@typescript-eslint/types': + optional: true + estree-util-attach-comments@3.0.0: resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} @@ -14369,10 +14438,22 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + svelte-check@4.7.6: + resolution: {integrity: sha512-t2scM//ZuVbSY/T2w6FSBw1v9s2NEmh/g+sy1lqtosW5ylBV5AF4wFb1Ts9Kf3MbfPDUDJDZ9L436YT0SPTdvw==} + engines: {node: '>= 18.0.0'} + hasBin: true + peerDependencies: + svelte: '>=5.55.7 <6' + typescript: ^5.0.0 || ^6.0.0 + svelte@5.56.0: resolution: {integrity: sha512-kTXr26t1bchFp28ROrb957LtbujpBmBDibmqMGziVpUs7awBi96TGgX6SovrA8BNoEUDVRK2Fb9FkeYlGspoVg==} engines: {node: '>=18'} + svelte@5.57.2: + resolution: {integrity: sha512-1YiPCAXT0Ct6g1vOMmSLa0Nsc3QRMvtDF32ihgglGVrugIuIK38RyDiFNXVDhtQ81TJjSO57NdMw6DyYLqSGDQ==} + engines: {node: '>=18'} + svgo@4.1.0: resolution: {integrity: sha512-bkxnTg1kSU0guhIBmibA6UUhrQmPVA1XsQLN+ylCd+UWzbnLkySOcXpyk1mrl05f+pcaCx2eHb+sp6BgMZWX+Q==} engines: {node: '>=16'} @@ -18921,6 +19002,8 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/sourcemap-codec@1.6.0': {} + '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 @@ -22589,11 +22672,15 @@ snapshots: dependencies: acorn: 8.16.0 - '@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': + '@sveltejs/acorn-typescript@1.0.13(acorn@8.18.0)': + dependencies: + acorn: 8.18.0 + + '@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': dependencies: '@standard-schema/spec': 1.1.0 '@sveltejs/acorn-typescript': 1.0.10(acorn@8.16.0) - '@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + '@sveltejs/vite-plugin-svelte': 7.3.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) '@types/cookie': 0.6.0 acorn: 8.16.0 cookie: 0.7.2 @@ -22610,24 +22697,64 @@ snapshots: '@opentelemetry/api': 1.9.1 typescript: 6.0.3 - '@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': + '@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + '@standard-schema/spec': 1.1.0 + '@sveltejs/acorn-typescript': 1.0.10(acorn@8.16.0) + '@sveltejs/vite-plugin-svelte': 7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + '@types/cookie': 0.6.0 + acorn: 8.16.0 + cookie: 0.7.2 + devalue: 5.8.1 + esm-env: 1.2.2 + kleur: 4.1.5 + magic-string: 0.30.21 + mrmime: 2.0.1 + set-cookie-parser: 3.1.0 + sirv: 3.0.2 + svelte: 5.57.2 + vite: 8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0) + optionalDependencies: + '@opentelemetry/api': 1.9.1 + typescript: 6.0.3 + optional: true + + '@sveltejs/kit@3.0.1(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': + dependencies: + '@rolldown/pluginutils': 1.0.1 + '@standard-schema/spec': 1.1.0 + '@sveltejs/vite-plugin-svelte': 7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + cookie: 2.0.1 + devalue: 5.9.4 + esm-env: 1.2.2 + magic-string: 1.2.3 + mrmime: 2.0.1 + sirv: 3.0.2 + svelte: 5.57.2 + vite: 8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0) + optionalDependencies: + '@opentelemetry/api': 1.9.1 + typescript: 6.0.3 + + '@sveltejs/load-config@0.2.3': {} + + '@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': + dependencies: + deepmerge: 4.3.1 + magic-string: 1.2.3 obug: 2.1.4 svelte: 5.56.0 vite: 8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0) + vitefu: 1.1.3(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) - '@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': + '@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) - debug: 4.4.3 deepmerge: 4.3.1 - magic-string: 0.30.21 - svelte: 5.56.0 + magic-string: 1.2.3 + obug: 2.1.4 + svelte: 5.57.2 vite: 8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0) vitefu: 1.1.3(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) - transitivePeerDependencies: - - supports-color '@swc/helpers@0.5.23': dependencies: @@ -23235,6 +23362,8 @@ snapshots: '@types/estree@1.0.8': {} + '@types/estree@1.0.9': {} + '@types/express-serve-static-core@5.1.1': dependencies: '@types/node': 25.6.0 @@ -23480,21 +23609,21 @@ snapshots: '@urql/core': 5.2.0(graphql@16.14.2) wonka: 6.3.6 - '@vercel/analytics@2.0.1(@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(nuxt@4.5.2(8ef6acf144585147fdc629df1320a580))(react@19.2.7)(svelte@5.56.0)(vue@3.5.42(typescript@6.0.3))': + '@vercel/analytics@2.0.1(@sveltejs/kit@2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(nuxt@4.5.2(8ef6acf144585147fdc629df1320a580))(react@19.2.7)(svelte@5.57.2)(vue@3.5.42(typescript@6.0.3))': optionalDependencies: - '@sveltejs/kit': 2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.56.0)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.56.0)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) + '@sveltejs/kit': 2.70.2(@opentelemetry/api@1.9.1)(@sveltejs/vite-plugin-svelte@7.3.1(svelte@5.57.2)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)) next: 16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) nuxt: 4.5.2(8ef6acf144585147fdc629df1320a580) react: 19.2.7 - svelte: 5.56.0 + svelte: 5.57.2 vue: 3.5.42(typescript@6.0.3) '@vercel/nft@1.10.2(rollup@4.60.4)': dependencies: '@mapbox/node-pre-gyp': 2.0.3 '@rollup/pluginutils': 5.3.0(rollup@4.60.4) - acorn: 8.16.0 - acorn-import-attributes: 1.9.5(acorn@8.16.0) + acorn: 8.18.0 + acorn-import-attributes: 1.9.5(acorn@8.18.0) async-sema: 3.1.1 bindings: 1.5.0 estree-walker: 2.0.2 @@ -23870,9 +23999,9 @@ snapshots: mime-types: 3.0.2 negotiator: 1.0.0 - acorn-import-attributes@1.9.5(acorn@8.16.0): + acorn-import-attributes@1.9.5(acorn@8.18.0): dependencies: - acorn: 8.16.0 + acorn: 8.18.0 acorn-jsx@5.3.2(acorn@8.16.0): dependencies: @@ -23880,7 +24009,7 @@ snapshots: acorn-loose@8.5.2: dependencies: - acorn: 8.16.0 + acorn: 8.18.0 acorn-typescript@1.4.13(acorn@8.16.0): dependencies: @@ -24922,6 +25051,8 @@ snapshots: cookie@1.1.1: {} + cookie@2.0.1: {} + core-js-compat@3.49.0: dependencies: browserslist: 4.28.8 @@ -25425,6 +25556,8 @@ snapshots: devalue@5.9.2: {} + devalue@5.9.4: {} + devlop@1.1.0: dependencies: dequal: 2.0.3 @@ -25732,7 +25865,7 @@ snapshots: esast-util-from-js@2.0.1: dependencies: '@types/estree-jsx': 1.0.5 - acorn: 8.16.0 + acorn: 8.18.0 esast-util-from-estree: 2.0.0 vfile-message: 4.0.3 @@ -25783,6 +25916,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 + esrap@2.4.0: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + estree-util-attach-comments@3.0.0: dependencies: '@types/estree': 1.0.8 @@ -26447,7 +26584,7 @@ snapshots: transitivePeerDependencies: - supports-color - fumadocs-typescript@5.2.6(68f004805581973de2150e24a06510a1): + fumadocs-typescript@5.2.6(fcbb58a8ffc1eadf629bb3b69d2f2b59): dependencies: estree-util-value-to-estree: 3.5.0 fumadocs-core: 16.12.0(@mdx-js/mdx@3.1.1)(@tanstack/react-router@1.170.41(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@types/estree-jsx@1.0.5)(@types/hast@3.0.4)(@types/mdast@4.0.4)(@types/react@19.2.17)(lucide-react@1.21.0(react@19.2.7))(next@16.3.4(@babel/core@8.0.1)(@opentelemetry/api@1.9.1)(@playwright/test@1.58.2)(@types/node@25.9.4)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(zod@4.5.4) @@ -26462,7 +26599,7 @@ snapshots: unified: 11.0.5 unist-util-visit: 5.1.0 optionalDependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/hast': 3.0.4 '@types/mdast': 4.0.4 '@types/react': 19.2.17 @@ -32221,6 +32358,19 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + svelte-check@4.7.6(picomatch@4.0.4)(svelte@5.57.2)(typescript@6.0.3): + dependencies: + '@jridgewell/trace-mapping': 0.3.31 + '@sveltejs/load-config': 0.2.3 + chokidar: 4.0.3 + fdir: 6.5.0(picomatch@4.0.4) + picocolors: 1.1.1 + sade: 1.8.1 + svelte: 5.57.2 + typescript: 6.0.3 + transitivePeerDependencies: + - picomatch + svelte@5.56.0: dependencies: '@jridgewell/remapping': 2.3.5 @@ -32242,6 +32392,26 @@ snapshots: transitivePeerDependencies: - '@typescript-eslint/types' + svelte@5.57.2: + dependencies: + '@jridgewell/remapping': 2.3.5 + '@jridgewell/sourcemap-codec': 1.6.0 + '@sveltejs/acorn-typescript': 1.0.13(acorn@8.18.0) + '@types/estree': 1.0.9 + acorn: 8.18.0 + aria-query: 5.3.1 + axobject-query: 4.1.0 + clsx: 2.1.1 + devalue: 5.9.2 + esm-env: 1.2.2 + esrap: 2.4.0 + is-reference: 3.0.3 + locate-character: 3.0.0 + magic-string: 0.30.21 + zimmerframe: 1.1.4 + transitivePeerDependencies: + - '@typescript-eslint/types' + svgo@4.1.0: dependencies: commander: 11.1.0 @@ -32345,7 +32515,7 @@ snapshots: terser@5.46.1: dependencies: '@jridgewell/source-map': 0.3.11 - acorn: 8.16.0 + acorn: 8.18.0 commander: 2.20.3 source-map-support: 0.5.21 @@ -32757,7 +32927,7 @@ snapshots: unimport@6.3.0(esbuild@0.28.1)(oxc-parser@0.135.0)(rolldown@1.2.2)(rollup@4.60.4)(vite@6.4.3(@types/node@25.9.4)(jiti@2.7.0)(lightningcss@1.33.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)): dependencies: - acorn: 8.16.0 + acorn: 8.18.0 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 local-pkg: 1.2.1 @@ -32786,7 +32956,7 @@ snapshots: unimport@6.3.0(esbuild@0.28.1)(rolldown@1.2.2)(rollup@4.60.4)(vite@8.2.0(@types/node@25.9.4)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)): dependencies: - acorn: 8.16.0 + acorn: 8.18.0 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 local-pkg: 1.2.1 @@ -32906,7 +33076,7 @@ snapshots: unplugin@2.3.11: dependencies: '@jridgewell/remapping': 2.3.5 - acorn: 8.16.0 + acorn: 8.18.0 picomatch: 4.0.4 webpack-virtual-modules: 0.6.2