svelte 5.49.1 → 5.49.2

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/elements.d.ts CHANGED
@@ -851,23 +851,6 @@ export interface HTMLAttributes<T extends EventTarget> extends AriaAttributes, D
851
851
  readonly 'bind:offsetWidth'?: number | undefined | null;
852
852
  readonly 'bind:offsetHeight'?: number | undefined | null;
853
853
 
854
- // SvelteKit
855
- 'data-sveltekit-keepfocus'?: true | '' | 'off' | undefined | null;
856
- 'data-sveltekit-noscroll'?: true | '' | 'off' | undefined | null;
857
- 'data-sveltekit-preload-code'?:
858
- | true
859
- | ''
860
- | 'eager'
861
- | 'viewport'
862
- | 'hover'
863
- | 'tap'
864
- | 'off'
865
- | undefined
866
- | null;
867
- 'data-sveltekit-preload-data'?: true | '' | 'hover' | 'tap' | 'off' | undefined | null;
868
- 'data-sveltekit-reload'?: true | '' | 'off' | undefined | null;
869
- 'data-sveltekit-replacestate'?: true | '' | 'off' | undefined | null;
870
-
871
854
  // allow any data- attribute
872
855
  [key: `data-${string}`]: any;
873
856
 
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "svelte",
3
3
  "description": "Cybernetically enhanced web apps",
4
4
  "license": "MIT",
5
- "version": "5.49.1",
5
+ "version": "5.49.2",
6
6
  "type": "module",
7
7
  "types": "./types/index.d.ts",
