@@ -142,7 +142,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
142142 var boundary = find_boundary ( active_effect ) ;
143143
144144 /** @type {Map<any, EachItem> } */
145- var pending_items = new Map ( ) ;
145+ var offscreen_items = new Map ( ) ;
146146
147147 // TODO: ideally we could use derived for runes mode but because of the ability
148148 // to use a store which can be mutated, we can't do that here as mutating a store
@@ -164,7 +164,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
164164 each_effect ,
165165 array ,
166166 state ,
167- pending_items ,
167+ offscreen_items ,
168168 anchor ,
169169 render_fn ,
170170 flags ,
@@ -275,7 +275,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
275275 value = array [ i ] ;
276276 key = get_key ( value , i ) ;
277277
278- var existing = state . items . get ( key ) ?? pending_items . get ( key ) ;
278+ var existing = state . items . get ( key ) ?? offscreen_items . get ( key ) ;
279279
280280 if ( existing ) {
281281 // update before reconciliation, to trigger any async updates
@@ -297,7 +297,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
297297 true
298298 ) ;
299299
300- pending_items . set ( key , item ) ;
300+ offscreen_items . set ( key , item ) ;
301301 }
302302 }
303303
@@ -332,7 +332,7 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f
332332 * @param {Effect } each_effect
333333 * @param {Array<V> } array
334334 * @param {EachState } state
335- * @param {Map<any, EachItem> } pending_items
335+ * @param {Map<any, EachItem> } offscreen_items
336336 * @param {Element | Comment | Text } anchor
337337 * @param {(anchor: Node, item: MaybeSource<V>, index: number | Source<number>, collection: () => V[]) => void } render_fn
338338 * @param {number } flags
@@ -344,7 +344,7 @@ function reconcile(
344344 each_effect ,
345345 array ,
346346 state ,
347- pending_items ,
347+ offscreen_items ,
348348 anchor ,
349349 render_fn ,
350350 flags ,
@@ -406,10 +406,10 @@ function reconcile(
406406 item = items . get ( key ) ;
407407
408408 if ( item === undefined ) {
409- var pending = pending_items . get ( key ) ;
409+ var pending = offscreen_items . get ( key ) ;
410410
411411 if ( pending !== undefined ) {
412- pending_items . delete ( key ) ;
412+ offscreen_items . delete ( key ) ;
413413 items . set ( key , pending ) ;
414414
415415 var next = prev && prev . next ;
@@ -575,9 +575,11 @@ function reconcile(
575575 each_effect . first = state . first && state . first . e ;
576576 each_effect . last = prev && prev . e ;
577577
578- for ( var unused of pending_items . values ( ) ) {
578+ for ( var unused of offscreen_items . values ( ) ) {
579579 destroy_effect ( unused . e ) ;
580580 }
581+
582+ offscreen_items . clear ( ) ;
581583}
582584
583585/**
0 commit comments