@sveltejs/kit 2.15.2 → 2.15.3
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 +2 -2
- package/src/core/sync/write_types/index.js +1 -1
- package/src/exports/public.d.ts +31 -1
- package/src/exports/vite/build/build_service_worker.js +7 -3
- package/src/exports/vite/graph_analysis/index.js +1 -23
- package/src/exports/vite/index.js +14 -4
- package/src/exports/vite/module_ids.js +5 -5
- package/src/exports/vite/utils.js +50 -0
- package/src/runtime/client/client.js +34 -25
- package/src/utils/routing.js +1 -2
- package/src/version.js +1 -1
- package/types/index.d.ts +31 -1
- package/types/index.d.ts.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sveltejs/kit",
|
|
3
|
-
"version": "2.15.
|
|
3
|
+
"version": "2.15.3",
|
|
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.2.
|
|
24
|
+
"esm-env": "^1.2.2",
|
|
25
25
|
"import-meta-resolve": "^4.1.0",
|
|
26
26
|
"kleur": "^4.1.5",
|
|
27
27
|
"magic-string": "^0.30.5",
|
|
@@ -585,7 +585,7 @@ function replace_ext_with_js(file_path) {
|
|
|
585
585
|
function generate_params_type(params, outdir, config) {
|
|
586
586
|
/** @param {string} matcher */
|
|
587
587
|
const path_to_matcher = (matcher) =>
|
|
588
|
-
posixify(path.relative(outdir, path.join(config.kit.files.params, matcher)));
|
|
588
|
+
posixify(path.relative(outdir, path.join(config.kit.files.params, matcher + '.js')));
|
|
589
589
|
|
|
590
590
|
return `{ ${params
|
|
591
591
|
.map(
|
package/src/exports/public.d.ts
CHANGED
|
@@ -499,11 +499,41 @@ export interface KitConfig {
|
|
|
499
499
|
*/
|
|
500
500
|
preloadStrategy?: 'modulepreload' | 'preload-js' | 'preload-mjs';
|
|
501
501
|
/**
|
|
502
|
+
* The bundle strategy option affects how your app's JavaScript and CSS files are loaded.
|
|
502
503
|
* - If `'split'`, splits the app up into multiple .js/.css files so that they are loaded lazily as the user navigates around the app. This is the default, and is recommended for most scenarios.
|
|
503
504
|
* - If `'single'`, creates just one .js bundle and one .css file containing code for the entire app.
|
|
504
505
|
* - If `'inline'`, inlines all JavaScript and CSS of the entire app into the HTML. The result is usable without a server (i.e. you can just open the file in your browser).
|
|
505
506
|
*
|
|
506
|
-
* When using `'split'`, you can also adjust the bundling behaviour by setting [`output.experimentalMinChunkSize`](https://rollupjs.org/configuration-options/#output-experimentalminchunksize) and [`output.manualChunks`](https://rollupjs.org/configuration-options/#output-manualchunks)inside your Vite config's [`build.rollupOptions`](https://vite.dev/config/build-options.html#build-rollupoptions).
|
|
507
|
+
* When using `'split'`, you can also adjust the bundling behaviour by setting [`output.experimentalMinChunkSize`](https://rollupjs.org/configuration-options/#output-experimentalminchunksize) and [`output.manualChunks`](https://rollupjs.org/configuration-options/#output-manualchunks) inside your Vite config's [`build.rollupOptions`](https://vite.dev/config/build-options.html#build-rollupoptions).
|
|
508
|
+
*
|
|
509
|
+
* If you want to inline your assets, you'll need to set Vite's [`build.assetsInlineLimit`](https://vite.dev/config/build-options.html#build-assetsinlinelimit) option to an appropriate size then import your assets through Vite.
|
|
510
|
+
*
|
|
511
|
+
* ```js
|
|
512
|
+
* /// file: vite.config.js
|
|
513
|
+
* import { sveltekit } from '@sveltejs/kit/vite';
|
|
514
|
+
* import { defineConfig } from 'vite';
|
|
515
|
+
*
|
|
516
|
+
* export default defineConfig({
|
|
517
|
+
* plugins: [sveltekit()],
|
|
518
|
+
* build: {
|
|
519
|
+
* // inline all imported assets
|
|
520
|
+
* assetsInlineLimit: Infinity
|
|
521
|
+
* }
|
|
522
|
+
* });
|
|
523
|
+
* ```
|
|
524
|
+
*
|
|
525
|
+
* ```svelte
|
|
526
|
+
* /// file: src/routes/+layout.svelte
|
|
527
|
+
* <script>
|
|
528
|
+
* // import the asset through Vite
|
|
529
|
+
* import favicon from './favicon.png';
|
|
530
|
+
* </script>
|
|
531
|
+
*
|
|
532
|
+
* <svelte:head>
|
|
533
|
+
* <!-- this asset will be inlined as a base64 URL -->
|
|
534
|
+
* <link rel="icon" href={favicon} />
|
|
535
|
+
* </svelte:head>
|
|
536
|
+
* ```
|
|
507
537
|
* @default 'split'
|
|
508
538
|
* @since 2.13.0
|
|
509
539
|
*/
|
|
@@ -2,7 +2,7 @@ import fs from 'node:fs';
|
|
|
2
2
|
import * as vite from 'vite';
|
|
3
3
|
import { dedent } from '../../../core/sync/utils.js';
|
|
4
4
|
import { s } from '../../../utils/misc.js';
|
|
5
|
-
import { get_config_aliases, strip_virtual_prefix, get_env } from '../utils.js';
|
|
5
|
+
import { get_config_aliases, strip_virtual_prefix, get_env, normalize_id } from '../utils.js';
|
|
6
6
|
import { create_static_module } from '../../../core/env.js';
|
|
7
7
|
import { env_static_public, service_worker } from '../module_ids.js';
|
|
8
8
|
|
|
@@ -68,7 +68,8 @@ export async function build_service_worker(
|
|
|
68
68
|
name: 'service-worker-build-virtual-modules',
|
|
69
69
|
resolveId(id) {
|
|
70
70
|
if (id.startsWith('$env/') || id.startsWith('$app/') || id === '$service-worker') {
|
|
71
|
-
|
|
71
|
+
// ids with :$ don't work with reverse proxies like nginx
|
|
72
|
+
return `\0virtual:${id.substring(1)}`;
|
|
72
73
|
}
|
|
73
74
|
},
|
|
74
75
|
|
|
@@ -83,7 +84,10 @@ export async function build_service_worker(
|
|
|
83
84
|
return create_static_module('$env/static/public', env.public);
|
|
84
85
|
}
|
|
85
86
|
|
|
86
|
-
const
|
|
87
|
+
const normalized_cwd = vite.normalizePath(process.cwd());
|
|
88
|
+
const normalized_lib = vite.normalizePath(kit.files.lib);
|
|
89
|
+
const relative = normalize_id(id, normalized_lib, normalized_cwd);
|
|
90
|
+
const stripped = strip_virtual_prefix(relative);
|
|
87
91
|
throw new Error(
|
|
88
92
|
`Cannot import ${stripped} into service-worker code. Only the modules $service-worker and $env/static/public are available in service workers.`
|
|
89
93
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import { posixify } from '../../../utils/filesystem.js';
|
|
3
|
-
import { strip_virtual_prefix } from '../utils.js';
|
|
3
|
+
import { normalize_id, strip_virtual_prefix } from '../utils.js';
|
|
4
4
|
import { app_server, env_dynamic_private, env_static_private } from '../module_ids.js';
|
|
5
5
|
|
|
6
6
|
const ILLEGAL_IMPORTS = new Set([env_dynamic_private, env_static_private, app_server]);
|
|
@@ -85,25 +85,3 @@ export function module_guard(context, { cwd, lib }) {
|
|
|
85
85
|
}
|
|
86
86
|
};
|
|
87
87
|
}
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* Removes cwd/lib path from the start of the id
|
|
91
|
-
* @param {string} id
|
|
92
|
-
* @param {string} lib
|
|
93
|
-
* @param {string} cwd
|
|
94
|
-
*/
|
|
95
|
-
export function normalize_id(id, lib, cwd) {
|
|
96
|
-
if (id.startsWith(lib)) {
|
|
97
|
-
id = id.replace(lib, '$lib');
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
if (id.startsWith(cwd)) {
|
|
101
|
-
id = path.relative(cwd, id);
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
if (id === app_server) {
|
|
105
|
-
return '$app/server';
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
return posixify(id);
|
|
109
|
-
}
|
|
@@ -15,9 +15,9 @@ import { build_server_nodes } from './build/build_server.js';
|
|
|
15
15
|
import { build_service_worker } from './build/build_service_worker.js';
|
|
16
16
|
import { assets_base, find_deps } from './build/utils.js';
|
|
17
17
|
import { dev } from './dev/index.js';
|
|
18
|
-
import { is_illegal, module_guard
|
|
18
|
+
import { is_illegal, module_guard } from './graph_analysis/index.js';
|
|
19
19
|
import { preview } from './preview/index.js';
|
|
20
|
-
import { get_config_aliases, get_env, strip_virtual_prefix } from './utils.js';
|
|
20
|
+
import { get_config_aliases, get_env, normalize_id, strip_virtual_prefix } from './utils.js';
|
|
21
21
|
import { write_client_manifest } from '../../core/sync/write_client_manifest.js';
|
|
22
22
|
import prerender from '../../core/postbuild/prerender.js';
|
|
23
23
|
import analyse from '../../core/postbuild/analyse.js';
|
|
@@ -376,8 +376,14 @@ async function kit({ svelte_config }) {
|
|
|
376
376
|
parsed_importer.name === parsed_service_worker.name;
|
|
377
377
|
|
|
378
378
|
if (importer_is_service_worker && id !== '$service-worker' && id !== '$env/static/public') {
|
|
379
|
+
const normalized_cwd = vite.normalizePath(cwd);
|
|
380
|
+
const normalized_lib = vite.normalizePath(kit.files.lib);
|
|
379
381
|
throw new Error(
|
|
380
|
-
`Cannot import ${
|
|
382
|
+
`Cannot import ${normalize_id(
|
|
383
|
+
id,
|
|
384
|
+
normalized_lib,
|
|
385
|
+
normalized_cwd
|
|
386
|
+
)} into service-worker code. Only the modules $service-worker and $env/static/public are available in service workers.`
|
|
381
387
|
);
|
|
382
388
|
}
|
|
383
389
|
|
|
@@ -385,7 +391,11 @@ async function kit({ svelte_config }) {
|
|
|
385
391
|
}
|
|
386
392
|
|
|
387
393
|
// treat $env/static/[public|private] as virtual
|
|
388
|
-
if (id.startsWith('$env/') || id
|
|
394
|
+
if (id.startsWith('$env/') || id === '$service-worker') {
|
|
395
|
+
// ids with :$ don't work with reverse proxies like nginx
|
|
396
|
+
return `\0virtual:${id.substring(1)}`;
|
|
397
|
+
}
|
|
398
|
+
if (id.startsWith('__sveltekit/')) {
|
|
389
399
|
return `\0virtual:${id}`;
|
|
390
400
|
}
|
|
391
401
|
},
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { fileURLToPath } from 'node:url';
|
|
2
2
|
|
|
3
|
-
export const env_static_private = '\0virtual
|
|
4
|
-
export const env_static_public = '\0virtual
|
|
5
|
-
export const env_dynamic_private = '\0virtual
|
|
6
|
-
export const env_dynamic_public = '\0virtual
|
|
3
|
+
export const env_static_private = '\0virtual:env/static/private';
|
|
4
|
+
export const env_static_public = '\0virtual:env/static/public';
|
|
5
|
+
export const env_dynamic_private = '\0virtual:env/dynamic/private';
|
|
6
|
+
export const env_dynamic_public = '\0virtual:env/dynamic/public';
|
|
7
7
|
|
|
8
|
-
export const service_worker = '\0virtual
|
|
8
|
+
export const service_worker = '\0virtual:service-worker';
|
|
9
9
|
|
|
10
10
|
export const sveltekit_environment = '\0virtual:__sveltekit/environment';
|
|
11
11
|
export const sveltekit_paths = '\0virtual:__sveltekit/paths';
|
|
@@ -4,6 +4,14 @@ import { posixify } from '../../utils/filesystem.js';
|
|
|
4
4
|
import { negotiate } from '../../utils/http.js';
|
|
5
5
|
import { filter_private_env, filter_public_env } from '../../utils/env.js';
|
|
6
6
|
import { escape_html } from '../../utils/escape.js';
|
|
7
|
+
import {
|
|
8
|
+
app_server,
|
|
9
|
+
env_dynamic_private,
|
|
10
|
+
env_dynamic_public,
|
|
11
|
+
env_static_private,
|
|
12
|
+
env_static_public,
|
|
13
|
+
service_worker
|
|
14
|
+
} from './module_ids.js';
|
|
7
15
|
|
|
8
16
|
/**
|
|
9
17
|
* Transforms kit.alias to a valid vite.resolve.alias array.
|
|
@@ -105,4 +113,46 @@ export function not_found(req, res, base) {
|
|
|
105
113
|
}
|
|
106
114
|
}
|
|
107
115
|
|
|
116
|
+
/**
|
|
117
|
+
* Removes cwd/lib path from the start of the id
|
|
118
|
+
* @param {string} id
|
|
119
|
+
* @param {string} lib
|
|
120
|
+
* @param {string} cwd
|
|
121
|
+
*/
|
|
122
|
+
export function normalize_id(id, lib, cwd) {
|
|
123
|
+
if (id.startsWith(lib)) {
|
|
124
|
+
id = id.replace(lib, '$lib');
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (id.startsWith(cwd)) {
|
|
128
|
+
id = path.relative(cwd, id);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
if (id === app_server) {
|
|
132
|
+
return '$app/server';
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (id === env_static_private) {
|
|
136
|
+
return '$env/static/private';
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (id === env_static_public) {
|
|
140
|
+
return '$env/static/public';
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (id === env_dynamic_private) {
|
|
144
|
+
return '$env/dynamic/private';
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
if (id === env_dynamic_public) {
|
|
148
|
+
return '$env/dynamic/public';
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (id === service_worker) {
|
|
152
|
+
return '$service-worker';
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
return posixify(id);
|
|
156
|
+
}
|
|
157
|
+
|
|
108
158
|
export const strip_virtual_prefix = /** @param {string} id */ (id) => id.replace('\0virtual:', '');
|
|
@@ -1153,32 +1153,41 @@ async function load_root_error_page({ status, error, url, route }) {
|
|
|
1153
1153
|
}
|
|
1154
1154
|
}
|
|
1155
1155
|
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1156
|
+
try {
|
|
1157
|
+
const root_layout = await load_node({
|
|
1158
|
+
loader: default_layout_loader,
|
|
1159
|
+
url,
|
|
1160
|
+
params,
|
|
1161
|
+
route,
|
|
1162
|
+
parent: () => Promise.resolve({}),
|
|
1163
|
+
server_data_node: create_data_node(server_data_node)
|
|
1164
|
+
});
|
|
1164
1165
|
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1166
|
+
/** @type {import('./types.js').BranchNode} */
|
|
1167
|
+
const root_error = {
|
|
1168
|
+
node: await default_error_loader(),
|
|
1169
|
+
loader: default_error_loader,
|
|
1170
|
+
universal: null,
|
|
1171
|
+
server: null,
|
|
1172
|
+
data: null
|
|
1173
|
+
};
|
|
1173
1174
|
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1175
|
+
return get_navigation_result_from_branch({
|
|
1176
|
+
url,
|
|
1177
|
+
params,
|
|
1178
|
+
branch: [root_layout, root_error],
|
|
1179
|
+
status,
|
|
1180
|
+
error,
|
|
1181
|
+
route: null
|
|
1182
|
+
});
|
|
1183
|
+
} catch (error) {
|
|
1184
|
+
if (error instanceof Redirect) {
|
|
1185
|
+
return _goto(new URL(error.location, location.href), {}, 0);
|
|
1186
|
+
}
|
|
1187
|
+
|
|
1188
|
+
// TODO: this falls back to the server when a server exists, but what about SPA mode?
|
|
1189
|
+
throw error;
|
|
1190
|
+
}
|
|
1182
1191
|
}
|
|
1183
1192
|
|
|
1184
1193
|
/**
|
|
@@ -2321,7 +2330,7 @@ function _start_router() {
|
|
|
2321
2330
|
const state = event.state[STATES_KEY] ?? {};
|
|
2322
2331
|
const url = new URL(event.state[PAGE_URL_KEY] ?? location.href);
|
|
2323
2332
|
const navigation_index = event.state[NAVIGATION_INDEX];
|
|
2324
|
-
const is_hash_change = strip_hash(location) === strip_hash(current.url);
|
|
2333
|
+
const is_hash_change = current.url ? strip_hash(location) === strip_hash(current.url) : false;
|
|
2325
2334
|
const shallow =
|
|
2326
2335
|
navigation_index === current_navigation_index && (has_navigated || is_hash_change);
|
|
2327
2336
|
|
package/src/utils/routing.js
CHANGED
package/src/version.js
CHANGED
package/types/index.d.ts
CHANGED
|
@@ -481,11 +481,41 @@ declare module '@sveltejs/kit' {
|
|
|
481
481
|
*/
|
|
482
482
|
preloadStrategy?: 'modulepreload' | 'preload-js' | 'preload-mjs';
|
|
483
483
|
/**
|
|
484
|
+
* The bundle strategy option affects how your app's JavaScript and CSS files are loaded.
|
|
484
485
|
* - If `'split'`, splits the app up into multiple .js/.css files so that they are loaded lazily as the user navigates around the app. This is the default, and is recommended for most scenarios.
|
|
485
486
|
* - If `'single'`, creates just one .js bundle and one .css file containing code for the entire app.
|
|
486
487
|
* - If `'inline'`, inlines all JavaScript and CSS of the entire app into the HTML. The result is usable without a server (i.e. you can just open the file in your browser).
|
|
487
488
|
*
|
|
488
|
-
* When using `'split'`, you can also adjust the bundling behaviour by setting [`output.experimentalMinChunkSize`](https://rollupjs.org/configuration-options/#output-experimentalminchunksize) and [`output.manualChunks`](https://rollupjs.org/configuration-options/#output-manualchunks)inside your Vite config's [`build.rollupOptions`](https://vite.dev/config/build-options.html#build-rollupoptions).
|
|
489
|
+
* When using `'split'`, you can also adjust the bundling behaviour by setting [`output.experimentalMinChunkSize`](https://rollupjs.org/configuration-options/#output-experimentalminchunksize) and [`output.manualChunks`](https://rollupjs.org/configuration-options/#output-manualchunks) inside your Vite config's [`build.rollupOptions`](https://vite.dev/config/build-options.html#build-rollupoptions).
|
|
490
|
+
*
|
|
491
|
+
* If you want to inline your assets, you'll need to set Vite's [`build.assetsInlineLimit`](https://vite.dev/config/build-options.html#build-assetsinlinelimit) option to an appropriate size then import your assets through Vite.
|
|
492
|
+
*
|
|
493
|
+
* ```js
|
|
494
|
+
* /// file: vite.config.js
|
|
495
|
+
* import { sveltekit } from '@sveltejs/kit/vite';
|
|
496
|
+
* import { defineConfig } from 'vite';
|
|
497
|
+
*
|
|
498
|
+
* export default defineConfig({
|
|
499
|
+
* plugins: [sveltekit()],
|
|
500
|
+
* build: {
|
|
501
|
+
* // inline all imported assets
|
|
502
|
+
* assetsInlineLimit: Infinity
|
|
503
|
+
* }
|
|
504
|
+
* });
|
|
505
|
+
* ```
|
|
506
|
+
*
|
|
507
|
+
* ```svelte
|
|
508
|
+
* /// file: src/routes/+layout.svelte
|
|
509
|
+
* <script>
|
|
510
|
+
* // import the asset through Vite
|
|
511
|
+
* import favicon from './favicon.png';
|
|
512
|
+
* </script>
|
|
513
|
+
*
|
|
514
|
+
* <svelte:head>
|
|
515
|
+
* <!-- this asset will be inlined as a base64 URL -->
|
|
516
|
+
* <link rel="icon" href={favicon} />
|
|
517
|
+
* </svelte:head>
|
|
518
|
+
* ```
|
|
489
519
|
* @default 'split'
|
|
490
520
|
* @since 2.13.0
|
|
491
521
|
*/
|
package/types/index.d.ts.map
CHANGED
|
@@ -159,6 +159,6 @@
|
|
|
159
159
|
null,
|
|
160
160
|
null
|
|
161
161
|
],
|
|
162
|
-
"mappings": ";;;;;;;;;kBA2BiBA,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;aA2BZC,cAAcA;;;;;;aAMdC,cAAcA;;;;;;;;;;;;;;;kBAeTC,aAAaA;;;;;;;;;;;;;;;;;kBAiBbC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkGPC,MAAMA;;;;;;;;;;;;;;;;;;;;;kBAqBNC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4DPC,QAAQA;;;;;;;;kBAQRC,SAASA
|
|
162
|
+
"mappings": "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",
|
|
163
163
|
"ignoreList": []
|
|
164
164
|
}
|