@sveltejs/kit 2.8.5 → 2.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sveltejs/kit",
3
- "version": "2.8.5",
3
+ "version": "2.9.1",
4
4
  "description": "SvelteKit is the fastest way to build Svelte apps",
5
5
  "keywords": [
6
6
  "framework",
@@ -21,7 +21,7 @@
21
21
  "@types/cookie": "^0.6.0",
22
22
  "cookie": "^0.6.0",
23
23
  "devalue": "^5.1.0",
24
- "esm-env": "^1.0.0",
24
+ "esm-env": "^1.2.1",
25
25
  "import-meta-resolve": "^4.1.0",
26
26
  "kleur": "^4.1.5",
27
27
  "magic-string": "^0.30.5",
@@ -33,22 +33,22 @@
33
33
  },
34
34
  "devDependencies": {
35
35
  "@playwright/test": "^1.44.1",
36
- "@sveltejs/vite-plugin-svelte": "^3.0.1",
36
+ "@sveltejs/vite-plugin-svelte": "^5.0.1",
37
37
  "@types/connect": "^3.4.38",
38
38
  "@types/node": "^18.19.48",
39
39
  "@types/set-cookie-parser": "^2.4.7",
40
- "dts-buddy": "^0.5.3",
40
+ "dts-buddy": "^0.5.4",
41
41
  "rollup": "^4.14.2",
42
- "svelte": "^4.2.10",
42
+ "svelte": "^5.2.9",
43
43
  "svelte-preprocess": "^6.0.0",
44
44
  "typescript": "^5.3.3",
45
- "vite": "^5.3.2",
46
- "vitest": "^2.0.1"
45
+ "vite": "^6.0.1",
46
+ "vitest": "^2.1.6"
47
47
  },
48
48
  "peerDependencies": {
49
- "@sveltejs/vite-plugin-svelte": "^3.0.0 || ^4.0.0-next.1",
49
+ "@sveltejs/vite-plugin-svelte": "^3.0.0 || ^4.0.0-next.1 || ^5.0.0",
50
50
  "svelte": "^4.0.0 || ^5.0.0-next.0",
51
- "vite": "^5.0.3"
51
+ "vite": "^5.0.3 || ^6.0.0"
52
52
  },
53
53
  "bin": {
54
54
  "svelte-kit": "svelte-kit.js"
@@ -136,7 +136,8 @@ function split_route_id(id) {
136
136
  return get_route_segments(
137
137
  id
138
138
  // remove all [[optional]] parts unless they're at the very end
139
- .replace(/\[\[[^\]]+\]\](?!$)/g, '')
139
+ // or it ends with a route group
140
+ .replace(/\[\[[^\]]+\]\](?!(?:\/\([^/]+\))*$)/g, '')
140
141
  ).filter(Boolean);
141
142
  }
142
143
 
@@ -79,11 +79,12 @@ export interface ActionFailure<T extends Record<string, unknown> | undefined = u
79
79
  [uniqueSymbol]: true; // necessary or else UnpackValidationError could wrongly unpack objects with the same shape as ActionFailure
80
80
  }
81
81
 
82
- type UnpackValidationError<T> = T extends ActionFailure<infer X>
83
- ? X
84
- : T extends void
85
- ? undefined // needs to be undefined, because void will corrupt union type
86
- : T;
82
+ type UnpackValidationError<T> =
83
+ T extends ActionFailure<infer X>
84
+ ? X
85
+ : T extends void
86
+ ? undefined // needs to be undefined, because void will corrupt union type
87
+ : T;
87
88
 
