Loading
function(e,t,n){"use strict";n.d(t,{d5:()=>U,Ay:()=>G,uG:()=>k});var l=n(627968),i=n(64700),s=n(503698),r=n.n(s),a=n(735438),o=n.n(a);n(321073);class u{_elements;_createElement;_cleanElement;constructor(e,t){this._elements=[],this._createElement=e,this._cleanElement=t}getElement(){return 0===this._elements.length?this._createElement():this._elements.pop()}poolElement(e){this._cleanElement(e),this._elements.push(e)}clearPool(){this._elements.length=0}}var c=n(803805),d=n(661531),m=n(939249),h=n(825484),p=n(821609),f=n(27232),g=n(364522),E=n(92008),A=n(497685),C=n(25277),x=n(537652),I=n(267102),_=n(202803),S=n(439401),y=n(998218),v=n(327143),T=n(652215),N=n(375708),j=n(931102);let b=[d.A.unsafe_rawColors.PREMIUM_TIER_1_PURPLE.css,d.A.unsafe_rawColors.PREMIUM_TIER_1_BLUE.css,"#929AFA"],R=Array.from({length:16}).map((e,t)=>({id:`${t}`,height:Math.floor(100*Math.random())+120}));function P(e){return e.id??e.src}function L(e,t){let n=R[t];return null==n?0:n.height}function M(e,t,n,i){if(!(e>0))return null==R[t]?null:(0,l.jsx)("div",{className:j.qf,style:{animationDelay:`${75*t}ms`,...n}},i)}function O(e,t){return e>0?"":R[t]?.id??""}function w(e){return e===c.TL.VIDEO}class k extends i.PureComponent{ref=null;_video=null;_image=null;_mounted=!0;constructor(e){super(e);const{format:t,color:n,imagePool:l}=this.props;this.state={color:null==n?o().sample(b):n,loaded:!1},w(t)||(this._image=l.getElement(),this._image.onload=()=>this.setState({loaded:!0}),this._image.src=e.src)}componentDidMount(){let{props:{format:e,src:t,coords:{width:n,height:l},videoPool:i},ref:s}=this;if(e!==c.TL.VIDEO||null==s)return;let r=i.getElement();r.oncanplay=this.handleCanPlay,r.src=t,r.width=n,r.height=l,s.appendChild(r),this._video=r}componentDidUpdate(e){let{width:t,height:n}=this.props.coords;null!=this._video&&(e.coords.width!==t||e.coords.height!==n)&&(this._video.width=t,this._video.height=n)}componentWillUnmount(){this._mounted=!1;let{_image:e,_video:t}=this,{imagePool:n,videoPool:l}=this.props;null!=e&&(this._image=null,n.poolElement(e)),null!=t&&(this._video=null,l.poolElement(t))}handleCanPlay=()=>{this._mounted&&this.setState({loaded:!0})};handleClick=()=>{let{onClick:e,item:t,index:n}=this.props;null!=e&&e(t,n)};renderGIF(){let e,t,{src:n,coords:{width:i,height:s}}=this.props,{loaded:r}=this.state;return r?(0,l.jsx)("img",{src:(t=null!=(e=y.A.toURLSafe(n))&&((0,_.BX)(e)||(0,_.fr)(e))&&e.pathname.toLowerCase().endsWith(".gif"),null!=e&&(((0,_.BX)(e)||(0,_.fr)(e))&&(e.pathname.toLowerCase().endsWith(".webp")||e.pathname.toLowerCase().endsWith(".avif"))||t)?(t&&e.searchParams.set("format","webp"),e.searchParams.set("animated","true"),e.toString()):n),width:i,height:s,className:j.nX,alt:""}):null}render(){let{item:e,renderExtras:t,format:n,coords:i,focused:s,selected:r}=this.props,{color:a,loaded:o}=this.state;return(0,l.jsxs)(m.D,{tabIndex:-1,innerRef:e=>{this.ref=e},className:j.Ke,"data-focused":s,"data-selected":r,onClick:this.handleClick,style:{backgroundColor:o?void 0:a,...i},children:[w(n)?null:this.renderGIF(),null!=t?t(e):null]})}}class D extends i.PureComponent{_masonryRef=i.createRef();prevResultQuery=null;state={focusedId:null};componentDidMount(){let{resultType:e,data:t}=this.props;e===T.dD.FAVORITES&&((0,A.Qh)(T.dD.FAVORITES),(0,A.H9)(t,T.dD.FAVORITES,{limit:null}))}handleFocus=e=>{let{current:t}=this._masonryRef;if(null==t)return;let n=t.getCoordsMap()[e];null!=n&&(t.scrollIntoViewRect({start:n.top-10,end:n.top+n.height+10}),this.setState({focusedId:e}))};selectItem(e,t){let{onSelectGIF:n,resultType:l,data:i,resultQuery:s}=this.props;null!=n&&n(e),(0,A.g4)({type:l,index:t,offset:this.props.searchOffset,limit:this.props.searchLimit,results:i.length,totalResults:this.props.searchTotalResults,query:s,gifId:e.id})}handleSelect=e=>{let t,{data:n}=this.props,l=n.findIndex(t=>P(t)===e);-1!==l&&(t=n[l]),null!=t&&this.selectItem(t,l)};handleClickItem=(e,t)=>{this.selectItem(e,t)};handleScroll=()=>{let{resultQuery:e}=this.props,{current:t}=this._masonryRef;if(null==t)return;let{scrollTop:n,scrollHeight:l}=t.getScrollerState();l-n<=1220&&(e!==this.prevResultQuery&&(0,A._E)(e),this.prevResultQuery=e)};renderItem=(e,t,n,i)=>{if(e>0)return null;let{focusedId:s}=this.state,{selectedGIF:r}=this.props,a=this.props.data[t];if(null==a)return null;let o=null!=r&&P(r)===P(a);return(0,l.jsx)(k,{item:a,index:t,format:a.format,src:a.src,coords:n,onClick:this.handleClickItem,renderExtras:()=>(0,l.jsx)(S.A,{className:j.uJ,...a}),focused:P(a)===s,imagePool:this.props.imagePool,videoPool:this.props.videoPool,selected:o},i)};getItemHeight=(e,t,n)=>{if(e>0)return 0;let l=this.props.data[t];return null==l?0:n*(l.height/l.width)};getItemKey=(e,t)=>{if(e>0)return null;let n=this.props.data[t];return null!=n?n.id??n.src:null};getSectionHeight(e){return 220*(1===e)}renderSection=(e,t,n)=>{let{onSelectSuggestion:s,suggestions:r}=this.props;return 1===e?(0,l.jsx)("div",{className:j.jZ,style:t,children:r.length>0?(0,l.jsxs)(i.Fragment,{children:[(0,l.jsx)("div",{className:j.Z4,children:N.intl.string(N.t["3JGJo2"])}),(0,l.jsx)(h.e,{size:"sm",className:j.yB,children:r.map(e=>(0,l.jsx)(p.$,{variant:"secondary",onClick:()=>{s(e)},text:e},e))})]}):null},n):null};renderEmptyFavorite(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,l.jsx)("div",{className:j.LA,children:null!=e?(0,l.jsxs)("div",{className:j.BA,children:[t?(0,l.jsx)(f.G,{size:"xs",color:"currentColor",className:j.$2}):null,(0,l.jsx)("div",{className:j.i6,children:e})]}):(0,l.jsx)("div",{className:j.Hc})})}renderEmptyFavorites(){return(0,l.jsx)(g.Ip,{className:j.Xv,fade:!0,children:(0,l.jsxs)("div",{className:j.Ep,children:[this.renderEmptyFavorite(N.intl.string(N.t["3gyw4Z"]),!0),this.renderEmptyFavorite(N.intl.string(N.t.yThUi4)),this.renderEmptyFavorite(N.intl.string(N.t.MeP0SF)),Array.from({length:15}).map((e,t)=>(0,l.jsx)(i.Fragment,{children:this.renderEmptyFavorite()},t)),this.renderEmptyFavorite(N.intl.string(N.t["5u99Xb"])),Array.from({length:16}).map((e,t)=>(0,l.jsx)(i.Fragment,{children:this.renderEmptyFavorite()},t)),this.renderEmptyFavorite(N.intl.string(N.t.o6CLL4))]})})}renderContent=(e,t,n)=>{let{className:i,data:s,resultQuery:a,query:o,resultType:u}=this.props;return 0===s.length&&(a!==o||u===T.dD.TRENDING_GIFS)?(0,l.jsx)(E.f,{fade:!0,className:r()(j.Xv,i),sections:[R.length],columns:e,itemGutter:12,getItemKey:O,getItemHeight:L,renderItem:M,chunkSize:128},a):(0,l.jsx)(E.f,{ref:this._masonryRef,fade:!0,itemGutter:12,className:r()(j.Xv,i),columns:e,sections:[s.length,0],getItemKey:this.getItemKey,getItemHeight:this.getItemHeight,renderItem:this.renderItem,getSectionHeight:this.getSectionHeight,renderSection:this.renderSection,onScroll:this.handleScroll,chunkSize:128},`${a}-${u??""}`)};getItemGrid=()=>{let{current:e}=this._masonryRef;return null!=e?e.getItemGrid():[]};getCoordsMap=()=>{let{current:e}=this._masonryRef;return null!=e?e.getCoordsMap():{}};render(){let{data:e,resultQuery:t,query:n,resultType:i}=this.props;return 0===e.length&&t===n&&i!==T.dD.TRENDING_GIFS?i===T.dD.FAVORITES?this.renderEmptyFavorites():(0,l.jsx)(x.A,{message:N.intl.string(N.t["5dX4UM"]),className:j.wV}):(0,l.jsx)(C.A,{getItemGrid:this.getItemGrid,getCoordsMap:this.getCoordsMap,onFocus:this.handleFocus,onSelect:this.handleSelect,children:(0,l.jsx)(v.A,{desiredItemWidth:200,maxColumns:8,children:this.renderContent})},t)}}function U(){let{renderWindow:e}=i.useContext(I.Ay),t=e.document,[n]=i.useState(()=>new u(()=>t.createElement("img"),e=>{e.onload=null,e.src=""})),[l]=i.useState(()=>new u(()=>{let e=t.createElement("video");return e.className=j.nX,e.autoplay=!0,e.loop=!0,e.muted=!0,e.preload="auto",e.controls=!1,e},e=>{e.src="",e.oncanplay=null;let{parentNode:t}=e;null!=t&&t.removeChild(e)}));return{imagePool:n,videoPool:l}}let G=function(e){let t=U();return(0,l.jsx)(D,{...e,...t})}}