diff --git a/package.json b/package.json index e36ec2939797..08129fb3d8bd 100644 --- a/package.json +++ b/package.json @@ -45,6 +45,9 @@ "svelte-preprocess", "unix-dgram", "workerd" - ] + ], + "overrides": { + "esm-env": "github:benmccann/esm-env#bcbddbc&path:packages/esm-env" + } } } diff --git a/packages/adapter-auto/package.json b/packages/adapter-auto/package.json index e245a5a5a3b1..e2c48cbc8575 100644 --- a/packages/adapter-auto/package.json +++ b/packages/adapter-auto/package.json @@ -42,7 +42,7 @@ "devDependencies": { "@sveltejs/kit": "workspace:^", "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "typescript": "^5.3.3", "vitest": "catalog:" }, diff --git a/packages/adapter-cloudflare/index.js b/packages/adapter-cloudflare/index.js index a5d7bdcdfd95..362f6f9b2fb0 100644 --- a/packages/adapter-cloudflare/index.js +++ b/packages/adapter-cloudflare/index.js @@ -1,9 +1,9 @@ -import { VERSION } from '@sveltejs/kit'; import { copyFileSync, existsSync, writeFileSync } from 'node:fs'; import path from 'node:path'; import { fileURLToPath } from 'node:url'; +import { VERSION } from '@sveltejs/kit'; +import { unstable_readConfig } from 'wrangler'; import { is_building_for_cloudflare_pages, validate_worker_settings } from './utils.js'; -import { getPlatformProxy, unstable_readConfig } from 'wrangler'; const name = '@sveltejs/adapter-cloudflare'; const [kit_major, kit_minor] = VERSION.split('.'); @@ -132,41 +132,6 @@ export default function (options = {}) { ); } }, - emulate() { - // we want to invoke `getPlatformProxy` only once, but await it only when it is accessed. - // If we would await it here, it would hang indefinitely because the platform proxy only resolves once a request happens - const get_emulated = async () => { - const proxy = await getPlatformProxy(options.platformProxy); - const platform = /** @type {App.Platform} */ ({ - env: proxy.env, - ctx: proxy.ctx, - context: proxy.ctx, // deprecated in favor of ctx - caches: proxy.caches, - cf: proxy.cf - }); - /** @type {Record} */ - const env = {}; - const prerender_platform = /** @type {App.Platform} */ (/** @type {unknown} */ ({ env })); - for (const key in proxy.env) { - Object.defineProperty(env, key, { - get: () => { - throw new Error(`Cannot access platform.env.${key} in a prerenderable route`); - } - }); - } - return { platform, prerender_platform }; - }; - - /** @type {{ platform: App.Platform, prerender_platform: App.Platform }} */ - let emulated; - - return { - platform: async ({ prerender }) => { - emulated ??= await get_emulated(); - return prerender ? emulated.prerender_platform : emulated.platform; - } - }; - }, supports: { read: ({ route }) => { // TODO bump peer dep in next adapter major to simplify this @@ -179,6 +144,41 @@ export default function (options = {}) { return true; } } + // emulate() { + // // we want to invoke `getPlatformProxy` only once, but await it only when it is accessed. + // // If we would await it here, it would hang indefinitely because the platform proxy only resolves once a request happens + // const get_emulated = async () => { + // const proxy = await getPlatformProxy(options.platformProxy); + // const platform = /** @type {App.Platform} */ ({ + // env: proxy.env, + // ctx: proxy.ctx, + // context: proxy.ctx, // deprecated in favor of ctx + // caches: proxy.caches, + // cf: proxy.cf + // }); + // /** @type {Record} */ + // const env = {}; + // const prerender_platform = /** @type {App.Platform} */ (/** @type {unknown} */ ({ env })); + // for (const key in proxy.env) { + // Object.defineProperty(env, key, { + // get: () => { + // throw new Error(`Cannot access platform.env.${key} in a prerenderable route`); + // } + // }); + // } + // return { platform, prerender_platform }; + // }; + + // /** @type {{ platform: App.Platform, prerender_platform: App.Platform }} */ + // let emulated; + + // return { + // platform: async ({ prerender }) => { + // emulated ??= await get_emulated(); + // return prerender ? emulated.prerender_platform : emulated.platform; + // } + // }; + // } }; } diff --git a/packages/adapter-cloudflare/internal.d.ts b/packages/adapter-cloudflare/internal.d.ts index 6c79569f7f7f..aa3c0abaf929 100644 --- a/packages/adapter-cloudflare/internal.d.ts +++ b/packages/adapter-cloudflare/internal.d.ts @@ -10,3 +10,14 @@ declare module 'MANIFEST' { export const app_path: string; export const base_path: string; } + +declare module '__sveltekit/vite-environment' { + // eslint-disable-next-line no-duplicate-imports + import { SSRManifest } from '@sveltejs/kit'; + + export const manifest: SSRManifest; + export const env: Record; + export const remote_address: string | undefined; + export const base_path: string; + export const prerendered: Set; +} diff --git a/packages/adapter-cloudflare/package.json b/packages/adapter-cloudflare/package.json index f3cd64e4669e..aed81593dd55 100644 --- a/packages/adapter-cloudflare/package.json +++ b/packages/adapter-cloudflare/package.json @@ -23,6 +23,9 @@ "types": "./index.d.ts", "import": "./index.js" }, + "./worker": { + "import": "./worker.js" + }, "./package.json": "./package.json" }, "types": "index.d.ts", @@ -30,6 +33,7 @@ "files", "index.js", "utils.js", + "worker.js", "index.d.ts", "ambient.d.ts" ], @@ -50,7 +54,7 @@ "devDependencies": { "@playwright/test": "catalog:", "@sveltejs/kit": "workspace:^", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "esbuild": "^0.25.4", "typescript": "^5.3.3", "vitest": "catalog:" diff --git a/packages/adapter-cloudflare/tsconfig.json b/packages/adapter-cloudflare/tsconfig.json index 07f471c8e500..134da2171ba3 100644 --- a/packages/adapter-cloudflare/tsconfig.json +++ b/packages/adapter-cloudflare/tsconfig.json @@ -9,7 +9,8 @@ "moduleResolution": "node16", "baseUrl": ".", "paths": { - "@sveltejs/kit": ["../kit/types/index"] + "@sveltejs/kit": ["../kit/types/index.d.ts"], + "@sveltejs/kit/internal/server": ["../kit/src/runtime/server/index.js"] }, // taken from the Cloudflare Workers TypeScript template https://github.com/cloudflare/workers-sdk/blob/main/packages/create-cloudflare/templates/hello-world/ts/tsconfig.json "lib": ["es2021"], @@ -17,6 +18,7 @@ }, "include": [ "index.js", + "worker.js", "utils.js", "utils.spec.js", "test/utils.js", diff --git a/packages/adapter-cloudflare/worker.js b/packages/adapter-cloudflare/worker.js new file mode 100644 index 000000000000..ca2ad64503cc --- /dev/null +++ b/packages/adapter-cloudflare/worker.js @@ -0,0 +1,103 @@ +import { Server } from '@sveltejs/kit/internal/server'; +// TODO: use prod variables when building +// TODO: fix kit virtual module type issues when this file is consumed by an app +import { version } from '__sveltekit/environment'; +import { + manifest, + env, + remote_address, + base_path, + prerendered +} from '__sveltekit/vite-environment'; +import * as Cache from 'worktop/cfw.cache'; + +const app_path = `/${manifest.appPath}`; + +const immutable = `${app_path}/immutable/`; +const version_file = `${app_path}/version.json`; + +const server = new Server(manifest); + +await server.init({ env }); + +/** + * @param {Request} request + * @param {{ ASSETS: { fetch: typeof fetch } }} env + * @param {import('@cloudflare/workers-types').ExecutionContext} ctx + * @returns {Promise} + */ +export async function handleRequest(request, env, ctx) { + // skip cache if "cache-control: no-cache" in request + let pragma = request.headers.get('cache-control') || ''; + let res = !pragma.includes('no-cache') && (await Cache.lookup(request)); + if (res) return res; + + let { pathname, search } = new URL(request.url); + try { + pathname = decodeURIComponent(pathname); + } catch { + // ignore invalid URI + } + + const stripped_pathname = pathname.replace(/\/$/, ''); + + // files in /static, the service worker, and Vite imported server assets + let is_static_asset = false; + const filename = stripped_pathname.slice(base_path.length + 1); + if (filename) { + is_static_asset = + manifest.assets.has(filename) || + manifest.assets.has(filename + '/index.html') || + filename in manifest._.server_assets || + filename + '/index.html' in manifest._.server_assets; + } + + let location = pathname.at(-1) === '/' ? stripped_pathname : pathname + '/'; + + // TODO: we should only return the version var in dev because the version file is not written to disk + if (pathname === version_file) { + res = new Response(version); + // TODO: only in production + // } + // else if ( + // is_static_asset || + // prerendered.has(pathname) || + // pathname === version_file || + // pathname.startsWith(immutable) + // ) { + // res = await env.ASSETS.fetch(request); + } else if (location && prerendered.has(location)) { + // trailing slash redirect for prerendered pages + if (search) location += search; + res = new Response('', { + status: 308, + headers: { + location + } + }); + } else { + // dynamically-generated pages + res = await server.respond(request, { + platform: { + env, + ctx, + context: ctx, // deprecated in favor of ctx + // @ts-expect-error webworker types from worktop are not compatible with Cloudflare Workers types + caches, + // @ts-expect-error the type is correct but ts is confused because platform.cf uses the type from index.ts while req.cf uses the type from index.d.ts + cf: request.cf + }, + getClientAddress() { + if (remote_address) return remote_address; + throw new Error('Could not determine clientAddress'); + // TODO: use the header in prod + // return request.headers.get('cf-connecting-ip'); + } + }); + } + + // write to `Cache` only if response is not an error, + // let `Cache.save` handle the Cache-Control and Vary headers + pragma = res.headers.get('cache-control') || ''; + return pragma && res.status < 400 ? Cache.save(request, res, ctx) : res; +} diff --git a/packages/adapter-netlify/package.json b/packages/adapter-netlify/package.json index 4f809f1447cd..cdcce0c0e209 100644 --- a/packages/adapter-netlify/package.json +++ b/packages/adapter-netlify/package.json @@ -55,7 +55,7 @@ "@rollup/plugin-node-resolve": "^16.0.0", "@sveltejs/kit": "workspace:^", "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "@types/set-cookie-parser": "^2.4.7", "rollup": "^4.14.2", "typescript": "^5.3.3", diff --git a/packages/adapter-node/package.json b/packages/adapter-node/package.json index 25f456fe4e70..e75bc1061708 100644 --- a/packages/adapter-node/package.json +++ b/packages/adapter-node/package.json @@ -45,7 +45,7 @@ "@polka/url": "^1.0.0-next.28", "@sveltejs/kit": "workspace:^", "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "polka": "^1.0.0-next.28", "sirv": "^3.0.0", "typescript": "^5.3.3", diff --git a/packages/adapter-static/package.json b/packages/adapter-static/package.json index b7c5315b4073..d4a256f45df6 100644 --- a/packages/adapter-static/package.json +++ b/packages/adapter-static/package.json @@ -42,7 +42,7 @@ "@playwright/test": "catalog:", "@sveltejs/kit": "workspace:^", "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "sirv": "^3.0.0", "svelte": "^5.35.5", "typescript": "^5.3.3", diff --git a/packages/adapter-vercel/package.json b/packages/adapter-vercel/package.json index a5b6915ee8b8..b436000fd0d4 100644 --- a/packages/adapter-vercel/package.json +++ b/packages/adapter-vercel/package.json @@ -46,7 +46,7 @@ "devDependencies": { "@sveltejs/kit": "workspace:^", "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "typescript": "^5.3.3", "vitest": "catalog:" }, diff --git a/packages/enhanced-img/package.json b/packages/enhanced-img/package.json index 8c9e0fb98f3d..ec967187bb46 100644 --- a/packages/enhanced-img/package.json +++ b/packages/enhanced-img/package.json @@ -45,7 +45,7 @@ "devDependencies": { "@sveltejs/vite-plugin-svelte": "catalog:", "@types/estree": "^1.0.5", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "rollup": "^4.27.4", "svelte": "^5.35.5", "typescript": "^5.6.3", diff --git a/packages/kit/package.json b/packages/kit/package.json index e046e6b008da..743b79e80d44 100644 --- a/packages/kit/package.json +++ b/packages/kit/package.json @@ -35,7 +35,7 @@ "@playwright/test": "catalog:", "@sveltejs/vite-plugin-svelte": "catalog:", "@types/connect": "^3.4.38", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "@types/set-cookie-parser": "^2.4.7", "dts-buddy": "^0.6.1", "rollup": "^4.14.2", @@ -48,7 +48,7 @@ "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^3.0.0 || ^4.0.0-next.1 || ^5.0.0 || ^6.0.0-next.0", "svelte": "^4.0.0 || ^5.0.0-next.0", - "vite": "^5.0.3 || ^6.0.0 || ^7.0.0-beta.0" + "vite": "^7.0.0-beta.0" }, "bin": { "svelte-kit": "svelte-kit.js" @@ -87,6 +87,10 @@ "types": "./types/index.d.ts", "import": "./src/exports/internal/index.js" }, + "./internal/server": { + "types": "./types/index.d.ts", + "import": "./src/runtime/server/index.js" + }, "./node": { "types": "./types/index.d.ts", "import": "./src/exports/node/index.js" diff --git a/packages/kit/src/exports/vite/build/build_server.js b/packages/kit/src/exports/vite/build/build_server.js index 7af4073ef09d..8d384727bb21 100644 --- a/packages/kit/src/exports/vite/build/build_server.js +++ b/packages/kit/src/exports/vite/build/build_server.js @@ -13,21 +13,21 @@ import { create_node_analyser } from '../static_analysis/index.js'; * @param {import('types').ManifestData} manifest_data * @param {import('vite').Manifest} server_manifest * @param {import('vite').Manifest | null} client_manifest - * @param {import('vite').Rollup.OutputBundle | null} server_bundle + * @param {import('vite').Rollup.RollupOutput['output'] | null} server_chunks * @param {import('vite').Rollup.RollupOutput['output'] | null} client_chunks * @param {import('types').RecursiveRequired} output_config * @param {Map | null, children: string[] }>} static_exports */ -export async function build_server_nodes(out, kit, manifest_data, server_manifest, client_manifest, server_bundle, client_chunks, output_config, static_exports) { +export async function build_server_nodes(out, kit, manifest_data, server_manifest, client_manifest, server_chunks, client_chunks, output_config, static_exports) { mkdirp(`${out}/server/nodes`); mkdirp(`${out}/server/stylesheets`); /** @type {Map} */ const stylesheets_to_inline = new Map(); - if (server_bundle && client_chunks && kit.inlineStyleThreshold > 0) { + if (server_chunks && client_chunks && kit.inlineStyleThreshold > 0) { const client = get_stylesheets(client_chunks); - const server = get_stylesheets(Object.values(server_bundle)); + const server = get_stylesheets(server_chunks); // map server stylesheet name to the client stylesheet name for (const [id, client_stylesheet] of client.stylesheets_used) { diff --git a/packages/kit/src/exports/vite/dev/environment.js b/packages/kit/src/exports/vite/dev/environment.js new file mode 100644 index 000000000000..a27b617b1402 --- /dev/null +++ b/packages/kit/src/exports/vite/dev/environment.js @@ -0,0 +1,67 @@ +import path from 'node:path'; + +// `posixify` and `to_fs` are duplicated from utils/filesystem.js to avoid +// the import from `node:fs` which isn't available in Cloudflare's workerd runtime + +/** @param {string} str */ +export function posixify(str) { + return str.replace(/\\/g, '/'); +} + +/** + * Prepend given path with `/@fs` prefix + * @param {string} str + */ +export function to_fs(str) { + str = posixify(str); + return `/@fs${ + // Windows/Linux separation - Windows starts with a drive letter, we need a / in front there + str.startsWith('/') ? '' : '/' + }${str}`; +} + +/** @param {string} id */ +export async function resolve(id) { + // TODO: doesn't work for files symlinked to kit package workspace + const url = id.startsWith('..') ? to_fs(path.posix.resolve(id)) : `/${id}`; + + const module = await loud_ssr_load_module(url); + + // TODO: module_node + // const module_node = await vite.moduleGraph.getModuleByUrl(url); + // if (!module_node) throw new Error(`Could not find node for ${url}`); + + // return { module, module_node, url }; + return { module, module_node: '', url }; +} + +/** + * @param {string} url + * @returns {Promise>} + */ +export async function loud_ssr_load_module(url) { + try { + return await import(/* @vite-ignore */ url); + } catch (/** @type {any} */ err) { + // TODO: implement error logging + err; + // const msg = buildErrorMessage(err, [colors.red(`Internal server error: ${err.message}`)]); + + // if (!vite.config.logger.hasErrorLogged(err)) { + // vite.config.logger.error(msg, { error: err }); + // } + + // vite.ws.send({ + // type: 'error', + // err: { + // ...err, + // // these properties are non-enumerable and will + // // not be serialized unless we explicitly include them + // message: err.message, + // stack: err.stack + // } + // }); + + throw err; + } +} diff --git a/packages/kit/src/exports/vite/dev/index.js b/packages/kit/src/exports/vite/dev/index.js index 7ec66dab251c..9d71cb14424d 100644 --- a/packages/kit/src/exports/vite/dev/index.js +++ b/packages/kit/src/exports/vite/dev/index.js @@ -5,7 +5,7 @@ import { URL } from 'node:url'; import { AsyncLocalStorage } from 'node:async_hooks'; import colors from 'kleur'; import sirv from 'sirv'; -import { isCSSRequest, loadEnv, buildErrorMessage } from 'vite'; +import { isCSSRequest, loadEnv, buildErrorMessage, createServerModuleRunner } from 'vite'; import { createReadableStream, getRequest, setResponse } from '../../../exports/node/index.js'; import { installPolyfills } from '../../../exports/node/polyfills.js'; import { coalesce_to_error } from '../../../utils/error.js'; @@ -20,6 +20,7 @@ import { SCHEME } from '../../../utils/url.js'; import { check_feature } from '../../../utils/features.js'; import { escape_html } from '../../../utils/escape.js'; import { create_node_analyser } from '../static_analysis/index.js'; +import { sveltekit_vite_environment } from '../module_ids.js'; const cwd = process.cwd(); // vite-specifc queries that we should skip handling for css urls @@ -29,9 +30,10 @@ const vite_css_query_regex = /(?:\?|&)(?:raw|url|inline)(?:&|$)/; * @param {import('vite').ViteDevServer} vite * @param {import('vite').ResolvedConfig} vite_config * @param {import('types').ValidatedConfig} svelte_config + * @param {import('types').DevEnvironment} dev_environment * @return {Promise void>>} */ -export async function dev(vite, vite_config, svelte_config) { +export async function dev(vite, vite_config, svelte_config, dev_environment) { installPolyfills(); const async_local_storage = new AsyncLocalStorage(); @@ -90,6 +92,18 @@ export async function dev(vite, vite_config, svelte_config) { } } + function invalidate_vite_environment_module() { + for (const environment in vite.environments) { + const module = vite.environments[environment].moduleGraph.getModuleById( + sveltekit_vite_environment + ); + + if (module) { + vite.environments[environment].moduleGraph.invalidateModule(module); + } + } + } + /** @param {string} id */ async function resolve(id) { const url = id.startsWith('..') ? to_fs(path.posix.resolve(id)) : `/${id}`; @@ -105,10 +119,16 @@ export async function dev(vite, vite_config, svelte_config) { /** @type {(file: string) => void} */ let invalidate_page_options; - function update_manifest() { + /** @type {Map | null>} */ + let node_page_options; + + async function update_manifest() { try { ({ manifest_data } = sync.create(svelte_config)); + dev_environment.manifest_data = manifest_data; + invalidate_vite_environment_module(); + if (manifest_error) { manifest_error = null; vite.ws.send({ type: 'full-reload' }); @@ -128,6 +148,8 @@ export async function dev(vite, vite_config, svelte_config) { return; } + node_page_options = new Map(); + const node_analyser = create_node_analyser({ resolve: async (server_node) => { const { module } = await resolve(server_node); @@ -136,177 +158,184 @@ export async function dev(vite, vite_config, svelte_config) { }); invalidate_page_options = node_analyser.invalidate_page_options; - manifest = { - appDir: svelte_config.kit.appDir, - appPath: svelte_config.kit.appDir, - assets: new Set(manifest_data.assets.map((asset) => asset.file)), - mimeTypes: get_mime_lookup(manifest_data), - _: { - client: { - start: `${runtime_base}/client/entry.js`, - app: `${to_fs(svelte_config.kit.outDir)}/generated/client/app.js`, - imports: [], - stylesheets: [], - fonts: [], - uses_env_dynamic_public: true, - nodes: - svelte_config.kit.router.resolution === 'client' - ? undefined - : manifest_data.nodes.map((node, i) => { - if (node.component || node.universal) { - return `${svelte_config.kit.paths.base}${to_fs(svelte_config.kit.outDir)}/generated/client/nodes/${i}.js`; - } - }), - // `css` is not necessary in dev, as the JS file from `nodes` will reference the CSS file - routes: - svelte_config.kit.router.resolution === 'client' - ? undefined - : compact( - manifest_data.routes.map((route) => { - if (!route.page) return; - - return { - id: route.id, - pattern: route.pattern, - params: route.params, - layouts: route.page.layouts.map((l) => - l !== undefined ? [!!manifest_data.nodes[l].server, l] : undefined - ), - errors: route.page.errors, - leaf: [!!manifest_data.nodes[route.page.leaf].server, route.page.leaf] - }; - }) - ) - }, - server_assets: new Proxy( - {}, - { - has: (_, /** @type {string} */ file) => fs.existsSync(from_fs(file)), - get: (_, /** @type {string} */ file) => fs.statSync(from_fs(file)).size - } - ), - nodes: manifest_data.nodes.map((node, index) => { - return async () => { - /** @type {import('types').SSRNode} */ - const result = {}; - result.index = index; - result.universal_id = node.universal; - result.server_id = node.server; - - // these are unused in dev, but it's easier to include them - result.imports = []; - result.stylesheets = []; - result.fonts = []; - - /** @type {import('vite').ModuleNode[]} */ - const module_nodes = []; - - if (node.component) { - result.component = async () => { - const { module_node, module } = await resolve( - /** @type {string} */ (node.component) - ); - - module_nodes.push(module_node); - - return module.default; - }; - } - - if (node.universal) { - const page_options = await node_analyser.get_page_options(node); - if (page_options?.ssr === false) { - result.universal = page_options; - } else { - // TODO: explain why the file was loaded on the server if we fail to load it - const { module, module_node } = await resolve(node.universal); - module_nodes.push(module_node); - result.universal = module; - } - } - - if (node.server) { - const { module } = await resolve(node.server); - result.server = module; - } - - // in dev we inline all styles to avoid FOUC. this gets populated lazily so that - // components/stylesheets loaded via import() during `load` are included - result.inline_styles = async () => { - /** @type {Set} */ - const deps = new Set(); - - for (const module_node of module_nodes) { - await find_deps(vite, module_node, deps); - } - - /** @type {Record} */ - const styles = {}; - - for (const dep of deps) { - if (isCSSRequest(dep.url) && !vite_css_query_regex.test(dep.url)) { - const inlineCssUrl = dep.url.includes('?') - ? dep.url.replace('?', '?inline&') - : dep.url + '?inline'; - try { - const mod = await vite.ssrLoadModule(inlineCssUrl); - styles[dep.url] = mod.default; - } catch { - // this can happen with dynamically imported modules, I think - // because the Vite module graph doesn't distinguish between - // static and dynamic imports? TODO investigate, submit fix - } - } - } - - return styles; - }; - - return result; - }; - }), - prerendered_routes: new Set(), - routes: compact( - manifest_data.routes.map((route) => { - if (!route.page && !route.endpoint) return null; - - const endpoint = route.endpoint; - - return { - id: route.id, - pattern: route.pattern, - params: route.params, - page: route.page, - endpoint: endpoint - ? async () => { - const url = path.resolve(cwd, endpoint.file); - return await loud_ssr_load_module(url); - } - : null, - endpoint_id: endpoint?.file - }; - }) - ), - matchers: async () => { - /** @type {Record} */ - const matchers = {}; - - for (const key in manifest_data.matchers) { - const file = manifest_data.matchers[key]; - const url = path.resolve(cwd, file); - const module = await vite.ssrLoadModule(url, { fixStacktrace: true }); - - if (module.match) { - matchers[key] = module.match; - } else { - throw new Error(`${file} does not export a \`match\` function`); - } - } - - return matchers; - } + for (const node of manifest_data.nodes) { + if (node.universal) { + const page_options = await node_analyser.get_page_options(node); + node_page_options.set(node.universal, page_options); } - }; + } + + // manifest = { + // appDir: svelte_config.kit.appDir, + // appPath: svelte_config.kit.appDir, + // assets: new Set(manifest_data.assets.map((asset) => asset.file)), + // mimeTypes: get_mime_lookup(manifest_data), + // _: { + // client: { + // start: `${runtime_base}/client/entry.js`, + // app: `${to_fs(svelte_config.kit.outDir)}/generated/client/app.js`, + // imports: [], + // stylesheets: [], + // fonts: [], + // uses_env_dynamic_public: true, + // nodes: + // svelte_config.kit.router.resolution === 'client' + // ? undefined + // : manifest_data.nodes.map((node, i) => { + // if (node.component || node.universal) { + // return `${svelte_config.kit.paths.base}${to_fs(svelte_config.kit.outDir)}/generated/client/nodes/${i}.js`; + // } + // }), + // // `css` is not necessary in dev, as the JS file from `nodes` will reference the CSS file + // routes: + // svelte_config.kit.router.resolution === 'client' + // ? undefined + // : compact( + // manifest_data.routes.map((route) => { + // if (!route.page) return; + + // return { + // id: route.id, + // pattern: route.pattern, + // params: route.params, + // layouts: route.page.layouts.map((l) => + // l !== undefined ? [!!manifest_data.nodes[l].server, l] : undefined + // ), + // errors: route.page.errors, + // leaf: [!!manifest_data.nodes[route.page.leaf].server, route.page.leaf] + // }; + // }) + // ) + // }, + // server_assets: new Proxy( + // {}, + // { + // has: (_, /** @type {string} */ file) => fs.existsSync(from_fs(file)), + // get: (_, /** @type {string} */ file) => fs.statSync(from_fs(file)).size + // } + // ), + // nodes: manifest_data.nodes.map((node, index) => { + // return async () => { + // /** @type {import('types').SSRNode} */ + // const result = {}; + // result.index = index; + // result.universal_id = node.universal; + // result.server_id = node.server; + + // // these are unused in dev, but it's easier to include them + // result.imports = []; + // result.stylesheets = []; + // result.fonts = []; + + // /** @type {import('vite').ModuleNode[]} */ + // const module_nodes = []; + + // if (node.component) { + // result.component = async () => { + // const { module_node, module } = await resolve( + // /** @type {string} */ (node.component) + // ); + + // module_nodes.push(module_node); + + // return module.default; + // }; + // } + + // if (node.universal) { + // const page_options = await node_analyser.get_page_options(node); + // if (page_options?.ssr === false) { + // result.universal = page_options; + // } else { + // // TODO: explain why the file was loaded on the server if we fail to load it + // const { module, module_node } = await resolve(node.universal); + // module_nodes.push(module_node); + // result.universal = module; + // } + // } + + // if (node.server) { + // const { module } = await resolve(node.server); + // result.server = module; + // } + + // // in dev we inline all styles to avoid FOUC. this gets populated lazily so that + // // components/stylesheets loaded via import() during `load` are included + // result.inline_styles = async () => { + // /** @type {Set} */ + // const deps = new Set(); + + // for (const module_node of module_nodes) { + // await find_deps(vite, module_node, deps); + // } + + // /** @type {Record} */ + // const styles = {}; + + // for (const dep of deps) { + // if (isCSSRequest(dep.url) && !vite_css_query_regex.test(dep.url)) { + // const inlineCssUrl = dep.url.includes('?') + // ? dep.url.replace('?', '?inline&') + // : dep.url + '?inline'; + // try { + // const mod = await vite.ssrLoadModule(inlineCssUrl); + // styles[dep.url] = mod.default; + // } catch { + // // this can happen with dynamically imported modules, I think + // // because the Vite module graph doesn't distinguish between + // // static and dynamic imports? TODO investigate, submit fix + // } + // } + // } + + // return styles; + // }; + + // return result; + // }; + // }), + // prerendered_routes: new Set(), + // routes: compact( + // manifest_data.routes.map((route) => { + // if (!route.page && !route.endpoint) return null; + + // const endpoint = route.endpoint; + + // return { + // id: route.id, + // pattern: route.pattern, + // params: route.params, + // page: route.page, + // endpoint: endpoint + // ? async () => { + // const url = path.resolve(cwd, endpoint.file); + // return await loud_ssr_load_module(url); + // } + // : null, + // endpoint_id: endpoint?.file + // }; + // }) + // ), + // matchers: async () => { + // /** @type {Record} */ + // const matchers = {}; + + // for (const key in manifest_data.matchers) { + // const file = manifest_data.matchers[key]; + // const url = path.resolve(cwd, file); + // const module = await vite.ssrLoadModule(url, { fixStacktrace: true }); + + // if (module.match) { + // matchers[key] = module.match; + // } else { + // throw new Error(`${file} does not export a \`match\` function`); + // } + // } + + // return matchers; + // } + // } + // }; } /** @param {Error} error */ @@ -320,7 +349,7 @@ export async function dev(vite, vite_config, svelte_config) { return error.stack; } - update_manifest(); + await update_manifest(); /** * @param {string} event @@ -439,23 +468,26 @@ export async function dev(vite, vite_config, svelte_config) { }); const env = loadEnv(vite_config.mode, svelte_config.kit.env.dir, ''); - const emulator = await svelte_config.kit.adapter?.emulate?.(); + dev_environment.env = env; + // const emulator = await svelte_config.kit.adapter?.emulate?.(); return () => { - const serve_static_middleware = vite.middlewares.stack.find( - (middleware) => - /** @type {function} */ (middleware.handle).name === 'viteServeStaticMiddleware' - ); - // Vite will give a 403 on URLs like /test, /static, and /package.json preventing us from // serving routes with those names. See https://github.com/vitejs/vite/issues/7363 remove_static_middlewares(vite.middlewares); - vite.middlewares.use(async (req, res) => { - // Vite's base middleware strips out the base path. Restore it - const original_url = req.url; - req.url = req.originalUrl; - try { + const serve_static_middleware_index = vite.middlewares.stack.findIndex( + (middleware) => + /** @type {function} */ (middleware.handle).name === 'viteServeStaticMiddleware' + ); + const serve_static_middleware = vite.middlewares.stack[serve_static_middleware_index]; + vite.middlewares.stack[serve_static_middleware_index] = { + route: '', + /** @type {import('vite').Connect.NextHandleFunction} */ + handle: (req, res, next) => { + // Vite's base middleware strips out the base path. Restore it + const original_url = req.url; + req.url = req.originalUrl; const base = `${vite.config.server.https ? 'https' : 'http'}://${ req.headers[':authority'] || req.headers.host }`; @@ -478,102 +510,144 @@ export async function dev(vite, vite_config, svelte_config) { return not_found(req, res, svelte_config.kit.paths.base); } - if (decoded === svelte_config.kit.paths.base + '/service-worker.js') { - const resolved = resolve_entry(svelte_config.kit.files.serviceWorker); - - if (resolved) { - res.writeHead(200, { - 'content-type': 'application/javascript' - }); - res.end(`import '${svelte_config.kit.paths.base}${to_fs(resolved)}';`); - } else { - res.writeHead(404); - res.end('not found'); - } - - return; - } - - // we have to import `Server` before calling `set_assets` - const { Server } = /** @type {import('types').ServerModule} */ ( - await vite.ssrLoadModule(`${runtime_base}/server/index.js`, { fixStacktrace: true }) - ); - - const { set_fix_stack_trace } = await vite.ssrLoadModule( - `${runtime_base}/shared-server.js` - ); - set_fix_stack_trace(fix_stack_trace); - - const { set_assets } = await vite.ssrLoadModule('__sveltekit/paths'); - set_assets(assets); - - const server = new Server(manifest); - - await server.init({ - env, - read: (file) => createReadableStream(from_fs(file)) - }); - - const request = await getRequest({ - base, - request: req - }); - - if (manifest_error) { - console.error(colors.bold().red(manifest_error.message)); - - const error_page = load_error_page(svelte_config); - - /** @param {{ status: number; message: string }} opts */ - const error_template = ({ status, message }) => { - return error_page - .replace(/%sveltekit\.status%/g, String(status)) - .replace(/%sveltekit\.error\.message%/g, escape_html(message)); - }; - - res.writeHead(500, { - 'Content-Type': 'text/html; charset=utf-8' - }); - res.end( - error_template({ status: 500, message: manifest_error.message ?? 'Invalid routes' }) - ); - - return; - } + next(); + } + }; - const rendered = await server.respond(request, { - getClientAddress: () => { - const { remoteAddress } = req.socket; - if (remoteAddress) return remoteAddress; - throw new Error('Could not determine clientAddress'); - }, - read: (file) => { - if (file in manifest._.server_assets) { - return fs.readFileSync(from_fs(file)); - } - - return fs.readFileSync(path.join(svelte_config.kit.files.assets, file)); - }, - before_handle: (event, config, prerender) => { - async_local_storage.enterWith({ event, config, prerender }); - }, - emulator - }); - - if (rendered.status === 404) { - // @ts-expect-error - serve_static_middleware.handle(req, res, () => { - void setResponse(res, rendered); - }); - } else { - void setResponse(res, rendered); - } - } catch (e) { - const error = coalesce_to_error(e); - res.statusCode = 500; - res.end(fix_stack_trace(error)); + vite.middlewares.stack.unshift({ + route: '', + /** @type {import('vite').Connect.NextHandleFunction} */ + handle: (req, _, next) => { + dev_environment.remote_address = req.socket.remoteAddress; + next(); } }); + + // vite.middlewares.use(async (req, res) => { + // // Vite's base middleware strips out the base path. Restore it + // const original_url = req.url; + // req.url = req.originalUrl; + // try { + // const base = `${vite.config.server.https ? 'https' : 'http'}://${ + // req.headers[':authority'] || req.headers.host + // }`; + + // const decoded = decodeURI(new URL(base + req.url).pathname); + // const file = posixify(path.resolve(decoded.slice(svelte_config.kit.paths.base.length + 1))); + // const is_file = fs.existsSync(file) && !fs.statSync(file).isDirectory(); + // const allowed = + // !vite_config.server.fs.strict || + // vite_config.server.fs.allow.some((dir) => file.startsWith(dir)); + + // if (is_file && allowed) { + // req.url = original_url; + // // @ts-expect-error + // serve_static_middleware.handle(req, res); + // return; + // } + + // if (!decoded.startsWith(svelte_config.kit.paths.base)) { + // return not_found(req, res, svelte_config.kit.paths.base); + // } + + // TODO: serve service worker in dev from cloudflare worker + // if (decoded === svelte_config.kit.paths.base + '/service-worker.js') { + // const resolved = resolve_entry(svelte_config.kit.files.serviceWorker); + + // if (resolved) { + // res.writeHead(200, { + // 'content-type': 'application/javascript' + // }); + // res.end(`import '${svelte_config.kit.paths.base}${to_fs(resolved)}';`); + // } else { + // res.writeHead(404); + // res.end('not found'); + // } + + // return; + // } + + // // we have to import `Server` before calling `set_assets` + // const { Server } = /** @type {import('types').ServerModule} */ ( + // await vite.ssrLoadModule(`${runtime_base}/server/index.js`, { fixStacktrace: true }) + // ); + + // const { set_fix_stack_trace } = await vite.ssrLoadModule( + // `${runtime_base}/shared-server.js` + // ); + // set_fix_stack_trace(fix_stack_trace); + + // const { set_assets } = await vite.ssrLoadModule('__sveltekit/paths'); + // set_assets(assets); + + // const server = new Server(manifest); + + // await server.init({ + // env, + // read: (file) => createReadableStream(from_fs(file)) + // }); + + // const request = await getRequest({ + // base, + // request: req + // }); + + // TODO: ensure this runs even when cloudflare vite plugin takes over + // if (manifest_error) { + // console.error(colors.bold().red(manifest_error.message)); + + // const error_page = load_error_page(svelte_config); + + // /** @param {{ status: number; message: string }} opts */ + // const error_template = ({ status, message }) => { + // return error_page + // .replace(/%sveltekit\.status%/g, String(status)) + // .replace(/%sveltekit\.error\.message%/g, escape_html(message)); + // }; + + // res.writeHead(500, { + // 'Content-Type': 'text/html; charset=utf-8' + // }); + // res.end( + // error_template({ status: 500, message: manifest_error.message ?? 'Invalid routes' }) + // ); + + // return; + // } + + // const rendered = await server.respond(request, { + // getClientAddress: () => { + // const { remoteAddress } = req.socket; + // if (remoteAddress) return remoteAddress; + // throw new Error('Could not determine clientAddress'); + // }, + // read: (file) => { + // if (file in manifest._.server_assets) { + // return fs.readFileSync(from_fs(file)); + // } + + // return fs.readFileSync(path.join(svelte_config.kit.files.assets, file)); + // }, + // before_handle: (event, config, prerender) => { + // async_local_storage.enterWith({ event, config, prerender }); + // }, + // emulator + // }); + + // if (rendered.status === 404) { + // // @ts-expect-error + // serve_static_middleware.handle(req, res, () => { + // void setResponse(res, rendered); + // }); + // } else { + // void setResponse(res, rendered); + // } + // } catch (e) { + // const error = coalesce_to_error(e); + // res.statusCode = 500; + // res.end(fix_stack_trace(error)); + // } + // }); }; } @@ -581,7 +655,7 @@ export async function dev(vite, vite_config, svelte_config) { * @param {import('connect').Server} server */ function remove_static_middlewares(server) { - const static_middlewares = ['viteServeStaticMiddleware', 'viteServePublicMiddleware']; + const static_middlewares = ['viteServePublicMiddleware']; for (let i = server.stack.length - 1; i > 0; i--) { // @ts-expect-error using internals if (static_middlewares.includes(server.stack[i].handle.name)) { diff --git a/packages/kit/src/exports/vite/index.js b/packages/kit/src/exports/vite/index.js index a0b8f5c29cd0..778519e57445 100644 --- a/packages/kit/src/exports/vite/index.js +++ b/packages/kit/src/exports/vite/index.js @@ -4,11 +4,19 @@ import process from 'node:process'; import colors from 'kleur'; -import { copy, mkdirp, posixify, read, resolve_entry, rimraf } from '../../utils/filesystem.js'; +import { + copy, + mkdirp, + posixify, + read, + resolve_entry, + rimraf, + to_fs +} from '../../utils/filesystem.js'; import { create_static_module, create_dynamic_module } from '../../core/env.js'; import * as sync from '../../core/sync/sync.js'; import { create_assets } from '../../core/sync/create_manifest_data/index.js'; -import { runtime_directory, logger } from '../../core/utils.js'; +import { runtime_directory, logger, get_mime_lookup, runtime_base } from '../../core/utils.js'; import { load_config } from '../../core/config/index.js'; import { generate_manifest } from '../../core/generate_manifest/index.js'; import { build_server_nodes } from './build/build_server.js'; @@ -32,13 +40,16 @@ import { service_worker, sveltekit_environment, sveltekit_paths, - sveltekit_server + sveltekit_server, + sveltekit_vite_environment } from './module_ids.js'; import { import_peer } from '../../utils/import.js'; import { compact } from '../../utils/array.js'; const cwd = process.cwd(); +const dev_environment = /** @type {import('types').DevEnvironment} */ ({}); + /** @type {import('./types.js').EnforcedConfig} */ const enforced_config = { appType: true, @@ -155,15 +166,12 @@ export async function sveltekit() { ...svelte_config.vitePlugin }; + /** @type {import('@sveltejs/vite-plugin-svelte')} */ const { svelte } = await import_peer('@sveltejs/vite-plugin-svelte'); return [...svelte(vite_plugin_svelte_options), ...(await kit({ svelte_config }))]; } -// These variables live outside the `kit()` function because it is re-invoked by each Vite build - -let secondary_build_started = false; - /** @type {import('types').ManifestData} */ let manifest_data; @@ -315,7 +323,6 @@ async function kit({ svelte_config }) { if (is_build) { if (!new_config.build) new_config.build = {}; - new_config.build.ssr = !secondary_build_started; new_config.define = { __SVELTEKIT_ADAPTER_NAME__: s(kit.adapter?.name), @@ -325,10 +332,6 @@ async function kit({ svelte_config }) { __SVELTEKIT_EMBEDDED__: kit.embedded ? 'true' : 'false', __SVELTEKIT_CLIENT_ROUTING__: kit.router.resolution === 'client' ? 'true' : 'false' }; - - if (!secondary_build_started) { - manifest_data = sync.all(svelte_config, config_env.mode).manifest_data; - } } else { new_config.define = { __SVELTEKIT_APP_VERSION_POLL_INTERVAL__: '0', @@ -345,6 +348,48 @@ async function kit({ svelte_config }) { ]; } + // TODO: move these to the Cloudflare adapter + + // @cloudflare/vite-plugin doesn't allow `ssr.external` but VPS and SvelteKit set it + /** @type {import('vite').SSROptions} */ (config.ssr).external = undefined; + /** @type {NonNullable} */ (new_config.ssr).external = + undefined; + + // TODO: remove these when https://github.com/cloudflare/workers-sdk/issues/9036#issuecomment-2825271144 is resolved + /** @type {import('vite').SSROptions} */ (config.ssr).noExternal = undefined; + /** @type {import('vite').SSROptions} */ (new_config.ssr).noExternal = undefined; + + new_config.environments = { + ssr: { + // TODO: try to exclude `@sveltejs/kit` + optimizeDeps: { + // we need to exclude `svelte` so that `@sveltejs/kit` and user code + // use the same instance of `svelte` when setting and getting the context + exclude: ['__sveltekit', 'svelte'], + esbuildOptions: { + plugins: [ + { + name: 'sveltekit-alias', + setup(build) { + build.onResolve({ filter: /^\$app\// }, async (args) => { + const result = await build.resolve( + `${runtime_directory}/${args.path.slice(1)}`, + { kind: 'import-statement', resolveDir: args.resolveDir } + ); + if (result.errors.length > 0) { + return { errors: result.errors }; + } + return { path: result.path }; + }); + } + } + ] + }, + entries: [`${kit.files.routes}/**/+*.{svelte,js,ts}`] + } + } + }; + warn_overridden_config(config, new_config); return new_config; @@ -405,14 +450,14 @@ async function kit({ svelte_config }) { } }, - load(id, options) { - const browser = !options?.ssr; + load(id) { + const browser = this.environment.config.consumer === 'client'; const global = is_build ? `globalThis.__sveltekit_${version_hash}` : 'globalThis.__sveltekit_dev'; - if (options?.ssr === false && process.env.TEST !== 'true') { + if (this.environment.config.consumer === 'client' && process.env.TEST !== 'true') { const normalized_cwd = vite.normalizePath(cwd); const normalized_lib = vite.normalizePath(kit.files.lib); if ( @@ -547,6 +592,182 @@ Tips: } `; } + + case sveltekit_vite_environment: { + const { manifest_data, env, remote_address } = dev_environment; + + return dedent` + import path from "node:path"; + import { resolve, loud_ssr_load_module } from "${runtime_base}/../exports/vite/dev/environment.js"; + + const cwd = ${s(cwd)}; + + export const manifest = { + appDir: ${s(svelte_config.kit.appDir)}, + appPath: ${s(svelte_config.kit.appDir)}, + assets: new Set(${s(manifest_data.assets.map((asset) => asset.file))}), + mimeTypes: ${s(get_mime_lookup(manifest_data))}, + _: { + client: { + start: "${runtime_base}/client/entry.js", + app: "${to_fs(svelte_config.kit.outDir)}/generated/client/app.js", + imports: [], + stylesheets: [], + fonts: [], + uses_env_dynamic_public: true, + nodes: ${ + svelte_config.kit.router.resolution === 'client' + ? 'undefined' + : s( + manifest_data.nodes.map((node, i) => { + if (node.component || node.universal) { + return `${svelte_config.kit.paths.base}${to_fs(svelte_config.kit.outDir)}/generated/client/nodes/${i}.js`; + } + }) + ) + }, + routes: ${ + svelte_config.kit.router.resolution === 'client' + ? 'undefined' + : s( + compact( + manifest_data.routes.map((route) => { + if (!route.page) return; + + return { + id: route.id, + pattern: route.pattern, + params: route.params, + layouts: route.page.layouts.map((l) => + l !== undefined ? [!!manifest_data.nodes[l].server, l] : undefined + ), + errors: route.page.errors, + leaf: [ + !!manifest_data.nodes[route.page.leaf].server, + route.page.leaf + ] + }; + }) + ) + ) + } + }, + // TODO: fs only works in Node.js. try using import.meta.hot and serialise results + server_assets: new Proxy( + {}, + { + has: (_, file) => true, + get: (_, file) => 1 + } + ), + nodes: [${manifest_data.nodes + .map((node, index) => { + const component = s(node.component); + + return dedent` + async () => { + const result = { + index: ${s(index)}, + universal_id: ${s(node.universal)}, + server_id: ${s(node.server)}, + imports: [], + stylesheets: [], + fonts: [] + }; + + const module_nodes = []; + + if (${component}) { + result.component = async () => { + const { module_node, module } = await resolve(${component}); + module_nodes.push(module_node); + return module.default; + }; + } + + if (result.universal_id) { + const { module, module_node } = await resolve(result.universal_id); + module_nodes.push(module_node); + result.universal = module; + // TODO: can't stringify node because it's an object with other object references. use import.meta.hot ? + // const page_options = await node_analyser.get_page_options(node); + // if (page_options?.ssr === false) { + // result.universal = page_options; + // } else { + // // TODO: explain why the file was loaded on the server if we fail to load it + // const { module, module_node } = await resolve(result.universal_id); + // module_nodes.push(module_node); + // result.universal = module; + // } + } + + if (result.server_id) { + const { module } = await resolve(result.server_id); + result.server = module; + } + + // TODO: result.inline_styles + result.inline_styles = async () => ({}); + + return result; + } + `; + }) + .join(',\n')} + ], + prerendered_routes: new Set(), + routes: [${compact( + manifest_data.routes.map((route) => { + if (!route.page && !route.endpoint) return null; + + const endpoint = route.endpoint; + + return dedent` + { + id: ${s(route.id)}, + pattern: /${route.pattern.source}/, + params: ${s(route.params)}, + page: ${s(route.page)}, + endpoint: ${ + endpoint + ? `async () => { + const url = path.resolve(cwd, ${s(endpoint.file)}); + return await loud_ssr_load_module(url); + }` + : 'null' + }, + endpoint_id: ${s(endpoint?.file)} + } + `; + }) + ).join(',\n')}], + matchers: async () => { + const matchers = {}; + + for (const [key, file] of ${s(Object.entries(manifest_data.matchers))}) { + const url = path.resolve(cwd, file); + const module = await import(/* @vite-ignore */ url); + if (module.match) { + matchers[key] = module.match; + } else { + throw new Error(\`\${file} does not export a \\\`match\\\` function\`) + } + } + + return matchers; + } + } + } + + export const env = ${s(env)}; + + export const remote_address = ${s(remote_address)}; + + export const base_path = ${s(svelte_config.kit.paths.base)}; + + export const prerendered = manifest._.prerendered_routes; + `; + } } } }; @@ -562,7 +783,7 @@ Tips: writeBundle: { sequential: true, handler(_options) { - if (vite_config.build.ssr) return; + if (this.environment.config.consumer === 'server') return; const guard = module_guard(this, { cwd: vite.normalizePath(process.cwd()), @@ -588,59 +809,62 @@ Tips: * Build the SvelteKit-provided Vite config to be merged with the user's vite.config.js file. * @see https://vitejs.dev/guide/api-plugin.html#config */ - config(config) { + config(config, env_config) { /** @type {import('vite').UserConfig} */ let new_config; if (is_build) { - const ssr = /** @type {boolean} */ (config.build?.ssr); const prefix = `${kit.appDir}/immutable`; /** @type {Record} */ - const input = {}; + const server_input = { + index: `${runtime_directory}/server/index.js`, + internal: `${kit.outDir}/generated/server/internal.js` + }; - if (ssr) { - input.index = `${runtime_directory}/server/index.js`; - input.internal = `${kit.outDir}/generated/server/internal.js`; + manifest_data = sync.all(svelte_config, env_config.mode).manifest_data; - // add entry points for every endpoint... - manifest_data.routes.forEach((route) => { - if (route.endpoint) { - const resolved = path.resolve(route.endpoint.file); + // add entry points for every endpoint... + manifest_data.routes.forEach((route) => { + if (route.endpoint) { + const resolved = path.resolve(route.endpoint.file); + const relative = decodeURIComponent(path.relative(kit.files.routes, resolved)); + const name = posixify(path.join('entries/endpoints', relative.replace(/\.js$/, ''))); + server_input[name] = resolved; + } + }); + + // ...and every component used by pages... + manifest_data.nodes.forEach((node) => { + for (const file of [node.component, node.universal, node.server]) { + if (file) { + const resolved = path.resolve(file); const relative = decodeURIComponent(path.relative(kit.files.routes, resolved)); - const name = posixify(path.join('entries/endpoints', relative.replace(/\.js$/, ''))); - input[name] = resolved; - } - }); - // ...and every component used by pages... - manifest_data.nodes.forEach((node) => { - for (const file of [node.component, node.universal, node.server]) { - if (file) { - const resolved = path.resolve(file); - const relative = decodeURIComponent(path.relative(kit.files.routes, resolved)); - - const name = relative.startsWith('..') - ? posixify(path.join('entries/fallbacks', path.basename(file))) - : posixify(path.join('entries/pages', relative.replace(/\.js$/, ''))); - input[name] = resolved; - } + const name = relative.startsWith('..') + ? posixify(path.join('entries/fallbacks', path.basename(file))) + : posixify(path.join('entries/pages', relative.replace(/\.js$/, ''))); + server_input[name] = resolved; } - }); + } + }); - // ...and every matcher - Object.entries(manifest_data.matchers).forEach(([key, file]) => { - const name = posixify(path.join('entries/matchers', key)); - input[name] = path.resolve(file); - }); - } else if (svelte_config.kit.output.bundleStrategy !== 'split') { - input['bundle'] = `${runtime_directory}/client/bundle.js`; + // ...and every matcher + Object.entries(manifest_data.matchers).forEach(([key, file]) => { + const name = posixify(path.join('entries/matchers', key)); + server_input[name] = path.resolve(file); + }); + + /** @type {Record} */ + const client_input = {}; + if (svelte_config.kit.output.bundleStrategy !== 'split') { + client_input['bundle'] = `${runtime_directory}/client/bundle.js`; } else { - input['entry/start'] = `${runtime_directory}/client/entry.js`; - input['entry/app'] = `${kit.outDir}/generated/client-optimized/app.js`; + client_input['entry/start'] = `${runtime_directory}/client/entry.js`; + client_input['entry/app'] = `${kit.outDir}/generated/client-optimized/app.js`; manifest_data.nodes.forEach((node, i) => { if (node.component || node.universal) { - input[`nodes/${i}`] = `${kit.outDir}/generated/client-optimized/nodes/${i}.js`; + client_input[`nodes/${i}`] = `${kit.outDir}/generated/client-optimized/nodes/${i}.js`; } }); } @@ -652,31 +876,26 @@ Tips: // E.g. Vite generates `new URL('/asset.png', import.meta).href` for a relative path vs just '/asset.png'. // That's larger and takes longer to run and also causes an HTML diff between SSR and client // causing us to do a more expensive hydration check. - const client_base = - kit.paths.relative !== false || kit.paths.assets ? './' : kit.paths.base || '/'; + // const client_base = + // kit.paths.relative !== false || kit.paths.assets ? './' : kit.paths.base || '/'; - const inline = !ssr && svelte_config.kit.output.bundleStrategy === 'inline'; - const split = ssr || svelte_config.kit.output.bundleStrategy === 'split'; + const inline = svelte_config.kit.output.bundleStrategy === 'inline'; new_config = { - base: ssr ? assets_base(kit) : client_base, + appType: 'custom', + // TODO: Vite doesn't support different base paths for different environments + // base: ssr ? assets_base(kit) : client_base, + base: assets_base(kit), build: { - copyPublicDir: !ssr, - cssCodeSplit: svelte_config.kit.output.bundleStrategy !== 'inline', + cssCodeSplit: !inline, cssMinify: initial_config.build?.minify == null ? true : !!initial_config.build.minify, manifest: true, - outDir: `${out}/${ssr ? 'server' : 'client'}`, rollupOptions: { - input: inline ? input['bundle'] : input, output: { - format: inline ? 'iife' : 'esm', name: `__sveltekit_${version_hash}.app`, - entryFileNames: ssr ? '[name].js' : `${prefix}/[name].[hash].${ext}`, - chunkFileNames: ssr ? 'chunks/[name].js' : `${prefix}/chunks/[hash].${ext}`, assetFileNames: `${prefix}/assets/[name].[hash][extname]`, hoistTransitiveImports: false, - sourcemapIgnoreList, - inlineDynamicImports: !split + sourcemapIgnoreList }, preserveEntrySignatures: 'strict', onwarn(warning, handler) { @@ -693,9 +912,305 @@ Tips: handler(warning); } + } + }, + environments: { + ssr: { + build: { + copyPublicDir: false, + outDir: `${out}/server`, + target: 'node18.13', + emitAssets: true, + rollupOptions: { + input: server_input, + output: { + entryFileNames: '[name].js', + chunkFileNames: 'chunks/[name].js' + } + } + } }, - ssrEmitAssets: true, - target: ssr ? 'node18.13' : undefined + client: { + build: { + outDir: `${out}/client`, + rollupOptions: { + input: inline ? client_input['bundle'] : client_input, + preserveEntrySignatures: 'strict', + output: { + format: inline ? 'iife' : 'esm', + entryFileNames: `${prefix}/[name].[hash].${ext}`, + chunkFileNames: `${prefix}/chunks/[hash].${ext}`, + inlineDynamicImports: svelte_config.kit.output.bundleStrategy !== 'split' + } + } + } + } + }, + builder: { + buildApp: async (builder) => { + // clears the output directories + if (!builder.config.build.watch) { + rimraf(out); + } + mkdirp(out); + + const { output: server_chunks } = /** @type {import('vite').Rollup.RollupOutput} */ ( + await builder.build(builder.environments.ssr) + ); + + const verbose = vite_config.logLevel === 'info'; + const log = logger({ verbose }); + + /** @type {import('vite').Manifest} */ + const server_manifest = JSON.parse(read(`${out}/server/.vite/manifest.json`)); + + /** @type {import('types').BuildData} */ + const build_data = { + app_dir: kit.appDir, + app_path: `${kit.paths.base.slice(1)}${kit.paths.base ? '/' : ''}${kit.appDir}`, + manifest_data, + out_dir: out, + service_worker: service_worker_entry_file ? 'service-worker.js' : null, // TODO make file configurable? + client: null, + server_manifest + }; + + const manifest_path = `${out}/server/manifest-full.js`; + fs.writeFileSync( + manifest_path, + `export const manifest = ${generate_manifest({ + build_data, + prerendered: [], + relative_path: '.', + routes: manifest_data.routes + })};\n` + ); + + log.info('Analysing routes'); + + const { metadata, static_exports } = await analyse({ + hash: kit.router.type === 'hash', + manifest_path, + manifest_data, + server_manifest, + tracked_features, + env: { ...env.private, ...env.public }, + out, + output_config: svelte_config.output + }); + + log.info('Building app'); + + // create client build + write_client_manifest( + kit, + manifest_data, + `${kit.outDir}/generated/client-optimized`, + metadata.nodes + ); + + const { output: client_chunks } = /** @type {import('vite').Rollup.RollupOutput} */ ( + await builder.build(builder.environments.client) + ); + + copy( + `${out}/server/${kit.appDir}/immutable/assets`, + `${out}/client/${kit.appDir}/immutable/assets` + ); + + /** @type {import('vite').Manifest} */ + const client_manifest = JSON.parse(read(`${out}/client/.vite/manifest.json`)); + + /** + * @param {string} entry + * @param {boolean} [add_dynamic_css] + */ + const deps_of = (entry, add_dynamic_css = false) => + find_deps(client_manifest, posixify(path.relative('.', entry)), add_dynamic_css); + + if (svelte_config.kit.output.bundleStrategy === 'split') { + const start = deps_of(`${runtime_directory}/client/entry.js`); + const app = deps_of(`${kit.outDir}/generated/client-optimized/app.js`); + + build_data.client = { + start: start.file, + app: app.file, + imports: [...start.imports, ...app.imports], + stylesheets: [...start.stylesheets, ...app.stylesheets], + fonts: [...start.fonts, ...app.fonts], + uses_env_dynamic_public: client_chunks.some( + (chunk) => chunk.type === 'chunk' && chunk.modules[env_dynamic_public] + ) + }; + + // In case of server-side route resolution, we create a purpose-built route manifest that is + // similar to that on the client, with as much information computed upfront so that we + // don't need to include any code of the actual routes in the server bundle. + if (svelte_config.kit.router.resolution === 'server') { + const nodes = manifest_data.nodes.map((node, i) => { + if (node.component || node.universal) { + const entry = `${kit.outDir}/generated/client-optimized/nodes/${i}.js`; + const deps = deps_of(entry, true); + const file = resolve_symlinks( + client_manifest, + `${kit.outDir}/generated/client-optimized/nodes/${i}.js` + ).chunk.file; + + return { file, css: deps.stylesheets }; + } + }); + build_data.client.nodes = nodes.map((node) => node?.file); + build_data.client.css = nodes.map((node) => node?.css); + + build_data.client.routes = compact( + manifest_data.routes.map((route) => { + if (!route.page) return; + + return { + id: route.id, + pattern: route.pattern, + params: route.params, + layouts: route.page.layouts.map((l) => + l !== undefined ? [metadata.nodes[l].has_server_load, l] : undefined + ), + errors: route.page.errors, + leaf: [metadata.nodes[route.page.leaf].has_server_load, route.page.leaf] + }; + }) + ); + } + } else { + const start = deps_of(`${runtime_directory}/client/bundle.js`); + + build_data.client = { + start: start.file, + imports: start.imports, + stylesheets: start.stylesheets, + fonts: start.fonts, + uses_env_dynamic_public: client_chunks.some( + (chunk) => chunk.type === 'chunk' && chunk.modules[env_dynamic_public] + ) + }; + + if (svelte_config.kit.output.bundleStrategy === 'inline') { + const style = /** @type {import('vite').Rollup.OutputAsset} */ ( + client_chunks.find( + (chunk) => + chunk.type === 'asset' && + chunk.names.length === 1 && + chunk.names[0] === 'style.css' + ) + ); + + build_data.client.inline = { + script: read(`${out}/client/${start.file}`), + style: /** @type {string | undefined} */ (style?.source) + }; + } + } + + // regenerate manifest now that we have client entry... + fs.writeFileSync( + manifest_path, + `export const manifest = ${generate_manifest({ + build_data, + prerendered: [], + relative_path: '.', + routes: manifest_data.routes + })};\n` + ); + + // regenerate nodes with the client manifest... + await build_server_nodes( + out, + kit, + manifest_data, + server_manifest, + client_manifest, + server_chunks, + client_chunks, + svelte_config.kit.output, + static_exports + ); + + // ...and prerender + const { prerendered, prerender_map } = await prerender({ + hash: kit.router.type === 'hash', + out, + manifest_path, + metadata, + verbose, + env: { ...env.private, ...env.public } + }); + + // generate a new manifest that doesn't include prerendered pages + fs.writeFileSync( + `${out}/server/manifest.js`, + `export const manifest = ${generate_manifest({ + build_data, + prerendered: prerendered.paths, + relative_path: '.', + routes: manifest_data.routes.filter( + (route) => prerender_map.get(route.id) !== true + ) + })};\n` + ); + + if (service_worker_entry_file) { + if (kit.paths.assets) { + throw new Error('Cannot use service worker alongside config.kit.paths.assets'); + } + + log.info('Building service worker'); + + // TODO: migrate service worker to environment? + await build_service_worker( + out, + kit, + { + ...vite_config, + build: { + ...vite_config.build, + minify: initial_config.build?.minify ?? true + } + }, + manifest_data, + service_worker_entry_file, + prerendered, + client_manifest + ); + } + + // we need to defer this to closeBundle, so that adapters copy files + // created by other Vite plugins + finalise = async () => { + console.log( + `\nRun ${colors + .bold() + .cyan('npm run preview')} to preview your production build locally.` + ); + + if (kit.adapter) { + const { adapt } = await import('../../core/adapt/index.js'); + await adapt( + svelte_config, + build_data, + metadata, + prerendered, + prerender_map, + log, + vite_config + ); + } else { + console.log(colors.bold().yellow('\nNo adapter specified')); + + const link = colors.bold().cyan('https://svelte.dev/docs/kit/adapters'); + console.log( + `See ${link} to learn how to configure your app to run on the platform of your choosing` + ); + } + }; + } }, publicDir: kit.files.assets, worker: { @@ -734,7 +1249,7 @@ Tips: * @see https://vitejs.dev/guide/api-plugin.html#configureserver */ async configureServer(vite) { - return await dev(vite, vite_config, svelte_config); + return await dev(vite, vite_config, svelte_config, dev_environment); }, /** @@ -745,20 +1260,6 @@ Tips: return preview(vite, vite_config, svelte_config); }, - /** - * Clears the output directories. - */ - buildStart() { - if (secondary_build_started) return; - - if (is_build) { - if (!vite_config.build.watch) { - rimraf(out); - } - mkdirp(out); - } - }, - renderChunk(code, chunk) { if (code.includes('__SVELTEKIT_TRACK__')) { return { @@ -774,302 +1275,20 @@ Tips: }, generateBundle() { - if (vite_config.build.ssr) return; - + if (this.environment.name !== 'client') return; this.emitFile({ type: 'asset', fileName: `${kit.appDir}/version.json`, source: s({ version: kit.version.name }) }); }, - - /** - * Vite builds a single bundle. We need three bundles: client, server, and service worker. - * The user's package.json scripts will invoke the Vite CLI to execute the server build. We - * then use this hook to kick off builds for the client and service worker. - */ - writeBundle: { - sequential: true, - async handler(_options, bundle) { - if (secondary_build_started) return; // only run this once - - const verbose = vite_config.logLevel === 'info'; - const log = logger({ verbose }); - - /** @type {import('vite').Manifest} */ - const server_manifest = JSON.parse(read(`${out}/server/.vite/manifest.json`)); - - /** @type {import('types').BuildData} */ - const build_data = { - app_dir: kit.appDir, - app_path: `${kit.paths.base.slice(1)}${kit.paths.base ? '/' : ''}${kit.appDir}`, - manifest_data, - out_dir: out, - service_worker: service_worker_entry_file ? 'service-worker.js' : null, // TODO make file configurable? - client: null, - server_manifest - }; - - const manifest_path = `${out}/server/manifest-full.js`; - fs.writeFileSync( - manifest_path, - `export const manifest = ${generate_manifest({ - build_data, - prerendered: [], - relative_path: '.', - routes: manifest_data.routes - })};\n` - ); - - log.info('Analysing routes'); - - const { metadata, static_exports } = await analyse({ - hash: kit.router.type === 'hash', - manifest_path, - manifest_data, - server_manifest, - tracked_features, - env: { ...env.private, ...env.public }, - out, - output_config: svelte_config.output - }); - - log.info('Building app'); - - // create client build - write_client_manifest( - kit, - manifest_data, - `${kit.outDir}/generated/client-optimized`, - metadata.nodes - ); - - secondary_build_started = true; - - const { output: client_chunks } = /** @type {import('vite').Rollup.RollupOutput} */ ( - await vite.build({ - configFile: vite_config.configFile, - // CLI args - mode: vite_config_env.mode, - logLevel: vite_config.logLevel, - clearScreen: vite_config.clearScreen, - build: { - minify: initial_config.build?.minify, - assetsInlineLimit: vite_config.build.assetsInlineLimit, - sourcemap: vite_config.build.sourcemap - }, - optimizeDeps: { - force: vite_config.optimizeDeps.force - } - }) - ); - - copy( - `${out}/server/${kit.appDir}/immutable/assets`, - `${out}/client/${kit.appDir}/immutable/assets` - ); - - /** @type {import('vite').Manifest} */ - const client_manifest = JSON.parse(read(`${out}/client/.vite/manifest.json`)); - - /** - * @param {string} entry - * @param {boolean} [add_dynamic_css] - */ - const deps_of = (entry, add_dynamic_css = false) => - find_deps(client_manifest, posixify(path.relative('.', entry)), add_dynamic_css); - - if (svelte_config.kit.output.bundleStrategy === 'split') { - const start = deps_of(`${runtime_directory}/client/entry.js`); - const app = deps_of(`${kit.outDir}/generated/client-optimized/app.js`); - - build_data.client = { - start: start.file, - app: app.file, - imports: [...start.imports, ...app.imports], - stylesheets: [...start.stylesheets, ...app.stylesheets], - fonts: [...start.fonts, ...app.fonts], - uses_env_dynamic_public: client_chunks.some( - (chunk) => chunk.type === 'chunk' && chunk.modules[env_dynamic_public] - ) - }; - - // In case of server-side route resolution, we create a purpose-built route manifest that is - // similar to that on the client, with as much information computed upfront so that we - // don't need to include any code of the actual routes in the server bundle. - if (svelte_config.kit.router.resolution === 'server') { - const nodes = manifest_data.nodes.map((node, i) => { - if (node.component || node.universal) { - const entry = `${kit.outDir}/generated/client-optimized/nodes/${i}.js`; - const deps = deps_of(entry, true); - const file = resolve_symlinks( - client_manifest, - `${kit.outDir}/generated/client-optimized/nodes/${i}.js` - ).chunk.file; - - return { file, css: deps.stylesheets }; - } - }); - build_data.client.nodes = nodes.map((node) => node?.file); - build_data.client.css = nodes.map((node) => node?.css); - - build_data.client.routes = compact( - manifest_data.routes.map((route) => { - if (!route.page) return; - - return { - id: route.id, - pattern: route.pattern, - params: route.params, - layouts: route.page.layouts.map((l) => - l !== undefined ? [metadata.nodes[l].has_server_load, l] : undefined - ), - errors: route.page.errors, - leaf: [metadata.nodes[route.page.leaf].has_server_load, route.page.leaf] - }; - }) - ); - } - } else { - const start = deps_of(`${runtime_directory}/client/bundle.js`); - - build_data.client = { - start: start.file, - imports: start.imports, - stylesheets: start.stylesheets, - fonts: start.fonts, - uses_env_dynamic_public: client_chunks.some( - (chunk) => chunk.type === 'chunk' && chunk.modules[env_dynamic_public] - ) - }; - - if (svelte_config.kit.output.bundleStrategy === 'inline') { - const style = /** @type {import('vite').Rollup.OutputAsset} */ ( - client_chunks.find( - (chunk) => - chunk.type === 'asset' && - chunk.names.length === 1 && - chunk.names[0] === 'style.css' - ) - ); - - build_data.client.inline = { - script: read(`${out}/client/${start.file}`), - style: /** @type {string | undefined} */ (style?.source) - }; - } - } - - // regenerate manifest now that we have client entry... - fs.writeFileSync( - manifest_path, - `export const manifest = ${generate_manifest({ - build_data, - prerendered: [], - relative_path: '.', - routes: manifest_data.routes - })};\n` - ); - - // regenerate nodes with the client manifest... - await build_server_nodes( - out, - kit, - manifest_data, - server_manifest, - client_manifest, - bundle, - client_chunks, - svelte_config.kit.output, - static_exports - ); - - // ...and prerender - const { prerendered, prerender_map } = await prerender({ - hash: kit.router.type === 'hash', - out, - manifest_path, - metadata, - verbose, - env: { ...env.private, ...env.public } - }); - - // generate a new manifest that doesn't include prerendered pages - fs.writeFileSync( - `${out}/server/manifest.js`, - `export const manifest = ${generate_manifest({ - build_data, - prerendered: prerendered.paths, - relative_path: '.', - routes: manifest_data.routes.filter((route) => prerender_map.get(route.id) !== true) - })};\n` - ); - - if (service_worker_entry_file) { - if (kit.paths.assets) { - throw new Error('Cannot use service worker alongside config.kit.paths.assets'); - } - - log.info('Building service worker'); - - await build_service_worker( - out, - kit, - { - ...vite_config, - build: { - ...vite_config.build, - minify: initial_config.build?.minify ?? true - } - }, - manifest_data, - service_worker_entry_file, - prerendered, - client_manifest - ); - } - - // we need to defer this to closeBundle, so that adapters copy files - // created by other Vite plugins - finalise = async () => { - console.log( - `\nRun ${colors - .bold() - .cyan('npm run preview')} to preview your production build locally.` - ); - - if (kit.adapter) { - const { adapt } = await import('../../core/adapt/index.js'); - await adapt( - svelte_config, - build_data, - metadata, - prerendered, - prerender_map, - log, - vite_config - ); - } else { - console.log(colors.bold().yellow('\nNo adapter specified')); - - const link = colors.bold().cyan('https://svelte.dev/docs/kit/adapters'); - console.log( - `See ${link} to learn how to configure your app to run on the platform of your choosing` - ); - } - - secondary_build_started = false; - }; - } - }, - /** * Runs the adapter. */ closeBundle: { sequential: true, async handler() { - if (!vite_config.build.ssr) return; + if (this.environment.name !== 'client') return; await finalise?.(); } } diff --git a/packages/kit/src/exports/vite/module_ids.js b/packages/kit/src/exports/vite/module_ids.js index 549668513914..be97f370181f 100644 --- a/packages/kit/src/exports/vite/module_ids.js +++ b/packages/kit/src/exports/vite/module_ids.js @@ -11,6 +11,7 @@ export const service_worker = '\0virtual:service-worker'; export const sveltekit_environment = '\0virtual:__sveltekit/environment'; export const sveltekit_paths = '\0virtual:__sveltekit/paths'; export const sveltekit_server = '\0virtual:__sveltekit/server'; +export const sveltekit_vite_environment = '\0virtual:__sveltekit/vite-environment'; export const app_server = posixify( fileURLToPath(new URL('../../runtime/app/server/index.js', import.meta.url)) diff --git a/packages/kit/src/types/internal.d.ts b/packages/kit/src/types/internal.d.ts index 17e2425e3c17..2f027114f668 100644 --- a/packages/kit/src/types/internal.d.ts +++ b/packages/kit/src/types/internal.d.ts @@ -521,3 +521,9 @@ export type ValidatedKitConfig = Omit, 'adapter'> & export * from '../exports/index.js'; export * from './private.js'; + +export interface DevEnvironment { + manifest_data: ManifestData; + env: Record; + remote_address: string | undefined; +} diff --git a/packages/package/package.json b/packages/package/package.json index 5470c8236bcb..3b1ca7b71974 100644 --- a/packages/package/package.json +++ b/packages/package/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@sveltejs/vite-plugin-svelte": "catalog:", - "@types/node": "^18.19.119", + "@types/node": "catalog:", "@types/semver": "^7.5.6", "prettier": "^3.1.1", "svelte": "^5.35.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c5f5aad1651f..f35c761db4f7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,18 +10,24 @@ catalogs: specifier: ^1.51.1 version: 1.51.1 '@sveltejs/vite-plugin-svelte': - specifier: ^6.0.0-next.3 - version: 6.0.0-next.3 + specifier: ^6.1.0 + version: 6.1.0 + '@types/node': + specifier: ^20.14.8 + version: 20.19.8 cross-env: specifier: ^7.0.3 version: 7.0.3 vite: - specifier: ^6.3.5 - version: 6.3.5 + specifier: ^7.0.3 + version: 7.0.3 vitest: specifier: ^3.2.3 version: 3.2.3 +overrides: + esm-env: github:benmccann/esm-env#bcbddbc&path:packages/esm-env + importers: .: @@ -34,7 +40,7 @@ importers: version: 1.51.1 '@sveltejs/eslint-config': specifier: ^8.2.0 - version: 8.2.0(@stylistic/eslint-plugin-js@2.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-config-prettier@9.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-plugin-n@17.16.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.35.5)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)))(eslint@9.29.0(jiti@2.4.2))(typescript-eslint@8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(typescript@5.8.3) + version: 8.2.0(@stylistic/eslint-plugin-js@2.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-config-prettier@9.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-plugin-n@17.16.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.36.5)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)))(eslint@9.29.0(jiti@2.4.2))(typescript-eslint@8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(typescript@5.8.3) '@svitejs/changesets-changelog-github-compact': specifier: ^1.2.0 version: 1.2.0 @@ -46,7 +52,7 @@ importers: version: 3.6.0 prettier-plugin-svelte: specifier: ^3.4.0 - version: 3.4.0(prettier@3.6.0)(svelte@5.35.5) + version: 3.4.0(prettier@3.6.0)(svelte@5.36.5) typescript-eslint: specifier: ^8.35.0 version: 8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) @@ -58,16 +64,16 @@ importers: version: link:../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 typescript: specifier: ^5.3.3 version: 5.6.3 vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-cloudflare: dependencies: @@ -88,8 +94,8 @@ importers: specifier: workspace:^ version: link:../kit '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 esbuild: specifier: ^0.25.4 version: 0.25.5 @@ -98,7 +104,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-cloudflare/test/apps/pages: devDependencies: @@ -107,16 +113,16 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) server-side-dep: specifier: file:server-side-dep version: file:packages/adapter-cloudflare/test/apps/pages/server-side-dep svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) wrangler: specifier: ^4.14.3 version: 4.14.4(@cloudflare/workers-types@4.20250508.0) @@ -128,7 +134,7 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 @@ -137,10 +143,10 @@ importers: version: file:packages/adapter-cloudflare/test/apps/workers/server-side-dep svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) wrangler: specifier: ^4.14.3 version: 4.14.4(@cloudflare/workers-types@4.20250508.0) @@ -159,7 +165,7 @@ importers: devDependencies: '@netlify/edge-functions': specifier: ^2.15.1 - version: 2.15.1 + version: 2.15.8 '@netlify/functions': specifier: ^4.0.0 version: 4.1.4(rollup@4.40.1) @@ -177,10 +183,10 @@ importers: version: link:../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 '@types/set-cookie-parser': specifier: ^2.4.7 version: 2.4.7 @@ -192,7 +198,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-netlify/test/apps/basic: devDependencies: @@ -201,16 +207,16 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) netlify-cli: specifier: ^22.1.5 - version: 22.1.6(@types/node@18.19.119)(picomatch@4.0.2) + version: 22.3.0(@types/node@20.19.8)(picomatch@4.0.2)(rollup@4.40.1) svelte: specifier: ^5.23.1 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-netlify/test/apps/edge: devDependencies: @@ -219,16 +225,16 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) netlify-cli: specifier: ^22.1.5 - version: 22.1.6(@types/node@18.19.119)(picomatch@4.0.2) + version: 22.3.0(@types/node@20.19.8)(picomatch@4.0.2)(rollup@4.40.1) svelte: specifier: ^5.23.1 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-node: dependencies: @@ -253,10 +259,10 @@ importers: version: link:../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 polka: specifier: ^1.0.0-next.28 version: 1.0.0-next.28 @@ -268,7 +274,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-static: devDependencies: @@ -280,22 +286,22 @@ importers: version: link:../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 sirv: specifier: ^3.0.0 version: 3.0.0 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 typescript: specifier: ^5.3.3 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-static/test/apps/prerendered: devDependencies: @@ -304,16 +310,16 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) sirv-cli: specifier: ^3.0.0 version: 3.0.0 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-static/test/apps/spa: devDependencies: @@ -325,22 +331,22 @@ importers: version: link:../../../../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) sirv-cli: specifier: ^3.0.0 version: 3.0.0 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/adapter-vercel: dependencies: '@vercel/nft': specifier: ^0.30.0 - version: 0.30.0(rollup@4.44.0) + version: 0.30.0(rollup@4.40.1) esbuild: specifier: ^0.25.4 version: 0.25.5 @@ -350,16 +356,16 @@ importers: version: link:../kit '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 typescript: specifier: ^5.3.3 version: 5.6.3 vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/amp: devDependencies: @@ -382,7 +388,7 @@ importers: version: 0.34.1 svelte-parse-markup: specifier: ^0.1.5 - version: 0.1.5(svelte@5.35.5) + version: 0.1.5(svelte@5.36.5) vite-imagetools: specifier: ^7.1.0 version: 7.1.0(rollup@4.40.1) @@ -392,28 +398,28 @@ importers: devDependencies: '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/estree': specifier: ^1.0.5 version: 1.0.7 '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 rollup: specifier: ^4.27.4 version: 4.40.1 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 typescript: specifier: ^5.6.3 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit: dependencies: @@ -433,8 +439,8 @@ importers: specifier: ^5.1.0 version: 5.1.0 esm-env: - specifier: ^1.2.2 - version: 1.2.2 + specifier: github:benmccann/esm-env#bcbddbc&path:packages/esm-env + version: https://codeload.github.com/benmccann/esm-env/tar.gz/bcbddbc#path:packages/esm-env kleur: specifier: ^4.1.5 version: 4.1.5 @@ -459,13 +465,13 @@ importers: version: 1.51.1 '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/connect': specifier: ^3.4.38 version: 3.4.38 '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 '@types/set-cookie-parser': specifier: ^2.4.7 version: 2.4.7 @@ -477,19 +483,19 @@ importers: version: 4.40.1 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-preprocess: specifier: ^6.0.0 - version: 6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.35.5)(typescript@5.6.3) + version: 6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.3.3 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/amp: devDependencies: @@ -501,7 +507,7 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 @@ -510,16 +516,16 @@ importers: version: 1.0.16 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/basics: devDependencies: @@ -528,16 +534,16 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) test-redirect-importer: specifier: workspace:* version: link:../../../../test-redirect-importer @@ -546,7 +552,7 @@ importers: version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/dev-only: devDependencies: @@ -555,7 +561,7 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 @@ -591,16 +597,16 @@ importers: version: e2e-test-dep-cjs-only@file:packages/kit/test/apps/dev-only/_test_dependencies/cjs-only svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/embed: devDependencies: @@ -609,22 +615,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/hash-based-routing: devDependencies: @@ -633,22 +639,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/no-ssr: devDependencies: @@ -657,22 +663,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/options: devDependencies: @@ -684,22 +690,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/options-2: devDependencies: @@ -711,22 +717,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/prerendered-app-error-pages: devDependencies: @@ -735,22 +741,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/apps/writes: devDependencies: @@ -759,28 +765,28 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors: devDependencies: vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/prerender-entry-generator-mismatch: devDependencies: @@ -792,19 +798,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/prerenderable-incorrect-fragment: devDependencies: @@ -816,19 +822,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/prerenderable-not-prerendered: devDependencies: @@ -840,19 +846,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/private-dynamic-env: devDependencies: @@ -861,19 +867,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/private-dynamic-env-dynamic-import: devDependencies: @@ -882,19 +888,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/private-static-env: devDependencies: @@ -903,22 +909,22 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) cross-env: specifier: 'catalog:' version: 7.0.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/private-static-env-dynamic-import: devDependencies: @@ -927,19 +933,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/server-only-folder: devDependencies: @@ -948,19 +954,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/server-only-folder-dynamic-import: devDependencies: @@ -969,19 +975,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/server-only-module: devDependencies: @@ -990,19 +996,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/server-only-module-dynamic-import: devDependencies: @@ -1011,19 +1017,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/service-worker-dynamic-public-env: devDependencies: @@ -1032,19 +1038,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/service-worker-private-env: devDependencies: @@ -1053,19 +1059,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/build-errors/apps/syntax-error: devDependencies: @@ -1074,19 +1080,19 @@ importers: version: link:../../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/prerendering/basics: devDependencies: @@ -1095,22 +1101,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/prerendering/options: devDependencies: @@ -1119,22 +1125,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/kit/test/prerendering/paths-base: devDependencies: @@ -1143,22 +1149,22 @@ importers: version: link:../../.. '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.4 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) vitest: specifier: 'catalog:' - version: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages/package: dependencies: @@ -1176,14 +1182,14 @@ importers: version: 7.7.1 svelte2tsx: specifier: ~0.7.33 - version: 0.7.33(svelte@5.35.5)(typescript@5.6.3) + version: 0.7.33(svelte@5.36.5)(typescript@5.6.3) devDependencies: '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@types/node': - specifier: ^18.19.119 - version: 18.19.119 + specifier: 'catalog:' + version: 20.19.8 '@types/semver': specifier: ^7.5.6 version: 7.5.8 @@ -1192,10 +1198,10 @@ importers: version: 3.3.3 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-preprocess: specifier: ^6.0.0 - version: 6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.35.5)(typescript@5.6.3) + version: 6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.3.3 version: 5.6.3 @@ -1243,28 +1249,28 @@ importers: version: link:../../packages/package '@sveltejs/vite-plugin-svelte': specifier: 'catalog:' - version: 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + version: 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) prettier: specifier: ^3.3.2 version: 3.3.3 prettier-plugin-svelte: specifier: ^3.2.6 - version: 3.2.7(prettier@3.3.3)(svelte@5.35.5) + version: 3.2.7(prettier@3.3.3)(svelte@5.36.5) publint: specifier: ^0.3.0 version: 0.3.0 svelte: specifier: ^5.35.5 - version: 5.35.5 + version: 5.36.5 svelte-check: specifier: ^4.1.1 - version: 4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3) + version: 4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3) typescript: specifier: ^5.5.0 version: 5.6.3 vite: specifier: 'catalog:' - version: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + version: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) packages: @@ -1301,6 +1307,10 @@ packages: resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} engines: {node: '>=6.9.0'} + '@babel/types@7.28.0': + resolution: {integrity: sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==} + engines: {node: '>=6.9.0'} + '@bugsnag/browser@8.4.0': resolution: {integrity: sha512-5ZzGZtCwvhQbrMCAPAH9ruQGjVmSzjiE6qNNP2mD/8q0Yi45TWBtG/0MdlUYpDwx2lxVVHaGHqI3GBeD7B4Hqg==} @@ -1457,6 +1467,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.25.6': + resolution: {integrity: sha512-ShbM/3XxwuxjFiuVBHA+d3j5dyac0aEVVq1oluIDf71hUw0aRF59dV/efUsIwFnR6m8JNM2FjZOzmaZ8yG61kw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.25.4': resolution: {integrity: sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==} engines: {node: '>=18'} @@ -1469,6 +1485,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.25.6': + resolution: {integrity: sha512-hd5zdUarsK6strW+3Wxi5qWws+rJhCCbMiC9QZyzoxfk5uHRIE8T287giQxzVpEvCwuJ9Qjg6bEjcRJcgfLqoA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.25.4': resolution: {integrity: sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==} engines: {node: '>=18'} @@ -1481,6 +1503,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-arm@0.25.6': + resolution: {integrity: sha512-S8ToEOVfg++AU/bHwdksHNnyLyVM+eMVAOf6yRKFitnwnbwwPNqKr3srzFRe7nzV69RQKb5DgchIX5pt3L53xg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.25.4': resolution: {integrity: sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==} engines: {node: '>=18'} @@ -1493,6 +1521,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/android-x64@0.25.6': + resolution: {integrity: sha512-0Z7KpHSr3VBIO9A/1wcT3NTy7EB4oNC4upJ5ye3R7taCc2GUdeynSLArnon5G8scPwaU866d3H4BCrE5xLW25A==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.25.4': resolution: {integrity: sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==} engines: {node: '>=18'} @@ -1505,6 +1539,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.25.6': + resolution: {integrity: sha512-FFCssz3XBavjxcFxKsGy2DYK5VSvJqa6y5HXljKzhRZ87LvEi13brPrf/wdyl/BbpbMKJNOr1Sd0jtW4Ge1pAA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.25.4': resolution: {integrity: sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==} engines: {node: '>=18'} @@ -1517,6 +1557,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.25.6': + resolution: {integrity: sha512-GfXs5kry/TkGM2vKqK2oyiLFygJRqKVhawu3+DOCk7OxLy/6jYkWXhlHwOoTb0WqGnWGAS7sooxbZowy+pK9Yg==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.25.4': resolution: {integrity: sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==} engines: {node: '>=18'} @@ -1529,6 +1575,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.25.6': + resolution: {integrity: sha512-aoLF2c3OvDn2XDTRvn8hN6DRzVVpDlj2B/F66clWd/FHLiHaG3aVZjxQX2DYphA5y/evbdGvC6Us13tvyt4pWg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.25.4': resolution: {integrity: sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==} engines: {node: '>=18'} @@ -1541,6 +1593,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.25.6': + resolution: {integrity: sha512-2SkqTjTSo2dYi/jzFbU9Plt1vk0+nNg8YC8rOXXea+iA3hfNJWebKYPs3xnOUf9+ZWhKAaxnQNUf2X9LOpeiMQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.25.4': resolution: {integrity: sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==} engines: {node: '>=18'} @@ -1553,6 +1611,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.25.6': + resolution: {integrity: sha512-b967hU0gqKd9Drsh/UuAm21Khpoh6mPBSgz8mKRq4P5mVK8bpA+hQzmm/ZwGVULSNBzKdZPQBRT3+WuVavcWsQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.25.4': resolution: {integrity: sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==} engines: {node: '>=18'} @@ -1565,6 +1629,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.25.6': + resolution: {integrity: sha512-SZHQlzvqv4Du5PrKE2faN0qlbsaW/3QQfUUc6yO2EjFcA83xnwm91UbEEVx4ApZ9Z5oG8Bxz4qPE+HFwtVcfyw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.25.4': resolution: {integrity: sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==} engines: {node: '>=18'} @@ -1577,6 +1647,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.25.6': + resolution: {integrity: sha512-aHWdQ2AAltRkLPOsKdi3xv0mZ8fUGPdlKEjIEhxCPm5yKEThcUjHpWB1idN74lfXGnZ5SULQSgtr5Qos5B0bPw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.25.4': resolution: {integrity: sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==} engines: {node: '>=18'} @@ -1589,6 +1665,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.25.6': + resolution: {integrity: sha512-VgKCsHdXRSQ7E1+QXGdRPlQ/e08bN6WMQb27/TMfV+vPjjTImuT9PmLXupRlC90S1JeNNW5lzkAEO/McKeJ2yg==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.25.4': resolution: {integrity: sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==} engines: {node: '>=18'} @@ -1601,6 +1683,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.25.6': + resolution: {integrity: sha512-WViNlpivRKT9/py3kCmkHnn44GkGXVdXfdc4drNmRl15zVQ2+D2uFwdlGh6IuK5AAnGTo2qPB1Djppj+t78rzw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.25.4': resolution: {integrity: sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==} engines: {node: '>=18'} @@ -1613,6 +1701,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.25.6': + resolution: {integrity: sha512-wyYKZ9NTdmAMb5730I38lBqVu6cKl4ZfYXIs31Baf8aoOtB4xSGi3THmDYt4BTFHk7/EcVixkOV2uZfwU3Q2Jw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.25.4': resolution: {integrity: sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==} engines: {node: '>=18'} @@ -1625,6 +1719,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.25.6': + resolution: {integrity: sha512-KZh7bAGGcrinEj4qzilJ4hqTY3Dg2U82c8bv+e1xqNqZCrCyc+TL9AUEn5WGKDzm3CfC5RODE/qc96OcbIe33w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.25.4': resolution: {integrity: sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==} engines: {node: '>=18'} @@ -1637,6 +1737,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.25.6': + resolution: {integrity: sha512-9N1LsTwAuE9oj6lHMyyAM+ucxGiVnEqUdp4v7IaMmrwb06ZTEVCIs3oPPplVsnjPfyjmxwHxHMF8b6vzUVAUGw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.25.4': resolution: {integrity: sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==} engines: {node: '>=18'} @@ -1649,6 +1755,12 @@ packages: cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.25.6': + resolution: {integrity: sha512-A6bJB41b4lKFWRKNrWoP2LHsjVzNiaurf7wyj/XtFNTsnPuxwEBWHLty+ZE0dWBKuSK1fvKgrKaNjBS7qbFKig==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-arm64@0.25.4': resolution: {integrity: sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==} engines: {node: '>=18'} @@ -1661,6 +1773,12 @@ packages: cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-arm64@0.25.6': + resolution: {integrity: sha512-IjA+DcwoVpjEvyxZddDqBY+uJ2Snc6duLpjmkXm/v4xuS3H+3FkLZlDm9ZsAbF9rsfP3zeA0/ArNDORZgrxR/Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.25.4': resolution: {integrity: sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==} engines: {node: '>=18'} @@ -1673,6 +1791,12 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.25.6': + resolution: {integrity: sha512-dUXuZr5WenIDlMHdMkvDc1FAu4xdWixTCRgP7RQLBOkkGgwuuzaGSYcOpW4jFxzpzL1ejb8yF620UxAqnBrR9g==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/openbsd-arm64@0.25.4': resolution: {integrity: sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==} engines: {node: '>=18'} @@ -1685,6 +1809,12 @@ packages: cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-arm64@0.25.6': + resolution: {integrity: sha512-l8ZCvXP0tbTJ3iaqdNf3pjaOSd5ex/e6/omLIQCVBLmHTlfXW3zAxQ4fnDmPLOB1x9xrcSi/xtCWFwCZRIaEwg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.25.4': resolution: {integrity: sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==} engines: {node: '>=18'} @@ -1697,6 +1827,18 @@ packages: cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.25.6': + resolution: {integrity: sha512-hKrmDa0aOFOr71KQ/19JC7az1P0GWtCN1t2ahYAf4O007DHZt/dW8ym5+CUdJhQ/qkZmI1HAF8KkJbEFtCL7gw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.25.6': + resolution: {integrity: sha512-+SqBcAWoB1fYKmpWoQP4pGtx+pUUC//RNYhFdbcSA16617cchuryuhOCRpPsjCblKukAckWsV+aQ3UKT/RMPcA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/sunos-x64@0.25.4': resolution: {integrity: sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==} engines: {node: '>=18'} @@ -1709,6 +1851,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.25.6': + resolution: {integrity: sha512-dyCGxv1/Br7MiSC42qinGL8KkG4kX0pEsdb0+TKhmJZgCUDBGmyo1/ArCjNGiOLiIAgdbWgmWgib4HoCi5t7kA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.25.4': resolution: {integrity: sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==} engines: {node: '>=18'} @@ -1721,6 +1869,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.25.6': + resolution: {integrity: sha512-42QOgcZeZOvXfsCBJF5Afw73t4veOId//XD3i+/9gSkhSV6Gk3VPlWncctI+JcOyERv85FUo7RxuxGy+z8A43Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.25.4': resolution: {integrity: sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==} engines: {node: '>=18'} @@ -1733,6 +1887,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.25.6': + resolution: {integrity: sha512-4AWhgXmDuYN7rJI6ORB+uU9DHLq/erBbuMoAuB4VWJTu5KtCgcKYPynF0YI1VkBNuEfjNlLrFr9KZPJzrtLkrQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.25.4': resolution: {integrity: sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==} engines: {node: '>=18'} @@ -1745,6 +1905,12 @@ packages: cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.25.6': + resolution: {integrity: sha512-NgJPHHbEpLQgDH2MjQu90pzW/5vvXIZ7KOnPyNBm92A6WgZ/7b6fJyUBjoumLqeOQQGqY2QjQxRo97ah4Sj0cA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.7.0': resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1791,6 +1957,9 @@ packages: resolution: {integrity: sha512-OIHZrb2ImZ7XG85HXOONLcJWGosv7sIvM2ifAPQVhg9Lv7qdmMBNVaai4QTdyuaqbKM5eO6sLSQOYI7wEQeCJQ==} engines: {node: '>=14'} + '@fastify/accept-negotiator@2.0.1': + resolution: {integrity: sha512-/c/TW2bO/v9JeEgoD/g1G5GxGeCF1Hafdf79WPmUlgYiBXummY0oX3VVq4yFkKKVBKDNlaDUYoab7g38RpPqCQ==} + '@fastify/ajv-compiler@3.6.0': resolution: {integrity: sha512-LwdXQJjmMD+GwLOkP7TVC68qa+pSSogeWWmznRJ/coyTcfe9qA05AHFSe1eZFwK6q+xVRpChnvFUkf1iYaSZsQ==} @@ -2118,21 +2287,21 @@ packages: '@netlify/binary-info@1.0.0': resolution: {integrity: sha512-4wMPu9iN3/HL97QblBsBay3E1etIciR84izI3U+4iALY+JHCrI+a2jO0qbAZ/nxKoegypYEaiiqWXylm+/zfrw==} - '@netlify/blobs@10.0.1': - resolution: {integrity: sha512-Mbf5WkJlbR5nWA8LgA9CH+dVg7yKxoRXr1jfl1CdzEsRAVIJROPCTXGUYI5N7Q6vk/py0fVLbEie+N9d7eYVdw==} + '@netlify/blobs@10.0.5': + resolution: {integrity: sha512-igbARa6gUII83lZdloe0zQzf2YLqJOZ3/3k2GMkEFFNxfLptAjvnh1z6WtFVV6bbO2IR2qOeuS2uaWRXeTNtlw==} engines: {node: ^14.16.0 || >=16.0.0} '@netlify/blobs@9.1.6': resolution: {integrity: sha512-RR3t5fv7CkGVJiylOTLf/YaHPyrcWmhHW3zX3EK/9UQsnTi8jPxP7B2nyjgRjAx5S4YTzJQP+FmbQlGKdogALQ==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/build-info@10.0.6': - resolution: {integrity: sha512-wWMCf1IQMpYj5vp5kuZY7EvNdDbfCg77UvCKjSmHTTgWxHmb9UUOVNRH4J/YnP8HIa9i6YMfpp2ix+V34O239A==} + '@netlify/build-info@10.0.7': + resolution: {integrity: sha512-RZmSg0wekEUtPklRR8z6rsG5TPXRfT2EnamDBp94ZTUixDxDk07UCMBiz2hMKMg3qA6KTW6csuFNruvD3jw5Kw==} engines: {node: '>=18.14.0'} hasBin: true - '@netlify/build@33.4.6': - resolution: {integrity: sha512-f0KlSKBfYqvisu2UkmqaTD6fFgjpwVNvf4PdOEhX7FIMv5kM2mlk20hWKTMF7ZXu6UzBNgbAbsoCukKt8qQwSw==} + '@netlify/build@34.2.5': + resolution: {integrity: sha512-ArhIDMrixprQ1c3i+BLxghZut6Uhjt0A+/wgiwNjXrlvjQdngFB14eTiOl952wopjZ62CrxROfARcXSgwIwwEQ==} engines: {node: '>=18.14.0'} hasBin: true peerDependencies: @@ -2146,8 +2315,8 @@ packages: resolution: {integrity: sha512-NGkTvsVWs8gbd/wKOQnGjjxtaeTS+2UbqF/eZ5A/hFCXMNWf6xMQ7BcBM+pWLojHJWg/o8P1VgCZ1FDa8Zni4w==} engines: {node: '>=18.14.0'} - '@netlify/config@23.0.10': - resolution: {integrity: sha512-GTfudAUBfdNA0RwvUIrwoQrsG0GdQBpBnWfmVU/UHWYOnB3Yj+x3ETmOOSdPN8CXnqJqDd8Ey2h0iVqQ/mOcGg==} + '@netlify/config@23.2.0': + resolution: {integrity: sha512-zlI792/efPUY1XKtBML2OJBgKMyfNQIeGEYibH8SqeDxPjNuCy0qELE0U9Sc6+Ss34XryPBUPdV60tYhSoe6lw==} engines: {node: '>=18.14.0'} hasBin: true @@ -2155,23 +2324,31 @@ packages: resolution: {integrity: sha512-5QPVts2j7RHMNVPVB7E28TC564TarS2JDTfMzKGzCrAY35bvOcfJ60Hhp8DOVjI13+BJgN37srUJP4OBDIXCfg==} engines: {node: ^18.14.0 || >=20} - '@netlify/dev-utils@3.2.1': - resolution: {integrity: sha512-a96wZheD3duD20aEJXBIui73GewRIcKwsXyzyFyerrsDffQjaWFuWxU9fnVSiunl6UVrvpBjWMJRGkCv4zf2KQ==} + '@netlify/dev-utils@3.3.0': + resolution: {integrity: sha512-bW8akt30XHUY3Yh4x7pB/Yis5yCafQxbfAGAAZgHlOYfG1WqlazFsTd9OvW5d8C3g3Y2H/JA2Oy03pTBFPtSkg==} + engines: {node: ^18.14.0 || >=20} + + '@netlify/dev-utils@4.0.0': + resolution: {integrity: sha512-WJlP9/2eo3Ij7rNLWrZun8djeoT04DC6Np0xWrzSUAytGgdgCUDAXXK5x0g8GKwSXD7cPT1oMTUvgflBHoECzw==} engines: {node: ^18.14.0 || >=20} - '@netlify/edge-bundler@14.0.6': - resolution: {integrity: sha512-wfIS26778TG34C3Ma4vhYVTviUuZMD1cWVW/G3m9qZ4MPqC3xII66mmJOdHSfBhwXNeu8tt/b3YoFO0b/nJO0Q==} + '@netlify/edge-bundler@14.2.2': + resolution: {integrity: sha512-APXlNsMioyd1AMECuWkkxJ6eoASYwXs8T8149IuM65KhQMR40OsPpcgt/ceg/0GydXceymHqZnkNwbapqgnvOg==} engines: {node: '>=18.14.0'} - '@netlify/edge-functions-bootstrap@2.13.0': - resolution: {integrity: sha512-8qvD/yBT3e3p5jsdFdm7VAIWXGLNnzw0n257gsmFPeKcbO/+sZMd05q/wVH2y36w/nWo+o9pRZYOJ9GqmLEgzw==} + '@netlify/edge-functions-bootstrap@2.14.0': + resolution: {integrity: sha512-Fs1cQ+XKfKr2OxrAvmX+S46CJmrysxBdCUCTk/wwcCZikrDvsYUFG7FTquUl4JfAf9taYYyW/tPv35gKOKS8BQ==} - '@netlify/edge-functions@2.15.1': - resolution: {integrity: sha512-iu9FYYlD6crNfX8GqS5vywfkfdWWpMqnqzXrGh67iB7b+KdTPpPXsRNSRxfvL/o3GO9HJc/zmTMwXhPXDn/2fA==} + '@netlify/edge-functions@2.15.7': + resolution: {integrity: sha512-VVKxtocaRYBcs/+7ugvtAyTb0V5/qcBrQjWWxEPcotJC2xYat8b63M/+VTayDhbEqmKmGXj6FwSWG96xtODrbQ==} engines: {node: '>=18.0.0'} - '@netlify/functions-utils@6.0.10': - resolution: {integrity: sha512-PqXyvmVmrNQgVZpyuWykS4mX7Tm2Ry8Ys/nWlDR/cHv2E+MaRiyyneAN4qrCe25z6mSS+sTCf8ZVQtZf2y1xYg==} + '@netlify/edge-functions@2.15.8': + resolution: {integrity: sha512-GA3sD4Muq4d98y9yd8JUOQSdhk/A7FbhtqomQXoQymm55psoQudreNOpBe2+o7ziPl8sve4EuIM2+/+o5ZWjuA==} + engines: {node: '>=18.0.0'} + + '@netlify/functions-utils@6.1.1': + resolution: {integrity: sha512-30FsYxx60zyBa4gmd481gkmW3TUL694prkmIKX4Qn5X9tftiLW4aDFzBtFZwk503T0GunZweSl63Pu0GTDeXzQ==} engines: {node: '>=18.14.0'} '@netlify/functions@4.1.4': @@ -2292,11 +2469,24 @@ packages: resolution: {integrity: sha512-MNYfEmZC6F7ZExOrB/Hrfkif7JW2Cbid9y5poTFEJ6rcAhCLQB8lo0SGlQrFXgKvXowXB14IjpOubaQu2zsyfg==} engines: {node: '>=18.0.0'} + '@netlify/serverless-functions-api@2.1.3': + resolution: {integrity: sha512-bNlN/hpND8xFQzpjyKxm6vJayD+bPBlOvs4lWihE7WULrphuH1UuFsoVE5386bNNGH8Rs1IH01AFsl7ALQgOlQ==} + engines: {node: '>=18.0.0'} + + '@netlify/types@2.0.2': + resolution: {integrity: sha512-6899BAqehToSAd3hoevqGaIkG0M9epPMLTi6byynNVIzqv2x+b9OtRXqK67G/gCX7XkrtLQ9Xm3QNJmaFNrSXA==} + engines: {node: ^18.14.0 || >=20} + '@netlify/zip-it-and-ship-it@12.1.4': resolution: {integrity: sha512-/wM1c0iyym/7SlowbgqTuu/+tJS8CDDs4vLhSizKntFl3VOeDVX0kr9qriH9wA2hYstwGSuHsEgEAnKdMcDBOg==} engines: {node: '>=18.14.0'} hasBin: true + '@netlify/zip-it-and-ship-it@14.0.0': + resolution: {integrity: sha512-bGSjyuU4m3EITjwTWg2fuGPwAxLJUijOs9SZSNRjMayhYzS+7B23GOi/oDWjZXq/thlyGO4jy25ruh02iW9pkg==} + engines: {node: '>=18.14.0'} + hasBin: true + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -2313,8 +2503,8 @@ packages: resolution: {integrity: sha512-JcQDsBdg49Yky2w2ld20IHAlwr8d/d8N6NiOXbtuoPCqzbsiJgF633mVUw3x4mo0H5ypataQIX7SFu3yy44Mpw==} engines: {node: '>= 18'} - '@octokit/core@6.1.5': - resolution: {integrity: sha512-vvmsN0r7rguA+FySiCsbaTTobSftpIDIpPW81trAmsv9TGxg3YCujAxRYp/Uy8xmDgYCzzgulG62H7KYUFmeIg==} + '@octokit/core@6.1.6': + resolution: {integrity: sha512-kIU8SLQkYWGp3pVKiYzA5OSaNF5EE03P/R8zEmmrG6XwOg5oBjXyQVVIauQ0dgau4zYhpZEhJrvIYt6oM+zZZA==} engines: {node: '>= 18'} '@octokit/endpoint@10.1.4': @@ -2532,201 +2722,101 @@ packages: cpu: [arm] os: [android] - '@rollup/rollup-android-arm-eabi@4.44.0': - resolution: {integrity: sha512-xEiEE5oDW6tK4jXCAyliuntGR+amEMO7HLtdSshVuhFnKTYoeYMyXQK7pLouAJJj5KHdwdn87bfHAR2nSdNAUA==} - cpu: [arm] - os: [android] - '@rollup/rollup-android-arm64@4.40.1': resolution: {integrity: sha512-PPkxTOisoNC6TpnDKatjKkjRMsdaWIhyuMkA4UsBXT9WEZY4uHezBTjs6Vl4PbqQQeu6oION1w2voYZv9yquCw==} cpu: [arm64] os: [android] - '@rollup/rollup-android-arm64@4.44.0': - resolution: {integrity: sha512-uNSk/TgvMbskcHxXYHzqwiyBlJ/lGcv8DaUfcnNwict8ba9GTTNxfn3/FAoFZYgkaXXAdrAA+SLyKplyi349Jw==} - cpu: [arm64] - os: [android] - '@rollup/rollup-darwin-arm64@4.40.1': resolution: {integrity: sha512-VWXGISWFY18v/0JyNUy4A46KCFCb9NVsH+1100XP31lud+TzlezBbz24CYzbnA4x6w4hx+NYCXDfnvDVO6lcAA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-arm64@4.44.0': - resolution: {integrity: sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==} - cpu: [arm64] - os: [darwin] - '@rollup/rollup-darwin-x64@4.40.1': resolution: {integrity: sha512-nIwkXafAI1/QCS7pxSpv/ZtFW6TXcNUEHAIA9EIyw5OzxJZQ1YDrX+CL6JAIQgZ33CInl1R6mHet9Y/UZTg2Bw==} cpu: [x64] os: [darwin] - '@rollup/rollup-darwin-x64@4.44.0': - resolution: {integrity: sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==} - cpu: [x64] - os: [darwin] - '@rollup/rollup-freebsd-arm64@4.40.1': resolution: {integrity: sha512-BdrLJ2mHTrIYdaS2I99mriyJfGGenSaP+UwGi1kB9BLOCu9SR8ZpbkmmalKIALnRw24kM7qCN0IOm6L0S44iWw==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-arm64@4.44.0': - resolution: {integrity: sha512-u5AZzdQJYJXByB8giQ+r4VyfZP+walV+xHWdaFx/1VxsOn6eWJhK2Vl2eElvDJFKQBo/hcYIBg/jaKS8ZmKeNQ==} - cpu: [arm64] - os: [freebsd] - '@rollup/rollup-freebsd-x64@4.40.1': resolution: {integrity: sha512-VXeo/puqvCG8JBPNZXZf5Dqq7BzElNJzHRRw3vjBE27WujdzuOPecDPc/+1DcdcTptNBep3861jNq0mYkT8Z6Q==} cpu: [x64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.44.0': - resolution: {integrity: sha512-qC0kS48c/s3EtdArkimctY7h3nHicQeEUdjJzYVJYR3ct3kWSafmn6jkNCA8InbUdge6PVx6keqjk5lVGJf99g==} - cpu: [x64] - os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.40.1': resolution: {integrity: sha512-ehSKrewwsESPt1TgSE/na9nIhWCosfGSFqv7vwEtjyAqZcvbGIg4JAcV7ZEh2tfj/IlfBeZjgOXm35iOOjadcg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': - resolution: {integrity: sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.40.1': resolution: {integrity: sha512-m39iO/aaurh5FVIu/F4/Zsl8xppd76S4qoID8E+dSRQvTyZTOI2gVk3T4oqzfq1PtcvOfAVlwLMK3KRQMaR8lg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.44.0': - resolution: {integrity: sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.40.1': resolution: {integrity: sha512-Y+GHnGaku4aVLSgrT0uWe2o2Rq8te9hi+MwqGF9r9ORgXhmHK5Q71N757u0F8yU1OIwUIFy6YiJtKjtyktk5hg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.44.0': - resolution: {integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-musl@4.40.1': resolution: {integrity: sha512-jEwjn3jCA+tQGswK3aEWcD09/7M5wGwc6+flhva7dsQNRZZTe30vkalgIzV4tjkopsTS9Jd7Y1Bsj6a4lzz8gQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.44.0': - resolution: {integrity: sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.40.1': resolution: {integrity: sha512-ySyWikVhNzv+BV/IDCsrraOAZ3UaC8SZB67FZlqVwXwnFhPihOso9rPOxzZbjp81suB1O2Topw+6Ug3JNegejQ==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': - resolution: {integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==} - cpu: [loong64] - os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.40.1': resolution: {integrity: sha512-BvvA64QxZlh7WZWqDPPdt0GH4bznuL6uOO1pmgPnnv86rpUpc8ZxgZwcEgXvo02GRIZX1hQ0j0pAnhwkhwPqWg==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': - resolution: {integrity: sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==} - cpu: [ppc64] - os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.40.1': resolution: {integrity: sha512-EQSP+8+1VuSulm9RKSMKitTav89fKbHymTf25n5+Yr6gAPZxYWpj3DzAsQqoaHAk9YX2lwEyAf9S4W8F4l3VBQ==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.44.0': - resolution: {integrity: sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==} - cpu: [riscv64] - os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.40.1': resolution: {integrity: sha512-n/vQ4xRZXKuIpqukkMXZt9RWdl+2zgGNx7Uda8NtmLJ06NL8jiHxUawbwC+hdSq1rrw/9CghCpEONor+l1e2gA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.44.0': - resolution: {integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==} - cpu: [riscv64] - os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.40.1': resolution: {integrity: sha512-h8d28xzYb98fMQKUz0w2fMc1XuGzLLjdyxVIbhbil4ELfk5/orZlSTpF/xdI9C8K0I8lCkq+1En2RJsawZekkg==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.44.0': - resolution: {integrity: sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==} - cpu: [s390x] - os: [linux] - '@rollup/rollup-linux-x64-gnu@4.40.1': resolution: {integrity: sha512-XiK5z70PEFEFqcNj3/zRSz/qX4bp4QIraTy9QjwJAb/Z8GM7kVUsD0Uk8maIPeTyPCP03ChdI+VVmJriKYbRHQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.44.0': - resolution: {integrity: sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-musl@4.40.1': resolution: {integrity: sha512-2BRORitq5rQ4Da9blVovzNCMaUlyKrzMSvkVR0D4qPuOy/+pMCrh1d7o01RATwVy+6Fa1WBw+da7QPeLWU/1mQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.44.0': - resolution: {integrity: sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==} - cpu: [x64] - os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.40.1': resolution: {integrity: sha512-b2bcNm9Kbde03H+q+Jjw9tSfhYkzrDUf2d5MAd1bOJuVplXvFhWz7tRtWvD8/ORZi7qSCy0idW6tf2HgxSXQSg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.44.0': - resolution: {integrity: sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==} - cpu: [arm64] - os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.40.1': resolution: {integrity: sha512-DfcogW8N7Zg7llVEfpqWMZcaErKfsj9VvmfSyRjCyo4BI3wPEfrzTtJkZG6gKP/Z92wFm6rz2aDO7/JfiR/whA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.44.0': - resolution: {integrity: sha512-3XJ0NQtMAXTWFW8FqZKcw3gOQwBtVWP/u8TpHP3CRPXD7Pd6s8lLdH3sHWh8vqKCyyiI8xW5ltJScQmBU9j7WA==} - cpu: [ia32] - os: [win32] - '@rollup/rollup-win32-x64-msvc@4.40.1': resolution: {integrity: sha512-ECyOuDeH3C1I8jH2MK1RtBJW+YPMvSfT0a5NN0nHfQYnDSJ6tUiZH3gzwVP5/Kfh/+Tt7tpWVF9LXNTnhTJ3kA==} cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.44.0': - resolution: {integrity: sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==} - cpu: [x64] - os: [win32] - '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} @@ -2768,16 +2858,16 @@ packages: typescript: '>= 5' typescript-eslint: '>= 8' - '@sveltejs/vite-plugin-svelte-inspector@5.0.0-next.0': - resolution: {integrity: sha512-G++kR34xZSd3cT6VVOB781Pa2KOS756/ZKK7urSyXmrhK/D/mPiUvjZwWKNVTDOXkwrvVt/Y3cLecbR6Qm66Kw==} + '@sveltejs/vite-plugin-svelte-inspector@5.0.0': + resolution: {integrity: sha512-iwQ8Z4ET6ZFSt/gC+tVfcsSBHwsqc6RumSaiLUkAurW3BCpJam65cmHw0oOlDMTO0u+PZi9hilBRYN+LZNHTUQ==} engines: {node: ^20.19 || ^22.12 || >=24} peerDependencies: '@sveltejs/vite-plugin-svelte': ^6.0.0-next.0 svelte: ^5.0.0 - vite: ^6.3.0 || ^7.0.0-beta.0 + vite: ^6.3.0 || ^7.0.0 - '@sveltejs/vite-plugin-svelte@6.0.0-next.3': - resolution: {integrity: sha512-FChrz3ENwVKXl10UHUbRZVOS0B40x414agPlxmDih8R7MDfYodnZIxzXH0VRZBKmV3o1QMxFpKZ7xOqxM6C0Bw==} + '@sveltejs/vite-plugin-svelte@6.1.0': + resolution: {integrity: sha512-+U6lz1wvGEG/BvQyL4z/flyNdQ9xDNv5vrh+vWBWTHaebqT0c9RNggpZTo/XSPoHsSCWBlYaTlRX8pZ9GATXCw==} engines: {node: ^20.19 || ^22.12 || >=24} peerDependencies: svelte: ^5.0.0 @@ -2828,9 +2918,6 @@ packages: '@types/estree@1.0.7': resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} - '@types/estree@1.0.8': - resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - '@types/http-cache-semantics@4.0.4': resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==} @@ -2843,8 +2930,8 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - '@types/node@18.19.119': - resolution: {integrity: sha512-d0F6m9itIPaKnrvEMlzE48UjwZaAnFW7Jwibacw9MNdqadjKNpUm9tfJYDwmShJmgqcoqYUX3EMKO1+RWiuuNg==} + '@types/node@20.19.8': + resolution: {integrity: sha512-HzbgCY53T6bfu4tT7Aq3TvViJyHjLjPNaAS3HOuMc9pw97KHsUtXNX4L+wu59g1WnjsZSko35MbEqnO58rihhw==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -3239,33 +3326,6 @@ packages: bare-events@2.5.4: resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} - bare-fs@4.1.5: - resolution: {integrity: sha512-1zccWBMypln0jEE05LzZt+V/8y8AQsQQqxtklqaIyg5nu6OAYFhZxPXinJTSG+kU5qyNmeLgcn9AW7eHiCHVLA==} - engines: {bare: '>=1.16.0'} - peerDependencies: - bare-buffer: '*' - peerDependenciesMeta: - bare-buffer: - optional: true - - bare-os@3.6.1: - resolution: {integrity: sha512-uaIjxokhFidJP+bmmvKSgiMzj2sV5GPHaZVAIktcxcpCyBFFWO+YlikVAdhmUo2vYFvFhOXIAlldqV29L8126g==} - engines: {bare: '>=1.14.0'} - - bare-path@3.0.0: - resolution: {integrity: sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw==} - - bare-stream@2.6.5: - resolution: {integrity: sha512-jSmxKJNJmHySi6hC42zlZnq00rga4jjxcgNZjY9N5WlOe/iOoGRtdwGsHzQv2RlH2KOYMwGUXhf2zXd32BA9RA==} - peerDependencies: - bare-buffer: '*' - bare-events: '*' - peerDependenciesMeta: - bare-buffer: - optional: true - bare-events: - optional: true - base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -3282,10 +3342,6 @@ packages: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} - binary-extensions@2.3.0: - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} - engines: {node: '>=8'} - bindings@1.5.0: resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} @@ -3401,17 +3457,10 @@ packages: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} - chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} - chokidar@4.0.3: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} - chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - chownr@3.0.0: resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} engines: {node: '>=18'} @@ -3551,6 +3600,10 @@ packages: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + console-clear@1.1.1: resolution: {integrity: sha512-pMD+MVR538ipqkG5JXeOEbKWS5um1H4LUUccUQG68qpeqBYbzYy79Gh55jkd2TtPdRfUaLWdv6LPP//5Zt0aPQ==} engines: {node: '>=4'} @@ -3624,8 +3677,8 @@ packages: crossws@0.3.5: resolution: {integrity: sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA==} - css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} + css-select@5.2.2: + resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==} css-tree@2.2.1: resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} @@ -3635,8 +3688,8 @@ packages: resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + css-what@6.2.2: + resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==} engines: {node: '>= 6'} cssesc@3.0.0: @@ -3672,15 +3725,6 @@ packages: supports-color: optional: true - debug@4.4.0: - resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.4.1: resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} engines: {node: '>=6.0'} @@ -3956,6 +4000,11 @@ packages: engines: {node: '>=18'} hasBin: true + esbuild@0.25.6: + resolution: {integrity: sha512-GVuzuUwtdsghE3ocJ9Bs8PNoF13HNQ5TXbEi2AhvVb8xU1Iwt9Fos9FEamfoee+u/TOsn7GUWc04lz46n2bbTg==} + engines: {node: '>=18'} + hasBin: true + escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -4044,8 +4093,9 @@ packages: jiti: optional: true - esm-env@1.2.2: - resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} + esm-env@https://codeload.github.com/benmccann/esm-env/tar.gz/bcbddbc#path:packages/esm-env: + resolution: {path: packages/esm-env, tarball: https://codeload.github.com/benmccann/esm-env/tar.gz/bcbddbc} + version: 1.2.2 espree@10.4.0: resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} @@ -4108,10 +4158,6 @@ packages: resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==} engines: {node: '>=6'} - expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - expect-type@1.2.1: resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} @@ -4329,9 +4375,6 @@ packages: from2@2.3.0: resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} - fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -4377,8 +4420,8 @@ packages: resolution: {integrity: sha512-LmCKVxioe63Fy6KDAQ/mmCSOSSRUE/x4zdrMD+7dU8quF3bGpzvP8mOmq4Dgce3nzU9AgkVDotucNOOg7c27BQ==} engines: {node: '>= 12.0.0'} - get-port-please@3.1.2: - resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} + get-port-please@3.2.0: + resolution: {integrity: sha512-I9QVvBw5U/hw3RmWpYKRumUeaDgxTPd401x364rLmWBJcOQ753eov1eTgzDqRG9bqFIfDc7gfzcQEWrUri3o1A==} get-port@5.1.1: resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==} @@ -4425,9 +4468,6 @@ packages: gitconfiglocal@2.1.0: resolution: {integrity: sha512-qoerOEliJn3z+Zyn1HW2F6eoYJqKwS6MgC9cztTLUB/xLWX8gD/6T60pKn4+t/d6tP7JlybI7Z3z+I572CR/Vg==} - github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -4480,10 +4520,6 @@ packages: resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} engines: {node: '>=14.16'} - got@13.0.0: - resolution: {integrity: sha512-XfBk1CxOOScDcMr9O1yKkNaQyy865NbYs+F7dr4H0LZMVgCj2Le59k6PqbNHoL5ToeaEQUYh6c6yMfVcc6SJxA==} - engines: {node: '>=16'} - graceful-fs@4.2.10: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} @@ -4516,8 +4552,12 @@ packages: resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==} engines: {node: ^16.14.0 || >=18.0.0} - hot-shots@10.2.1: - resolution: {integrity: sha512-tmjcyZkG/qADhcdC7UjAp8D7v7W2DOYFgaZ48fYMuayMQmVVUg8fntKmrjes/b40ef6yZ+qt1lB8kuEDfLC4zw==} + hosted-git-info@8.1.0: + resolution: {integrity: sha512-Rw/B2DNQaPBICNXEm8balFz9a6WpZrkCGpcWFpy7nCj+NyhSdqXipmfvtmWt9xGfp0wZnBxB+iVpLmQMYt47Tw==} + engines: {node: ^18.17.0 || >=20.5.0} + + hot-shots@11.1.0: + resolution: {integrity: sha512-D4iAs/145g7EJ/wIzBLVANEpysTPthUy/K+4EUIw02YJQTqvzD1vUpYiM3vwR0qPAQj4FhQpQz8wBpY8KDcM0g==} engines: {node: '>=10.0.0'} http-cache-semantics@4.2.0: @@ -4642,8 +4682,8 @@ packages: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} - ipx@2.1.0: - resolution: {integrity: sha512-AVnPGXJ8L41vjd11Z4akIF2yd14636Klxul3tBySxHA6PKfCOQPxBDkCFK5zcWh0z/keR6toh1eg8qzdBVUgdA==} + ipx@3.0.3: + resolution: {integrity: sha512-c8ZWrM9Rzf8C/W1WoBb9KJ73C76+s3xyBL4iS5WdlPVIObE14tKKW79JIWbMkzhPZw71ZL/mLRMSvQOOhwbj0Q==} hasBin: true iron-webcrypto@1.2.1: @@ -4652,10 +4692,6 @@ packages: is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - is-builtin-module@3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} @@ -4891,8 +4927,8 @@ packages: kuler@2.0.0: resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} - ky@1.8.1: - resolution: {integrity: sha512-7Bp3TpsE+L+TARSnnDpk3xg8Idi8RwSLdj6CMbNWoOARIrGrbuLGusV0dYwbZOm4bB3jHNxSw8Wk/ByDqJEnDw==} + ky@1.8.2: + resolution: {integrity: sha512-XybQJ3d4Ea1kI27DoelE5ZCT3bSJlibYTtQuMsyzKox3TMyayw1asgQdl54WroAm+fIA3ZCr8zXW2RpR7qWVpA==} engines: {node: '>=18'} lambda-local@2.2.0: @@ -5227,9 +5263,6 @@ packages: resolution: {integrity: sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==} engines: {node: '>= 18'} - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - mkdirp@3.0.1: resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} engines: {node: '>=10'} @@ -5275,8 +5308,8 @@ packages: mute-stream@0.0.8: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} - nan@2.22.2: - resolution: {integrity: sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ==} + nan@2.23.0: + resolution: {integrity: sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==} nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} @@ -5286,9 +5319,6 @@ packages: nanospinner@1.2.2: resolution: {integrity: sha512-Zt/AmG6qRU3e+WnzGGLuMCEAO/dAu45stNbHY223tUxldaDAeE+FxSPsd9Q+j+paejmm0ZbrNVs5Sraqy3dRxA==} - napi-build-utils@2.0.0: - resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==} - natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -5296,8 +5326,8 @@ packages: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} - netlify-cli@22.1.6: - resolution: {integrity: sha512-53yG96/bme20BdJ5uhBW06rLhfEps3AdimhNZ52Y2D09/Iu1DiIk+cTeFX87jL/9AsO8R7B1j7ma+sQboErzfw==} + netlify-cli@22.3.0: + resolution: {integrity: sha512-63J+xp2fmdUpJH58v+8c7PCKBg0DmNBtzPlzXf8GHDGg31N68zCgG12w+RBXC41tg8kHVK4wZi/ILzheD5pg8w==} engines: {node: '>=20.12.2'} hasBin: true @@ -5307,13 +5337,6 @@ packages: no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} - node-abi@3.75.0: - resolution: {integrity: sha512-OhYaY5sDsIka7H7AtijtI9jwGYLyl29eQn/W623DiN/MIv5sUqc4g7BIDThX+gb7di9f6xK02nkp8sdfFWZLTg==} - engines: {node: '>=10'} - - node-addon-api@6.1.0: - resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} - node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} @@ -5346,8 +5369,8 @@ packages: resolution: {integrity: sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==} hasBin: true - node-mock-http@1.0.0: - resolution: {integrity: sha512-0uGYQ1WQL1M5kKvGRXWQ3uZCHtLTO8hln3oBjIusM75WoesZ909uQJs/Hb946i2SS+Gsrhkaa6iAO17jRIv6DQ==} + node-mock-http@1.0.1: + resolution: {integrity: sha512-0gJJgENizp4ghds/Ywu2FCmcRsgBTmRQzYPZm61wy+Em2sBarSka0OhQS5huLBg6od1zkNpnWMCZloQDFVvOMQ==} node-source-walk@7.0.1: resolution: {integrity: sha512-3VW/8JpPqPvnJvseXowjZcirPisssnBuDikk6JIZ8jQzF7KJQX52iPFX4RYYxLycYH7IbMRSPUOga/esVjy5Yg==} @@ -5370,6 +5393,10 @@ packages: resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==} engines: {node: ^16.14.0 || >=18.0.0} + normalize-package-data@7.0.0: + resolution: {integrity: sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==} + engines: {node: ^18.17.0 || >=20.5.0} + normalize-path@2.1.1: resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} engines: {node: '>=0.10.0'} @@ -5414,8 +5441,8 @@ packages: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} - on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} + on-headers@1.1.0: + resolution: {integrity: sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==} engines: {node: '>= 0.8'} once@1.4.0: @@ -5722,11 +5749,6 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} - prebuild-install@7.1.3: - resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==} - engines: {node: '>=10'} - hasBin: true - precinct@12.2.0: resolution: {integrity: sha512-NFBMuwIfaJ4SocE9YXPU/n4AcNSoFMVFjP72nvl3cx69j/ke61/hPOWFREVxLkFhhEGnA8ZuVfTqJBa+PK3b5w==} engines: {node: '>=18'} @@ -5895,10 +5917,6 @@ packages: readdir-glob@1.1.3: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - readdirp@4.0.1: resolution: {integrity: sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==} engines: {node: '>= 14.16.0'} @@ -6001,11 +6019,6 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - rollup@4.44.0: - resolution: {integrity: sha512-qHcdEzLCiktQIfwBq420pn2dP+30uzqYxv9ETm91wdt2R9AFcWfjNAmje4NWlnCIQ5RMTzVf0ZyisOKqHR6RwA==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - run-applescript@7.0.0: resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==} engines: {node: '>=18'} @@ -6092,10 +6105,6 @@ packages: setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - sharp@0.32.6: - resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} - engines: {node: '>=14.15.0'} - sharp@0.33.5: resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} @@ -6138,12 +6147,6 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - - simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -6399,8 +6402,8 @@ packages: svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 typescript: ^4.9.4 || ^5.0.0 - svelte@5.35.5: - resolution: {integrity: sha512-KuRvI82rhh0RMz1EKsUJD96gZyHJ+h2+8zrwO8iqE/p/CmcNKvIItDUAeUePhuCDgtegDJmF8IKThbHIfmTgTA==} + svelte@5.36.5: + resolution: {integrity: sha512-K91ug+LuQLxjW20iMzodF5haVWsWkmXk7wx5jNvlU8QuKtxThUBILbkCCFs3kAzXrYN3QSVdiaP1b4yJGeCSog==} engines: {node: '>=18'} svgo@3.3.2: @@ -6416,16 +6419,6 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - tar-fs@2.1.3: - resolution: {integrity: sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==} - - tar-fs@3.0.10: - resolution: {integrity: sha512-C1SwlQGNLe/jPNqapK8epDsXME7CAJR5RL3GcE6KWx1d9OUByzoHVcbu1VPI8tevg9H8Alae0AApHHFGzrD5zA==} - - tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - tar-stream@3.1.7: resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} @@ -6571,9 +6564,6 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -6614,8 +6604,8 @@ packages: resolution: {integrity: sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==} engines: {node: '>= 0.8'} - ulid@3.0.0: - resolution: {integrity: sha512-yvZYdXInnJve6LdlPIuYmURdS2NP41ZoF4QW7SXwbUKYt53+0eDAySO+rGSvM2O/ciuB/G+8N7GQrZ1mCJpuqw==} + ulid@3.0.1: + resolution: {integrity: sha512-dPJyqPzx8preQhqq24bBG1YNkvigm87K8kVEHCD+ruZg24t6IFEFv00xMWfxcC4djmFtiTLdFuADn4+DOz6R7Q==} hasBin: true unbzip2-stream@1.4.3: @@ -6624,8 +6614,8 @@ packages: uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} undici@5.29.0: resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} @@ -6661,8 +6651,8 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unstorage@1.16.0: - resolution: {integrity: sha512-WQ37/H5A7LcRPWfYOrDa1Ys02xAbpPJq6q5GkO88FBXVSQzHd7+BjEwfRqyaSWCv9MbsJy058GWjjPjcJ16GGA==} + unstorage@1.16.1: + resolution: {integrity: sha512-gdpZ3guLDhz+zWIlYP1UwQ259tG5T5vYRzDaHMkQ1bBY1SQPutvZnrRjTFaWUUpseErJIgAZS51h6NOcZVZiqQ==} peerDependencies: '@azure/app-configuration': ^1.8.0 '@azure/cosmos': ^4.2.0 @@ -6672,7 +6662,7 @@ packages: '@azure/storage-blob': ^12.26.0 '@capacitor/preferences': ^6.0.3 || ^7.0.0 '@deno/kv': '>=0.9.0' - '@netlify/blobs': ^6.5.0 || ^7.0.0 || ^8.1.0 + '@netlify/blobs': ^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0 '@planetscale/database': ^1.19.0 '@upstash/redis': ^1.34.3 '@vercel/blob': '>=0.27.1' @@ -6783,19 +6773,19 @@ packages: engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true - vite@6.3.5: - resolution: {integrity: sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + vite@7.0.3: + resolution: {integrity: sha512-y2L5oJZF7bj4c0jgGYgBNSdIu+5HF+m68rn2cQXFbGoShdhV1phX9rbnxy9YXj82aS8MMsCLAAFkRxZeWdldrQ==} + engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + '@types/node': ^20.19.0 || >=22.12.0 jiti: '>=1.21.0' - less: '*' + less: ^4.0.0 lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 terser: ^5.16.0 tsx: ^4.8.1 yaml: ^2.4.2 @@ -6960,8 +6950,8 @@ packages: utf-8-validate: optional: true - ws@8.18.2: - resolution: {integrity: sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==} + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -7073,6 +7063,11 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 + '@babel/types@7.28.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@bugsnag/browser@8.4.0': dependencies: '@bugsnag/core': 8.4.0 @@ -7312,150 +7307,228 @@ snapshots: '@esbuild/aix-ppc64@0.25.5': optional: true + '@esbuild/aix-ppc64@0.25.6': + optional: true + '@esbuild/android-arm64@0.25.4': optional: true '@esbuild/android-arm64@0.25.5': optional: true + '@esbuild/android-arm64@0.25.6': + optional: true + '@esbuild/android-arm@0.25.4': optional: true '@esbuild/android-arm@0.25.5': optional: true + '@esbuild/android-arm@0.25.6': + optional: true + '@esbuild/android-x64@0.25.4': optional: true '@esbuild/android-x64@0.25.5': optional: true + '@esbuild/android-x64@0.25.6': + optional: true + '@esbuild/darwin-arm64@0.25.4': optional: true '@esbuild/darwin-arm64@0.25.5': optional: true + '@esbuild/darwin-arm64@0.25.6': + optional: true + '@esbuild/darwin-x64@0.25.4': optional: true '@esbuild/darwin-x64@0.25.5': optional: true + '@esbuild/darwin-x64@0.25.6': + optional: true + '@esbuild/freebsd-arm64@0.25.4': optional: true '@esbuild/freebsd-arm64@0.25.5': optional: true + '@esbuild/freebsd-arm64@0.25.6': + optional: true + '@esbuild/freebsd-x64@0.25.4': optional: true '@esbuild/freebsd-x64@0.25.5': optional: true + '@esbuild/freebsd-x64@0.25.6': + optional: true + '@esbuild/linux-arm64@0.25.4': optional: true '@esbuild/linux-arm64@0.25.5': optional: true + '@esbuild/linux-arm64@0.25.6': + optional: true + '@esbuild/linux-arm@0.25.4': optional: true '@esbuild/linux-arm@0.25.5': optional: true + '@esbuild/linux-arm@0.25.6': + optional: true + '@esbuild/linux-ia32@0.25.4': optional: true '@esbuild/linux-ia32@0.25.5': optional: true + '@esbuild/linux-ia32@0.25.6': + optional: true + '@esbuild/linux-loong64@0.25.4': optional: true '@esbuild/linux-loong64@0.25.5': optional: true + '@esbuild/linux-loong64@0.25.6': + optional: true + '@esbuild/linux-mips64el@0.25.4': optional: true '@esbuild/linux-mips64el@0.25.5': optional: true + '@esbuild/linux-mips64el@0.25.6': + optional: true + '@esbuild/linux-ppc64@0.25.4': optional: true '@esbuild/linux-ppc64@0.25.5': optional: true + '@esbuild/linux-ppc64@0.25.6': + optional: true + '@esbuild/linux-riscv64@0.25.4': optional: true '@esbuild/linux-riscv64@0.25.5': optional: true + '@esbuild/linux-riscv64@0.25.6': + optional: true + '@esbuild/linux-s390x@0.25.4': optional: true '@esbuild/linux-s390x@0.25.5': optional: true + '@esbuild/linux-s390x@0.25.6': + optional: true + '@esbuild/linux-x64@0.25.4': optional: true '@esbuild/linux-x64@0.25.5': optional: true + '@esbuild/linux-x64@0.25.6': + optional: true + '@esbuild/netbsd-arm64@0.25.4': optional: true '@esbuild/netbsd-arm64@0.25.5': optional: true + '@esbuild/netbsd-arm64@0.25.6': + optional: true + '@esbuild/netbsd-x64@0.25.4': optional: true '@esbuild/netbsd-x64@0.25.5': optional: true + '@esbuild/netbsd-x64@0.25.6': + optional: true + '@esbuild/openbsd-arm64@0.25.4': optional: true '@esbuild/openbsd-arm64@0.25.5': optional: true + '@esbuild/openbsd-arm64@0.25.6': + optional: true + '@esbuild/openbsd-x64@0.25.4': optional: true '@esbuild/openbsd-x64@0.25.5': optional: true + '@esbuild/openbsd-x64@0.25.6': + optional: true + + '@esbuild/openharmony-arm64@0.25.6': + optional: true + '@esbuild/sunos-x64@0.25.4': optional: true '@esbuild/sunos-x64@0.25.5': optional: true + '@esbuild/sunos-x64@0.25.6': + optional: true + '@esbuild/win32-arm64@0.25.4': optional: true '@esbuild/win32-arm64@0.25.5': optional: true + '@esbuild/win32-arm64@0.25.6': + optional: true + '@esbuild/win32-ia32@0.25.4': optional: true '@esbuild/win32-ia32@0.25.5': optional: true + '@esbuild/win32-ia32@0.25.6': + optional: true + '@esbuild/win32-x64@0.25.4': optional: true '@esbuild/win32-x64@0.25.5': optional: true + '@esbuild/win32-x64@0.25.6': + optional: true + '@eslint-community/eslint-utils@4.7.0(eslint@9.29.0(jiti@2.4.2))': dependencies: eslint: 9.29.0(jiti@2.4.2) @@ -7506,6 +7579,8 @@ snapshots: '@fastify/accept-negotiator@1.1.0': {} + '@fastify/accept-negotiator@2.0.1': {} + '@fastify/ajv-compiler@3.6.0': dependencies: ajv: 8.17.1 @@ -7799,9 +7874,9 @@ snapshots: '@netlify/binary-info@1.0.0': {} - '@netlify/blobs@10.0.1': + '@netlify/blobs@10.0.5': dependencies: - '@netlify/dev-utils': 3.2.1 + '@netlify/dev-utils': 3.3.0 '@netlify/runtime-utils': 2.1.0 '@netlify/blobs@9.1.6': @@ -7809,7 +7884,7 @@ snapshots: '@netlify/dev-utils': 3.2.0 '@netlify/runtime-utils': 2.1.0 - '@netlify/build-info@10.0.6': + '@netlify/build-info@10.0.7': dependencies: '@bugsnag/js': 8.4.0 '@iarna/toml': 2.2.5 @@ -7817,23 +7892,23 @@ snapshots: find-up: 7.0.0 minimatch: 9.0.5 read-pkg: 9.0.1 - semver: 7.7.1 + semver: 7.7.2 yaml: 2.8.0 yargs: 17.7.2 - '@netlify/build@33.4.6(@opentelemetry/api@1.8.0)(@types/node@18.19.119)(picomatch@4.0.2)': + '@netlify/build@34.2.5(@opentelemetry/api@1.8.0)(@types/node@20.19.8)(picomatch@4.0.2)(rollup@4.40.1)': dependencies: '@bugsnag/js': 8.4.0 - '@netlify/blobs': 10.0.1 + '@netlify/blobs': 10.0.5 '@netlify/cache-utils': 6.0.3 - '@netlify/config': 23.0.10 - '@netlify/edge-bundler': 14.0.6 - '@netlify/functions-utils': 6.0.10(supports-color@10.0.0) + '@netlify/config': 23.2.0 + '@netlify/edge-bundler': 14.2.2 + '@netlify/functions-utils': 6.1.1(rollup@4.40.1)(supports-color@10.0.0) '@netlify/git-utils': 6.0.2 '@netlify/opentelemetry-utils': 2.0.1(@opentelemetry/api@1.8.0) '@netlify/plugins-list': 6.80.0 '@netlify/run-utils': 6.0.2 - '@netlify/zip-it-and-ship-it': 12.1.4(supports-color@10.0.0) + '@netlify/zip-it-and-ship-it': 14.0.0(rollup@4.40.1)(supports-color@10.0.0) '@opentelemetry/api': 1.8.0 '@sindresorhus/slugify': 2.2.1 ansi-escapes: 7.0.0 @@ -7843,11 +7918,9 @@ snapshots: fdir: 6.4.6(picomatch@4.0.2) figures: 6.1.0 filter-obj: 6.1.0 - got: 13.0.0 - hot-shots: 10.2.1 + hot-shots: 11.1.0 indent-string: 5.0.0 is-plain-obj: 4.1.0 - js-yaml: 4.1.0 keep-func-props: 6.0.0 locate-path: 7.2.0 log-process-errors: 11.0.1 @@ -7871,14 +7944,15 @@ snapshots: resolve: 2.0.0-next.5 rfdc: 1.4.1 safe-json-stringify: 1.2.0 - semver: 7.7.1 + semver: 7.7.2 string-width: 7.2.0 strip-ansi: 7.1.0 supports-color: 10.0.0 terminal-link: 4.0.0 - ts-node: 10.9.2(@types/node@18.19.119)(typescript@5.8.3) + ts-node: 10.9.2(@types/node@20.19.8)(typescript@5.8.3) typescript: 5.8.3 uuid: 11.1.0 + yaml: 2.8.0 yargs: 17.7.2 transitivePeerDependencies: - '@swc/core' @@ -7899,7 +7973,7 @@ snapshots: path-exists: 5.0.0 readdirp: 4.1.2 - '@netlify/config@23.0.10': + '@netlify/config@23.2.0': dependencies: '@iarna/toml': 2.2.5 '@netlify/api': 14.0.3 @@ -7916,13 +7990,14 @@ snapshots: find-up: 7.0.0 indent-string: 5.0.0 is-plain-obj: 4.1.0 - js-yaml: 4.1.0 map-obj: 5.0.2 omit.js: 2.0.2 p-locate: 6.0.0 path-type: 6.0.0 + read-package-up: 11.0.0 tomlify-j0.4: 3.0.0 validate-npm-package-name: 5.0.1 + yaml: 2.8.0 yargs: 17.7.2 '@netlify/dev-utils@3.2.0': @@ -7941,7 +8016,7 @@ snapshots: uuid: 11.1.0 write-file-atomic: 5.0.1 - '@netlify/dev-utils@3.2.1': + '@netlify/dev-utils@3.3.0': dependencies: '@whatwg-node/server': 0.10.10 ansis: 4.1.0 @@ -7955,10 +8030,29 @@ snapshots: lodash.debounce: 4.0.8 parse-gitignore: 2.0.0 semver: 7.7.2 + tmp-promise: 3.0.3 + uuid: 11.1.0 + write-file-atomic: 5.0.1 + + '@netlify/dev-utils@4.0.0': + dependencies: + '@whatwg-node/server': 0.10.10 + ansis: 4.1.0 + chokidar: 4.0.3 + decache: 4.6.2 + dot-prop: 9.0.0 + env-paths: 3.0.0 + find-up: 7.0.0 + image-size: 2.0.2 + js-image-generator: 1.0.4 + lodash.debounce: 4.0.8 + parse-gitignore: 2.0.0 + semver: 7.7.2 + tmp-promise: 3.0.3 uuid: 11.1.0 write-file-atomic: 5.0.1 - '@netlify/edge-bundler@14.0.6': + '@netlify/edge-bundler@14.2.2': dependencies: '@import-maps/resolve': 2.0.0 ajv: 8.17.1 @@ -7966,7 +8060,7 @@ snapshots: better-ajv-errors: 1.2.0(ajv@8.17.1) common-path-prefix: 3.0.0 env-paths: 3.0.0 - esbuild: 0.25.5 + esbuild: 0.25.6 execa: 8.0.1 find-up: 7.0.0 get-package-name: 2.2.0 @@ -7982,19 +8076,29 @@ snapshots: urlpattern-polyfill: 8.0.2 uuid: 11.1.0 - '@netlify/edge-functions-bootstrap@2.13.0': {} + '@netlify/edge-functions-bootstrap@2.14.0': {} + + '@netlify/edge-functions@2.15.7': + dependencies: + '@netlify/dev-utils': 3.3.0 + '@netlify/edge-bundler': 14.2.2 + '@netlify/edge-functions-bootstrap': 2.14.0 + '@netlify/runtime-utils': 2.1.0 + '@netlify/types': 2.0.2 + get-port: 7.1.0 - '@netlify/edge-functions@2.15.1': + '@netlify/edge-functions@2.15.8': dependencies: - '@netlify/dev-utils': 3.2.1 - '@netlify/edge-bundler': 14.0.6 - '@netlify/edge-functions-bootstrap': 2.13.0 + '@netlify/dev-utils': 4.0.0 + '@netlify/edge-bundler': 14.2.2 + '@netlify/edge-functions-bootstrap': 2.14.0 '@netlify/runtime-utils': 2.1.0 + '@netlify/types': 2.0.2 get-port: 7.1.0 - '@netlify/functions-utils@6.0.10(supports-color@10.0.0)': + '@netlify/functions-utils@6.1.1(rollup@4.40.1)(supports-color@10.0.0)': dependencies: - '@netlify/zip-it-and-ship-it': 12.1.4(supports-color@10.0.0) + '@netlify/zip-it-and-ship-it': 14.0.0(rollup@4.40.1)(supports-color@10.0.0) cpy: 11.1.0 path-exists: 5.0.0 transitivePeerDependencies: @@ -8113,45 +8217,9 @@ snapshots: '@netlify/serverless-functions-api@2.1.1': {} - '@netlify/zip-it-and-ship-it@12.1.4': - dependencies: - '@babel/parser': 7.27.5 - '@babel/types': 7.27.6 - '@netlify/binary-info': 1.0.0 - '@netlify/serverless-functions-api': 2.1.1 - '@vercel/nft': 0.29.4(supports-color@10.0.0) - archiver: 7.0.1 - common-path-prefix: 3.0.0 - copy-file: 11.0.0 - es-module-lexer: 1.7.0 - esbuild: 0.25.5 - execa: 8.0.1 - fast-glob: 3.3.3 - filter-obj: 6.1.0 - find-up: 7.0.0 - is-builtin-module: 3.2.1 - is-path-inside: 4.0.0 - junk: 4.0.1 - locate-path: 7.2.0 - merge-options: 3.0.4 - minimatch: 9.0.5 - normalize-path: 3.0.0 - p-map: 7.0.3 - path-exists: 5.0.0 - precinct: 12.2.0(supports-color@10.0.0) - require-package-name: 2.0.1 - resolve: 2.0.0-next.5 - semver: 7.7.1 - tmp-promise: 3.0.3 - toml: 3.0.0 - unixify: 1.0.0 - urlpattern-polyfill: 8.0.2 - yargs: 17.7.2 - zod: 3.25.56 - transitivePeerDependencies: - - encoding - - rollup - - supports-color + '@netlify/serverless-functions-api@2.1.3': {} + + '@netlify/types@2.0.2': {} '@netlify/zip-it-and-ship-it@12.1.4(rollup@4.40.1)': dependencies: @@ -8159,7 +8227,7 @@ snapshots: '@babel/types': 7.27.6 '@netlify/binary-info': 1.0.0 '@netlify/serverless-functions-api': 2.1.1 - '@vercel/nft': 0.29.4(rollup@4.40.1) + '@vercel/nft': 0.29.4(rollup@4.40.1)(supports-color@10.0.0) archiver: 7.0.1 common-path-prefix: 3.0.0 copy-file: 11.0.0 @@ -8193,18 +8261,18 @@ snapshots: - rollup - supports-color - '@netlify/zip-it-and-ship-it@12.1.4(supports-color@10.0.0)': + '@netlify/zip-it-and-ship-it@14.0.0(rollup@4.40.1)(supports-color@10.0.0)': dependencies: '@babel/parser': 7.27.5 - '@babel/types': 7.27.6 + '@babel/types': 7.28.0 '@netlify/binary-info': 1.0.0 - '@netlify/serverless-functions-api': 2.1.1 - '@vercel/nft': 0.29.4(supports-color@10.0.0) + '@netlify/serverless-functions-api': 2.1.3 + '@vercel/nft': 0.29.4(rollup@4.40.1)(supports-color@10.0.0) archiver: 7.0.1 common-path-prefix: 3.0.0 copy-file: 11.0.0 es-module-lexer: 1.7.0 - esbuild: 0.25.5 + esbuild: 0.25.6 execa: 8.0.1 fast-glob: 3.3.3 filter-obj: 6.1.0 @@ -8221,7 +8289,7 @@ snapshots: precinct: 12.2.0(supports-color@10.0.0) require-package-name: 2.0.1 resolve: 2.0.0-next.5 - semver: 7.7.1 + semver: 7.7.2 tmp-promise: 3.0.3 toml: 3.0.0 unixify: 1.0.0 @@ -8247,7 +8315,7 @@ snapshots: '@octokit/auth-token@5.1.2': {} - '@octokit/core@6.1.5': + '@octokit/core@6.1.6': dependencies: '@octokit/auth-token': 5.1.2 '@octokit/graphql': 8.2.2 @@ -8272,18 +8340,18 @@ snapshots: '@octokit/openapi-types@25.1.0': {} - '@octokit/plugin-paginate-rest@11.6.0(@octokit/core@6.1.5)': + '@octokit/plugin-paginate-rest@11.6.0(@octokit/core@6.1.6)': dependencies: - '@octokit/core': 6.1.5 + '@octokit/core': 6.1.6 '@octokit/types': 13.10.0 - '@octokit/plugin-request-log@5.3.1(@octokit/core@6.1.5)': + '@octokit/plugin-request-log@5.3.1(@octokit/core@6.1.6)': dependencies: - '@octokit/core': 6.1.5 + '@octokit/core': 6.1.6 - '@octokit/plugin-rest-endpoint-methods@13.5.0(@octokit/core@6.1.5)': + '@octokit/plugin-rest-endpoint-methods@13.5.0(@octokit/core@6.1.6)': dependencies: - '@octokit/core': 6.1.5 + '@octokit/core': 6.1.6 '@octokit/types': 13.10.0 '@octokit/request-error@6.1.8': @@ -8300,10 +8368,10 @@ snapshots: '@octokit/rest@21.1.1': dependencies: - '@octokit/core': 6.1.5 - '@octokit/plugin-paginate-rest': 11.6.0(@octokit/core@6.1.5) - '@octokit/plugin-request-log': 5.3.1(@octokit/core@6.1.5) - '@octokit/plugin-rest-endpoint-methods': 13.5.0(@octokit/core@6.1.5) + '@octokit/core': 6.1.6 + '@octokit/plugin-paginate-rest': 11.6.0(@octokit/core@6.1.6) + '@octokit/plugin-request-log': 5.3.1(@octokit/core@6.1.6) + '@octokit/plugin-rest-endpoint-methods': 13.5.0(@octokit/core@6.1.6) '@octokit/types@13.10.0': dependencies: @@ -8448,134 +8516,66 @@ snapshots: optionalDependencies: rollup: 4.40.1 - '@rollup/pluginutils@5.1.3(rollup@4.44.0)': - dependencies: - '@types/estree': 1.0.7 - estree-walker: 2.0.2 - picomatch: 4.0.2 - optionalDependencies: - rollup: 4.44.0 - '@rollup/rollup-android-arm-eabi@4.40.1': optional: true - '@rollup/rollup-android-arm-eabi@4.44.0': - optional: true - '@rollup/rollup-android-arm64@4.40.1': optional: true - '@rollup/rollup-android-arm64@4.44.0': - optional: true - '@rollup/rollup-darwin-arm64@4.40.1': optional: true - '@rollup/rollup-darwin-arm64@4.44.0': - optional: true - '@rollup/rollup-darwin-x64@4.40.1': optional: true - '@rollup/rollup-darwin-x64@4.44.0': - optional: true - '@rollup/rollup-freebsd-arm64@4.40.1': optional: true - '@rollup/rollup-freebsd-arm64@4.44.0': - optional: true - '@rollup/rollup-freebsd-x64@4.40.1': optional: true - '@rollup/rollup-freebsd-x64@4.44.0': - optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.40.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': - optional: true - '@rollup/rollup-linux-arm-musleabihf@4.40.1': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.44.0': - optional: true - '@rollup/rollup-linux-arm64-gnu@4.40.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-arm64-musl@4.40.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.44.0': - optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.40.1': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.40.1': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-riscv64-gnu@4.40.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-riscv64-musl@4.40.1': optional: true - '@rollup/rollup-linux-riscv64-musl@4.44.0': - optional: true - '@rollup/rollup-linux-s390x-gnu@4.40.1': optional: true - '@rollup/rollup-linux-s390x-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-x64-gnu@4.40.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.44.0': - optional: true - '@rollup/rollup-linux-x64-musl@4.40.1': optional: true - '@rollup/rollup-linux-x64-musl@4.44.0': - optional: true - '@rollup/rollup-win32-arm64-msvc@4.40.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.44.0': - optional: true - '@rollup/rollup-win32-ia32-msvc@4.40.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.44.0': - optional: true - '@rollup/rollup-win32-x64-msvc@4.40.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.44.0': - optional: true - '@sec-ant/readable-stream@0.4.1': {} '@sindresorhus/is@5.6.0': {} @@ -8607,36 +8607,36 @@ snapshots: dependencies: acorn: 8.15.0 - '@sveltejs/eslint-config@8.2.0(@stylistic/eslint-plugin-js@2.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-config-prettier@9.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-plugin-n@17.16.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.35.5)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)))(eslint@9.29.0(jiti@2.4.2))(typescript-eslint@8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(typescript@5.8.3)': + '@sveltejs/eslint-config@8.2.0(@stylistic/eslint-plugin-js@2.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-config-prettier@9.1.0(eslint@9.29.0(jiti@2.4.2)))(eslint-plugin-n@17.16.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.36.5)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)))(eslint@9.29.0(jiti@2.4.2))(typescript-eslint@8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(typescript@5.8.3)': dependencies: '@stylistic/eslint-plugin-js': 2.1.0(eslint@9.29.0(jiti@2.4.2)) eslint: 9.29.0(jiti@2.4.2) eslint-config-prettier: 9.1.0(eslint@9.29.0(jiti@2.4.2)) eslint-plugin-n: 17.16.1(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) - eslint-plugin-svelte: 3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.35.5)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)) + eslint-plugin-svelte: 3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.36.5)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)) globals: 15.15.0 typescript: 5.8.3 typescript-eslint: 8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3) - '@sveltejs/vite-plugin-svelte-inspector@5.0.0-next.0(@sveltejs/vite-plugin-svelte@6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)))(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': + '@sveltejs/vite-plugin-svelte-inspector@5.0.0(@sveltejs/vite-plugin-svelte@6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)))(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + '@sveltejs/vite-plugin-svelte': 6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) debug: 4.4.1(supports-color@10.0.0) - svelte: 5.35.5 - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + svelte: 5.36.5 + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': + '@sveltejs/vite-plugin-svelte@6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 5.0.0-next.0(@sveltejs/vite-plugin-svelte@6.0.0-next.3(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)))(svelte@5.35.5)(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + '@sveltejs/vite-plugin-svelte-inspector': 5.0.0(@sveltejs/vite-plugin-svelte@6.1.0(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)))(svelte@5.36.5)(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) debug: 4.4.1(supports-color@10.0.0) deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 - svelte: 5.35.5 - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) - vitefu: 1.1.1(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + svelte: 5.36.5 + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vitefu: 1.1.1(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) transitivePeerDependencies: - supports-color @@ -8669,7 +8669,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 '@types/cookie@0.6.0': {} @@ -8677,26 +8677,24 @@ snapshots: '@types/eslint@8.56.12': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.7 '@types/json-schema': 7.0.15 '@types/estree@1.0.7': {} - '@types/estree@1.0.8': {} - '@types/http-cache-semantics@4.0.4': {} '@types/http-proxy@1.17.16': dependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 '@types/json-schema@7.0.15': {} '@types/node@12.20.55': {} - '@types/node@18.19.119': + '@types/node@20.19.8': dependencies: - undici-types: 5.26.5 + undici-types: 6.21.0 '@types/normalize-package-data@2.4.4': {} @@ -8708,13 +8706,13 @@ snapshots: '@types/set-cookie-parser@2.4.7': dependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 '@types/triple-beam@1.3.5': {} '@types/yauzl@2.10.3': dependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 optional: true '@typescript-eslint/eslint-plugin@8.35.0(@typescript-eslint/parser@8.35.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.29.0(jiti@2.4.2))(typescript@5.8.3)': @@ -8830,7 +8828,7 @@ snapshots: '@typescript-eslint/types': 8.35.0 eslint-visitor-keys: 4.2.1 - '@vercel/nft@0.29.4(rollup@4.40.1)': + '@vercel/nft@0.29.4(rollup@4.40.1)(supports-color@10.0.0)': dependencies: '@mapbox/node-pre-gyp': 2.0.0(supports-color@10.0.0) '@rollup/pluginutils': 5.1.3(rollup@4.40.1) @@ -8849,29 +8847,10 @@ snapshots: - rollup - supports-color - '@vercel/nft@0.29.4(supports-color@10.0.0)': + '@vercel/nft@0.30.0(rollup@4.40.1)': dependencies: '@mapbox/node-pre-gyp': 2.0.0(supports-color@10.0.0) - '@rollup/pluginutils': 5.1.3(rollup@4.44.0) - acorn: 8.15.0 - acorn-import-attributes: 1.9.5(acorn@8.15.0) - async-sema: 3.1.1 - bindings: 1.5.0 - estree-walker: 2.0.2 - glob: 10.4.5 - graceful-fs: 4.2.11 - node-gyp-build: 4.8.0 - picomatch: 4.0.2 - resolve-from: 5.0.0 - transitivePeerDependencies: - - encoding - - rollup - - supports-color - - '@vercel/nft@0.30.0(rollup@4.44.0)': - dependencies: - '@mapbox/node-pre-gyp': 2.0.0(supports-color@10.0.0) - '@rollup/pluginutils': 5.1.3(rollup@4.44.0) + '@rollup/pluginutils': 5.1.3(rollup@4.40.1) acorn: 8.15.0 acorn-import-attributes: 1.9.5(acorn@8.15.0) async-sema: 3.1.1 @@ -8895,13 +8874,13 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.3(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': + '@vitest/mocker@3.2.3(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0))': dependencies: '@vitest/spy': 3.2.3 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) '@vitest/pretty-format@3.2.3': dependencies: @@ -9210,28 +9189,6 @@ snapshots: bare-events@2.5.4: optional: true - bare-fs@4.1.5: - dependencies: - bare-events: 2.5.4 - bare-path: 3.0.0 - bare-stream: 2.6.5(bare-events@2.5.4) - optional: true - - bare-os@3.6.1: - optional: true - - bare-path@3.0.0: - dependencies: - bare-os: 3.6.1 - optional: true - - bare-stream@2.6.5(bare-events@2.5.4): - dependencies: - streamx: 2.22.1 - optionalDependencies: - bare-events: 2.5.4 - optional: true - base64-js@1.5.1: {} before-after-hook@3.0.2: {} @@ -9249,8 +9206,6 @@ snapshots: dependencies: is-windows: 1.0.2 - binary-extensions@2.3.0: {} - bindings@1.5.0: dependencies: file-uri-to-path: 1.0.0 @@ -9383,24 +9338,10 @@ snapshots: check-error@2.1.1: {} - chokidar@3.6.0: - dependencies: - anymatch: 3.1.3 - braces: 3.0.3 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - chokidar@4.0.3: dependencies: readdirp: 4.0.1 - chownr@1.1.4: {} - chownr@3.0.0: {} ci-info@3.9.0: {} @@ -9409,7 +9350,7 @@ snapshots: citty@0.1.6: dependencies: - consola: 3.2.3 + consola: 3.4.2 clean-deep@3.4.0: dependencies: @@ -9533,6 +9474,8 @@ snapshots: consola@3.2.3: {} + consola@3.4.2: {} + console-clear@1.1.1: {} content-disposition@0.5.4: @@ -9596,10 +9539,10 @@ snapshots: dependencies: uncrypto: 0.1.3 - css-select@5.1.0: + css-select@5.2.2: dependencies: boolbase: 1.0.0 - css-what: 6.1.0 + css-what: 6.2.2 domhandler: 5.0.3 domutils: 3.2.2 nth-check: 2.1.1 @@ -9614,7 +9557,7 @@ snapshots: mdn-data: 2.0.30 source-map-js: 1.2.1 - css-what@6.1.0: {} + css-what@6.2.2: {} cssesc@3.0.0: {} @@ -9636,10 +9579,6 @@ snapshots: dependencies: ms: 2.0.0 - debug@4.4.0: - dependencies: - ms: 2.1.3 - debug@4.4.1(supports-color@10.0.0): dependencies: ms: 2.1.3 @@ -9925,6 +9864,35 @@ snapshots: '@esbuild/win32-ia32': 0.25.5 '@esbuild/win32-x64': 0.25.5 + esbuild@0.25.6: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.6 + '@esbuild/android-arm': 0.25.6 + '@esbuild/android-arm64': 0.25.6 + '@esbuild/android-x64': 0.25.6 + '@esbuild/darwin-arm64': 0.25.6 + '@esbuild/darwin-x64': 0.25.6 + '@esbuild/freebsd-arm64': 0.25.6 + '@esbuild/freebsd-x64': 0.25.6 + '@esbuild/linux-arm': 0.25.6 + '@esbuild/linux-arm64': 0.25.6 + '@esbuild/linux-ia32': 0.25.6 + '@esbuild/linux-loong64': 0.25.6 + '@esbuild/linux-mips64el': 0.25.6 + '@esbuild/linux-ppc64': 0.25.6 + '@esbuild/linux-riscv64': 0.25.6 + '@esbuild/linux-s390x': 0.25.6 + '@esbuild/linux-x64': 0.25.6 + '@esbuild/netbsd-arm64': 0.25.6 + '@esbuild/netbsd-x64': 0.25.6 + '@esbuild/openbsd-arm64': 0.25.6 + '@esbuild/openbsd-x64': 0.25.6 + '@esbuild/openharmony-arm64': 0.25.6 + '@esbuild/sunos-x64': 0.25.6 + '@esbuild/win32-arm64': 0.25.6 + '@esbuild/win32-ia32': 0.25.6 + '@esbuild/win32-x64': 0.25.6 + escalade@3.2.0: {} escape-goat@4.0.0: {} @@ -9978,7 +9946,7 @@ snapshots: - supports-color - typescript - eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.35.5)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)): + eslint-plugin-svelte@3.9.3(eslint@9.29.0(jiti@2.4.2))(svelte@5.36.5)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)): dependencies: '@eslint-community/eslint-utils': 4.7.0(eslint@9.29.0(jiti@2.4.2)) '@jridgewell/sourcemap-codec': 1.5.0 @@ -9987,12 +9955,12 @@ snapshots: globals: 16.2.0 known-css-properties: 0.37.0 postcss: 8.5.6 - postcss-load-config: 3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)) + postcss-load-config: 3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)) postcss-safe-parser: 7.0.1(postcss@8.5.6) semver: 7.7.2 - svelte-eslint-parser: 1.2.0(svelte@5.35.5) + svelte-eslint-parser: 1.2.0(svelte@5.36.5) optionalDependencies: - svelte: 5.35.5 + svelte: 5.36.5 transitivePeerDependencies: - ts-node @@ -10049,7 +10017,7 @@ snapshots: transitivePeerDependencies: - supports-color - esm-env@1.2.2: {} + esm-env@https://codeload.github.com/benmccann/esm-env/tar.gz/bcbddbc#path:packages/esm-env: {} espree@10.4.0: dependencies: @@ -10077,7 +10045,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.7 esutils@2.0.3: {} @@ -10115,13 +10083,11 @@ snapshots: exit-hook@2.2.1: {} - expand-template@2.0.3: {} - expect-type@1.2.1: {} express-logging@1.1.1: dependencies: - on-headers: 1.0.2 + on-headers: 1.1.0 express@4.21.2: dependencies: @@ -10254,7 +10220,7 @@ snapshots: proxy-addr: 2.0.7 rfdc: 1.4.1 secure-json-parse: 2.7.0 - semver: 7.7.1 + semver: 7.7.2 toad-cache: 3.7.0 fastq@1.17.1: @@ -10359,9 +10325,9 @@ snapshots: dependencies: from2: 2.3.0 - follow-redirects@1.15.9(debug@4.4.0): + follow-redirects@1.15.9(debug@4.4.1): optionalDependencies: - debug: 4.4.0 + debug: 4.4.1(supports-color@10.0.0) foreground-child@3.3.0: dependencies: @@ -10383,8 +10349,6 @@ snapshots: inherits: 2.0.4 readable-stream: 2.3.8 - fs-constants@1.0.0: {} - fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -10431,7 +10395,7 @@ snapshots: get-package-name@2.2.0: {} - get-port-please@3.1.2: {} + get-port-please@3.2.0: {} get-port@5.1.1: {} @@ -10468,7 +10432,7 @@ snapshots: dependencies: '@xhmikosr/downloader': 13.0.1 node-fetch: 3.3.2 - semver: 7.7.1 + semver: 7.7.2 git-repo-info@2.1.1: {} @@ -10476,8 +10440,6 @@ snapshots: dependencies: ini: 1.3.8 - github-from-package@0.0.0: {} - glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -10545,20 +10507,6 @@ snapshots: p-cancelable: 3.0.0 responselike: 3.0.0 - got@13.0.0: - dependencies: - '@sindresorhus/is': 5.6.0 - '@szmarczak/http-timer': 5.0.1 - cacheable-lookup: 7.0.0 - cacheable-request: 10.2.14 - decompress-response: 6.0.0 - form-data-encoder: 2.1.4 - get-stream: 6.0.1 - http2-wrapper: 2.2.1 - lowercase-keys: 3.0.0 - p-cancelable: 3.0.0 - responselike: 3.0.0 - graceful-fs@4.2.10: {} graceful-fs@4.2.11: {} @@ -10572,7 +10520,7 @@ snapshots: defu: 6.1.4 destr: 2.0.5 iron-webcrypto: 1.2.1 - node-mock-http: 1.0.0 + node-mock-http: 1.0.1 radix3: 1.1.2 ufo: 1.6.1 uncrypto: 0.1.3 @@ -10591,7 +10539,11 @@ snapshots: dependencies: lru-cache: 10.4.3 - hot-shots@10.2.1: + hosted-git-info@8.1.0: + dependencies: + lru-cache: 10.4.3 + + hot-shots@11.1.0: optionalDependencies: unix-dgram: 2.0.6 @@ -10613,20 +10565,20 @@ snapshots: statuses: 2.0.1 toidentifier: 1.0.1 - http-proxy-middleware@2.0.9(debug@4.4.0): + http-proxy-middleware@2.0.9(debug@4.4.1): dependencies: '@types/http-proxy': 1.17.16 - http-proxy: 1.18.1(debug@4.4.0) + http-proxy: 1.18.1(debug@4.4.1) is-glob: 4.0.3 is-plain-obj: 3.0.0 micromatch: 4.0.8 transitivePeerDependencies: - debug - http-proxy@1.18.1(debug@4.4.0): + http-proxy@1.18.1(debug@4.4.1): dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.4.1) requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -10721,11 +10673,11 @@ snapshots: ipaddr.js@1.9.1: {} - ipx@2.1.0(@netlify/blobs@9.1.6): + ipx@3.0.3(@netlify/blobs@10.0.5): dependencies: - '@fastify/accept-negotiator': 1.1.0 + '@fastify/accept-negotiator': 2.0.1 citty: 0.1.6 - consola: 3.2.3 + consola: 3.4.2 defu: 6.1.4 destr: 2.0.5 etag: 1.8.1 @@ -10733,11 +10685,11 @@ snapshots: image-meta: 0.2.1 listhen: 1.9.0 ofetch: 1.4.1 - pathe: 1.1.2 - sharp: 0.32.6 + pathe: 2.0.3 + sharp: 0.33.5 svgo: 3.3.2 ufo: 1.6.1 - unstorage: 1.16.0(@netlify/blobs@9.1.6) + unstorage: 1.16.1(@netlify/blobs@10.0.5) xss: 1.0.15 transitivePeerDependencies: - '@azure/app-configuration' @@ -10754,7 +10706,6 @@ snapshots: - '@vercel/blob' - '@vercel/kv' - aws4fetch - - bare-buffer - db0 - idb-keyval - ioredis @@ -10764,10 +10715,6 @@ snapshots: is-arrayish@0.3.2: {} - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.3.0 - is-builtin-module@3.2.1: dependencies: builtin-modules: 3.3.0 @@ -10923,7 +10870,7 @@ snapshots: lodash.isstring: 4.0.1 lodash.once: 4.1.1 ms: 2.1.3 - semver: 7.7.1 + semver: 7.7.2 junk@4.0.1: {} @@ -10956,7 +10903,7 @@ snapshots: kuler@2.0.0: {} - ky@1.8.1: {} + ky@1.8.2: {} lambda-local@2.2.0: dependencies: @@ -11039,10 +10986,10 @@ snapshots: '@parcel/watcher-wasm': 2.5.1 citty: 0.1.6 clipboardy: 4.0.0 - consola: 3.2.3 + consola: 3.4.2 crossws: 0.3.5 defu: 6.1.4 - get-port-please: 3.1.2 + get-port-please: 3.2.0 h3: 1.15.3 http-shutdown: 1.2.2 jiti: 2.4.2 @@ -11254,8 +11201,6 @@ snapshots: dependencies: minipass: 7.1.2 - mkdirp-classic@0.5.3: {} - mkdirp@3.0.1: {} mlly@1.7.4: @@ -11297,7 +11242,7 @@ snapshots: mute-stream@0.0.8: {} - nan@2.22.2: + nan@2.23.0: optional: true nanoid@3.3.11: {} @@ -11306,26 +11251,25 @@ snapshots: dependencies: picocolors: 1.1.1 - napi-build-utils@2.0.0: {} - natural-compare@1.4.0: {} negotiator@0.6.3: {} - netlify-cli@22.1.6(@types/node@18.19.119)(picomatch@4.0.2): + netlify-cli@22.3.0(@types/node@20.19.8)(picomatch@4.0.2)(rollup@4.40.1): dependencies: '@fastify/static': 7.0.4 '@netlify/api': 14.0.3 - '@netlify/blobs': 9.1.6 - '@netlify/build': 33.4.6(@opentelemetry/api@1.8.0)(@types/node@18.19.119)(picomatch@4.0.2) - '@netlify/build-info': 10.0.6 - '@netlify/config': 23.0.10 - '@netlify/edge-bundler': 14.0.6 - '@netlify/edge-functions': 2.15.1 + '@netlify/blobs': 10.0.5 + '@netlify/build': 34.2.5(@opentelemetry/api@1.8.0)(@types/node@20.19.8)(picomatch@4.0.2)(rollup@4.40.1) + '@netlify/build-info': 10.0.7 + '@netlify/config': 23.2.0 + '@netlify/dev-utils': 3.3.0 + '@netlify/edge-bundler': 14.2.2 + '@netlify/edge-functions': 2.15.7 '@netlify/headers-parser': 9.0.1 '@netlify/local-functions-proxy': 2.0.3 '@netlify/redirect-parser': 15.0.2 - '@netlify/zip-it-and-ship-it': 12.1.4 + '@netlify/zip-it-and-ship-it': 14.0.0(rollup@4.40.1)(supports-color@10.0.0) '@octokit/rest': 21.1.1 '@opentelemetry/api': 1.8.0 '@pnpm/tabtab': 0.5.4 @@ -11335,7 +11279,7 @@ snapshots: backoff: 2.5.0 boxen: 8.0.1 chalk: 5.4.1 - chokidar: 3.6.0 + chokidar: 4.0.3 ci-info: 4.2.0 clean-deep: 3.4.0 commander: 12.1.0 @@ -11343,7 +11287,7 @@ snapshots: content-type: 1.0.5 cookie: 1.0.2 cron-parser: 4.9.0 - debug: 4.4.0 + debug: 4.4.1(supports-color@10.0.0) decache: 4.6.2 dot-prop: 9.0.0 dotenv: 16.5.0 @@ -11363,12 +11307,12 @@ snapshots: gh-release-fetch: 4.0.3 git-repo-info: 2.1.1 gitconfiglocal: 2.1.0 - http-proxy: 1.18.1(debug@4.4.0) - http-proxy-middleware: 2.0.9(debug@4.4.0) + http-proxy: 1.18.1(debug@4.4.1) + http-proxy-middleware: 2.0.9(debug@4.4.1) https-proxy-agent: 7.0.6(supports-color@10.0.0) inquirer: 8.2.6 inquirer-autocomplete-prompt: 1.4.0(inquirer@8.2.6) - ipx: 2.1.0(@netlify/blobs@9.1.6) + ipx: 3.0.3(@netlify/blobs@10.0.5) is-docker: 3.0.0 is-stream: 4.0.1 is-wsl: 3.1.0 @@ -11385,7 +11329,7 @@ snapshots: nanospinner: 1.2.2 netlify-redirector: 0.5.0 node-fetch: 3.3.2 - normalize-package-data: 6.0.2 + normalize-package-data: 7.0.0 open: 10.1.2 p-filter: 4.1.0 p-map: 7.0.3 @@ -11397,17 +11341,17 @@ snapshots: raw-body: 3.0.0 read-package-up: 11.0.0 readdirp: 4.1.2 - semver: 7.7.1 + semver: 7.7.2 source-map-support: 0.5.21 terminal-link: 4.0.0 toml: 3.0.0 tomlify-j0.4: 3.0.0 - ulid: 3.0.0 + ulid: 3.0.1 update-notifier: 7.3.1 uuid: 11.1.0 wait-port: 1.1.0 write-file-atomic: 5.0.1 - ws: 8.18.2 + ws: 8.18.3 transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -11427,7 +11371,6 @@ snapshots: - '@vercel/blob' - '@vercel/kv' - aws4fetch - - bare-buffer - bufferutil - db0 - encoding @@ -11446,12 +11389,6 @@ snapshots: lower-case: 2.0.2 tslib: 2.8.1 - node-abi@3.75.0: - dependencies: - semver: 7.7.2 - - node-addon-api@6.1.0: {} - node-addon-api@7.1.1: {} node-domexception@1.0.0: {} @@ -11472,7 +11409,7 @@ snapshots: node-gyp-build@4.8.0: {} - node-mock-http@1.0.0: {} + node-mock-http@1.0.1: {} node-source-walk@7.0.1: dependencies: @@ -11495,6 +11432,12 @@ snapshots: semver: 7.7.1 validate-npm-package-license: 3.0.4 + normalize-package-data@7.0.0: + dependencies: + hosted-git-info: 8.1.0 + semver: 7.7.2 + validate-npm-package-license: 3.0.4 + normalize-path@2.1.1: dependencies: remove-trailing-separator: 1.1.0 @@ -11533,7 +11476,7 @@ snapshots: dependencies: ee-first: 1.1.1 - on-headers@1.0.2: {} + on-headers@1.1.0: {} once@1.4.0: dependencies: @@ -11668,7 +11611,7 @@ snapshots: package-json@10.0.1: dependencies: - ky: 1.8.1 + ky: 1.8.2 registry-auth-token: 5.1.0 registry-url: 6.0.1 semver: 7.7.2 @@ -11789,22 +11732,22 @@ snapshots: '@polka/url': 1.0.0-next.28 trouter: 4.0.0 - postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3)): + postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3)): dependencies: lilconfig: 2.1.0 yaml: 1.10.2 optionalDependencies: postcss: 8.5.6 - ts-node: 10.9.2(@types/node@18.19.119)(typescript@5.6.3) + ts-node: 10.9.2(@types/node@20.19.8)(typescript@5.6.3) optional: true - postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3)): + postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3)): dependencies: lilconfig: 2.1.0 yaml: 1.10.2 optionalDependencies: postcss: 8.5.6 - ts-node: 10.9.2(@types/node@18.19.119)(typescript@5.8.3) + ts-node: 10.9.2(@types/node@20.19.8)(typescript@5.8.3) postcss-safe-parser@7.0.1(postcss@8.5.6): dependencies: @@ -11832,21 +11775,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - prebuild-install@7.1.3: - dependencies: - detect-libc: 2.0.3 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 2.0.0 - node-abi: 3.75.0 - pump: 3.0.2 - rc: 1.2.8 - simple-get: 4.0.1 - tar-fs: 2.1.3 - tunnel-agent: 0.6.0 - precinct@12.2.0(supports-color@10.0.0): dependencies: '@dependents/detective-less': 5.0.1 @@ -11871,15 +11799,15 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-svelte@3.2.7(prettier@3.3.3)(svelte@5.35.5): + prettier-plugin-svelte@3.2.7(prettier@3.3.3)(svelte@5.36.5): dependencies: prettier: 3.3.3 - svelte: 5.35.5 + svelte: 5.36.5 - prettier-plugin-svelte@3.4.0(prettier@3.6.0)(svelte@5.35.5): + prettier-plugin-svelte@3.4.0(prettier@3.6.0)(svelte@5.36.5): dependencies: prettier: 3.6.0 - svelte: 5.35.5 + svelte: 5.36.5 prettier@2.8.8: {} @@ -12034,10 +11962,6 @@ snapshots: dependencies: minimatch: 5.1.6 - readdirp@3.6.0: - dependencies: - picomatch: 2.3.1 - readdirp@4.0.1: {} readdirp@4.1.2: {} @@ -12136,32 +12060,6 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.40.1 fsevents: 2.3.3 - rollup@4.44.0: - dependencies: - '@types/estree': 1.0.8 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.44.0 - '@rollup/rollup-android-arm64': 4.44.0 - '@rollup/rollup-darwin-arm64': 4.44.0 - '@rollup/rollup-darwin-x64': 4.44.0 - '@rollup/rollup-freebsd-arm64': 4.44.0 - '@rollup/rollup-freebsd-x64': 4.44.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.44.0 - '@rollup/rollup-linux-arm-musleabihf': 4.44.0 - '@rollup/rollup-linux-arm64-gnu': 4.44.0 - '@rollup/rollup-linux-arm64-musl': 4.44.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.44.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.44.0 - '@rollup/rollup-linux-riscv64-gnu': 4.44.0 - '@rollup/rollup-linux-riscv64-musl': 4.44.0 - '@rollup/rollup-linux-s390x-gnu': 4.44.0 - '@rollup/rollup-linux-x64-gnu': 4.44.0 - '@rollup/rollup-linux-x64-musl': 4.44.0 - '@rollup/rollup-win32-arm64-msvc': 4.44.0 - '@rollup/rollup-win32-ia32-msvc': 4.44.0 - '@rollup/rollup-win32-x64-msvc': 4.44.0 - fsevents: 2.3.3 - run-applescript@7.0.0: {} run-async@2.4.1: {} @@ -12247,19 +12145,6 @@ snapshots: setprototypeof@1.2.0: {} - sharp@0.32.6: - dependencies: - color: 4.2.3 - detect-libc: 2.0.3 - node-addon-api: 6.1.0 - prebuild-install: 7.1.3 - semver: 7.7.2 - simple-get: 4.0.1 - tar-fs: 3.0.10 - tunnel-agent: 0.6.0 - transitivePeerDependencies: - - bare-buffer - sharp@0.33.5: dependencies: color: 4.2.3 @@ -12285,7 +12170,6 @@ snapshots: '@img/sharp-wasm32': 0.33.5 '@img/sharp-win32-ia32': 0.33.5 '@img/sharp-win32-x64': 0.33.5 - optional: true sharp@0.34.1: dependencies: @@ -12354,14 +12238,6 @@ snapshots: signal-exit@4.1.0: {} - simple-concat@1.0.1: {} - - simple-get@4.0.1: - dependencies: - decompress-response: 6.0.0 - once: 1.4.0 - simple-concat: 1.0.1 - simple-swizzle@0.2.2: dependencies: is-arrayish: 0.3.2 @@ -12551,19 +12427,19 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@4.1.1(picomatch@4.0.2)(svelte@5.35.5)(typescript@5.6.3): + svelte-check@4.1.1(picomatch@4.0.2)(svelte@5.36.5)(typescript@5.6.3): dependencies: '@jridgewell/trace-mapping': 0.3.25 chokidar: 4.0.3 fdir: 6.4.6(picomatch@4.0.2) picocolors: 1.1.1 sade: 1.8.1 - svelte: 5.35.5 + svelte: 5.36.5 typescript: 5.6.3 transitivePeerDependencies: - picomatch - svelte-eslint-parser@1.2.0(svelte@5.35.5): + svelte-eslint-parser@1.2.0(svelte@5.36.5): dependencies: eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -12572,30 +12448,30 @@ snapshots: postcss-scss: 4.0.9(postcss@8.5.6) postcss-selector-parser: 7.1.0 optionalDependencies: - svelte: 5.35.5 + svelte: 5.36.5 - svelte-parse-markup@0.1.5(svelte@5.35.5): + svelte-parse-markup@0.1.5(svelte@5.36.5): dependencies: - svelte: 5.35.5 + svelte: 5.36.5 - svelte-preprocess@6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.35.5)(typescript@5.6.3): + svelte-preprocess@6.0.0(postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3)))(postcss@8.5.6)(svelte@5.36.5)(typescript@5.6.3): dependencies: detect-indent: 6.1.0 strip-indent: 3.0.0 - svelte: 5.35.5 + svelte: 5.36.5 optionalDependencies: postcss: 8.5.6 - postcss-load-config: 3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3)) + postcss-load-config: 3.1.4(postcss@8.5.6)(ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3)) typescript: 5.6.3 - svelte2tsx@0.7.33(svelte@5.35.5)(typescript@5.6.3): + svelte2tsx@0.7.33(svelte@5.36.5)(typescript@5.6.3): dependencies: dedent-js: 1.0.1 pascal-case: 3.1.2 - svelte: 5.35.5 + svelte: 5.36.5 typescript: 5.6.3 - svelte@5.35.5: + svelte@5.36.5: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 @@ -12605,7 +12481,7 @@ snapshots: aria-query: 5.3.2 axobject-query: 4.1.0 clsx: 2.1.1 - esm-env: 1.2.2 + esm-env: https://codeload.github.com/benmccann/esm-env/tar.gz/bcbddbc#path:packages/esm-env esrap: 2.1.0 is-reference: 3.0.3 locate-character: 3.0.0 @@ -12616,9 +12492,9 @@ snapshots: dependencies: '@trysound/sax': 0.2.0 commander: 7.2.0 - css-select: 5.1.0 + css-select: 5.2.2 css-tree: 2.3.1 - css-what: 6.1.0 + css-what: 6.2.2 csso: 5.0.5 picocolors: 1.1.1 @@ -12626,31 +12502,6 @@ snapshots: tapable@2.2.1: {} - tar-fs@2.1.3: - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.2 - tar-stream: 2.2.0 - - tar-fs@3.0.10: - dependencies: - pump: 3.0.2 - tar-stream: 3.1.7 - optionalDependencies: - bare-fs: 4.1.5 - bare-path: 3.0.0 - transitivePeerDependencies: - - bare-buffer - - tar-stream@2.2.0: - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - tar-stream@3.1.7: dependencies: b4a: 1.6.7 @@ -12761,14 +12612,14 @@ snapshots: picomatch: 4.0.2 typescript: 5.8.3 - ts-node@10.9.2(@types/node@18.19.119)(typescript@5.6.3): + ts-node@10.9.2(@types/node@20.19.8)(typescript@5.6.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.119 + '@types/node': 20.19.8 acorn: 8.15.0 acorn-walk: 8.3.2 arg: 4.1.3 @@ -12780,14 +12631,14 @@ snapshots: yn: 3.1.1 optional: true - ts-node@10.9.2(@types/node@18.19.119)(typescript@5.8.3): + ts-node@10.9.2(@types/node@20.19.8)(typescript@5.8.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.119 + '@types/node': 20.19.8 acorn: 8.15.0 acorn-walk: 8.3.2 arg: 4.1.3 @@ -12802,10 +12653,6 @@ snapshots: tslib@2.8.1: {} - tunnel-agent@0.6.0: - dependencies: - safe-buffer: 5.2.1 - type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -12839,7 +12686,7 @@ snapshots: dependencies: random-bytes: 1.0.0 - ulid@3.0.0: {} + ulid@3.0.1: {} unbzip2-stream@1.4.3: dependencies: @@ -12848,7 +12695,7 @@ snapshots: uncrypto@0.1.3: {} - undici-types@5.26.5: {} + undici-types@6.21.0: {} undici@5.29.0: dependencies: @@ -12873,7 +12720,7 @@ snapshots: unix-dgram@2.0.6: dependencies: bindings: 1.5.0 - nan: 2.22.2 + nan: 2.23.0 optional: true unixify@1.0.0: @@ -12882,7 +12729,7 @@ snapshots: unpipe@1.0.0: {} - unstorage@1.16.0(@netlify/blobs@9.1.6): + unstorage@1.16.1(@netlify/blobs@10.0.5): dependencies: anymatch: 3.1.3 chokidar: 4.0.3 @@ -12893,14 +12740,14 @@ snapshots: ofetch: 1.4.1 ufo: 1.6.1 optionalDependencies: - '@netlify/blobs': 9.1.6 + '@netlify/blobs': 10.0.5 untildify@4.0.0: {} untun@0.1.3: dependencies: citty: 0.1.6 - consola: 3.2.3 + consola: 3.4.2 pathe: 1.1.2 update-notifier@7.3.1: @@ -12913,7 +12760,7 @@ snapshots: is-npm: 6.0.0 latest-version: 9.0.0 pupa: 3.1.0 - semver: 7.7.1 + semver: 7.7.2 xdg-basedir: 5.1.0 uqr@0.1.2: {} @@ -12958,13 +12805,13 @@ snapshots: transitivePeerDependencies: - rollup - vite-node@3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): + vite-node@3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): dependencies: cac: 6.7.14 debug: 4.4.1(supports-color@10.0.0) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) transitivePeerDependencies: - '@types/node' - jiti @@ -12979,30 +12826,30 @@ snapshots: - tsx - yaml - vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): + vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): dependencies: - esbuild: 0.25.5 + esbuild: 0.25.6 fdir: 6.4.6(picomatch@4.0.2) picomatch: 4.0.2 postcss: 8.5.6 - rollup: 4.44.0 + rollup: 4.40.1 tinyglobby: 0.2.14 optionalDependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 fsevents: 2.3.3 jiti: 2.4.2 lightningcss: 1.30.1 yaml: 2.8.0 - vitefu@1.1.1(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)): + vitefu@1.1.1(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)): optionalDependencies: - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) - vitest@3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): + vitest@3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.3 - '@vitest/mocker': 3.2.3(vite@6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) + '@vitest/mocker': 3.2.3(vite@7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0)) '@vitest/pretty-format': 3.2.3 '@vitest/runner': 3.2.3 '@vitest/snapshot': 3.2.3 @@ -13020,11 +12867,11 @@ snapshots: tinyglobby: 0.2.14 tinypool: 1.1.0 tinyrainbow: 2.0.0 - vite: 6.3.5(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) - vite-node: 3.2.3(@types/node@18.19.119)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vite: 7.0.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) + vite-node: 3.2.3(@types/node@20.19.8)(jiti@2.4.2)(lightningcss@1.30.1)(yaml@2.8.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 18.19.119 + '@types/node': 20.19.8 transitivePeerDependencies: - jiti - less @@ -13163,7 +13010,7 @@ snapshots: ws@8.18.0: {} - ws@8.18.2: {} + ws@8.18.3: {} xdg-basedir@5.1.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 5552fdfb0ded..166530f6a0f0 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -13,7 +13,8 @@ packages: catalog: '@playwright/test': '^1.51.1' - '@sveltejs/vite-plugin-svelte': '^6.0.0-next.3' + '@sveltejs/vite-plugin-svelte': '^6.1.0' + '@types/node': '^20.14.8' 'cross-env': '^7.0.3' 'vitest': '^3.2.3' - 'vite': '^6.3.5' + 'vite': '^7.0.3'