svelte 5.42.2 → 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 (60) 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/SvelteHead.js +3 -0
  20. package/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +13 -2
  21. package/src/compiler/phases/3-transform/client/visitors/shared/component.js +20 -16
  22. package/src/compiler/phases/3-transform/client/visitors/shared/element.js +1 -0
  23. package/src/compiler/phases/3-transform/client/visitors/shared/utils.js +15 -1
  24. package/src/compiler/phases/3-transform/server/transform-server.js +9 -9
  25. package/src/compiler/phases/3-transform/server/visitors/AwaitBlock.js +6 -2
  26. package/src/compiler/phases/3-transform/server/visitors/CallExpression.js +8 -1
  27. package/src/compiler/phases/3-transform/server/visitors/EachBlock.js +14 -3
  28. package/src/compiler/phases/3-transform/server/visitors/HtmlTag.js +3 -5
  29. package/src/compiler/phases/3-transform/server/visitors/IfBlock.js +12 -4
  30. package/src/compiler/phases/3-transform/server/visitors/KeyBlock.js +7 -1
  31. package/src/compiler/phases/3-transform/server/visitors/Program.js +25 -0
  32. package/src/compiler/phases/3-transform/server/visitors/RegularElement.js +14 -7
  33. package/src/compiler/phases/3-transform/server/visitors/RenderTag.js +27 -11
  34. package/src/compiler/phases/3-transform/server/visitors/SlotElement.js +7 -4
  35. package/src/compiler/phases/3-transform/server/visitors/SvelteElement.js +24 -4
  36. package/src/compiler/phases/3-transform/server/visitors/SvelteHead.js +10 -1
  37. package/src/compiler/phases/3-transform/server/visitors/shared/component.js +10 -4
  38. package/src/compiler/phases/3-transform/server/visitors/shared/utils.js +79 -8
  39. package/src/compiler/phases/3-transform/shared/transform-async.js +102 -0
  40. package/src/compiler/phases/nodes.js +24 -0
  41. package/src/compiler/phases/scope.js +27 -8
  42. package/src/compiler/utils/ast.js +1 -1
  43. package/src/compiler/utils/builders.js +15 -4
  44. package/src/internal/client/dom/blocks/async.js +7 -6
  45. package/src/internal/client/dom/blocks/await.js +6 -2
  46. package/src/internal/client/dom/blocks/boundary.js +5 -8
  47. package/src/internal/client/dom/blocks/svelte-head.js +10 -19
  48. package/src/internal/client/dom/elements/attributes.js +3 -1
  49. package/src/internal/client/index.js +1 -0
  50. package/src/internal/client/proxy.js +1 -1
  51. package/src/internal/client/reactivity/async.js +107 -49
  52. package/src/internal/client/reactivity/batch.js +2 -15
  53. package/src/internal/client/reactivity/effects.js +3 -2
  54. package/src/internal/client/render.js +1 -9
  55. package/src/internal/client/runtime.js +12 -11
  56. package/src/internal/server/index.js +4 -3
  57. package/src/internal/server/renderer.js +58 -3
  58. package/src/version.js +1 -1
  59. package/types/index.d.ts.map +1 -1
  60. 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,26 +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';
36
- import { create_text } from '../dom/operations.js';
28
+ import { hydrate_next, hydrating, set_hydrate_node, skip_nodes } from '../dom/hydration.js';
37
29
 
38
30
  /**
39
- *
31
+ * @param {Array<Promise<void>>} blockers
40
32
  * @param {Array<() => any>} sync
41
33
  * @param {Array<() => Promise<any>>} async
42
34
  * @param {(values: Value[]) => any} fn
43
35
  */
