@sveltejs/kit 2.20.4 → 2.20.5

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.20.4",
3
+ "version": "2.20.5",
4
4
  "description": "SvelteKit is the fastest way to build Svelte apps",
5
5
  "keywords": [
6
6
  "framework",
@@ -678,7 +678,19 @@ Tips:
678
678
  manualChunks: split ? undefined : () => 'bundle',
679
679
  inlineDynamicImports: false
680
680
  },
681
- preserveEntrySignatures: 'strict'
681
+ preserveEntrySignatures: 'strict',
682
+ onwarn(warning, handler) {
683
+ if (
684
+ warning.code === 'MISSING_EXPORT' &&
685
+ warning.id === `${kit.outDir}/generated/client-optimized/app.js`
686
+ ) {
687
+ // ignore e.g. undefined `handleError` hook when
688
+ // referencing `client_hooks.handleError`
689
+ return;
690
+ }
691
+
692
+ handler(warning);
693
+ }
682
694
  },
683
695
  ssrEmitAssets: true,
684
696
  target: ssr ? 'node18.13' : undefined
@@ -15,7 +15,7 @@ import('node:async_hooks')
15
15
  });
16
16
 
17
17
  /**
18
- * Returns the current `RequestEvent`. Can be used inside `handle`, `load` and actions (and functions called by them).
18
+ * Returns the current `RequestEvent`. Can be used inside server hooks, server `load` functions, actions, and endpoints (and functions called by them).
19
19
  *
20
20
  * In environments without [`AsyncLocalStorage`](https://nodejs.org/api/async_context.html#class-asynclocalstorage), this must be called synchronously (i.e. not after an `await`).
21
21
  * @since 2.20.0
@@ -25,7 +25,7 @@ export function getRequestEvent() {
25
25
 
26
26
  if (!event) {
27
27
  let message =
28
- 'Can only read the current request event inside functions invoked during `handle`, such as server `load` functions, actions, and server endpoints.';
28
+ 'Can only read the current request event inside functions invoked during `handle`, such as server `load` functions, actions, endpoints, and other server hooks.';
29
29
 
30
30
  if (!als) {
31
31
  message +=
@@ -6,6 +6,7 @@ import { HttpError } from '../control.js';
6
6
  import { fix_stack_trace } from '../shared-server.js';
7
7
  import { ENDPOINT_METHODS } from '../../constants.js';
8
8
  import { escape_html } from '../../utils/escape.js';
9
+ import { with_event } from '../app/server/event.js';
9
10
 
10
11
  /** @param {any} body */
11
12
  export function is_pojo(body) {
@@ -107,7 +108,11 @@ export async function handle_error_and_jsonify(event, options, error) {
107
108
  const status = get_status(error);
108
109
  const message = get_message(error);
109
110
 
110
- return (await options.hooks.handleError({ error, event, status, message })) ?? { message };
111
+ return (
112
+ (await with_event(event, () =>
113
+ options.hooks.handleError({ error, event, status, message })
114
+ )) ?? { message }
115
+ );
111
116
  }
112
117
 
113
118
  /**
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.20.4';
4
+ export const VERSION = '2.20.5';
package/types/index.d.ts CHANGED
@@ -2417,7 +2417,7 @@ declare module '$app/server' {
2417
2417
  */
2418
2418
  export function read(asset: string): Response;
2419
2419
  /**
2420
- * Returns the current `RequestEvent`. Can be used inside `handle`, `load` and actions (and functions called by them).
2420
+ * Returns the current `RequestEvent`. Can be used inside server hooks, server `load` functions, actions, and endpoints (and functions called by them).
2421
2421
  *
2422
2422
  * In environments without [`AsyncLocalStorage`](https://nodejs.org/api/async_context.html#class-asynclocalstorage), this must be called synchronously (i.e. not after an `await`).
2423
2423
  * @since 2.20.0