@sveltejs/kit 3.0.0-next.3 → 3.0.0-next.6

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 (68) hide show
  1. package/package.json +17 -17
  2. package/src/core/adapt/builder.js +18 -4
  3. package/src/core/adapt/index.js +1 -4
  4. package/src/core/config/index.js +64 -5
  5. package/src/core/config/options.js +73 -21
  6. package/src/core/env.js +35 -4
  7. package/src/core/postbuild/analyse.js +8 -12
  8. package/src/core/postbuild/crawl.js +22 -6
  9. package/src/core/postbuild/prerender.js +40 -23
  10. package/src/core/sync/create_manifest_data/index.js +23 -5
  11. package/src/core/sync/write_client_manifest.js +7 -0
  12. package/src/core/sync/write_server.js +13 -10
  13. package/src/core/sync/write_tsconfig.js +2 -4
  14. package/src/exports/index.js +32 -10
  15. package/src/exports/internal/env.js +1 -1
  16. package/src/exports/internal/index.js +6 -5
  17. package/src/exports/node/index.js +57 -6
  18. package/src/exports/public.d.ts +218 -114
  19. package/src/exports/vite/build/build_server.js +6 -1
  20. package/src/exports/vite/dev/index.js +10 -20
  21. package/src/exports/vite/index.js +306 -222
  22. package/src/exports/vite/preview/index.js +15 -7
  23. package/src/exports/vite/utils.js +8 -10
  24. package/src/runtime/app/env/types.d.ts +1 -1
  25. package/src/runtime/app/forms.js +22 -5
  26. package/src/runtime/app/paths/client.js +1 -3
  27. package/src/runtime/app/paths/public.d.ts +0 -28
  28. package/src/runtime/app/paths/server.js +7 -3
  29. package/src/runtime/app/server/remote/form.js +10 -3
  30. package/src/runtime/app/server/remote/query.js +3 -6
  31. package/src/runtime/app/server/remote/requested.js +8 -4
  32. package/src/runtime/app/server/remote/shared.js +5 -7
  33. package/src/runtime/client/client.js +190 -95
  34. package/src/runtime/client/fetcher.js +3 -2
  35. package/src/runtime/client/remote-functions/form.svelte.js +134 -24
  36. package/src/runtime/client/remote-functions/prerender.svelte.js +8 -2
  37. package/src/runtime/client/remote-functions/query/index.js +3 -2
  38. package/src/runtime/client/remote-functions/query/instance.svelte.js +26 -10
  39. package/src/runtime/client/remote-functions/query-batch.svelte.js +4 -3
  40. package/src/runtime/client/remote-functions/query-live/instance.svelte.js +26 -9
  41. package/src/runtime/client/remote-functions/shared.svelte.js +17 -7
  42. package/src/runtime/client/types.d.ts +9 -1
  43. package/src/runtime/client/utils.js +1 -1
  44. package/src/runtime/form-utils.js +84 -16
  45. package/src/runtime/server/cookie.js +22 -33
  46. package/src/runtime/server/csrf.js +65 -0
  47. package/src/runtime/server/data/index.js +7 -7
  48. package/src/runtime/server/env_module.js +0 -5
  49. package/src/runtime/server/index.js +1 -1
  50. package/src/runtime/server/page/actions.js +41 -26
  51. package/src/runtime/server/page/index.js +2 -1
  52. package/src/runtime/server/page/render.js +21 -23
  53. package/src/runtime/server/page/respond_with_error.js +7 -8
  54. package/src/runtime/server/remote.js +64 -27
  55. package/src/runtime/server/respond.js +81 -50
  56. package/src/runtime/server/utils.js +7 -7
  57. package/src/runtime/telemetry/otel.js +1 -1
  58. package/src/types/ambient.d.ts +5 -4
  59. package/src/types/global-private.d.ts +4 -4
  60. package/src/types/internal.d.ts +8 -10
  61. package/src/types/private.d.ts +33 -1
  62. package/src/types/synthetic/$lib.md +1 -1
  63. package/src/utils/error.js +11 -3
  64. package/src/utils/shared-iterator.js +5 -0
  65. package/src/utils/url.js +99 -2
  66. package/src/version.js +1 -1
  67. package/types/index.d.ts +340 -186
  68. package/types/index.d.ts.map +10 -9
