Build 545032stable
Module 3666
2,298 characters · in e0a6ab5b1f60b206.jsDependencies
Source Raw
function(e,t,n){n.d(t,{Ae:()=>f,Wv:()=>o,ZV:()=>m,g2:()=>h});var r=n(627968),i=n(64700),l=n(503698),u=n.n(l),s=n(990078),c=n(765671),a=n(375708),d=n(197669);function o(e){let{itemGapPx:t,items:n,maxLines:r,containerWidth:l}=e,[u,s]=i.useState(0),c=i.useRef([]),a=i.useRef(0),d=i.useRef(0),o=i.useRef(null),h=i.useCallback((e,t)=>{c.current[e]=t},[]);return i.useLayoutEffect(()=>{if(null==o.current)return;c.current.length=n.length,a.current=o.current.getBoundingClientRect().width??0;let e=function(e){let{items:t,maxLines:n,itemWidths:r,itemGapPx:i,containerWidth:l,overflowWidth:u}=e,s=0,c=0,a=0;for(let e=0;e<t.length;e++){let d=r[e];if(isNaN(d)||d>l)continue;let o=s===n-1,h=e===t.length-1;if(!(Math.round(c+d+(o&&!h?u+i:0))<Math.round(l))){if(o)break;s++,c=0}a=e,c+=d+i}return a}({items:n,maxLines:r,itemGapPx:t,containerWidth:l,itemWidths:c.current,overflowWidth:a.current});e!==d.current&&(d.current=e,s(e=>e+1))},[l,t,n,r]),i.useMemo(()=>({lastVisibleIndex:d.current,onItemLayout:h,overflowItemsRef:o,itemWidthsRef:c,version:u}),[h,u])}function h(e){let{items:t,renderItem:n}=e;return(0,r.jsx)(s.m,{__unsupportedReactNodeAsText:(0,r.jsx)("div",{className:d.YL,children:t.map(n)}),"aria-label":"overflow",children:(0,r.jsx)("div",{children:n(a.intl.formatToPlainString(a.t.vGclWm,{count:t.length}))})})}function f(e){let{onItemLayout:t,index:n,children:l}=e,u=i.useRef(null);return i.useLayoutEffect(()=>{null==u.current||t(n,u.current.getBoundingClientRect().width)}),(0,r.jsx)("div",{ref:u,children:l})}function m(e){let{className:t,items:n,renderItem:l,itemGapPx:s=0,maxLines:m,renderOverflow:g}=e,{ref:p,width:v=0}=(0,c.Ay)(),{lastVisibleIndex:x,onItemLayout:j,overflowItemsRef:k}=o({items:n,itemGapPx:s,maxLines:m,containerWidth:v}),N=i.useCallback(e=>(0,r.jsx)(h,{items:e,renderItem:l}),[l]),R=i.useMemo(()=>n.slice(0,x+1),[n,x]),b=i.useMemo(()=>n.slice(x+1),[n,x]);return(0,r.jsxs)("div",{className:u()(t,d.ld),ref:p,children:[(0,r.jsxs)("div",{"aria-hidden":!0,className:d.Kk,children:[(0,r.jsx)("div",{className:d.R5,children:n.map((e,t)=>(0,r.jsx)(f,{index:t,onItemLayout:j,children:l(e)},"string"==typeof e?e:e.key))}),(0,r.jsx)("div",{className:d.zd,ref:k,children:l(a.intl.formatToPlainString(a.t.vGclWm,{count:Number(`1${n.length}`)}))})]}),R.map(l),b.length>0&&(g??N)(b)]})}}