Module 518009

1,493 characters · in no known chunk
Dependencies
Required by (1)
Lazily required by (0)none
Requires (3)
Lazily requires (0)none
Source Raw
function(e,t,n){"use strict";n.d(t,{F:()=>o,wL:()=>i}),n(321073),n(627968);var r=n(64700),i=function(e){return e[e.MOUNTED=0]="MOUNTED",e[e.ENTERED=1]="ENTERED",e[e.YEETED=2]="YEETED",e}({});let s={};function a(e){return e}function o(e){let{items:t,renderItem:n,getItemKey:i,wrapChildren:o=a,lazyCleanUpDelay:l}=e,u=r.useRef(-1);r.useLayoutEffect(()=>{-1!==u.current&&clearTimeout(u.current)},[]);let[,c]=r.useState(s),d=r.useRef(null),_=r.useMemo(()=>{let e=new Set(d.current?.keys()),r=new Map(d.current);for(let s of t){let t=i(s),a=r.get(t);if(null==a){let e=+(null!=d.current),r=()=>{let e=d.current?.get(t);null==e||(2===e.state?(d.current?.delete(t),null!=l?(clearTimeout(u.current),u.current=setTimeout(()=>c({}),l)):c({})):__DEV__&&console.warn(`SimpleTransitionGroup.cleanUp: Attempted to remove an item that isn't yeetable: ${t}`))},i=n(t,s,e,r);a={item:s,children:i,state:e,cleanUp:r,renderItem:n}}else if(a.item!==s||a.renderItem!==n||2===a.state){let{cleanUp:e}=a,r=2===a.state?1:a.state,i=n(t,s,r,a.cleanUp);a={item:s,children:i,state:r,cleanUp:e,renderItem:n}}r.set(t,a),e.delete(t)}for(let t of e){let e=r.get(t);if(null!=e)if(2!==e.state||e.renderItem!==n){let{item:i,cleanUp:s}=e;null!=(e={item:i,children:n(t,e.item,2,e.cleanUp),state:2,cleanUp:s,renderItem:n}).children?r.set(t,e):r.delete(t)}else r.set(t,e)}return r},[t,i,n,l]);r.useInsertionEffect(()=>(d.current=_,()=>d.current?.clear()),[_]);let f=[];for(let[,e]of _)f.push(e.children);return f.length>0?o(f,t):null}}