8
8
  "engines": {
@@ -312,10 +312,10 @@ export function EachBlock(node, context) {
312
312
  declarations.push(b.let(node.index, index));
313
313
  }
314
314
 
315
- const is_async = node.metadata.expression.is_async();
315
+ const has_await = node.metadata.expression.has_await;
316
316
 
317
- const get_collection = b.thunk(collection, node.metadata.expression.has_await);
318
- const thunk = is_async ? b.thunk(b.call('$.get', b.id('$$collection'))) : get_collection;
317
+ const get_collection = b.thunk(collection, has_await);
318
+ const thunk = has_await ? b.thunk(b.call('$.get', b.id('$$collection'))) : get_collection;
319
319
 
320
320
  const render_args = [b.id('$$anchor'), item];
321
321
  if (uses_index || collection_id) render_args.push(index);
@@ -342,15 +342,18 @@ export function EachBlock(node, context) {
342
342
  statements.unshift(b.stmt(b.call('$.validate_each_keys', thunk, key_function)));
343
343
  }
344
344
 
345
- if (is_async) {
345
+ if (node.metadata.expression.is_async()) {
346
346
  context.state.init.push(
347
347
  b.stmt(
348
348
  b.call(
349
349
  '$.async',
350
350
  context.state.node,
351
351
  node.metadata.expression.blockers(),
352
- b.array([get_collection]),
353
- b.arrow([context.state.node, b.id('$$collection')], b.block(statements))
352
+ has_await ? b.array([get_collection]) : b.void0,
353
+ b.arrow(
354
+ has_await ? [context.state.node, b.id('$$collection')] : [context.state.node],
355
+ b.block(statements)
356
+ )
354
357
  )
355
358
  )
356
359
  );
@@ -11,10 +11,11 @@ import { build_expression } from './shared/utils.js';
11
11
  export function HtmlTag(node, context) {
12
12
  context.state.template.push_comment();
13
13
 
14
- const is_async = node.metadata.expression.is_async();
14
+ const has_await = node.metadata.expression.has_await;
15
+ const has_blockers = node.metadata.expression.has_blockers();
15
16
 
16
17
  const expression = build_expression(context, node.expression, node.metadata.expression);
17
- const html = is_async ? b.call('$.get', b.id('$$html')) : expression;
18
+ const html = has_await ? b.call('$.get', b.id('$$html')) : expression;
18
19
 
19
20
  const is_svg = context.state.metadata.namespace === 'svg';
20
21
  const is_mathml = context.state.metadata.namespace === 'mathml';
@@ -31,15 +32,18 @@ export function HtmlTag(node, context) {
31
32
  );
32
33
 
33
34
  // push into init, so that bindings run afterwards, which might trigger another run and override hydration
34
- if (is_async) {
35
+ if (has_await || has_blockers) {
35
36
  context.state.init.push(
36
37
  b.stmt(
37
38
  b.call(
38
39
  '$.async',
39
40
  context.state.node,
40
41
  node.metadata.expression.blockers(),
41
- b.array([b.thunk(expression, node.metadata.expression.has_await)]),
42
- b.arrow([context.state.node, b.id('$$html')], b.block([statement]))
42
+ has_await ? b.array([b.thunk(expression, true)]) : b.void0,
43
+ b.arrow(
44
+ has_await ? [context.state.node, b.id('$$html')] : [context.state.node],
45
+ b.block([statement])
46
+ )
43
47
  )
44
48
  )
45
49
  );
@@ -25,10 +25,11 @@ export function IfBlock(node, context) {
25
25
  statements.push(b.var(alternate_id, b.arrow([b.id('$$anchor')], alternate)));
26
26
  }
27
27
 
28
- const is_async = node.metadata.expression.is_async();
28
+ const has_await = node.metadata.expression.has_await;
29
+ const has_blockers = node.metadata.expression.has_blockers();
29
30
 
30
31
  const expression = build_expression(context, node.test, node.metadata.expression);
31
- const test = is_async ? b.call('$.get', b.id('$$condition')) : expression;
32
+ const test = has_await ? b.call('$.get', b.id('$$condition')) : expression;
32
33
 
33
34
  /** @type {Expression[]} */
34
35
  const args = [
@@ -72,15 +73,18 @@ export function IfBlock(node, context) {
72
73
 
73
74
  statements.push(add_svelte_meta(b.call('$.if', ...args), node, 'if'));
74
75
 
75
- if (is_async) {
76
+ if (has_await || has_blockers) {
76
77
  context.state.init.push(
77
78
  b.stmt(
78
79
  b.call(
79
80
  '$.async',
80
81
  context.state.node,
81
82
  node.metadata.expression.blockers(),
82
- b.array([b.thunk(expression, node.metadata.expression.has_await)]),
83
- b.arrow([context.state.node, b.id('$$condition')], b.block(statements))
83
+ has_await ? b.array([b.thunk(expression, true)]) : b.void0,
84
+ b.arrow(
85
+ has_await ? [context.state.node, b.id('$$condition')] : [context.state.node],
86
+ b.block(statements)
87
+ )
84
88
  )
85
89
  )
86
90
  );
@@ -11,29 +11,35 @@ import { build_expression, add_svelte_meta } from './shared/utils.js';
11
11
  export function KeyBlock(node, context) {
12
12
  context.state.template.push_comment();
13
13
 
14
- const is_async = node.metadata.expression.is_async();
14
+ const has_await = node.metadata.expression.has_await;
15
+ const has_blockers = node.metadata.expression.has_blockers();
15
16
 
16
17
  const expression = build_expression(context, node.expression, node.metadata.expression);
17
- const key = b.thunk(is_async ? b.call('$.get', b.id('$$key')) : expression);
18
+ const key = b.thunk(has_await ? b.call('$.get', b.id('$$key')) : expression);
18
19
  const body = /** @type {Expression} */ (context.visit(node.fragment));
19
20
 
20
- let statement = add_svelte_meta(
21
+ const statement = add_svelte_meta(
21
22
  b.call('$.key', context.state.node, key, b.arrow([b.id('$$anchor')], body)),
22
23
  node,
23
24
  'key'
24
25
  );
25
26
 
26
- if (is_async) {
27
- statement = b.stmt(
28
- b.call(
29
- '$.async',
30
- context.state.node,
31
- node.metadata.expression.blockers(),
32
- b.array([b.thunk(expression, node.metadata.expression.has_await)]),
33
- b.arrow([context.state.node, b.id('$$key')], b.block([statement]))
27
+ if (has_await || has_blockers) {
28
+ context.state.init.push(
29
+ b.stmt(
30
+ b.call(
31
+ '$.async',
32
+ context.state.node,
33
+ node.metadata.expression.blockers(),
34
+ has_await ? b.array([b.thunk(expression, true)]) : b.void0,
35
+ b.arrow(
36
+ has_await ? [context.state.node, b.id('$$key')] : [context.state.node],
37
+ b.block([statement])
38
+ )
39
+ )
34
40
  )
35
41
  );
42
+ } else {
43
+ context.state.init.push(statement);
36
44
  }
37
-
38
- context.state.init.push(statement);
39
45
  }
@@ -93,10 +93,11 @@ export function SvelteElement(node, context) {
93
93
  );
94
94
  }
95
95
 
96
- const is_async = node.metadata.expression.is_async();
96
+ const has_await = node.metadata.expression.has_await;
97
+ const has_blockers = node.metadata.expression.has_blockers();
97
98
 
98
99
  const expression = /** @type {Expression} */ (context.visit(node.tag));
99
- const get_tag = b.thunk(is_async ? b.call('$.get', b.id('$$tag')) : expression);
100
+ const get_tag = b.thunk(has_await ? b.call('$.get', b.id('$$tag')) : expression);
100
101
 
101
102
  /** @type {Statement[]} */
102
103
  const inner = inner_context.state.init;
@@ -139,15 +140,18 @@ export function SvelteElement(node, context) {
139
140
  )
140
141
  );
141
142
 
142
- if (is_async) {
143
+ if (has_await || has_blockers) {
143
144
  context.state.init.push(
144
145
  b.stmt(
145
146
  b.call(
146
147
  '$.async',
147
148
  context.state.node,
148
149
  node.metadata.expression.blockers(),
149
- b.array([b.thunk(expression, node.metadata.expression.has_await)]),
150
- b.arrow([context.state.node, b.id('$$tag')], b.block(statements))
150
+ has_await ? b.array([b.thunk(expression, true)]) : b.void0,
151
+ b.arrow(
152
+ has_await ? [context.state.node, b.id('$$tag')] : [context.state.node],
153
+ b.block(statements)
154
+ )
151
155
  )
152
156
  )
153
157
  );
@@ -200,17 +200,17 @@ export class BranchManager {
200
200
  if (defer) {
201
201
  for (const [k, effect] of this.#onscreen) {
202
202
  if (k === key) {
203
- batch.skipped_effects.delete(effect);
203
+ batch.unskip_effect(effect);
204
204
  } else {
205
- batch.skipped_effects.add(effect);
205
+ batch.skip_effect(effect);
206
206
  }
207
207
  }
208
208
 
209
209
  for (const [k, branch] of this.#offscreen) {
210
210
  if (k === key) {
211
- batch.skipped_effects.delete(branch.effect);
211
+ batch.unskip_effect(branch.effect);
212
212
  } else {
213
- batch.skipped_effects.add(branch.effect);
213
+ batch.skip_effect(branch.effect);
214
214
  }
215
215
  }
216
216
 
@@ -257,7 +257,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
257
257
  if (item.i) internal_set(item.i, index);
258
258
 
259
259
  if (defer) {
260
- batch.skipped_effects.delete(item.e);
260
+ batch.unskip_effect(item.e);
261
261
  }
262
262
  } else {
263
263
  item = create_item(
@@ -299,7 +299,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
299
299
  if (defer) {
300
300
  for (const [key, item] of items) {
301
301
  if (!keys.has(key)) {
302
- batch.skipped_effects.add(item.e);
302
+ batch.skip_effect(item.e);
303
303
  }
304
304
  }
305
305
 
@@ -130,11 +130,13 @@ export class Batch {
130
130
  #maybe_dirty_effects = new Set();
131
131
 
132
132
  /**
133
- * A set of branches that still exist, but will be destroyed when this batch
134
- * is committed — we skip over these during `process`
135
- * @type {Set<Effect>}
133
+ * A map of branches that still exist, but will be destroyed when this batch
134
+ * is committed — we skip over these during `process`.
135
+ * The value contains child effects that were dirty/maybe_dirty before being reset,
136
+ * so they can be rescheduled if the branch survives.
137
+ * @type {Map<Effect, { d: Effect[], m: Effect[] }>}
136
138
  */
137
- skipped_effects = new Set();
139
+ #skipped_branches = new Map();
138
140
 
139
141
  is_fork = false;
140
142
 
@@ -144,6 +146,38 @@ export class Batch {
144
146
  return this.is_fork || this.#blocking_pending > 0;
145
147
  }
146
148
 
149
+ /**
150
+ * Add an effect to the #skipped_branches map and reset its children
151
+ * @param {Effect} effect
152
+ */
153
+ skip_effect(effect) {
154
+ if (!this.#skipped_branches.has(effect)) {
155
+ this.#skipped_branches.set(effect, { d: [], m: [] });
156
+ }
157
+ }
158
+
159
+ /**
160
+ * Remove an effect from the #skipped_branches map and reschedule
161
+ * any tracked dirty/maybe_dirty child effects
162
+ * @param {Effect} effect
163
+ */
164
+ unskip_effect(effect) {
165
+ var tracked = this.#skipped_branches.get(effect);
166
+ if (tracked) {
167
+ this.#skipped_branches.delete(effect);
168
+
169
+ for (var e of tracked.d) {
170
+ set_signal_status(e, DIRTY);
171
+ schedule_effect(e);
172
+ }
173
+
174
+ for (e of tracked.m) {
175
+ set_signal_status(e, MAYBE_DIRTY);
176
+ schedule_effect(e);
177
+ }
178
+ }
179
+ }
180
+
147
181
  /**
148
182
  *
149
183
  * @param {Effect[]} root_effects
@@ -172,8 +206,8 @@ export class Batch {
172
206
  this.#defer_effects(render_effects);
173
207
  this.#defer_effects(effects);
174
208
 
175
- for (const e of this.skipped_effects) {
176
- reset_branch(e);
209
+ for (const [e, t] of this.#skipped_branches) {
210
+ reset_branch(e, t);
177
211
  }
178
212
  } else {
179
213
  // append/remove branches
@@ -220,7 +254,7 @@ export class Batch {
220
254
  var is_branch = (flags & (BRANCH_EFFECT | ROOT_EFFECT)) !== 0;
221
255
  var is_skippable_branch = is_branch && (flags & CLEAN) !== 0;
222
256
 
223
- var skip = is_skippable_branch || (flags & INERT) !== 0 || this.skipped_effects.has(effect);
257
+ var skip = is_skippable_branch || (flags & INERT) !== 0 || this.#skipped_branches.has(effect);
224
258
 
225
259
  // Inside a `<svelte:boundary>` with a pending snippet,
226
260
  // all effects are deferred until the boundary resolves
@@ -807,7 +841,8 @@ export function schedule_effect(signal) {
807
841
  var flags = effect.f;
808
842
 
809
843
  // if the effect is being scheduled because a parent (each/await/etc) block
810
- // updated an internal source, bail out or we'll cause a second flush
844
+ // updated an internal source, or because a branch is being unskipped,
845
+ // bail out or we'll cause a second flush
811
846
  if (
812
847
  is_flushing &&
813
848
  effect === active_effect &&
@@ -887,20 +922,28 @@ export function eager(fn) {
887
922
 
888
923
  /**
889
924
  * Mark all the effects inside a skipped branch CLEAN, so that
890
- * they can be correctly rescheduled later
925
+ * they can be correctly rescheduled later. Tracks dirty and maybe_dirty
926
+ * effects so they can be rescheduled if the branch survives.
891
927
  * @param {Effect} effect
928
+ * @param {{ d: Effect[], m: Effect[] }} tracked
892
929
  */
893
- function reset_branch(effect) {
930
+ function reset_branch(effect, tracked) {
894
931
  // clean branch = nothing dirty inside, no need to traverse further
895
932
  if ((effect.f & BRANCH_EFFECT) !== 0 && (effect.f & CLEAN) !== 0) {
896
933
  return;
897
934
  }
898
935
 
936
+ if ((effect.f & DIRTY) !== 0) {
937
+ tracked.d.push(effect);
938
+ } else if ((effect.f & MAYBE_DIRTY) !== 0) {
939
+ tracked.m.push(effect);
940
+ }
941
+
899
942
  set_signal_status(effect, CLEAN);
900
943
 
901
944
  var e = effect.first;
902
945
  while (e !== null) {
903
- reset_branch(e);
946
+ reset_branch(e, tracked);
904
947
  e = e.next;
905
948
  }
906
949
  }
@@ -12,7 +12,8 @@ export async function sha256(data) {
12
12
  crypto ??= globalThis.crypto?.subtle?.digest
13
13
  ? globalThis.crypto
14
14
  : // @ts-ignore - we don't install node types in the prod build
15
- (await import('node:crypto')).webcrypto;
15
+ // don't use 'node:crypto' because static analysers will think we rely on node when we don't
16
+ (await import('node:' + 'crypto')).webcrypto;
16
17
 
17
18
  const hash_buffer = await crypto.subtle.digest('SHA-256', text_encoder.encode(data));
18
19
 
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.49.1';
7
+ export const VERSION = '5.49.2';
8
8
  export const PUBLIC_VERSION = '5';
@@ -275,6 +275,6 @@
275
275
  null,
276
276
  null
277
277
  ],
278
- "mappings": "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",
278
+ "mappings": "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",
279
279
  "ignoreList": []
280
280
  }