@sveltejs/kit 2.5.2 → 2.5.4

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.5.2",
3
+ "version": "2.5.4",
4
4
  "description": "The fastest way to build Svelte apps",
5
5
  "repository": {
6
6
  "type": "git",
@@ -55,10 +55,9 @@ export function get_tsconfig(kit) {
55
55
  const config_relative = (file) => posixify(path.relative(kit.outDir, file));
56
56
 
57
57
  const include = new Set([
58
- 'ambient.d.ts',
58
+ 'ambient.d.ts', // careful: changing this name would be a breaking change, because it's referenced in the service-workers documentation
59
59
  'non-ambient.d.ts',
60
60
  './types/**/$types.d.ts',
61
- config_relative('svelte.config.js'),
62
61
  config_relative('vite.config.js'),
63
62
  config_relative('vite.config.ts')
64
63
  ]);
@@ -82,6 +81,15 @@ export function get_tsconfig(kit) {
82
81
  include.add(config_relative(`${test_folder}/**/*.svelte`));
83
82
 
84
83
  const exclude = [config_relative('node_modules/**')];
84
+ // Add service worker to exclude list so that worker types references in it don't spill over into the rest of the app
85
+ // (i.e. suddenly ServiceWorkerGlobalScope would be available throughout the app, and some types might even clash)
86
+ if (path.extname(kit.files.serviceWorker)) {
87
+ exclude.push(config_relative(kit.files.serviceWorker));
88
+ } else {
89
+ exclude.push(config_relative(`${kit.files.serviceWorker}.js`));
90
+ exclude.push(config_relative(`${kit.files.serviceWorker}.ts`));
91
+ exclude.push(config_relative(`${kit.files.serviceWorker}.d.ts`));
92
+ }
85
93
 
86
94
  const config = {
87
95
  compilerOptions: {
@@ -172,7 +172,7 @@ const invalidated = [];
172
172
  */
173
173
  const components = [];
174
174
 
175
- /** @type {{id: string, promise: Promise<import('./types.js').NavigationResult>} | null} */
175
+ /** @type {{id: string, token: {}, promise: Promise<import('./types.js').NavigationResult>} | null} */
176
176
  let load_cache = null;
177
177
 
178
178
  /** @type {Array<(navigation: import('@sveltejs/kit').BeforeNavigate) => void>} */
@@ -219,6 +219,14 @@ let page;
219
219
  /** @type {{}} */
220
220
  let token;
221
221
 
222
+ /**
223
+ * A set of tokens which are associated to current preloads.
224
+ * If a preload becomes a real navigation, it's removed from the set.
225
+ * If a preload token is in the set and the preload errors, the error
226
+ * handling logic (for example reloading) is skipped.
227
+ */
228
+ const preload_tokens = new Set();
229
+
222
230
  /** @type {Promise<void> | null} */
223
231
  let pending_invalidate;
224
232
 
@@ -375,16 +383,26 @@ async function _goto(url, options, redirect_count, nav_token) {
375
383
 
376
384
  /** @param {import('./types.js').NavigationIntent} intent */
377
385
  async function _preload_data(intent) {
378
- load_cache = {
379
- id: intent.id,
380
- promise: load_route(intent).then((result) => {
381
- if (result.type === 'loaded' && result.state.error) {
382
- // Don't cache errors, because they might be transient
383
- load_cache = null;
384
- }
385
- return result;
386
- })
387
- };
386
+ // Reuse the existing pending preload if it's for the same navigation.
387
+ // Prevents an edge case where same preload is triggered multiple times,
388
+ // then a later one is becoming the real navigation and the preload tokens
389
+ // get out of sync.
390
+ if (intent.id !== load_cache?.id) {
391
+ const preload = {};
392
+ preload_tokens.add(preload);
393
+ load_cache = {
394
+ id: intent.id,
395
+ token: preload,
396
+ promise: load_route({ ...intent, preload }).then((result) => {
397
+ preload_tokens.delete(preload);
398
+ if (result.type === 'loaded' && result.state.error) {
399
+ // Don't cache errors, because they might be transient
400
+ load_cache = null;
401
+ }
402
+ return result;
403
+ })
404
+ };
405
+ }
388
406
 
389
407
  return load_cache.promise;
390
408
  }
@@ -803,11 +821,31 @@ function diff_search_params(old_url, new_url) {
803
821
  }
804
822
 
805
823
  /**
806
- * @param {import('./types.js').NavigationIntent} intent
824
+ * @param {Omit<import('./types.js').NavigationFinished['state'], 'branch'> & { error: App.Error }} opts
825
+ * @returns {import('./types.js').NavigationFinished}
826
+ */
827
+ function preload_error({ error, url, route, params }) {
828
+ return {
829
+ type: 'loaded',
830
+ state: {
831
+ error,
832
+ url,
833
+ route,
834
+ params,
835
+ branch: []
836
+ },
837
+ props: { page, constructors: [] }
838
+ };
839
+ }
840
+
841
+ /**
842
+ * @param {import('./types.js').NavigationIntent & { preload?: {} }} intent
807
843
  * @returns {Promise<import('./types.js').NavigationResult>}
808
844
  */
809
- async function load_route({ id, invalidating, url, params, route }) {
845
+ async function load_route({ id, invalidating, url, params, route, preload }) {
810
846
  if (load_cache?.id === id) {
847
+ // the preload becomes the real navigation
848
+ preload_tokens.delete(load_cache.token);
811
849
  return load_cache.promise;
812
850
  }
813
851
 
@@ -855,9 +893,15 @@ async function load_route({ id, invalidating, url, params, route }) {
855
893
  try {
856
894
  server_data = await load_data(url, invalid_server_nodes);
857
895
  } catch (error) {
896
+ const handled_error = await handle_error(error, { url, params, route: { id } });
897
+
898
+ if (preload_tokens.has(preload)) {
899
+ return preload_error({ error: handled_error, url, params, route });
900
+ }
901
+
858
902
  return load_root_error_page({
859
903
  status: get_status(error),
860
- error: await handle_error(error, { url, params, route: { id: route.id } }),
904
+ error: handled_error,
861
905
  url,
862
906
  route
863
907
  });
@@ -940,6 +984,15 @@ async function load_route({ id, invalidating, url, params, route }) {
940
984
  };
941
985
  }
942
986
 
987
+ if (preload_tokens.has(preload)) {
988
+ return preload_error({
989
+ error: await handle_error(err, { params, url, route: { id: route.id } }),
990
+ url,
991
+ params,
992
+ route
993
+ });
994
+ }
995
+
943
996
  let status = get_status(err);
944
997
  /** @type {App.Error} */
945
998
  let error;
@@ -972,8 +1025,6 @@ async function load_route({ id, invalidating, url, params, route }) {
972
1025
  route
973
1026
  });
974
1027
  } else {
975
- // if we get here, it's because the root `load` function failed,
976
- // and we need to fall back to the server
977
1028
  return await server_fallback(url, { id: route.id }, error, status);
978
1029
  }
979
1030
  }
@@ -73,7 +73,6 @@ export namespace Csp {
73
73
  type SchemeSource = 'http:' | 'https:' | 'data:' | 'mediastream:' | 'blob:' | 'filesystem:';
74
74
  type Source = HostSource | SchemeSource | CryptoSource | BaseSource;
75
75
  type Sources = Source[];
76
- type UriPath = `${HttpDelineator}${string}`;
77
76
  }
78
77
 
79
78
  export interface CspDirectives {
@@ -113,7 +112,7 @@ export interface CspDirectives {
113
112
  'form-action'?: Array<Csp.Source | Csp.ActionSource>;
114
113
  'frame-ancestors'?: Array<Csp.HostSource | Csp.SchemeSource | Csp.FrameSource>;
115
114
  'navigate-to'?: Array<Csp.Source | Csp.ActionSource>;
116
- 'report-uri'?: Csp.UriPath[];
115
+ 'report-uri'?: string[];
117
116
  'report-to'?: string[];
118
117
 
119
118
  'require-trusted-types-for'?: Array<'script'>;
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.5.2';
4
+ export const VERSION = '2.5.4';
package/types/index.d.ts CHANGED
@@ -1419,7 +1419,6 @@ declare module '@sveltejs/kit' {
1419
1419
  type SchemeSource = 'http:' | 'https:' | 'data:' | 'mediastream:' | 'blob:' | 'filesystem:';
1420
1420
  type Source = HostSource | SchemeSource | CryptoSource | BaseSource;
1421
1421
  type Sources = Source[];
1422
- type UriPath = `${HttpDelineator}${string}`;
1423
1422
  }
1424
1423
 
1425
1424
  interface CspDirectives {
@@ -1459,7 +1458,7 @@ declare module '@sveltejs/kit' {
1459
1458
  'form-action'?: Array<Csp.Source | Csp.ActionSource>;
1460
1459
  'frame-ancestors'?: Array<Csp.HostSource | Csp.SchemeSource | Csp.FrameSource>;
1461
1460
  'navigate-to'?: Array<Csp.Source | Csp.ActionSource>;
1462
- 'report-uri'?: Csp.UriPath[];
1461
+ 'report-uri'?: string[];
1463
1462
  'report-to'?: string[];
1464
1463
 
1465
1464
  'require-trusted-types-for'?: Array<'script'>;
@@ -154,5 +154,5 @@
154
154
  null,
155
155
  null
156
156
  ],
157
- "mappings": "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"
157
+ "mappings": "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"
158
158
  }