88
89
  /**
89
90
  * This object is passed to the `adapt` function of adapters.
@@ -46,6 +46,8 @@ import { INVALIDATED_PARAM, TRAILING_SLASH_PARAM, validate_depends } from '../sh
46
46
  import { get_message, get_status } from '../../utils/error.js';
47
47
  import { writable } from 'svelte/store';
48
48
 
49
+ const ICON_REL_ATTRIBUTES = new Set(['icon', 'shortcut icon', 'apple-touch-icon']);
50
+
49
51
  let errored = false;
50
52
 
51
53
  // We track the scroll position associated with each history entry in sessionStorage,
@@ -970,7 +972,7 @@ async function load_route({ id, invalidating, url, params, route, preload }) {
970
972
  server_data_node: create_data_node(
971
973
  // server_data_node is undefined if it wasn't reloaded from the server;
972
974
  // and if current loader uses server data, we want to reuse previous data.
973
- server_data_node === undefined && loader[0] ? { type: 'skip' } : server_data_node ?? null,
975
+ server_data_node === undefined && loader[0] ? { type: 'skip' } : (server_data_node ?? null),
974
976
  loader[0] ? previous?.server : undefined
975
977
  )
976
978
  });
@@ -2307,7 +2309,9 @@ function _start_router() {
2307
2309
  // URLs after a pushState/replaceState, resulting in a 404 — see
2308
2310
  // https://github.com/sveltejs/kit/issues/3748#issuecomment-1125980897
2309
2311
  for (const link of document.querySelectorAll('link')) {
2310
- if (link.rel === 'icon') link.href = link.href; // eslint-disable-line
2312
+ if (ICON_REL_ATTRIBUTES.has(link.rel)) {
2313
+ link.href = link.href; // eslint-disable-line
2314
+ }
2311
2315
  }
2312
2316
 
2313
2317
  addEventListener('pageshow', (event) => {
@@ -244,7 +244,7 @@ export function create_universal_fetch(event, state, fetched, csr, resolve_opts)
244
244
  }
245
245
  } else {
246
246
  // simulate CORS errors and "no access to body in no-cors mode" server-side for consistency with client-side behaviour
247
- const mode = input instanceof Request ? input.mode : init?.mode ?? 'cors';
247
+ const mode = input instanceof Request ? input.mode : (init?.mode ?? 'cors');
248
248
  if (mode === 'no-cors') {
249
249
  response = new Response('', {
250
250
  status: response.status,
@@ -79,7 +79,7 @@ export async function render_response({
79
79
 
80
80
  const form_value =
81
81
  action_result?.type === 'success' || action_result?.type === 'failure'
82
- ? action_result.data ?? null
82
+ ? (action_result.data ?? null)
83
83
  : null;
84
84
 
85
85
  /** @type {string} */
package/src/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // generated during release, do not modify
2
2
 
3
3
  /** @type {string} */
4
- export const VERSION = '2.8.5';
4
+ export const VERSION = '2.9.1';
package/types/index.d.ts CHANGED
@@ -61,11 +61,12 @@ declare module '@sveltejs/kit' {
61
61
  [uniqueSymbol]: true; // necessary or else UnpackValidationError could wrongly unpack objects with the same shape as ActionFailure
62
62
  }
63
63
 
64
- type UnpackValidationError<T> = T extends ActionFailure<infer X>
65
- ? X
66
- : T extends void
67
- ? undefined // needs to be undefined, because void will corrupt union type
68
- : T;
64
+ type UnpackValidationError<T> =
65
+ T extends ActionFailure<infer X>
66
+ ? X
67
+ : T extends void
68
+ ? undefined // needs to be undefined, because void will corrupt union type
69
+ : T;
69
70
 
70
71
  /**
71
72
  * This object is passed to the `adapt` function of adapters.
@@ -1786,9 +1787,9 @@ declare module '@sveltejs/kit' {
1786
1787
  * Checks whether this is an error thrown by {@link error}.
1787
1788
  * @param status The status to filter for.
1788
1789
  * */
1789
- export function isHttpError<T extends number>(e: unknown, status?: T | undefined): e is HttpError_1 & {
1790
+ export function isHttpError<T extends number>(e: unknown, status?: T | undefined): e is (HttpError_1 & {
1790
1791
  status: T extends undefined ? never : T;
1791
- };
1792
+ });
1792
1793
  /**
1793
1794
  * Redirect a request. When called during request handling, SvelteKit will return a redirect response.
1794
1795
  * Make sure you're not catching the thrown redirect, which would prevent SvelteKit from handling it.
@@ -1830,8 +1831,8 @@ declare module '@sveltejs/kit' {
1830
1831
  * Checks whether this is an action failure thrown by {@link fail}.
1831
1832
  * @param e The object to check.
1832
1833
  * */
