svelte 5.42.3 → 5.43.0

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 (54) hide show
  1. package/compiler/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/compiler/phases/2-analyze/index.js +201 -2
  4. package/src/compiler/phases/2-analyze/visitors/AwaitExpression.js +6 -6
  5. package/src/compiler/phases/2-analyze/visitors/BindDirective.js +1 -0
  6. package/src/compiler/phases/2-analyze/visitors/SnippetBlock.js +6 -1
  7. package/src/compiler/phases/3-transform/client/transform-client.js +13 -34
  8. package/src/compiler/phases/3-transform/client/visitors/BindDirective.js +18 -7
  9. package/src/compiler/phases/3-transform/client/visitors/CallExpression.js +2 -2
  10. package/src/compiler/phases/3-transform/client/visitors/EachBlock.js +6 -4
  11. package/src/compiler/phases/3-transform/client/visitors/ExpressionStatement.js +1 -1
  12. package/src/compiler/phases/3-transform/client/visitors/HtmlTag.js +6 -4
  13. package/src/compiler/phases/3-transform/client/visitors/IfBlock.js +6 -4
  14. package/src/compiler/phases/3-transform/client/visitors/KeyBlock.js +5 -4
  15. package/src/compiler/phases/3-transform/client/visitors/Program.js +15 -3
  16. package/src/compiler/phases/3-transform/client/visitors/RenderTag.js +6 -4
  17. package/src/compiler/phases/3-transform/client/visitors/SlotElement.js +3 -1
  18. package/src/compiler/phases/3-transform/client/visitors/SvelteElement.js +5 -4
  19. package/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +13 -2
  20. package/src/compiler/phases/3-transform/client/visitors/shared/component.js +20 -16
  21. package/src/compiler/phases/3-transform/client/visitors/shared/element.js +1 -0
  22. package/src/compiler/phases/3-transform/client/visitors/shared/utils.js +15 -1
  23. package/src/compiler/phases/3-transform/server/transform-server.js +9 -9
  24. package/src/compiler/phases/3-transform/server/visitors/AwaitBlock.js +6 -2
  25. package/src/compiler/phases/3-transform/server/visitors/CallExpression.js +8 -1
  26. package/src/compiler/phases/3-transform/server/visitors/EachBlock.js +14 -3
  27. package/src/compiler/phases/3-transform/server/visitors/HtmlTag.js +3 -5
  28. package/src/compiler/phases/3-transform/server/visitors/IfBlock.js +12 -4
  29. package/src/compiler/phases/3-transform/server/visitors/KeyBlock.js +7 -1
  30. package/src/compiler/phases/3-transform/server/visitors/Program.js +25 -0
  31. package/src/compiler/phases/3-transform/server/visitors/RegularElement.js +14 -7
  32. package/src/compiler/phases/3-transform/server/visitors/RenderTag.js +27 -11
  33. package/src/compiler/phases/3-transform/server/visitors/SlotElement.js +7 -4
  34. package/src/compiler/phases/3-transform/server/visitors/SvelteElement.js +24 -4
  35. package/src/compiler/phases/3-transform/server/visitors/shared/component.js +10 -4
  36. package/src/compiler/phases/3-transform/server/visitors/shared/utils.js +79 -8
  37. package/src/compiler/phases/3-transform/shared/transform-async.js +102 -0
  38. package/src/compiler/phases/nodes.js +24 -0
  39. package/src/compiler/phases/scope.js +27 -8
  40. package/src/compiler/utils/ast.js +1 -1
  41. package/src/compiler/utils/builders.js +15 -4
  42. package/src/internal/client/dom/blocks/async.js +7 -6
  43. package/src/internal/client/dom/blocks/boundary.js +5 -8
  44. package/src/internal/client/dom/elements/attributes.js +3 -1
  45. package/src/internal/client/index.js +1 -0
  46. package/src/internal/client/proxy.js +1 -1
  47. package/src/internal/client/reactivity/async.js +105 -46
  48. package/src/internal/client/reactivity/batch.js +2 -15
  49. package/src/internal/client/reactivity/effects.js +3 -2
  50. package/src/internal/client/runtime.js +12 -11
  51. package/src/internal/server/renderer.js +58 -3
  52. package/src/version.js +1 -1
  53. package/types/index.d.ts.map +1 -1
  54. package/src/compiler/phases/3-transform/client/visitors/ImportDeclaration.js +0 -16
@@ -1,5 +1,5 @@
1
1
  /** @import { Effect, TemplateNode, Value } from '#client' */
2
- import { DESTROYED } from '#client/constants';
2
+ import { DESTROYED, STALE_REACTION } from '#client/constants';
3
3
  import { DEV } from 'esm-env';
