svelte 5.55.10 → 5.56.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.
Files changed (48) hide show
  1. package/compiler/index.js +1 -1
  2. package/package.json +7 -4
  3. package/src/compiler/errors.js +18 -0
  4. package/src/compiler/legacy.js +4 -0
  5. package/src/compiler/phases/1-parse/acorn.js +31 -1
  6. package/src/compiler/phases/1-parse/index.js +4 -1
  7. package/src/compiler/phases/1-parse/state/tag.js +104 -3
  8. package/src/compiler/phases/1-parse/utils/bracket.js +14 -3
  9. package/src/compiler/phases/2-analyze/index.js +5 -0
  10. package/src/compiler/phases/2-analyze/visitors/CallExpression.js +3 -0
  11. package/src/compiler/phases/2-analyze/visitors/ConstTag.js +2 -25
  12. package/src/compiler/phases/2-analyze/visitors/DeclarationTag.js +71 -0
  13. package/src/compiler/phases/2-analyze/visitors/Identifier.js +1 -1
  14. package/src/compiler/phases/2-analyze/visitors/SnippetBlock.js +15 -10
  15. package/src/compiler/phases/3-transform/client/transform-client.js +5 -15
  16. package/src/compiler/phases/3-transform/client/transform-template/index.js +40 -3
  17. package/src/compiler/phases/3-transform/client/utils.js +21 -0
  18. package/src/compiler/phases/3-transform/client/visitors/ConstTag.js +13 -24
  19. package/src/compiler/phases/3-transform/client/visitors/DeclarationTag.js +89 -0
  20. package/src/compiler/phases/3-transform/client/visitors/Fragment.js +2 -5
  21. package/src/compiler/phases/3-transform/client/visitors/RegularElement.js +30 -8
  22. package/src/compiler/phases/3-transform/client/visitors/SvelteBoundary.js +7 -2
  23. package/src/compiler/phases/3-transform/client/visitors/VariableDeclaration.js +12 -2
  24. package/src/compiler/phases/3-transform/server/transform-server.js +2 -0
  25. package/src/compiler/phases/3-transform/server/visitors/ConstTag.js +9 -24
  26. package/src/compiler/phases/3-transform/server/visitors/DeclarationTag.js +85 -0
  27. package/src/compiler/phases/3-transform/server/visitors/RegularElement.js +24 -7
  28. package/src/compiler/phases/3-transform/server/visitors/shared/utils.js +1 -1
  29. package/src/compiler/phases/3-transform/utils.js +1 -0
  30. package/src/compiler/phases/nodes.js +1 -0
  31. package/src/compiler/print/index.js +42 -0
  32. package/src/compiler/utils/builders.js +2 -1
  33. package/src/internal/client/dom/blocks/boundary.js +1 -1
  34. package/src/internal/client/dom/blocks/each.js +3 -1
  35. package/src/internal/client/dom/elements/attributes.js +9 -0
  36. package/src/internal/client/dom/elements/bindings/input.js +0 -1
  37. package/src/internal/client/dom/operations.js +12 -2
  38. package/src/internal/client/reactivity/async.js +23 -10
  39. package/src/internal/client/reactivity/batch.js +0 -21
  40. package/src/internal/client/reactivity/effects.js +4 -2
  41. package/src/internal/client/reactivity/props.js +6 -6
  42. package/src/internal/client/reactivity/sources.js +1 -2
  43. package/src/internal/client/runtime.js +4 -8
  44. package/src/reactivity/url-search-params.js +3 -2
  45. package/src/utils.js +1 -1
  46. package/src/version.js +1 -1
  47. package/types/index.d.ts +7 -0
  48. package/types/index.d.ts.map +1 -1
