svelte 5.57.0 → 5.57.1
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/compiler/index.js +1 -1
- package/package.json +8 -8
- package/src/compiler/phases/1-parse/acorn.js +36 -2
- package/src/compiler/phases/1-parse/index.js +23 -22
- package/src/compiler/phases/1-parse/read/context.js +3 -18
- package/src/compiler/phases/1-parse/read/expression.js +110 -2
- package/src/compiler/phases/1-parse/read/script.js +1 -1
- package/src/compiler/phases/1-parse/read/style.js +3 -5
- package/src/compiler/phases/1-parse/state/element.js +68 -40
- package/src/compiler/phases/1-parse/state/tag.js +6 -6
- package/src/compiler/phases/1-parse/utils/html.js +2 -0
- package/src/compiler/phases/1-parse/utils/whitespace.js +18 -0
- package/src/compiler/phases/2-analyze/css/css-prune.js +7 -6
- package/src/compiler/phases/2-analyze/index.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/BindDirective.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/ClassDeclaration.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/FunctionDeclaration.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/Identifier.js +1 -2
- package/src/compiler/phases/2-analyze/visitors/SvelteBody.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/SvelteDocument.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/SvelteWindow.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/VariableDeclarator.js +2 -2
- package/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/shared/a11y/index.js +1 -1
- package/src/compiler/phases/2-analyze/visitors/shared/utils.js +0 -38
- package/src/compiler/phases/3-transform/client/utils.js +0 -38
- package/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js +2 -2
- package/src/compiler/phases/3-transform/client/visitors/CallExpression.js +1 -2
- package/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +3 -8
- package/src/compiler/phases/3-transform/server/visitors/shared/element.js +8 -0
- package/src/compiler/phases/3-transform/utils.js +1 -1
- package/src/compiler/phases/nodes.js +30 -0
- package/src/compiler/phases/scope.js +77 -2
- package/src/compiler/state.js +9 -5
- package/src/compiler/utils/ast.js +2 -5
- package/src/compiler/utils/compile_diagnostic.js +1 -1
- package/src/compiler/utils/extract_svelte_ignore.js +1 -1
- package/src/compiler/utils/mapped_code.js +13 -1
- package/src/internal/client/constants.js +0 -9
- package/src/internal/client/dev/debug.js +0 -2
- package/src/internal/client/dom/elements/events.js +6 -1
- package/src/internal/client/errors.js +0 -16
- package/src/internal/client/proxy.js +12 -7
- package/src/internal/client/reactivity/batch.js +91 -71
- package/src/internal/client/reactivity/deriveds.js +0 -3
- package/src/internal/client/reactivity/sources.js +28 -16
- package/src/internal/client/reactivity/utils.js +2 -23
- package/src/internal/client/runtime.js +5 -9
- package/src/internal/server/context.js +9 -2
- package/src/internal/server/index.js +9 -2
- package/src/internal/server/renderer.js +101 -69
- package/src/internal/shared/errors.js +16 -0
- package/src/version.js +1 -1
- package/types/index.d.ts.map +1 -1
- package/src/compiler/phases/1-parse/utils/create.js +0 -16
- package/src/compiler/phases/2-analyze/visitors/shared/special-element.js +0 -16
- package/src/compiler/utils/push_array.js +0 -13
- /package/src/compiler/{phases/2-analyze/utils → utils}/check_graph_for_cycles.js +0 -0
- /package/src/compiler/{phases/1-parse/utils → utils}/fuzzymatch.js +0 -0
|
@@ -23,6 +23,87 @@ import { escape_html } from '../../escaping.js';
|
|
|
23
23
|
* @typedef {string | Renderer} RendererItem
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
|
+
class RenderResult {
|
|
27
|
+
/** @type {() => AccumulatedContent} */
|
|
28
|
+
#render;
|
|
29
|
+
|
|
30
|
+
/** @type {() => Promise<AccumulatedContent & { hashes: { script: Sha256Source[] } }>} */
|
|
31
|
+
#render_async;
|
|
32
|
+
|
|
33
|
+
/** @type {AccumulatedContent | undefined} */
|
|
34
|
+
#sync;
|
|
35
|
+
|
|
36
|
+
/** @type {{ script: '' }} */
|
|
37
|
+
#hashes = { script: '' };
|
|
38
|
+
|
|
39
|
+
/** @type {Promise<AccumulatedContent & { hashes: { script: Sha256Source[] } }> | undefined} */
|
|
40
|
+
#promise;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* @param {() => AccumulatedContent} render
|
|
44
|
+
* @param {() => Promise<AccumulatedContent & { hashes: { script: Sha256Source[] } }>} render_async
|
|
45
|
+
*/
|
|
46
|
+
constructor(render, render_async) {
|
|
47
|
+
this.#render = render;
|
|
48
|
+
this.#render_async = render_async;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
#get() {
|
|
52
|
+
return (this.#sync ??= this.#render());
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
get html() {
|
|
56
|
+
return this.#get().body;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
get head() {
|
|
60
|
+
return this.#get().head;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
get body() {
|
|
64
|
+
return this.#get().body;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
get hashes() {
|
|
68
|
+
return this.#hashes;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* This is not type-safe, but honestly it's the best I can do right now, and it's a straightforward function.
|
|
73
|
+
*
|
|
74
|
+
* @template TResult1
|
|
75
|
+
* @template [TResult2=never]
|
|
76
|
+
* @param {(value: SyncRenderOutput) => TResult1} onfulfilled
|
|
77
|
+
* @param {(reason: unknown) => TResult2} onrejected
|
|
78
|
+
*/
|
|
79
|
+
then(onfulfilled, onrejected) {
|
|
80
|
+
if (!async_mode_flag) {
|
|
81
|
+
const result = this.#get();
|
|
82
|
+
const user_result = onfulfilled({
|
|
83
|
+
head: result.head,
|
|
84
|
+
body: result.body,
|
|
85
|
+
html: result.body,
|
|
86
|
+
hashes: { script: [] }
|
|
87
|
+
});
|
|
88
|
+
return Promise.resolve(user_result);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
this.#promise ??= this.#render_async().then((result) => {
|
|
92
|
+
Object.defineProperty(result, 'html', {
|
|
93
|
+
// eslint-disable-next-line getter-return
|
|
94
|
+
get: () => {
|
|
95
|
+
e.html_deprecated();
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
return result;
|
|
99
|
+
});
|
|
100
|
+
return this.#promise.then(
|
|
101
|
+
(result) => onfulfilled(/** @type {SyncRenderOutput} */ (result)),
|
|
102
|
+
onrejected
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
26
107
|
/**
|
|
27
108
|
* Renderers are basically a tree of `string | Renderer`s, where each `Renderer` in the tree represents
|
|
28
109
|
* work that may or may not have completed. A renderer can be {@link collect}ed to aggregate the
|
|
@@ -162,6 +243,11 @@ export class Renderer {
|
|
|
162
243
|
let promise = Promise.resolve(thunks[0]());
|
|
163
244
|
const promises = [promise];
|
|
164
245
|
|
|
246
|
+
if (context !== null && thunks.length > 1) {
|
|
247
|
+
// the remaining thunks run after an `await`, by which point it is too late to set context
|
|
248
|
+
context.i = true;
|
|
249
|
+
}
|
|
250
|
+
|
|
165
251
|
for (const fn of thunks.slice(1)) {
|
|
166
252
|
promise = promise.then(() => {
|
|
167
253
|
const previous_context = ssr_context;
|
|
@@ -209,7 +295,8 @@ export class Renderer {
|
|
|
209
295
|
...ssr_context,
|
|
210
296
|
p: parent,
|
|
211
297
|
c: null,
|
|
212
|
-
r: child
|
|
298
|
+
r: child,
|
|
299
|
+
i: ssr_context?.i ?? false
|
|
213
300
|
});
|
|
214
301
|
|
|
215
302
|
const result = fn(child);
|
|
@@ -260,7 +347,8 @@ export class Renderer {
|
|
|
260
347
|
...ssr_context,
|
|
261
348
|
p: parent_context,
|
|
262
349
|
c: null,
|
|
263
|
-
r: child
|
|
350
|
+
r: child,
|
|
351
|
+
i: ssr_context?.i ?? false
|
|
264
352
|
});
|
|
265
353
|
|
|
266
354
|
try {
|
|
@@ -527,73 +615,17 @@ export class Renderer {
|
|
|
527
615
|
* @returns {RenderOutput}
|
|
528
616
|
*/
|
|
529
617
|
static render(component, options = {}) {
|
|
530
|
-
/** @type {
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
// making these properties non-enumerable so that console.logging
|
|
537
|
-
// doesn't trigger a sync render
|
|
538
|
-
Object.defineProperties(result, {
|
|
539
|
-
html: {
|
|
540
|
-
get: () => {
|
|
541
|
-
return (sync ??= Renderer.#render(component, options)).body;
|
|
542
|
-
}
|
|
543
|
-
},
|
|
544
|
-
head: {
|
|
545
|
-
get: () => {
|
|
546
|
-
return (sync ??= Renderer.#render(component, options)).head;
|
|
547
|
-
}
|
|
548
|
-
},
|
|
549
|
-
body: {
|
|
550
|
-
get: () => {
|
|
551
|
-
return (sync ??= Renderer.#render(component, options)).body;
|
|
552
|
-
}
|
|
553
|
-
},
|
|
554
|
-
hashes: {
|
|
555
|
-
value: {
|
|
556
|
-
script: ''
|
|
557
|
-
}
|
|
558
|
-
},
|
|
559
|
-
then: {
|
|
560
|
-
value:
|
|
561
|
-
/**
|
|
562
|
-
* this is not type-safe, but honestly it's the best I can do right now, and it's a straightforward function.
|
|
563
|
-
*
|
|
564
|
-
* @template TResult1
|
|
565
|
-
* @template [TResult2=never]
|
|
566
|
-
* @param { (value: SyncRenderOutput) => TResult1 } onfulfilled
|
|
567
|
-
* @param { (reason: unknown) => TResult2 } onrejected
|
|
568
|
-
*/
|
|
569
|
-
(onfulfilled, onrejected) => {
|
|
570
|
-
if (!async_mode_flag) {
|
|
571
|
-
const result = (sync ??= Renderer.#render(component, options));
|
|
572
|
-
const user_result = onfulfilled({
|
|
573
|
-
head: result.head,
|
|
574
|
-
body: result.body,
|
|
575
|
-
html: result.body,
|
|
576
|
-
hashes: { script: [] }
|
|
577
|
-
});
|
|
578
|
-
return Promise.resolve(user_result);
|
|
579
|
-
}
|
|
580
|
-
async ??= init_render_context().then(() =>
|
|
618
|
+
return /** @type {RenderOutput} */ (
|
|
619
|
+
/** @type {unknown} */ (
|
|
620
|
+
new RenderResult(
|
|
621
|
+
() => Renderer.#render(component, options),
|
|
622
|
+
() =>
|
|
623
|
+
init_render_context().then(() =>
|
|
581
624
|
with_render_context(() => Renderer.#render_async(component, options))
|
|
582
|
-
)
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
get: () => {
|
|
587
|
-
e.html_deprecated();
|
|
588
|
-
}
|
|
589
|
-
});
|
|
590
|
-
return onfulfilled(/** @type {SyncRenderOutput} */ (result));
|
|
591
|
-
}, onrejected);
|
|
592
|
-
}
|
|
593
|
-
}
|
|
594
|
-
});
|
|
595
|
-
|
|
596
|
-
return result;
|
|
625
|
+
)
|
|
626
|
+
)
|
|
627
|
+
)
|
|
628
|
+
);
|
|
597
629
|
}
|
|
598
630
|
|
|
599
631
|
/**
|
|
@@ -859,7 +891,7 @@ export class Renderer {
|
|
|
859
891
|
|
|
860
892
|
try {
|
|
861
893
|
/** @type {SSRContext} */
|
|
862
|
-
const context = { p: null, c: options.context ?? null, r: renderer };
|
|
894
|
+
const context = { p: null, c: options.context ?? null, r: renderer, i: false };
|
|
863
895
|
set_ssr_context(context);
|
|
864
896
|
|
|
865
897
|
renderer.push(BLOCK_OPEN);
|
|
@@ -101,6 +101,22 @@ export function missing_context() {
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
/**
|
|
105
|
+
* `setContext` must be called when a component first initializes, not in a subsequent effect or after an `await` expression
|
|
106
|
+
* @returns {never}
|
|
107
|
+
*/
|
|
108
|
+
export function set_context_after_init() {
|
|
109
|
+
if (DEV) {
|
|
110
|
+
const error = new Error(`set_context_after_init\n\`setContext\` must be called when a component first initializes, not in a subsequent effect or after an \`await\` expression\nhttps://svelte.dev/e/set_context_after_init`);
|
|
111
|
+
|
|
112
|
+
error.name = 'Svelte error';
|
|
113
|
+
|
|
114
|
+
throw error;
|
|
115
|
+
} else {
|
|
116
|
+
throw new Error(`https://svelte.dev/e/set_context_after_init`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
104
120
|
/**
|
|
105
121
|
* Attempted to render a snippet without a `{@render}` block. This would cause the snippet code to be stringified instead of its content being rendered to the DOM. To fix this, change `{snippet}` to `{@render snippet()}`.
|
|
106
122
|
* @returns {never}
|
package/src/version.js
CHANGED
package/types/index.d.ts.map
CHANGED
|
@@ -273,6 +273,6 @@
|
|
|
273
273
|
null,
|
|
274
274
|
null
|
|
275
275
|
],
|
|
276
|
-
"mappings": ";;;;;;;;;kBAUiBA,2BAA2BA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmC/BC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAwEhBC,kBAAkBA;;;;;;;;;;;;;;;;;;;;;;;;kBAwBbC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoCbC,oBAAoBA;;;;;;;;;;;;;;;;;;;;;;;;aAwBrBC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAiCfC,cAAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA6BdC,aAAaA;;;;;;;;;;;;;;;;;;;;;;;kBAuBRC,OAAOA;;;;;;;;;;;;;;;;kBAgBPC,eAAeA;;;;;;;;;;;;;;;;aAgBpBC,YAAYA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+CPC,IAAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCzSLC,cAAcA;;;;;;;;;;;;iBAsBdC,OAAOA;;;;;;;;iBAwBPC,SAASA;;;;;;;;;;;;;;;;;;;;;;iBA0CTC,qBAAqBA;;;;;;;;;;iBA2CrBC,YAAYA;;;;;;;;;;iBAuBZC,WAAWA;iBClNXC,UAAUA;;;;iBC4DVC,gBAAgBA;;;;;MCvEpBC,WAAWA;;;;;
|
|
276
|
+
"mappings": "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",
|
|
277
277
|
"ignoreList": []
|
|
278
278
|
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/** @import { AST } from '#compiler' */
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* @param {any} transparent
|
|
5
|
-
* @returns {AST.Fragment}
|
|
6
|
-
*/
|
|
7
|
-
export function create_fragment(transparent = false) {
|
|
8
|
-
return {
|
|
9
|
-
type: 'Fragment',
|
|
10
|
-
nodes: [],
|
|
11
|
-
metadata: {
|
|
12
|
-
transparent,
|
|
13
|
-
dynamic: false
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/** @import { AST } from '#compiler' */
|
|
2
|
-
import * as e from '../../../../errors.js';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @param {AST.SvelteBody | AST.SvelteDocument | AST.SvelteOptionsRaw | AST.SvelteWindow} node
|
|
6
|
-
*/
|
|
7
|
-
export function disallow_children(node) {
|
|
8
|
-
const { nodes } = node.fragment;
|
|
9
|
-
|
|
10
|
-
if (nodes.length > 0) {
|
|
11
|
-
const first = nodes[0];
|
|
12
|
-
const last = nodes[nodes.length - 1];
|
|
13
|
-
|
|
14
|
-
e.svelte_meta_invalid_content({ start: first.start, end: last.end }, node.name);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pushes all `items` into `array` using `push`, therefore mutating the array.
|
|
3
|
-
* We do this for memory and perf reasons, and because `array.push(...items)` would
|
|
4
|
-
* run into a "max call stack size exceeded" error with too many items (~65k).
|
|
5
|
-
* @template T
|
|
6
|
-
* @param {T[]} array
|
|
7
|
-
* @param {T[]} items
|
|
8
|
-
*/
|
|
9
|
-
export function push_array(array, items) {
|
|
10
|
-
for (let i = 0; i < items.length; i++) {
|
|
11
|
-
array.push(items[i]);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
File without changes
|
|
File without changes
|