1833
- export function isActionFailure(e: unknown): e is ActionFailure<undefined>;
1834
- export type LessThan<TNumber extends number, TArray extends any[] = []> = TNumber extends TArray['length'] ? TArray[number] : LessThan<TNumber, [...TArray, TArray['length']]>;
1834
+ export function isActionFailure(e: unknown): e is ActionFailure;
1835
+ export type LessThan<TNumber extends number, TArray extends any[] = []> = TNumber extends TArray["length"] ? TArray[number] : LessThan<TNumber, [...TArray, TArray["length"]]>;
1835
1836
  export type NumericRange<TStart extends number, TEnd extends number> = Exclude<TEnd | LessThan<TEnd>, LessThan<TStart>>;
1836
1837
  export const VERSION: string;
1837
1838
  class HttpError_1 {
@@ -1924,19 +1925,19 @@ declare module '@sveltejs/kit/hooks' {
1924
1925
  *
1925
1926
  * @param handlers The chain of `handle` functions
1926
1927
  * */
1927
- export function sequence(...handlers: import('@sveltejs/kit').Handle[]): import('@sveltejs/kit').Handle;
1928
+ export function sequence(...handlers: import("@sveltejs/kit").Handle[]): import("@sveltejs/kit").Handle;
1928
1929
 
1929
1930
  export {};
1930
1931
  }
1931
1932
 
1932
1933
  declare module '@sveltejs/kit/node' {
1933
1934
  export function getRequest({ request, base, bodySizeLimit }: {
1934
- request: import('http').IncomingMessage;
1935
+ request: import("http").IncomingMessage;
1935
1936
  base: string;
1936
1937
  bodySizeLimit?: number;
1937
1938
  }): Promise<Request>;
1938
1939
 
1939
- export function setResponse(res: import('http').ServerResponse, response: Response): Promise<void>;
1940
+ export function setResponse(res: import("http").ServerResponse, response: Response): Promise<void>;
1940
1941
  /**
1941
1942
  * Converts a file on disk to a readable stream
1942
1943
  * @since 2.4.0
@@ -1961,7 +1962,7 @@ declare module '@sveltejs/kit/vite' {
1961
1962
  /**
1962
1963
  * Returns the SvelteKit Vite plugins.
1963
1964
  * */
1964
- export function sveltekit(): Promise<import('vite').Plugin[]>;
1965
+ export function sveltekit(): Promise<import("vite").Plugin[]>;
1965
1966
 
1966
1967
  export {};
1967
1968
  }
@@ -2048,7 +2049,7 @@ declare module '$app/navigation' {
2048
2049
  *
2049
2050
  * `afterNavigate` must be called during a component initialization. It remains active as long as the component is mounted.
2050
2051
  * */
2051
- export function afterNavigate(callback: (navigation: import('@sveltejs/kit').AfterNavigate) => void): void;
2052
+ export function afterNavigate(callback: (navigation: import("@sveltejs/kit").AfterNavigate) => void): void;
2052
2053
  /**
2053
2054
  * A navigation interceptor that triggers before we navigate to a new URL, whether by clicking a link, calling `goto(...)`, or using the browser back/forward controls.
2054
2055
  *
@@ -2060,7 +2061,7 @@ declare module '$app/navigation' {
2060
2061
  *
2061
2062
  * `beforeNavigate` must be called during a component initialization. It remains active as long as the component is mounted.
2062
2063
  * */
2063
- export function beforeNavigate(callback: (navigation: import('@sveltejs/kit').BeforeNavigate) => void): void;
2064
+ export function beforeNavigate(callback: (navigation: import("@sveltejs/kit").BeforeNavigate) => void): void;
2064
2065
  /**
2065
2066
  * A lifecycle function that runs the supplied `callback` immediately before we navigate to a new URL except during full-page navigations.
2066
2067
  *
@@ -2070,7 +2071,7 @@ declare module '$app/navigation' {
2070
2071
  *
2071
2072
  * `onNavigate` must be called during a component initialization. It remains active as long as the component is mounted.
2072
2073
  * */
2073
- export function onNavigate(callback: (navigation: import('@sveltejs/kit').OnNavigate) => MaybePromise<(() => void) | void>): void;
2074
+ export function onNavigate(callback: (navigation: import("@sveltejs/kit").OnNavigate) => MaybePromise<(() => void) | void>): void;
2074
2075
  /**
2075
2076
  * If called when the page is being updated following a navigation (in `onMount` or `afterNavigate` or an action, for example), this disables SvelteKit's built-in scroll handling.
2076
2077
  * This is generally discouraged, since it breaks user expectations.
@@ -2124,11 +2125,11 @@ declare module '$app/navigation' {
2124
2125
  * @param href Page to preload
2125
2126
  * */
2126
2127
  export function preloadData(href: string): Promise<{
2127
- type: 'loaded';
2128
+ type: "loaded";
2128
2129
  status: number;
2129
2130
  data: Record<string, any>;
2130
2131
  } | {
2131
- type: 'redirect';
2132
+ type: "redirect";
2132
2133
  location: string;
2133
2134
  }>;
2134
2135
  /**
@@ -2225,7 +2226,7 @@ declare module '$app/stores' {
2225
2226
  * On the server, this store can only be subscribed to during component initialization. In the browser, it can be subscribed to at any time.
2226
2227
  *
2227
2228
  * */
2228
- export const page: import('svelte/store').Readable<import('@sveltejs/kit').Page>;
2229
+ export const page: import("svelte/store").Readable<import("@sveltejs/kit").Page>;
2229
2230
  /**
2230
2231
  * A readable store.
2231
2232
  * When navigating starts, its value is a `Navigation` object with `from`, `to`, `type` and (if `type === 'popstate'`) `delta` properties.
@@ -2233,13 +2234,13 @@ declare module '$app/stores' {
2233
2234
  *
2234
2235
  * On the server, this store can only be subscribed to during component initialization. In the browser, it can be subscribed to at any time.
2235
2236
  * */
2236
- export const navigating: import('svelte/store').Readable<import('@sveltejs/kit').Navigation | null>;
2237
+ export const navigating: import("svelte/store").Readable<import("@sveltejs/kit").Navigation | null>;
2237
2238
  /**
2238
2239
  * A readable store whose initial value is `false`. If [`version.pollInterval`](https://svelte.dev/docs/kit/configuration#version) is a non-zero value, SvelteKit will poll for new versions of the app and update the store value to `true` when it detects one. `updated.check()` will force an immediate check, regardless of polling.
2239
2240
  *
2240
2241
  * On the server, this store can only be subscribed to during component initialization. In the browser, it can be subscribed to at any time.
2241
2242
  * */
2242
- export const updated: import('svelte/store').Readable<boolean> & {
2243
+ export const updated: import("svelte/store").Readable<boolean> & {
2243
2244
  check(): Promise<boolean>;
2244
2245
  };
2245
2246
 
@@ -83,8 +83,6 @@
83
83
  "json",
84
84
  "text",
85
85
  "isActionFailure",
86
- "LessThan",
87
- "NumericRange",
88
86
  "VERSION",
89
87
  "sequence",
90
88
  "getRequest",
@@ -155,6 +153,6 @@
155
153
  null,
156
154
  null
157
155
  ],
158
- "mappings": "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",
156
+ "mappings": ";;;;;;;;;kBA2BiBA,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;aA2BZC,cAAcA;;;;;;aAMdC,cAAcA;;;;;;;;;;;;;;;kBAeTC,aAAaA;;;;;;;;;;;;;;;;;kBAiBbC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkGPC,MAAMA;;;;;;;;;;;;;;;;;;;;;kBAqBNC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4DPC,QAAQA;;;;;;;;kBAQRC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAuZdC,MAAMA;;;;;;;;;;;aAWNC,iBAAiBA;;;;;;;;;;;;;aAajBC,iBAAiBA;;;;;;;;;;aAUjBC,WAAWA;;;;;;;;;;aAUXC,OAAOA;;;;;;aAMPC,IAAIA;;;;;;;;;;;;kBAYCC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4GTC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0BfC,gBAAgBA;;;;;;;;;;;;;;;;;;;;;;;;aAwBrBC,cAAcA;;kBAETC,UAAUA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoCVC,cAAcA;;;;;;;;;;kBAUdC,UAAUA;;;;;;;;;;;;;;;;;;kBAkBVC,aAAaA;;;;;;;;;;;;;;;;;;;kBAmBbC,IAAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA8CTC,YAAYA;;kBAEPC,YAAYA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA4FjBC,cAAcA;;;;;kBAKTC,cAAcA;;;;;;;;;;;;;;;;;;;;;;;kBAuBdC,eAAeA;;;;;;;;;;;;;;;cAenBC,MAAMA;;;;;;kBAMFC,iBAAiBA;;;;;;;kBAOjBC,WAAWA;;;;;;;;;;;;;;;;;;;;;aAqBhBC,UAAUA;;;;;;;kBAOLC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAqEpBC,MAAMA;;;;;;;;;;aAUNC,OAAOA;;;;;;;;;;;;;;;;aAgBPC,YAAYA;;;;;;;;;;;;kBC9xCXC,SAASA;;;;;;;;;;kBAqBTC,QAAQA;;;;;;;aDsyCTC,cAAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6BTC,QAAQA;;;;WEl1CRC,YAAYA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAkDZC,GAAGA;;;;;;;;;;;;;;;;;;;;;WAqBHC,aAAaA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmElBC,UAAUA;;WAELC,MAAMA;;;;;;;;;MASXC,YAAYA;;WAEPC,WAAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAmCXC,yBAAyBA;;;;;;;;;;WAUzBC,yBAAyBA;;;;WAIzBC,sCAAsCA;;;;MAI3CC,8BAA8BA;MAC9BC,8BAA8BA;MAC9BC,2CAA2CA;;;;;;aAM3CC,eAAeA;;WAIVC,cAAcA;;;;;WAKdC,YAAYA;;;;;;MAMjBC,aAAaA;WC3LRC,KAAKA;;;;;;WAcLC,SAASA;;;;;;;;;;;;;;;;;WA6ETC,YAAYA;;;;;;;;;;;;WAYZC,QAAQA;;;;;;;;;;;;;;MAyBbC,iBAAiBA;;;;;;;;WAUZC,UAAUA;;;;;;;;;;;;;WAaVC,SAASA;;;;;;;;;;;;;;;;;;;;;;;WAsGTC,YAAYA;;;;;;;;;;;;;MAajBC,kBAAkBA;;WAEbC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsCZC,aAAaA;;WA2BRC,eAAeA;;;;;;MAMpBC,uBAAuBA;;MAEvBC,WAAWA;;;;;;;;WAQNC,QAAQA;;;;;;;;;MA2CbC,eAAeA;;;;;MAKfC,kBAAkBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBC7WdC,WAAWA;;;;;;;;;;;iBAcXC,QAAQA;;;;;iBAiBRC,UAAUA;;;;;;iBASVC,IAAIA;;;;;;iBA8BJC,IAAIA;;;;;;;;;;;;;;;;iBAkDJC,eAAeA;;;cCnMlBC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCoEJC,QAAQA;;;;;;iBCoCFC,UAAUA;;;;;;iBAkCVC,WAAWA;;;;;iBAgFjBC,oBAAoBA;;;;;;;;;;;iBC3MpBC,gBAAgBA;;;;;;;;;iBC+GVC,SAASA;;;;;;;;;cC9HlBC,OAAOA;;;;;cAKPC,GAAGA;;;;;cAKHC,QAAQA;;;;;cAKRC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;iBCWJC,WAAWA;;;;;;;;;;;;;;;;;;;;;iBAyCXC,OAAOA;;;;;;;iBCg2DDC,WAAWA;;;;;;;;;;;iBArSjBC,aAAaA;;;;;;;;;;;;iBAiBbC,cAAcA;;;;;;;;;;iBAedC,UAAUA;;;;;iBASVC,qBAAqBA;;;;;;;;iBA2BrBC,IAAIA;;;;;;;;;;;;;;;;;;;;;;;;iBAsCJC,UAAUA;;;;iBAmBVC,aAAaA;;;;;;;;;;;;iBAqBPC,WAAWA;;;;;;;;;;;;;;;;;;iBAoCjBC,WAAWA;;;;;iBA2BXC,SAASA;;;;;iBA4CTC,YAAYA;MVnuDhB3D,YAAYA;;;;;;;;;;;YWtJb4D,IAAIA;;;;;;;YAOJC,MAAMA;;;;;;;;;;;;;;;;;iBAiBDC,YAAYA;;;;;;;;;;;;;;;;;;iBCVZC,IAAIA;;;;;;iBCXPC,SAASA;;;;;;;;;;;;;;cAwBTC,IAAIA;;;;;;;;cAeJC,UAAUA;;;;;;cAaVC,OAAOA",
159
157
  "ignoreList": []
160
158
  }