@@ -332,6 +332,15 @@ function set_attributes(
332
332
 
333
333
  var setters = get_setters(element);
334
334
 
335
+ if (element.nodeName === INPUT_TAG && 'type' in next && ('value' in next || '__value' in next)) {
336
+ var type = next.type;
337
+
338
+ if (type !== current.type || (type === undefined && element.hasAttribute('type'))) {
339
+ current.type = type;
340
+ set_attribute(element, 'type', type, skip_warning);
341
+ }
342
+ }
343
+
335
344
  // since key is captured we use const
336
345
  for (const key in next) {
337
346
  // let instead of var because referenced in a closure
@@ -7,7 +7,6 @@ import { is } from '../../../proxy.js';
7
7
  import { queue_micro_task } from '../../task.js';
8
8
  import { hydrating } from '../../hydration.js';
9
9
  import { tick, untrack } from '../../../runtime.js';
10
- import { is_runes } from '../../../context.js';
11
10
  import { current_batch, previous_batch } from '../../../reactivity/batch.js';
12
11
  import { async_mode_flag } from '../../../../flags/index.js';
13
12
 
@@ -233,6 +233,12 @@ export function should_defer_append() {
233
233
  }
234
234
 
235
235
  /**
236
+ * Branching here is intentional and load-bearing for perf. `createElement(tag)`
237
+ * hits a fast path in Blink that `createElementNS(NAMESPACE_HTML, tag)` doesn't,
238
+ * and passing an explicit `undefined` as the trailing options arg measurably
239
+ * slows both APIs. Funnelling every case through a single `createElementNS(ns,
240
+ * tag, options)` call would be smaller but slower on the HTML path.
241
+ *
236
242
  * @template {keyof HTMLElementTagNameMap | string} T
237
243
  * @param {T} tag
238
244
  * @param {string} [namespace]
@@ -240,9 +246,13 @@ export function should_defer_append() {
240
246
  * @returns {T extends keyof HTMLElementTagNameMap ? HTMLElementTagNameMap[T] : Element}
241
247
  */
242
248
  export function create_element(tag, namespace, is) {
243
- let options = is ? { is } : undefined;
249
+ if (namespace == null || namespace === NAMESPACE_HTML) {
250
+ return /** @type {T extends keyof HTMLElementTagNameMap ? HTMLElementTagNameMap[T] : Element} */ (
251
+ is ? document.createElement(tag, { is }) : document.createElement(tag)
252
+ );
253
+ }
244
254
  return /** @type {T extends keyof HTMLElementTagNameMap ? HTMLElementTagNameMap[T] : Element} */ (
245
- document.createElementNS(namespace ?? NAMESPACE_HTML, tag, options)
255
+ is ? document.createElementNS(namespace, tag, { is }) : document.createElementNS(namespace, tag)
246
256
  );
247
257
  }
248
258
 
@@ -1,4 +1,4 @@
1
- /** @import { Blocker, Effect, Value } from '#client' */
1
+ /** @import { Blocker, Effect, Source, Value } from '#client' */
2
2
  import { DESTROYED, STALE_REACTION } from '#client/constants';
3
3
  import { DEV } from 'esm-env';
4
4
  import {
@@ -38,8 +38,22 @@ export function flatten(blockers, sync, async, fn) {
38
38
  // Filter out already-settled blockers - no need to wait for them
39
39
  var pending = blockers.filter((b) => !b.settled);
40
40
 
41
+ var deriveds = sync.map(d);
42
+
43
+ if (DEV) {
44
+ deriveds.forEach((d, i) => {
45
+ // TODO this is kinda useful for debugging but a lousy implementation —
46
+ // maybe the compiler could pass through the template string
47
+ d.label = sync[i]
48
+ .toString()
49
+ .replace('() => ', '')
50
+ .replaceAll('$.eager(() => ', '$state.eager(')
51
+ .replace(/\$\.get\((.+?)\)/g, (_, id) => id);
52
+ });
53
+ }
54
+
41
55
  if (async.length === 0 && pending.length === 0) {
42
- fn(sync.map(d));
56
+ fn(deriveds);
43
57
  return;
44
58
  }
45
59
 
@@ -53,8 +67,10 @@ export function flatten(blockers, sync, async, fn) {
53
67
  ? Promise.all(pending.map((b) => b.promise))
54
68
  : null;
55
69
 
56
- /** @param {Value[]} values */
57
- function finish(values) {
70
+ /**
71
+ * @param {Source[]} async
72
+ */
73
+ function finish(async) {
58
74
  if ((parent.f & DESTROYED) !== 0) {
59
75
  return;
60
76
  }
@@ -62,7 +78,7 @@ export function flatten(blockers, sync, async, fn) {
62
78
  restore();
63
79
 
64
80
  try {
65
- fn(values);
81
+ fn([...deriveds, ...async]);
66
82
  } catch (error) {
67
83
  invoke_error_boundary(error, parent);
68
84
  }
@@ -74,17 +90,14 @@ export function flatten(blockers, sync, async, fn) {
74
90
 
75
91
  // Fast path: blockers but no async expressions
76
92
  if (async.length === 0) {
77
- /** @type {Promise<any>} */ (blocker_promise)
78
- .then(() => finish(sync.map(d)))
79
- .finally(decrement_pending);
80
-
93
+ /** @type {Promise<any>} */ (blocker_promise).then(() => finish([])).finally(decrement_pending);
81
94
  return;
82
95
  }
83
96
 
84
97
  // Full path: has async expressions
85
98
  function run() {
86
99
  Promise.all(async.map((expression) => async_derived(expression)))
87
- .then((result) => finish([...sync.map(d), ...result]))
100
+ .then(finish)
88
101
  .catch((error) => invoke_error_boundary(error, parent))
89
102
  .finally(decrement_pending);
90
103
  }
@@ -140,12 +140,6 @@ export class Batch {
140
140
  */
141
141
  #discard_callbacks = new Set();
142
142
 
143
- /**
144
- * Callbacks that should run only when a fork is committed.
145
- * @type {Set<(batch: Batch) => void>}
146
- */
147
- #fork_commit_callbacks = new Set();
148
-
149
143
  /**
150
144
  * The number of async effects that are currently in flight
151
145
  */
@@ -634,7 +628,6 @@ export class Batch {
634
628
  discard() {
635
629
  for (const fn of this.#discard_callbacks) fn(this);
636
630
  this.#discard_callbacks.clear();
637
- this.#fork_commit_callbacks.clear();
638
631
 
639
632
  this.#unlink();
640
633
  this.#deferred?.resolve();
@@ -840,16 +833,6 @@ export class Batch {
840
833
  this.#discard_callbacks.add(fn);
841
834
  }
842
835
 
843
- /** @param {(batch: Batch) => void} fn */
844
- on_fork_commit(fn) {
845
- this.#fork_commit_callbacks.add(fn);
846
- }
847
-
848
- run_fork_commit_callbacks() {
849
- for (const fn of this.#fork_commit_callbacks) fn(this);
850
- this.#fork_commit_callbacks.clear();
851
- }
852
-
853
836
  settled() {
854
837
  return (this.#deferred ??= deferred()).promise;
855
838
  }
@@ -1410,10 +1393,6 @@ export function fork(fn) {
1410
1393
  source.wv = increment_write_version();
1411
1394
  }
1412
1395
 
1413
- batch.activate();
1414
- batch.run_fork_commit_callbacks();
1415
- batch.deactivate();
1416
-
1417
1396
  // trigger any `$state.eager(...)` expressions with the new state.
1418
1397
  // eager effects don't get scheduled like other effects, so we
1419
1398
  // can't just encounter them during traversal, we need to
@@ -387,7 +387,9 @@ export function render_effect(fn, flags = 0) {
387
387
  */
388
388
  export function template_effect(fn, sync = [], async = [], blockers = []) {
389
389
  flatten(blockers, sync, async, (values) => {
390
- create_effect(RENDER_EFFECT, () => fn(...values.map(get)));
390
+ create_effect(RENDER_EFFECT, () => {
391
+ fn(...values.map(get));
392
+ });
391
393
  });
392
394
  }
393
395
 
@@ -518,7 +520,7 @@ export function destroy_effect(effect, remove_dom = true) {
518
520
  removed = true;
519
521
  }
520
522
 
521
- set_signal_status(effect, DESTROYING);
523
+ effect.f |= DESTROYING;
522
524
  destroy_effect_children(effect, remove_dom && !removed);
523
525
  remove_reactions(effect, 0);
524
526
 
@@ -49,11 +49,11 @@ export function update_pre_prop(fn, d = 1) {
49
49
  /**
50
50
  * The proxy handler for rest props (i.e. `const { x, ...rest } = $props()`).
51
51
  * Is passed the full `$$props` object and excludes the named props.
52
- * @type {ProxyHandler<{ props: Record<string | symbol, unknown>, exclude: Array<string | symbol>, name?: string }>}}
52
+ * @type {ProxyHandler<{ props: Record<string | symbol, unknown>, exclude: Set<string | symbol>, name?: string }>}}
53
53
  */
54
54
  const rest_props_handler = {
55
55
  get(target, key) {
56
- if (target.exclude.includes(key)) return;
56
+ if (target.exclude.has(key)) return;
57
57
  return target.props[key];
58
58
  },
59
59
  set(target, key) {
@@ -65,7 +65,7 @@ const rest_props_handler = {
65
65
  return false;
66
66
  },
67
67
  getOwnPropertyDescriptor(target, key) {
68
- if (target.exclude.includes(key)) return;
68
+ if (target.exclude.has(key)) return;
69
69
  if (key in target.props) {
70
70
  return {
71
71
  enumerable: true,
@@ -75,17 +75,17 @@ const rest_props_handler = {
75
75
  }
76
76
  },
77
77
  has(target, key) {
78
- if (target.exclude.includes(key)) return false;
78
+ if (target.exclude.has(key)) return false;
79
79
  return key in target.props;
80
80
  },
81
81
  ownKeys(target) {
82
- return Reflect.ownKeys(target.props).filter((key) => !target.exclude.includes(key));
82
+ return Reflect.ownKeys(target.props).filter((key) => !target.exclude.has(key));
83
83
  }
84
84
  };
85
85
 
86
86
  /**
87
87
  * @param {Record<string, unknown>} props
88
- * @param {string[]} exclude
88
+ * @param {Set<string>} exclude
89
89
  * @param {string} [name]
90
90
  * @returns {Record<string, unknown>}
91
91
  */
@@ -32,7 +32,6 @@ import {
32
32
  } from '#client/constants';
33
33
  import * as e from '../errors.js';
34
34
  import { legacy_mode_flag, tracing_mode_flag } from '../../flags/index.js';
35
- import { includes } from '../../shared/utils.js';
36
35
  import { tag_proxy } from '../dev/tracing.js';
37
36
  import { get_error } from '../../shared/dev.js';
38
37
  import { component_context, is_runes } from '../context.js';
@@ -158,7 +157,7 @@ export function set(source, value, should_proxy = false) {
158
157
  (!untracking || (active_reaction.f & EAGER_EFFECT) !== 0) &&
159
158
  is_runes() &&
160
159
  (active_reaction.f & (DERIVED | BLOCK_EFFECT | ASYNC | EAGER_EFFECT)) !== 0 &&
161
- (current_sources === null || !includes.call(current_sources, source))
160
+ (current_sources === null || !current_sources.has(source))
162
161
  ) {
163
162
  e.state_unsafe_mutation();
164
163
  }
@@ -90,18 +90,14 @@ export function set_active_effect(effect) {
90
90
  /**
91
91
  * When sources are created within a reaction, reading and writing
92
92
  * them within that reaction should not cause a re-run
93
- * @type {null | Source[]}
93
+ * @type {null | Set<Source>}
94
94
  */
95
95
  export let current_sources = null;
96
96
 
97
97
  /** @param {Value} value */
98
98
  export function push_reaction_value(value) {
99
99
  if (active_reaction !== null && (!async_mode_flag || (active_reaction.f & DERIVED) !== 0)) {
100
- if (current_sources === null) {
101
- current_sources = [value];
102
- } else {
103
- current_sources.push(value);
104
- }
100
+ (current_sources ??= new Set()).add(value);
105
101
  }
106
102
  }
107
103
 
@@ -202,7 +198,7 @@ function schedule_possible_effect_self_invalidation(signal, effect, root = true)
202
198
  var reactions = signal.reactions;
203
199
  if (reactions === null) return;
204
200
 
205
- if (!async_mode_flag && current_sources !== null && includes.call(current_sources, signal)) {
201
+ if (!async_mode_flag && current_sources !== null && current_sources.has(signal)) {
206
202
  return;
207
203
  }
208
204
 
@@ -540,7 +536,7 @@ export function get(signal) {
540
536
  // we don't add the dependency, because that would create a memory leak
541
537
  var destroyed = active_effect !== null && (active_effect.f & DESTROYED) !== 0;
542
538
 
543
- if (!destroyed && (current_sources === null || !includes.call(current_sources, signal))) {
539
+ if (!destroyed && (current_sources === null || !current_sources.has(signal))) {
544
540
  var deps = active_reaction.deps;
545
541
 
546
542
  if ((active_reaction.f & REACTION_IS_UPDATING) !== 0) {
@@ -132,11 +132,12 @@ export class SvelteURLSearchParams extends URLSearchParams {
132
132
  * @returns {void}
133
133
  */
134
134
  set(name, value) {
135
- var previous = super.getAll(name).join('');
135
+ var previous = super.getAll(name);
136
136
  super.set(name, value);
137
137
  // can't use has(name, value), because for something like https://svelte.dev?foo=1&bar=2&foo=3
138
138
  // if you set `foo` to 1, then foo=3 gets deleted whilst `has("foo", "1")` returns true
139
- if (previous !== super.getAll(name).join('')) {
139
+ var current = super.getAll(name);
140
+ if (previous.length !== current.length || previous.some((value, i) => value !== current[i])) {
140
141
  this.#update_url();
141
142
  increment(this.#version);
142
143
  }
package/src/utils.js CHANGED
@@ -434,7 +434,7 @@ const STATE_CREATION_RUNES = /** @type {const} */ ([
434
434
  '$derived.by'
435
435
  ]);
436
436
 
437
- const RUNES = /** @type {const} */ ([
437
+ export const RUNES = /** @type {const} */ ([
438
438
  ...STATE_CREATION_RUNES,
439
439
  '$state.eager',
440
440
  '$state.snapshot',
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.55.10';
7
+ export const VERSION = '5.56.1';
8
8
  export const PUBLIC_VERSION = '5';
package/types/index.d.ts CHANGED
@@ -1303,6 +1303,12 @@ declare module 'svelte/compiler' {
1303
1303
  };
1304
1304
  }
1305
1305
 
1306
+ /** A `{let ...}` or `{const ...}` tag */
1307
+ export interface DeclarationTag extends BaseNode {
1308
+ type: 'DeclarationTag';
1309
+ declaration: VariableDeclaration;
1310
+ }
1311
+
1306
1312
  /** A `{@debug ...}` tag */
1307
1313
  export interface DebugTag extends BaseNode {
1308
1314
  type: 'DebugTag';
@@ -1613,6 +1619,7 @@ declare module 'svelte/compiler' {
1613
1619
  export type Tag =
1614
1620
  | AST.AttachTag
1615
1621
  | AST.ConstTag
1622
+ | AST.DeclarationTag
1616
1623
  | AST.DebugTag
1617
1624
  | AST.ExpressionTag
1618
1625
  | AST.HtmlTag
@@ -273,6 +273,6 @@
273
273
  null,
274
274
  null
275
275
  ],
276
- "mappings": "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",
276
+ "mappings": "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",
277
277
  "ignoreList": []
278
278
  }