@sveltejs/kit 3.0.0-next.19 → 3.0.0-next.20

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.
Files changed (44) hide show
  1. package/package.json +12 -12
  2. package/src/core/adapt/builder.js +2 -1
  3. package/src/core/adapt/index.js +1 -1
  4. package/src/core/env.js +1 -1
  5. package/src/core/postbuild/prerender.js +61 -8
  6. package/src/core/sync/write_env.js +1 -1
  7. package/src/core/sync/write_server.js +2 -2
  8. package/src/core/sync/write_tsconfig/index.js +1 -3
  9. package/src/core/sync/write_tsconfig/utils.js +0 -24
  10. package/src/exports/env/index.js +1 -1
  11. package/src/exports/env/public.d.ts +55 -0
  12. package/src/exports/hooks/public.d.ts +194 -0
  13. package/src/exports/hooks/sequence.js +4 -3
  14. package/src/exports/index.js +1 -1
  15. package/src/exports/internal/env.js +1 -1
  16. package/src/exports/params/public.d.ts +2 -2
  17. package/src/exports/public.d.ts +1 -757
  18. package/src/exports/vite/dev/index.js +2 -2
  19. package/src/exports/vite/index.js +541 -384
  20. package/src/exports/vite/utils.js +0 -16
  21. package/src/runtime/app/internal/transport.js +1 -1
  22. package/src/runtime/app/server/public.d.ts +519 -0
  23. package/src/runtime/app/server/remote/command.js +1 -1
  24. package/src/runtime/app/server/remote/form.js +1 -1
  25. package/src/runtime/app/server/remote/prerender.js +1 -1
  26. package/src/runtime/app/server/remote/query.js +2 -1
  27. package/src/runtime/app/server/remote/requested.js +1 -1
  28. package/src/runtime/client/client.js +1 -1
  29. package/src/runtime/client/remote-functions/command.svelte.js +1 -1
  30. package/src/runtime/client/remote-functions/form.svelte.js +1 -1
  31. package/src/runtime/client/remote-functions/prerender.svelte.js +1 -1
  32. package/src/runtime/client/remote-functions/query/index.js +1 -1
  33. package/src/runtime/client/remote-functions/query-batch.svelte.js +1 -1
  34. package/src/runtime/client/remote-functions/query-live/index.js +1 -1
  35. package/src/runtime/client/remote-functions/shared.svelte.js +1 -1
  36. package/src/runtime/server/errors.js +2 -2
  37. package/src/runtime/server/internal.js +39 -0
  38. package/src/runtime/server/page/load_data.js +1 -1
  39. package/src/runtime/server/remote-functions.js +17 -5
  40. package/src/runtime/server/respond.js +1 -1
  41. package/src/types/internal.d.ts +14 -13
  42. package/src/version.js +1 -1
  43. package/types/index.d.ts +1403 -1403
  44. package/types/index.d.ts.map +68 -62
@@ -1,5 +1,18 @@
1
1
  /** @import { SSRManifest } from '@sveltejs/kit'; */
2
2
  import { restore, save } from './dev.js';
3
+ import {
4
+ has_data_suffix,
5
+ has_resolution_suffix,
6
+ strip_data_suffix,
7
+ strip_resolution_suffix
8
+ } from '../../pathname.js';
9
+ import { has_remote_prefix, strip_remote_prefix } from '../../runtime/server/remote-functions.js';
10
+
11
+ // using `getBuiltinModule` rather than `import` makes this safe to run in non-Node-compatible environments
12
+ const styleText =
13
+ // eslint-disable-next-line n/prefer-global/process
14
+ globalThis.process?.getBuiltinModule?.('node:util')?.styleText ??
15
+ /** @type {(format: unknown, text: string) => string} */ ((_format, text) => text);
3
16
 
4
17
  const read_implementation_key = Symbol.for('sveltekit.read_implementation');
5
18
  const manifest_key = Symbol.for('sveltekit.manifest');
@@ -29,4 +42,30 @@ export function set_manifest(value) {
29
42
  if (__SVELTEKIT_DEV__) save(manifest_key, value);
30
43
  }
31
44
 
45
+ /**
46
+ * @param {number} status
47
+ * @param {Request} request
48
+ */
49
+ export function log_response(status, request) {
50
+ const url = new URL(request.url);
51
+ const requested = url.href.replace(url.origin, '');
52
+
53
+ let log = `${styleText(status < 400 ? ['cyan'] : ['bold', 'red'], `${status}`)} ${request.method} `;
54
+
55
+ if (has_data_suffix(url.pathname)) {
56
+ const pathname = strip_data_suffix(url.pathname) || '/';
57
+ log += pathname + styleText('dim', requested.slice(pathname.length));
58
+ } else if (has_resolution_suffix(url.pathname)) {
59
+ const pathname = strip_resolution_suffix(url.pathname) || '/';
60
+ log += pathname + styleText('dim', requested.slice(pathname.length));
61
+ } else if (has_remote_prefix(url)) {
62
+ const id = /** @type {string} */ (strip_remote_prefix(url).split('/').pop());
63
+ log += styleText('dim', url.pathname.slice(0, -id.length)) + id + styleText('dim', url.search);
64
+ } else {
65
+ log += requested;
66
+ }
67
+
68
+ console.log(log);
69
+ }
70
+
32
71
  export { fix_stack_trace, set_fix_stack_trace } from './sourcemaps.js';
