1import{a as e}from"./chunk-Cyuzqnbw.js";import{t}from"./react-DpcNkwYL.js";import{t as n}from"./jsx-runtime-CXk3X59i.js";import{t as r}from"./compiler-runtime-DJrZ-MLN.js";import{t as i}from"./directory-card-B80hzcZq.js";import{t as a}from"./search-DJqeXWxD.js";import{t as o}from"./useQuery-Cn2pxcZa.js";import{B as s,gt as c,xt as l}from"./index-C2lIIBTS.js";import{t as u}from"./public-CSek4w7u.js";var d=r(),f=e(t(),1),p=e(n(),1);function m(e){let t=(0,d.c)(42),{initialQuery:n,page:r}=e,[i,s]=(0,f.useState)(n),m=l(),_,v;t[0]===n?(_=t[1],v=t[2]):(_=()=>s(n),v=[n],t[0]=n,t[1]=_,t[2]=v),(0,f.useEffect)(_,v);let y=n||void 0,b;t[3]!==r||t[4]!==y?(b={search:y,page:r,perPage:24,sort:`name`},t[3]=r,t[4]=y,t[5]=b):b=t[5];let x=b,S,C;t[6]===x?(S=t[7],C=t[8]):(S=[`directory`,`public`,`items`,x],C=()=>u(`/api/public/items`,x),t[6]=x,t[7]=S,t[8]=C);let w=n.length>0,T;t[9]!==S||t[10]!==C||t[11]!==w?(T={queryKey:S,queryFn:C,enabled:w},t[9]=S,t[10]=C,t[11]=w,t[12]=T):T=t[12];let E=o(T),D,O;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,p.jsx)(`p`,{children:`Search`}),D=(0,p.jsx)(`h1`,{children:`Search anything you want`}),t[13]=D,t[14]=O):(D=t[13],O=t[14]);let k;t[15]!==m||t[16]!==i?(k=e=>{e.preventDefault(),m({to:`/search`,search:{q:i.trim()||void 0,page:1}})},t[15]=m,t[16]=i,t[17]=k):k=t[17];let A;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,p.jsx)(a,{className:`pointer-events-none absolute left-4 top-1/2 size-5 -translate-y-1/2 text-muted-foreground`}),t[18]=A):A=t[18];let j;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(j=e=>s(e.target.value),t[19]=j):j=t[19];let M;
1t[20]===i?M=t[21]:(M=(0,p.jsx)(`input`,{autoFocus:!0,type:`search`,value:i,onChange:j,placeholder:`Search tools, websites, collections`,className:`h-10 min-w-0 flex-1 rounded-lg border border-border bg-white px-11 text-sm outline-none ring-primary/20 focus:ring-2`}),t[20]=i,t[21]=M);let N;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,p.jsx)(c,{type:`submit`,children:`Search`}),t[22]=N):N=t[22];let P;t[23]!==k||t[24]!==M?(P=(0,p.jsxs)(`header`,{className:`url-search-heading`,children:[O,D,(0,p.jsxs)(`form`,{className:`url-search-filters`,onSubmit:k,children:[A,M,N]})]}),t[23]=k,t[24]=M,t[25]=P):P=t[25];let F;t[26]===n?F=t[27]:(F=n?null:(0,p.jsx)(`p`,{className:`mt-8 text-center text-muted-foreground`,children:`Enter a website, tool, or topic to search the directory.`}),t[26]=n,t[27]=F);let I;t[28]!==n||t[29]!==E.isPending?(I=n&&E.isPending?(0,p.jsx)(`div`,{className:`url-search-grid`,"aria-busy":`true`,children:Array.from({length:12},g)}):null,t[28]=n,t[29]=E.isPending,t[30]=I):I=t[30];let L;t[31]!==n||t[32]!==m||t[33]!==r||t[34]!==E.data||t[35]!==E.isFetching?(L=E.data?(0,p.jsxs)(`section`,{className:`url-search-results`,children:[(0,p.jsxs)(`p`,{children:[`Results for `,(0,p.jsx)(`strong`,{children:n})]}),(0,p.jsx)(`div`,{className:`url-search-grid`,children:E.data.items.map(h)}),E.data.items.length===0?(0,p.jsx)(`p`,{className:`mt-10 text-center text-muted-foreground`,children:`No websites matched that search.`}):null,(0,p.jsxs)(`nav`,{"aria-label":`Search result pages`,className:`mt-8 flex justify-center gap-3`,children:[(0,p.jsx)(c,{variant:`outline`,disabled:r<=1||E.isFetching,onClick:()=>m({to:`/search`,search:{q:n,page:r-1}}),children:`Previous`}),(0,p.jsxs)(`span`,{className:`self-center text-sm text-muted-foreground`,children:[`Page `,r]}),(0,p.jsx)(c,{variant:`outline`,disabled:!E.data.hasMore||E.isFetching,onClick:()=>m({to:`/search`,search:{q:n,page:r+1}}),children:`Next`})]})]}):null,t[31]=n,t[32]=m,t[33]=r,t[34]=E.data,t[35]=E.isFetching,t[36]=L):L=t[36];let R;return t[37]!==P||t[38]!==F||t[39]!==I||t[40]!==L?(R=(0,p.jsxs)(`main`,{className:`url-search-page`,children:[P,F,I,L]}),t[37]=P,t[38]=F,t[39]=I,t[40]=L,t[41]=R):R=t[41],R}function h(e){return(0,p.jsx)(i,{item:e},e.id)}function g(e,t){return(0,p.jsx)(`div`,{className:`h-72 animate-pulse rounded-xl border border-border bg-card/70`},t)}var _=()=>{let e=(0,d.c)(3),t=s.useSearch(),n=t.q??``,r;return e[0]!==t.page||e[1]!==n?(r=(0,p.jsx)(m,{initialQuery:n,page:t.page}),e[0]=t.page,e[1]=n,e[2]=r):r=e[2],r};export{_ as component};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.