Skip to content

Commit 3690233

Browse files
committed
WIP
1 parent 2b70f3f commit 3690233

File tree

1 file changed

+5
-35
lines changed
  • packages/svelte/src/internal/client/dom/blocks

1 file changed

+5
-35
lines changed

packages/svelte/src/internal/client/dom/blocks/each.js

Lines changed: 5 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,6 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
201201
var keys = new Set();
202202
var batch = /** @type {Batch} */ (current_batch);
203203
var prev = null;
204-
var defer = should_defer_append();
205204

206205
for (var i = 0; i < length; i += 1) {
207206
if (
@@ -232,16 +231,13 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
232231
} else {
233232
item = create_item(
234233
first_run ? (hydrating ? hydrate_node : anchor) : null,
235-
state,
236234
prev,
237-
null,
238235
value,
239236
key,
240237
i,
241238
render_fn,
242239
flags,
243-
get_collection,
244-
defer
240+
get_collection
245241
);
246242

247243
if (first_run) {
@@ -291,7 +287,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
291287
}
292288

293289
if (!first_run) {
294-
if (defer) {
290+
if (should_defer_append()) {
295291
batch.oncommit(commit);
296292
} else {
297293
commit();
@@ -574,31 +570,16 @@ function update_item(item, value, index, type) {
574570
/**
575571
* @template V
576572
* @param {Node | null} anchor
577-
* @param {EachState} state
578573
* @param {EachItem | null} prev
579-
* @param {EachItem | null} next
580574
* @param {V} value
581575
* @param {unknown} key
582576
* @param {number} index
583577
* @param {(anchor: Node, item: V | Source<V>, index: number | Value<number>, collection: () => V[]) => void} render_fn
584578
* @param {number} flags
585579
* @param {() => V[]} get_collection
586-
* @param {boolean} [deferred]
587580
* @returns {EachItem}
588581
*/
589-
function create_item(
590-
anchor,
591-
state,
592-
prev,
593-
next,
594-
value,
595-
key,
596-
index,
597-
render_fn,
598-
flags,
599-
get_collection,
600-
deferred
601-
) {
582+
function create_item(anchor, prev, value, key, index, render_fn, flags, get_collection) {
602583
var previous_each_item = current_each_item;
603584
var reactive = (flags & EACH_ITEM_REACTIVE) !== 0;
604585
var mutable = (flags & EACH_ITEM_IMMUTABLE) === 0;
@@ -625,7 +606,7 @@ function create_item(
625606
// @ts-expect-error
626607
e: null,
627608
prev,
628-
next
609+
next: null
629610
};
630611

631612
current_each_item = item;
@@ -639,23 +620,12 @@ function create_item(
639620
item.e = branch(() => render_fn(/** @type {Node} */ (anchor), v, i, get_collection));
640621

641622
item.e.prev = prev && prev.e;
642-
item.e.next = next && next.e;
643623

644-
if (prev === null) {
645-
if (!deferred) {
646-
// TODO move this into block effect?
647-
// state.first = item;
648-
}
649-
} else {
624+
if (prev !== null) {
650625
prev.next = item;
651626
prev.e.next = item.e;
652627
}
653628

654-
if (next !== null) {
655-
next.prev = item;
656-
next.e.prev = item.e;
657-
}
658-
659629
return item;
660630
} finally {
661631
current_each_item = previous_each_item;

0 commit comments

Comments
 (0)