PageSourceSearch

https://wnt.news/assets/PublicationsBrowsePage-DGYkv6MY.js

js wnt.news collected 2026-10-09 04:41:53 UTC 2,194 bytes, 1 lines download raw bytes

1import{j as e,S as b,t as o,L as x,e as y}from"./index-DiEAD9H0.js";import{b as a}from"./vendor-Cxkd7Rn9.js";import{H as h}from"./Header-CpSE8t3Z.js";import{S as j,P as g}from"./PublicationRow-DatwFMg7.js";import"./firebase-firestore-DHdvPTSu.js";import"./firebase-core-BBTPXah2.js";import"./firebase-functions-B0joJczI.js";function E(){const[i,p]=a.useState([]),[m,n]=a.useState(!0),[c,u]=a.useState(null),[l,f]=a.useState("");a.useEffect(()=>{let t=!1;async function s(){try{n(!0),u(null);const r=await y(200);t||p(r)}catch(r){t||u((r==null?void 0:r.message)||"Failed to load publications")}finally{t||n(!1)}}return s(),()=>{t=!0}},[]);const d=a.useMemo(()=>{const t=l.trim().toLowerCase();return t?i.filter(s=>!!(s.name.toLowerCase().includes(t)||s.handle.toLowerCase().includes(t)||s.description.toLowerCase().includes(t)||s.topics.some(r=>r.toLowerCase().includes(t)))):i},[i,l]);return e.jsxs("div",{className:"max-w-2xl mx-auto",children:[e.jsx(b,{title:o("publications"),description:"Browse independent publications on WNT.",path:"/publications"}),e.jsx(h,{title:o("publications")}),e.jsx("div",{className:"sticky top-14 z-30 bg-white/80 backdrop-blur-md border-b border-border p-4",children:e.jsxs("div",{className:"relative",children:[e.jsx(j,{size:18,className:"absolute left-3 top-1/2 -translate-y-1/2 text-text-tertiary"}),e.jsx("input",{type:"text",value:l,onChange:t=>f(t.target.value),placeholder:o("searchPublications"),className:"w-full pl-10 pr-4 py-2.5 rounded-full bg-surface-secondary border border-border text-sm text-text-primary placeholder:text-text-tertiary focus:outline-none focus:border-primary transition-colors"})]})}),m?e.jsxs(e.Fragment,{children:[e.jsx(x,{type:"story-card"}),e.jsx(x,{type:"story-card"})]}):c?e.jsx("p",{className:"text-center py-12 text-text-tertiary text-sm",children:c}):i.length===0?e.jsx("p",{className:"text-center py-12 text-text-tertiary text-sm",children:"No publications yet."}):d.length===0?e.jsx("p",{className:"text-center py-12 text-text-tertiary text-sm",children:o("noResults")}):e.jsx("ul",{className:"divide-y divide-border",children:d.map(t=>e.jsx("li",{children:e.jsx(g,{publication:t})},t.id))})]})}export{E as default};

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.