44
- export function flatten(sync, async, fn) {
36
+ export function flatten(blockers, sync, async, fn) {
45
37
  const d = is_runes() ? derived : derived_safe_equal;
46
38
 
47
- if (async.length === 0) {
39
+ if (async.length === 0 && blockers.length === 0) {
48
40
  fn(sync.map(d));
49
41
  return;
50
42
  }
@@ -54,31 +46,42 @@ export function flatten(sync, async, fn) {
54
46
 
55
47
  var restore = capture();
56
48
 
57
- 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
+ }
58
62
 
59
- Promise.all(async.map((expression) => async_derived(expression)))
60
- .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(() => {
61
73
  restore();
62
74
 
63
75
  try {
64
- fn([...sync.map(d), ...result]);
65
- } catch (error) {
66
- // ignore errors in blocks that have already been destroyed
67
- if ((parent.f & DESTROYED) === 0) {
68
- invoke_error_boundary(error, parent);
69
- }
76
+ return run();
77
+ } finally {
78
+ batch?.deactivate();
79
+ unset_context();
70
80
  }
71
-
72
- if (was_hydrating) {
73
- set_hydrating(false);
74
- }
75
-
76
- batch?.deactivate();
77
- unset_context();
78
- })
79
- .catch((error) => {
80
- invoke_error_boundary(error, parent);
81
81
  });
82
+ } else {
83
+ run();
84
+ }
82
85
  }
83
86
 
84
87
  /**
@@ -92,26 +95,15 @@ export function capture() {
92
95
  var previous_component_context = component_context;
93
96
  var previous_batch = current_batch;
94
97
 
95
- var was_hydrating = hydrating;
96
-
97
- if (was_hydrating) {
98
- var previous_hydrate_node = hydrate_node;
99
- }
100
-
101
98
  if (DEV) {
102
99
  var previous_dev_stack = dev_stack;
103
100
  }
104
101
 
105
- return function restore() {
102
+ return function restore(activate_batch = true) {
106
103
  set_active_effect(previous_effect);
107
104
  set_active_reaction(previous_reaction);
108
105
  set_component_context(previous_component_context);
109
- previous_batch?.activate();
110
-
111
- if (was_hydrating) {
112
- set_hydrating(true);
113
- set_hydrate_node(previous_hydrate_node);
114
- }
106
+ if (activate_batch) previous_batch?.activate();
115
107
 
116
108
  if (DEV) {
117
109
  set_from_async_derived(null);
@@ -249,13 +241,79 @@ export async function async_body(anchor, fn) {
249
241
  invoke_error_boundary(error, active);
250
242
  }
251
243
  } finally {
252
- if (was_hydrating) {
253
- set_hydrating(false);
254
- }
255
-
256
244
  boundary.update_pending_count(-1);
257
245
  batch.decrement(blocking);
258
246
 
259
247
  unset_context();
260
248
  }
261
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
  }
@@ -12,20 +12,13 @@ import { HYDRATION_END, HYDRATION_ERROR, HYDRATION_START } from '../../constants
12
12
  import { active_effect } from './runtime.js';
13
13
  import { push, pop, component_context } from './context.js';
14
14
  import { component_root } from './reactivity/effects.js';
15
- import {
16
- hydrate_next,
17
- hydrate_node,
18
- hydrating,
19
- set_hydrate_node,
20
- set_hydrating
21
- } from './dom/hydration.js';
15
+ import { hydrate_node, hydrating, set_hydrate_node, set_hydrating } from './dom/hydration.js';
22
16
  import { array_from } from '../shared/utils.js';
23
17
  import {
24
18
  all_registered_events,
25
19
  handle_event_propagation,
26
20
  root_event_handles
27
21
  } from './dom/elements/events.js';
28
- import { reset_head_anchor } from './dom/blocks/svelte-head.js';
29
22
  import * as w from './warnings.js';
30
23
  import * as e from './errors.js';
31
24
  import { assign_nodes } from './dom/template.js';
@@ -152,7 +145,6 @@ export function hydrate(component, options) {
152
145
  } finally {
153
146
  set_hydrating(was_hydrating);
154
147
  set_hydrate_node(previous_hydrate_node);
155
- reset_head_anchor();
156
148
  }
157
149
  }
158
150
 
@@ -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);
@@ -64,15 +64,16 @@ export function render(component, options = {}) {
64
64
  }
65
65
 
66
66
  /**
67
+ * @param {string} hash
67
68
  * @param {Renderer} renderer
68
69
  * @param {(renderer: Renderer) => Promise<void> | void} fn
69
70
  * @returns {void}
70
71
  */
71
- export function head(renderer, fn) {
72
+ export function head(hash, renderer, fn) {
72
73
  renderer.head((renderer) => {
73
- renderer.push(BLOCK_OPEN);
74
+ renderer.push(`<!--${hash}-->`);
74
75
  renderer.child(fn);
75
- renderer.push(BLOCK_CLOSE);
76
+ renderer.push(EMPTY_COMMENT);
76
77
  });
77
78
  }
78
79
 
@@ -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.2';
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
- }