4
4
  import {
5
5
  component_context,
@@ -25,25 +25,18 @@ import {
25
25
  set_from_async_derived
26
26
  } from './deriveds.js';
27
27
  import { aborted } from './effects.js';
28
- import {
29
- hydrate_next,
30
- hydrate_node,
31
- hydrating,
32
- set_hydrate_node,
33
- set_hydrating,
34
- skip_nodes
35
- } from '../dom/hydration.js';
28
+ import { hydrate_next, hydrating, set_hydrate_node, skip_nodes } from '../dom/hydration.js';
36
29
 
37
30
  /**
38
- *
31
+ * @param {Array<Promise<void>>} blockers
39
32
  * @param {Array<() => any>} sync
40
33
  * @param {Array<() => Promise<any>>} async
41
34
  * @param {(values: Value[]) => any} fn
42
35
  */
43
- export function flatten(sync, async, fn) {
36
+ export function flatten(blockers, sync, async, fn) {
44
37
  const d = is_runes() ? derived : derived_safe_equal;
45
38
 
46
- if (async.length === 0) {
39
+ if (async.length === 0 && blockers.length === 0) {
47
40
  fn(sync.map(d));
48
41
  return;
49
42
  }
@@ -53,31 +46,42 @@ export function flatten(sync, async, fn) {
53
46
 
54
47
  var restore = capture();
55
48
 
56
- var was_hydrating = hydrating;
49
+ function run() {
50
+ Promise.all(async.map((expression) => async_derived(expression)))
51
+ .then((result) => {
52
+ restore();
53
+
54
+ try {
55
+ fn([...sync.map(d), ...result]);
56
+ } catch (error) {
57
+ // ignore errors in blocks that have already been destroyed
58
+ if ((parent.f & DESTROYED) === 0) {
59
+ invoke_error_boundary(error, parent);
60
+ }
61
+ }
57
62
 
58
- Promise.all(async.map((expression) => async_derived(expression)))
59
- .then((result) => {
63
+ batch?.deactivate();
64
+ unset_context();
65
+ })
66
+ .catch((error) => {
67
+ invoke_error_boundary(error, parent);
68
+ });
69
+ }
70
+
71
+ if (blockers.length > 0) {
72
+ Promise.all(blockers).then(() => {
60
73
  restore();
61
74
 
62
75
  try {
63
- fn([...sync.map(d), ...result]);
64
- } catch (error) {
65
- // ignore errors in blocks that have already been destroyed
66
- if ((parent.f & DESTROYED) === 0) {
67
- invoke_error_boundary(error, parent);
68
- }
76
+ return run();
77
+ } finally {
78
+ batch?.deactivate();
79
+ unset_context();
69
80
  }
70
-
71
- if (was_hydrating) {
72
- set_hydrating(false);
73
- }
74
-
75
- batch?.deactivate();
76
- unset_context();
77
- })
78
- .catch((error) => {
79
- invoke_error_boundary(error, parent);
80
81
  });
82
+ } else {
83
+ run();
84
+ }
81
85
  }
82
86
 
83
87
  /**
@@ -91,12 +95,6 @@ export function capture() {
91
95
  var previous_component_context = component_context;
92
96
  var previous_batch = current_batch;
93
97
 
94
- var was_hydrating = hydrating;
95
-
96
- if (was_hydrating) {
97
- var previous_hydrate_node = hydrate_node;
98
- }
99
-
100
98
  if (DEV) {
101
99
  var previous_dev_stack = dev_stack;
102
100
  }
@@ -107,11 +105,6 @@ export function capture() {
107
105
  set_component_context(previous_component_context);
108
106
  if (activate_batch) previous_batch?.activate();
109
107
 
110
- if (was_hydrating) {
111
- set_hydrating(true);
112
- set_hydrate_node(previous_hydrate_node);
113
- }
114
-
115
108
  if (DEV) {
116
109
  set_from_async_derived(null);
117
110
  set_dev_stack(previous_dev_stack);
@@ -248,13 +241,79 @@ export async function async_body(anchor, fn) {
248
241
  invoke_error_boundary(error, active);
249
242
  }
250
243
  } finally {
251
- if (was_hydrating) {
252
- set_hydrating(false);
253
- }
254
-
255
244
  boundary.update_pending_count(-1);
256
245
  batch.decrement(blocking);
257
246
 
258
247
  unset_context();
259
248
  }
260
249
  }
250
+
251
+ /**
252
+ * @param {Array<() => void | Promise<void>>} thunks
253
+ */
254
+ export function run(thunks) {
255
+ const restore = capture();
256
+
257
+ var boundary = get_boundary();
258
+ var batch = /** @type {Batch} */ (current_batch);
259
+ var blocking = !boundary.is_pending();
260
+
261
+ boundary.update_pending_count(1);
262
+ batch.increment(blocking);
263
+
264
+ var active = /** @type {Effect} */ (active_effect);
265
+
266
+ /** @type {null | { error: any }} */
267
+ var errored = null;
268
+
269
+ /** @param {any} error */
270
+ const handle_error = (error) => {
271
+ errored = { error }; // wrap in object in case a promise rejects with a falsy value
272
+
273
+ if (!aborted(active)) {
274
+ invoke_error_boundary(error, active);
275
+ }
276
+ };
277
+
278
+ var promise = Promise.resolve(thunks[0]()).catch(handle_error);
279
+
280
+ var promises = [promise];
281
+
282
+ for (const fn of thunks.slice(1)) {
283
+ promise = promise
284
+ .then(() => {
285
+ if (errored) {
286
+ throw errored.error;
287
+ }
288
+
289
+ if (aborted(active)) {
290
+ throw STALE_REACTION;
291
+ }
292
+
293
+ try {
294
+ restore();
295
+ return fn();
296
+ } finally {
297
+ // TODO do we need it here as well as below?
298
+ unset_context();
299
+ }
300
+ })
301
+ .catch(handle_error)
302
+ .finally(() => {
303
+ unset_context();
304
+ });
305
+
306
+ promises.push(promise);
307
+ }
308
+
309
+ promise
310
+ // wait one more tick, so that template effects are
311
+ // guaranteed to run before `$effect(...)`
312
+ .then(() => Promise.resolve())
313
+ .finally(() => {
314
+ boundary.update_pending_count(-1);
315
+ batch.decrement(blocking);
316
+ });
317
+
318
+ return promises;
319
+ }
@@ -74,9 +74,6 @@ export let previous_batch = null;
74
74
  */
75
75
  export let batch_values = null;
76
76
 
77
- /** @type {Set<() => void>} */
78
- export let effect_pending_updates = new Set();
79
-
80
77
  /** @type {Effect[]} */
81
78
  let queued_root_effects = [];
82
79
 
@@ -196,6 +193,8 @@ export class Batch {
196
193
  flush_queued_effects(target.effects);
197
194
 
198
195
  previous_batch = null;
196
+
197
+ this.#deferred?.resolve();
199
198
  }
200
199
 
201
200
  batch_values = null;
@@ -322,16 +321,6 @@ export class Batch {
322
321
  }
323
322
 
324
323
  this.deactivate();
325
-
326
- for (const update of effect_pending_updates) {
327
- effect_pending_updates.delete(update);
328
- update();
329
-
330
- if (current_batch !== null) {
331
- // only do one at a time
332
- break;
333
- }
334
- }
335
324
  }
336
325
 
337
326
  discard() {
@@ -432,8 +421,6 @@ export class Batch {
432
421
 
433
422
  this.committed = true;
434
423
  batches.delete(this);
435
-
436
- this.#deferred?.resolve();
437
424
  }
438
425
 
439
426
  /**
@@ -365,9 +365,10 @@ export function render_effect(fn, flags = 0) {
365
365
  * @param {(...expressions: any) => void | (() => void)} fn
366
366
  * @param {Array<() => any>} sync
367
367
  * @param {Array<() => Promise<any>>} async
368
+ * @param {Array<Promise<void>>} blockers
368
369
  */
369
- export function template_effect(fn, sync = [], async = []) {
370
- flatten(sync, async, (values) => {
370
+ export function template_effect(fn, sync = [], async = [], blockers = []) {
371
+ flatten(blockers, sync, async, (values) => {
371
372
  create_effect(RENDER_EFFECT, () => fn(...values.map(get)), true);
372
373
  });
373
374
  }
@@ -602,18 +602,19 @@ export function get(signal) {
602
602
  }
603
603
 
604
604
  if (DEV) {
605
- if (current_async_effect) {
606
- var tracking = (current_async_effect.f & REACTION_IS_UPDATING) !== 0;
607
- var was_read = current_async_effect.deps?.includes(signal);
605
+ // TODO reinstate this, but make it actually work
606
+ // if (current_async_effect) {
607
+ // var tracking = (current_async_effect.f & REACTION_IS_UPDATING) !== 0;
608
+ // var was_read = current_async_effect.deps?.includes(signal);
608
609
 
609
- if (!tracking && !untracking && !was_read) {
610
- w.await_reactivity_loss(/** @type {string} */ (signal.label));
610
+ // if (!tracking && !untracking && !was_read) {
611
+ // w.await_reactivity_loss(/** @type {string} */ (signal.label));
611
612
 
612
- var trace = get_stack('traced at');
613
- // eslint-disable-next-line no-console
614
- if (trace) console.warn(trace);
615
- }
616
- }
613
+ // var trace = get_stack('traced at');
614
+ // // eslint-disable-next-line no-console
615
+ // if (trace) console.warn(trace);
616
+ // }
617
+ // }
617
618
 
618
619
  recent_async_deriveds.delete(signal);
619
620
 
@@ -628,7 +629,7 @@ export function get(signal) {
628
629
  if (signal.trace) {
629
630
  signal.trace();
630
631
  } else {
631
- trace = get_stack('traced at');
632
+ var trace = get_stack('traced at');
632
633
 
633
634
  if (trace) {
634
635
  var entry = tracing_expressions.entries.get(signal);
@@ -100,14 +100,69 @@ export class Renderer {
100
100
  }
101
101
 
102
102
  /**
103
+ * @param {Array<Promise<void>>} blockers
103
104
  * @param {(renderer: Renderer) => void} fn
104
105
  */
105
- async(fn) {
106
+ async_block(blockers, fn) {
106
107
  this.#out.push(BLOCK_OPEN);
107
- this.child(fn);
108
+ this.async(blockers, fn);
108
109
  this.#out.push(BLOCK_CLOSE);
109
110
  }
110
111
 
112
+ /**
113
+ * @param {Array<Promise<void>>} blockers
114
+ * @param {(renderer: Renderer) => void} fn
115
+ */
116
+ async(blockers, fn) {
117
+ let callback = fn;
118
+
119
+ if (blockers.length > 0) {
120
+ const context = ssr_context;
121
+
122
+ callback = (renderer) => {
123
+ return Promise.all(blockers).then(() => {
124
+ const previous_context = ssr_context;
125
+
126
+ try {
127
+ set_ssr_context(context);
128
+ return fn(renderer);
129
+ } finally {
130
+ set_ssr_context(previous_context);
131
+ }
132
+ });
133
+ };
134
+ }
135
+
136
+ this.child(callback);
137
+ }
138
+
139
+ /**
140
+ * @param {Array<() => void>} thunks
141
+ */
142
+ run(thunks) {
143
+ const context = ssr_context;
144
+
145
+ let promise = Promise.resolve(thunks[0]());
146
+ const promises = [promise];
147
+
148
+ for (const fn of thunks.slice(1)) {
149
+ promise = promise.then(() => {
150
+ const previous_context = ssr_context;
151
+ set_ssr_context(context);
152
+
153
+ try {
154
+ return fn();
155
+ } finally {
156
+ set_ssr_context(previous_context);
157
+ }
158
+ });
159
+
160
+ promises.push(promise);
161
+ }
162
+
163
+ return promises;
164
+ }
165
+
111
166
  /**
112
167
  * Create a child renderer. The child renderer inherits the state from the parent,
113
168
  * but has its own content.
@@ -386,7 +441,7 @@ export class Renderer {
386
441
  }
387
442
 
388
443
  /**
389
- * Collect all of the `onDestroy` callbacks regsitered during rendering. In an async context, this is only safe to call
444
+ * Collect all of the `onDestroy` callbacks registered during rendering. In an async context, this is only safe to call
390
445
  * after awaiting `collect_async`.
391
446
  *
392
447
  * Child renderers are "porous" and don't affect execution order, but component body renderers
package/src/version.js CHANGED
@@ -4,5 +4,5 @@
4
4
  * The current version, as set in package.json.
5
5
  * @type {string}
6
6
  */
7
- export const VERSION = '5.42.3';
7
+ export const VERSION = '5.43.0';
8
8
  export const PUBLIC_VERSION = '5';
@@ -263,6 +263,6 @@
263
263
  null,
264
264
  null
265
265
  ],
266
- "mappings": "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",
266
+ "mappings": "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",
267
267
  "ignoreList": []
268
268
  }
@@ -1,16 +0,0 @@
1
- /** @import { ImportDeclaration } from 'estree' */
2
- /** @import { ComponentContext } from '../types' */
3
- import * as b from '#compiler/builders';
4
-
5
- /**
6
- * @param {ImportDeclaration} node
7
- * @param {ComponentContext} context
8
- */
9
- export function ImportDeclaration(node, context) {
10
- if ('hoisted' in context.state) {
11
- context.state.hoisted.push(node);
12
- return b.empty;
13
- }
14
-
15
- context.next();
16
- }