import{j as s,z as v,x as f}from"./index-CmAiVN5e.js";import{D as N}from"./DefaultLayout-DJ-GlaMM.js";import{r as h}from"./vendor-animations-CsoOZIH8.js";import{u as _}from"./useQuery-ver6bBcI.js";import{W as w}from"./WallsService-BUXK93Tu.js";import"./useJivoExternalScript-yyZ--K1Q.js";const y=()=>s.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",xmlns:"http://www.w3.org/2000/svg",children:[s.jsx("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),s.jsx("circle",{cx:"12",cy:"7",r:"4"})]}),k=()=>s.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",xmlns:"http://www.w3.org/2000/svg",children:[s.jsx("circle",{cx:"11",cy:"11",r:"8"}),s.jsx("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]}),L=({onSelect:m})=>{const[c,n]=h.useState(""),[i,o]=h.useState(!1),[d,a]=h.useState(-1),t=h.useRef(null),{data:l=[]}=_({queryKey:["walls-search",c],queryFn:()=>w.searchWalls(c).then(e=>e.data.items||[]),enabled:c.length>=2,staleTime:6e4});h.useEffect(()=>{const e=r=>{t.current&&!t.current.contains(r.target)&&o(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);const u=e=>{!i||l.length===0||(e.key==="ArrowDown"?(e.preventDefault(),a(r=>r<l.length-1?r+1:0)):e.key==="ArrowUp"?(e.preventDefault(),a(r=>r>0?r-1:l.length-1)):e.key==="Enter"?(e.preventDefault(),d>=0&&l[d]&&x(l[d].streamerLogin)):e.key==="Escape"&&o(!1))},x=e=>{n(e),o(!1),m(e)},p=e=>{n(e.target.value),o(!0),a(-1),e.target.value===""&&m("")};return s.jsxs("div",{className:"walls-search",ref:t,children:[s.jsxs("div",{className:"walls-search__input-wrapper",children:[s.jsx("div",{className:"walls-search__icon walls-search__icon--left",children:s.jsx(y,{})}),s.jsx("input",{type:"text",value:c,onChange:p,onFocus:()=>c.length>=2&&o(!0),onKeyDown:u,placeholder:"Ник стримера",className:"walls-search__input"}),s.jsx("div",{className:"walls-search__icon walls-search__icon--right",children:s.jsx(k,{})})]}),i&&l.length>0&&c.length>=2&&s.jsx("ul",{className:"walls-search__dropdown",children:l.map((e,r)=>{const j=e.streamerLogin||"",g=r===d;return s.jsxs("li",{className:`walls-search__item ${g?"walls-search__item--focused":""}`,onClick:()=>x(j),onMouseEnter:()=>a(r),children:[s.jsx("span",{className:"walls-search__item-text",children:j}),g&&s.jsx("div",{className:"walls-search__item-indicator"})]},e.streamerId)})})]})},S=()=>{v();const[m,c]=h.useState(""),{data:n}=_({queryKey:["walls-stats"],queryFn:()=>w.getWallsStats().then(a=>a.data.data??a.data),refetchOnWindowFocus:!1}),{data:i,isLoading:o}=_({queryKey:["walls",m],queryFn:()=>w.getWalls({nickname:m},{page:1,pageSize:50,withCount:!1}).then(a=>{const t=a.data;return t.items?t.items:t.data?t.data:[]}),refetchOnWindowFocus:!1}),d=((n==null?void 0:n.totalPaintedPixels)??(n==null?void 0:n.totalPixels)??0).toLocaleString("ru-RU");return s.jsxs("div",{className:"walls-list",children:[s.jsxs("div",{className:"walls-list__header",children:[s.jsxs("div",{className:"walls-list__header-content",children:[s.jsx("div",{className:"walls-list__description",children:"Стена – это уникальный сервис iHAQ Donate, который позволяет донатерам создать рисунок и навсегда оставить его на стене стримера. Количество пикселей доступное зрителю для рисунка определяется суммой доната (пиксели выдаются, как бонус)."}),s.jsxs("div",{className:"walls-list__stats",children:[s.jsx("span",{children:"Всего закрашено:"}),s.jsxs("strong",{children:[d," px"]})]})]}),s.jsx("div",{className:"walls-list__filters",children:s.jsx("div",{className:"walls-list__search",children:s.jsx(L,{onSelect:a=>c(a)})})})]}),s.jsx("div",{className:"walls-list__content",children:o?null:(i==null?void 0:i.length)===0?s.jsx("div",{className:"walls-list__empty",children:"Ничего не найдено"}):s.jsx("div",{className:"walls-list__grid",children:i==null?void 0:i.map(a=>{const t=a.id||a.wallId,l=a.nickname||a.streamerLogin,u=a.streamerAvatar,x=(a.totalPaintedPixels||0).toLocaleString("ru-RU");return s.jsxs(f,{to:`/walls/${l}`,className:"walls-list__card",children:[s.jsxs("div",{className:"walls-list__card-info",children:[s.jsx("div",{className:"walls-list__card-avatar",children:u?s.jsx("img",{src:`/img/avatars/100/${u}`,alt:l}):s.jsx("span",{className:"walls-list__card-avatar-placeholder",children:l.charAt(0).toUpperCase()})}),s.jsxs("div",{className:"walls-list__card-text",children:[s.jsx("div",{className:"walls-list__card-title",children:l}),s.jsxs("div",{className:"walls-list__card-stats",children:[x," px"]})]})]}),s.jsx("div",{className:"walls-list__card-image",children:a.previewImageUrl?s.jsx("img",{src:`/images/walls/${a.previewImageUrl}`,alt:`Стена ${l}`}):s.jsx("div",{className:"walls-list__card-placeholder"})})]},t)})})})]})},C=()=>s.jsx(N,{children:s.jsx(S,{})});export{C as WallListPage};