svelte 5.43.10 → 5.43.12
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 +1 -1
- package/src/internal/client/dev/tracing.js +4 -2
- package/src/internal/client/dom/blocks/branches.js +30 -3
- package/src/internal/client/dom/blocks/each.js +32 -26
- package/src/internal/client/reactivity/batch.js +18 -2
- package/src/internal/client/reactivity/sources.js +17 -9
- package/src/internal/flags/index.js +3 -0
- package/src/version.js +1 -1
- package/types/index.d.ts.map +1 -1
package/package.json
CHANGED
|
@@ -57,8 +57,10 @@ function log_entry(signal, entry) {
|
|
|
57
57
|
|
|
58
58
|
if (dirty && signal.updated) {
|
|
59
59
|
for (const updated of signal.updated.values()) {
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
if (updated.error) {
|
|
61
|
+
// eslint-disable-next-line no-console
|
|
62
|
+
console.log(updated.error);
|
|
63
|
+
}
|
|
62
64
|
}
|
|
63
65
|
}
|
|
64
66
|
|
|
@@ -24,12 +24,35 @@ export class BranchManager {
|
|
|
24
24
|
/** @type {Map<Batch, Key>} */
|
|
25
25
|
#batches = new Map();
|
|
26
26
|
|
|
27
|
-
/**
|
|
27
|
+
/**
|
|
28
|
+
* Map of keys to effects that are currently rendered in the DOM.
|
|
29
|
+
* These effects are visible and actively part of the document tree.
|
|
30
|
+
* Example:
|
|
31
|
+
* ```
|
|
32
|
+
* {#if condition}
|
|
33
|
+
* foo
|
|
34
|
+
* {:else}
|
|
35
|
+
* bar
|
|
36
|
+
* {/if}
|
|
37
|
+
* ```
|
|
38
|
+
* Can result in the entries `true->Effect` and `false->Effect`
|
|
39
|
+
* @type {Map<Key, Effect>}
|
|
40
|
+
*/
|
|
28
41
|
#onscreen = new Map();
|
|
29
42
|
|
|
30
|
-
/**
|
|
43
|
+
/**
|
|
44
|
+
* Similar to #onscreen with respect to the keys, but contains branches that are not yet
|
|
45
|
+
* in the DOM, because their insertion is deferred.
|
|
46
|
+
* @type {Map<Key, Branch>}
|
|
47
|
+
*/
|
|
31
48
|
#offscreen = new Map();
|
|
32
49
|
|
|
50
|
+
/**
|
|
51
|
+
* Keys of effects that are currently outroing
|
|
52
|
+
* @type {Set<Key>}
|
|
53
|
+
*/
|
|
54
|
+
#outroing = new Set();
|
|
55
|
+
|
|
33
56
|
/**
|
|
34
57
|
* Whether to pause (i.e. outro) on change, or destroy immediately.
|
|
35
58
|
* This is necessary for `<svelte:element>`
|
|
@@ -58,6 +81,7 @@ export class BranchManager {
|
|
|
58
81
|
if (onscreen) {
|
|
59
82
|
// effect is already in the DOM — abort any current outro
|
|
60
83
|
resume_effect(onscreen);
|
|
84
|
+
this.#outroing.delete(key);
|
|
61
85
|
} else {
|
|
62
86
|
// effect is currently offscreen. put it in the DOM
|
|
63
87
|
var offscreen = this.#offscreen.get(key);
|
|
@@ -96,7 +120,8 @@ export class BranchManager {
|
|
|
96
120
|
// outro/destroy all onscreen effects...
|
|
97
121
|
for (const [k, effect] of this.#onscreen) {
|
|
98
122
|
// ...except the one that was just committed
|
|
99
|
-
|
|
123
|
+
// or those that are already outroing (else the transition is aborted and the effect destroyed right away)
|
|
124
|
+
if (k === key || this.#outroing.has(k)) continue;
|
|
100
125
|
|
|
101
126
|
const on_destroy = () => {
|
|
102
127
|
const keys = Array.from(this.#batches.values());
|
|
@@ -113,10 +138,12 @@ export class BranchManager {
|
|
|
113
138
|
destroy_effect(effect);
|
|
114
139
|
}
|
|
115
140
|
|
|
141
|
+
this.#outroing.delete(k);
|
|
116
142
|
this.#onscreen.delete(k);
|
|
117
143
|
};
|
|
118
144
|
|
|
119
145
|
if (this.#transition || !onscreen) {
|
|
146
|
+
this.#outroing.add(k);
|
|
120
147
|
pause_effect(effect, on_destroy, false);
|
|
121
148
|
} else {
|
|
122
149
|
on_destroy();
|
|
@@ -129,8 +129,11 @@ function pause_effects(state, to_destroy, controlled_anchor) {
|
|
|
129
129
|
export function each(node, flags, get_collection, get_key, render_fn, fallback_fn = null) {
|
|
130
130
|
var anchor = node;
|
|
131
131
|
|
|
132
|
-
/** @type {
|
|
133
|
-
var
|
|
132
|
+
/** @type {Map<any, EachItem>} */
|
|
133
|
+
var items = new Map();
|
|
134
|
+
|
|
135
|
+
/** @type {EachItem | null} */
|
|
136
|
+
var first = null;
|
|
134
137
|
|
|
135
138
|
var is_controlled = (flags & EACH_IS_CONTROLLED) !== 0;
|
|
136
139
|
var is_reactive_value = (flags & EACH_ITEM_REACTIVE) !== 0;
|
|
@@ -166,7 +169,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
166
169
|
var first_run = true;
|
|
167
170
|
|
|
168
171
|
function commit() {
|
|
169
|
-
reconcile(
|
|
172
|
+
reconcile(state, array, anchor, flags, get_key);
|
|
170
173
|
|
|
171
174
|
if (fallback !== null) {
|
|
172
175
|
if (array.length === 0) {
|
|
@@ -177,7 +180,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
177
180
|
resume_effect(fallback.effect);
|
|
178
181
|
}
|
|
179
182
|
|
|
180
|
-
|
|
183
|
+
effect.first = fallback.effect;
|
|
181
184
|
} else {
|
|
182
185
|
pause_effect(fallback.effect, () => {
|
|
183
186
|
// TODO only null out if no pending batch needs it,
|
|
@@ -189,7 +192,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
189
192
|
}
|
|
190
193
|
}
|
|
191
194
|
|
|
192
|
-
var
|
|
195
|
+
var effect = block(() => {
|
|
193
196
|
array = /** @type {V[]} */ (get(each_array));
|
|
194
197
|
var length = array.length;
|
|
195
198
|
|
|
@@ -230,7 +233,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
230
233
|
var value = array[i];
|
|
231
234
|
var key = get_key(value, i);
|
|
232
235
|
|
|
233
|
-
var item = first_run ? null :
|
|
236
|
+
var item = first_run ? null : items.get(key);
|
|
234
237
|
|
|
235
238
|
if (item) {
|
|
236
239
|
// update before reconciliation, to trigger any async updates
|
|
@@ -263,7 +266,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
263
266
|
item.o = true;
|
|
264
267
|
|
|
265
268
|
if (prev === null) {
|
|
266
|
-
|
|
269
|
+
first = item;
|
|
267
270
|
} else {
|
|
268
271
|
prev.next = item;
|
|
269
272
|
}
|
|
@@ -271,7 +274,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
271
274
|
prev = item;
|
|
272
275
|
}
|
|
273
276
|
|
|
274
|
-
|
|
277
|
+
items.set(key, item);
|
|
275
278
|
}
|
|
276
279
|
|
|
277
280
|
keys.add(key);
|
|
@@ -302,7 +305,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
302
305
|
|
|
303
306
|
if (!first_run) {
|
|
304
307
|
if (defer) {
|
|
305
|
-
for (const [key, item] of
|
|
308
|
+
for (const [key, item] of items) {
|
|
306
309
|
if (!keys.has(key)) {
|
|
307
310
|
batch.skipped_effects.add(item.e);
|
|
308
311
|
}
|
|
@@ -331,6 +334,9 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
331
334
|
get(each_array);
|
|
332
335
|
});
|
|
333
336
|
|
|
337
|
+
/** @type {EachState} */
|
|
338
|
+
var state = { effect, flags, items, first };
|
|
339
|
+
|
|
334
340
|
first_run = false;
|
|
335
341
|
|
|
336
342
|
if (hydrating) {
|
|
@@ -341,15 +347,14 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
|
|
|
341
347
|
/**
|
|
342
348
|
* Add, remove, or reorder items output by an each block as its input changes
|
|
343
349
|
* @template V
|
|
344
|
-
* @param {Effect} each_effect
|
|
345
|
-
* @param {Array<V>} array
|
|
346
350
|
* @param {EachState} state
|
|
351
|
+
* @param {Array<V>} array
|
|
347
352
|
* @param {Element | Comment | Text} anchor
|
|
348
353
|
* @param {number} flags
|
|
349
354
|
* @param {(value: V, index: number) => any} get_key
|
|
350
355
|
* @returns {void}
|
|
351
356
|
*/
|
|
352
|
-
function reconcile(
|
|
357
|
+
function reconcile(state, array, anchor, flags, get_key) {
|
|
353
358
|
var is_animated = (flags & EACH_IS_ANIMATED) !== 0;
|
|
354
359
|
|
|
355
360
|
var length = array.length;
|
|
@@ -536,16 +541,6 @@ function reconcile(each_effect, array, state, anchor, flags, get_key) {
|
|
|
536
541
|
}
|
|
537
542
|
});
|
|
538
543
|
}
|
|
539
|
-
|
|
540
|
-
// TODO i have an inkling that the rest of this function is wrong...
|
|
541
|
-
// the offscreen items need to be linked, so that they all update correctly.
|
|
542
|
-
// the last onscreen item should link to the first offscreen item, etc
|
|
543
|
-
each_effect.first = state.first && state.first.e;
|
|
544
|
-
each_effect.last = prev && prev.e;
|
|
545
|
-
|
|
546
|
-
if (prev) {
|
|
547
|
-
prev.e.next = null;
|
|
548
|
-
}
|
|
549
544
|
}
|
|
550
545
|
|
|
551
546
|
/**
|
|
@@ -601,11 +596,11 @@ function create_item(anchor, prev, value, key, index, render_fn, flags, get_coll
|
|
|
601
596
|
|
|
602
597
|
item.e = branch(() => render_fn(/** @type {Node} */ (anchor), v, i, get_collection));
|
|
603
598
|
|
|
604
|
-
item.e.prev = prev && prev.e;
|
|
605
|
-
|
|
606
599
|
if (prev !== null) {
|
|
600
|
+
// we only need to set `prev.next = item`, because
|
|
601
|
+
// `item.prev = prev` was set on initialization.
|
|
602
|
+
// the effects themselves are already linked
|
|
607
603
|
prev.next = item;
|
|
608
|
-
prev.e.next = item.e;
|
|
609
604
|
}
|
|
610
605
|
|
|
611
606
|
return item;
|
|
@@ -640,12 +635,23 @@ function move(item, next, anchor) {
|
|
|
640
635
|
function link(state, prev, next) {
|
|
641
636
|
if (prev === null) {
|
|
642
637
|
state.first = next;
|
|
638
|
+
state.effect.first = next && next.e;
|
|
643
639
|
} else {
|
|
640
|
+
if (prev.e.next) {
|
|
641
|
+
prev.e.next.prev = null;
|
|
642
|
+
}
|
|
643
|
+
|
|
644
644
|
prev.next = next;
|
|
645
645
|
prev.e.next = next && next.e;
|
|
646
646
|
}
|
|
647
647
|
|
|
648
|
-
if (next
|
|
648
|
+
if (next === null) {
|
|
649
|
+
state.effect.last = prev && prev.e;
|
|
650
|
+
} else {
|
|
651
|
+
if (next.e.prev) {
|
|
652
|
+
next.e.prev.next = null;
|
|
653
|
+
}
|
|
654
|
+
|
|
649
655
|
next.prev = prev;
|
|
650
656
|
next.e.prev = prev && prev.e;
|
|
651
657
|
}
|
|
@@ -608,6 +608,8 @@ function flush_effects() {
|
|
|
608
608
|
var was_updating_effect = is_updating_effect;
|
|
609
609
|
is_flushing = true;
|
|
610
610
|
|
|
611
|
+
var source_stacks = DEV ? new Set() : null;
|
|
612
|
+
|
|
611
613
|
try {
|
|
612
614
|
var flush_count = 0;
|
|
613
615
|
set_is_updating_effect(true);
|
|
@@ -633,8 +635,10 @@ function flush_effects() {
|
|
|
633
635
|
}
|
|
634
636
|
|
|
635
637
|
for (const update of updates.values()) {
|
|
636
|
-
|
|
637
|
-
|
|
638
|
+
if (update.error) {
|
|
639
|
+
// eslint-disable-next-line no-console
|
|
640
|
+
console.error(update.error);
|
|
641
|
+
}
|
|
638
642
|
}
|
|
639
643
|
}
|
|
640
644
|
|
|
@@ -643,12 +647,24 @@ function flush_effects() {
|
|
|
643
647
|
|
|
644
648
|
batch.process(queued_root_effects);
|
|
645
649
|
old_values.clear();
|
|
650
|
+
|
|
651
|
+
if (DEV) {
|
|
652
|
+
for (const source of batch.current.keys()) {
|
|
653
|
+
/** @type {Set<Source>} */ (source_stacks).add(source);
|
|
654
|
+
}
|
|
655
|
+
}
|
|
646
656
|
}
|
|
647
657
|
} finally {
|
|
648
658
|
is_flushing = false;
|
|
649
659
|
set_is_updating_effect(was_updating_effect);
|
|
650
660
|
|
|
651
661
|
last_scheduled_effect = null;
|
|
662
|
+
|
|
663
|
+
if (DEV) {
|
|
664
|
+
for (const source of /** @type {Set<Source>} */ (source_stacks)) {
|
|
665
|
+
source.updated = null;
|
|
666
|
+
}
|
|
667
|
+
}
|
|
652
668
|
}
|
|
653
669
|
}
|
|
654
670
|
|
|
@@ -188,18 +188,26 @@ export function internal_set(source, value) {
|
|
|
188
188
|
|
|
189
189
|
if (DEV) {
|
|
190
190
|
if (tracing_mode_flag || active_effect !== null) {
|
|
191
|
-
|
|
191
|
+
source.updated ??= new Map();
|
|
192
192
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
193
|
+
// For performance reasons, when not using $inspect.trace, we only start collecting stack traces
|
|
194
|
+
// after the same source has been updated more than 5 times in the same flush cycle.
|
|
195
|
+
const count = (source.updated.get('')?.count ?? 0) + 1;
|
|
196
|
+
source.updated.set('', { error: /** @type {any} */ (null), count });
|
|
196
197
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
198
|
+
if (tracing_mode_flag || count > 5) {
|
|
199
|
+
const error = get_stack('updated at');
|
|
200
|
+
|
|
201
|
+
if (error !== null) {
|
|
202
|
+
let entry = source.updated.get(error.stack);
|
|
201
203
|
|
|
202
|
-
|
|
204
|
+
if (!entry) {
|
|
205
|
+
entry = { error, count: 0 };
|
|
206
|
+
source.updated.set(error.stack, entry);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
entry.count++;
|
|
210
|
+
}
|
|
203
211
|
}
|
|
204
212
|
}
|
|
205
213
|
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
/** True if experimental.async=true */
|
|
1
2
|
export let async_mode_flag = false;
|
|
3
|
+
/** True if we're not certain that we only have Svelte 5 code in the compilation */
|
|
2
4
|
export let legacy_mode_flag = false;
|
|
5
|
+
/** True if $inspect.trace is used */
|
|
3
6
|
export let tracing_mode_flag = false;
|
|
4
7
|
|
|
5
8
|
export function enable_async_mode_flag() {
|
package/src/version.js
CHANGED
package/types/index.d.ts.map
CHANGED
|
@@ -263,6 +263,6 @@
|
|
|
263
263
|
null,
|
|
264
264
|
null
|
|
265
265
|
],
|
|
266
|
-
"mappings": ";;;;;;;kBAUiBA,2BAA2BA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkC/BC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAwEhBC,kBAAkBA;;;;;;;;;;;;;;;;;;;;;;;;kBAwBbC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoCbC,oBAAoBA;;;;;;;;;;;;;;;;;;;;;;;;aAwBrBC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAiCfC,cAAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA6BdC,aAAaA;;;;;;;;;;;;;;;;;;;;;;;kBAuBRC,OAAOA;;;;;;;;;;;;;;;;kBAgBPC,eAAeA;;;;;;;;;;;;;;;;aAgBpBC,YAAYA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0CPC,IAAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCnSLC,cAAcA;;;;;;;;;;;;iBAsBdC,OAAOA;;;;;;;;iBAwBPC,SAASA;;;;;;;;;;;;;;;;;;;;;;iBA0CTC,qBAAqBA;;;;;;;;;;iBA2CrBC,YAAYA;;;;;;;;;;iBAuBZC,WAAWA;;;;iBCtJXC,gBAAgBA;;;;;MCvEpBC,WAAWA;;;;;iBCkjBPC,SAASA;;;;;;;;;;;;;;;;;;
|
|
266
|
+
"mappings": "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",
|
|
267
267
|
"ignoreList": []
|
|
268
268
|
}
|