@@ -260,7 +260,7 @@ export async function load_data({
260
260
  * @param {import('types').PrerenderOptions | undefined} prerendering
261
261
  * @param {import('./types.js').Fetched[]} fetched
262
262
  * @param {boolean} csr
263
- * @param {Pick<Required<import('@sveltejs/kit').ResolveOptions>, 'filterSerializedResponseHeaders'>} resolve_opts
263
+ * @param {Pick<Required<import('@sveltejs/kit/hooks').ResolveOptions>, 'filterSerializedResponseHeaders'>} resolve_opts
264
264
  * @returns {typeof fetch}
265
265
  */
266
266
  export function create_universal_fetch(event, prerendering, fetched, csr, resolve_opts) {
@@ -1,4 +1,5 @@
1
- /** @import { RemoteForm, RequestEvent, SSRManifest } from '@sveltejs/kit' */
1
+ /** @import { RequestEvent, SSRManifest } from '@sveltejs/kit' */
2
+ /** @import { RemoteForm } from '$app/server' */
2
3
  /** @import { ActionResult } from '$app/forms' */
3
4
  /** @import { RemoteFormInternals, RemoteFunctionData, RemoteFunctionResponse, RemoteInternals, RequestState, SSROptions } from 'types' */
4
5
 
@@ -609,14 +610,25 @@ async function handle_remote_form_post_internal(event, state, manifest, id) {
609
610
  }
610
611
  }
611
612
 
613
+ /**
614
+ * @param {URL} url
615
+ */
616
+ export function has_remote_prefix(url) {
617
+ return url.pathname.startsWith(`${base}/${app_dir}/remote/`);
618
+ }
619
+
620
+ /**
621
+ * @param {URL} url
622
+ */
623
+ export function strip_remote_prefix(url) {
624
+ return url.pathname.replace(`${base}/${app_dir}/remote/`, '');
625
+ }
626
+
612
627
  /**
613
628
  * @param {URL} url
614
629
  */
615
630
  export function get_remote_id(url) {
616
- return (
617
- url.pathname.startsWith(`${base}/${app_dir}/remote/`) &&
618
- url.pathname.replace(`${base}/${app_dir}/remote/`, '')
619
- );
631
+ return has_remote_prefix(url) && strip_remote_prefix(url);
620
632
  }
621
633
 
622
634
  /**
@@ -576,7 +576,7 @@ export async function internal_respond(request, options, manifest, state) {
576
576
  /**
577
577
  * @param {import('@sveltejs/kit').RequestEvent} event
578
578
  * @param {PageNodes | undefined} page_nodes
579
- * @param {import('@sveltejs/kit').ResolveOptions} [opts]
579
+ * @param {import('@sveltejs/kit/hooks').ResolveOptions} [opts]
580
580
  */
581
581
  async function resolve(event, page_nodes, opts) {
582
582
  try {
@@ -2,28 +2,28 @@ import { Component } from 'svelte';
2
2
  import {
3
3
  Config,
4
4
  ServerLoad,
5
- Handle,
6
- HandleServerError,
7
5
  KitConfig,
8
6
  Load,
9
7
  RequestHandler,
10
- ResolveOptions,
11
8
  Server,
12
9
  ServerInitOptions,
13
- HandleFetch,
14
10
  Actions,
15
- HandleClientError,
16
- Reroute,
17
11
  RequestEvent,
18
12
  SSRManifest,
19
- Emulator,
20
- ServerInit,
21
- ClientInit,
22
- Transport,
23
- RemoteFormIssue,
24
- RemoteQuery,
25
- RemoteLiveQuery
13
+ Emulator
26
14
  } from '@sveltejs/kit';
15
+ import { RemoteFormIssue, RemoteQuery, RemoteLiveQuery } from '$app/server';
16
+ import {
17
+ ClientInit,
18
+ Handle,
19
+ HandleClientError,
20
+ HandleFetch,
21
+ HandleServerError,
22
+ Reroute,
23
+ ResolveOptions,
24
+ ServerInit,
25
+ Transport
26
+ } from '@sveltejs/kit/hooks';
27
27
  import {
28
28
  HttpMethod,
29
29
  MaybePromise,
@@ -48,6 +48,7 @@ export interface ServerInternalModule {
48
48
  set_version(version: string): void;
49
49
  set_fix_stack_trace(fix_stack_trace: (error: Error) => void): void;
50
50
  get_hooks: () => Promise<Record<string, any>>;
51
+ log_response: (status: number, request: Request) => void;
51
52
  }
52
53
 
53
54
  export interface Asset {
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 = '3.0.0-next.19';
4
+ export const VERSION = '3.0.0-next.20';