@@ -31,10 +31,9 @@ const vite_css_query_regex = /(?:\?|&)(?:raw|url|inline)(?:&|$)/;
31
31
  * @param {import('types').ValidatedConfig} svelte_config
32
32
  * @param {() => Array<{ hash: string, file: string }>} get_remotes
33
33
  * @param {string} root The project root directory
34
- * @param {import('@sveltejs/kit').Adapter | undefined} adapter
35
34
  * @return {Promise<Promise<() => void>>}
36
35
  */
37
- export async function dev(vite, vite_config, svelte_config, get_remotes, root, adapter) {
36
+ export async function dev(vite, vite_config, svelte_config, get_remotes, root) {
38
37
  /** @type {AsyncLocalStorage<{ event: RequestEvent, config: any, prerender: PrerenderOption }>} */
39
38
  const async_local_storage = new AsyncLocalStorage();
40
39
 
@@ -42,7 +41,12 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
42
41
  const context = async_local_storage.getStore();
43
42
  if (!context || context.prerender === true) return;
44
43
 
45
- check_feature(/** @type {string} */ (context.event.route.id), context.config, label, adapter);
44
+ check_feature(
45
+ /** @type {string} */ (context.event.route.id),
46
+ context.config,
47
+ label,
48
+ svelte_config.kit.adapter
49
+ );
46
50
  };
47
51
 
48
52
  const fetch = globalThis.fetch;
@@ -351,9 +355,6 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
351
355
  }, 100);
352
356
  };
353
357
 
354
- // flag to skip watchers if server is already restarting
355
- let restarting = false;
356
-
357
358
  // Debounce add/unlink events because in case of folder deletion or moves
358
359
  // they fire in rapid succession, causing needless invocations.
359
360
  // These watchers only run for routes, param matchers, and client hooks.
@@ -362,7 +363,7 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
362
363
  watch('change', (file) => {
363
364
  // Don't run for a single file if the whole manifest is about to get updated
364
365
  // Unless it's a file where the trailing slash page option might have changed
365
- if (timeout || restarting || !/\+(page|layout|server).*$/.test(file)) return;
366
+ if (timeout || !/\+(page|layout|server).*$/.test(file)) return;
366
367
  sync.update(svelte_config, manifest_data, file, root);
367
368
  });
368
369
 
@@ -373,7 +374,7 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
373
374
  // send the vite client a full-reload event without path being set
374
375
  if (appTemplate !== 'index.html') {
375
376
  vite.watcher.on('change', (file) => {
376
- if (file === appTemplate && !restarting) {
377
+ if (file === appTemplate) {
377
378
  vite.ws.send({ type: 'full-reload' });
378
379
  }
379
380
  });
@@ -390,17 +391,6 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
390
391
  }
391
392
  });
392
393
 
393
- vite.watcher.on('change', async (file) => {
394
- // changing the svelte config requires restarting the dev server
395
- // the config is only read on start and passed on to vite-plugin-svelte
396
- // which needs up-to-date values to operate correctly
397
- if (file.match(/[/\\]svelte\.config\.[jt]s$/)) {
398
- console.log(`svelte config changed, restarting vite dev-server. changed file: ${file}`);
399
- restarting = true;
400
- await vite.restart();
401
- }
402
- });
403
-
404
394
  const assets = svelte_config.kit.paths.assets ? SVELTE_KIT_ASSETS : svelte_config.kit.paths.base;
405
395
  const asset_server = sirv(svelte_config.kit.files.assets, {
406
396
  dev: true,
@@ -436,7 +426,7 @@ export async function dev(vite, vite_config, svelte_config, get_remotes, root, a
436
426
  });
437
427
 
438
428
  const env = loadEnv(vite_config.mode, svelte_config.kit.env.dir, '');
439
- const emulator = await adapter?.emulate?.();
429
+ const emulator = await svelte_config.kit.adapter?.emulate?.();
440
430
 
441
431
  return () => {
442
432
  const serve_static_middleware = vite.middlewares.stack.find(