1import{u as i,bi as o,j as e,L as r,$ as d}from"./index-DCkA9xGt.js";import{a as c}from"./datetime-DEDbLob7.js";import{C as m}from"./calendar-DV0wYnoT.js";import{C as x}from"./clock-G6rRLl_Z.js";function b(){const{data:s,isPending:a}=i({queryKey:["blog-posts"],queryFn:()=>o(),staleTime:6e4}),l={"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://aiscan.site/blog",url:"https://aiscan.site/blog",name:"AI Readiness Blog â AIScan.site"},{"@type":"ItemList",itemListElement:(s??[]).map((t,n)=>({"@type":"ListItem",position:n+1,url:`https://aiscan.site/blog/${t.slug}`,name:t.title}))}]};return e.jsxs(e.Fragment,{children:[e.jsxs("main",{className:"mx-auto w-full max-w-6xl px-4 pb-16 pt-2",children:[e.jsxs("nav",{className:"mb-6 flex items-center gap-1.5 text-sm text-muted-foreground",children:[e.jsx(r,{to:"/",className:"hover:text-foreground",children:"Home"}),e.jsx(d,{className:"h-3.5 w-3.5"}),e.jsx("span",{className:"text-foreground",children:"Blog"})]}),e.jsxs("header",{className:"mb-10",children:[e.jsx("h1",{className:"font-display text-3xl sm:text-4xl",children:"AI Readiness Blog"}),e.jsx("p",{className:"mt-3 max-w-2xl text-muted-foreground",children:"Practical guides on making your website discoverable, parseable, and actionable for AI agents and LLM-powered search."})]}),a?e.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading postsâ¦"}):!s||s.length===0?e.jsxs("div",{className:"rounded-lg border border-dashed border-border bg-card p-10 text-center",children:[e.jsx("p",{className:"font-display text-lg",children:"First post coming soon."}),e.jsx("p",{className:"mt-2 text-sm text-muted-foreground",children:"We're working on the launch posts â check back shortly."})]}):e.jsx("div",{className:"grid gap-6 sm:grid-cols-2 lg:grid-cols-3",children:s.map(t=>e.jsx(g,{post:t},t.id))})]}),e.jsx("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(l)}})]})}function g({post:s}){const a=s.published_at?c(s.published_at):"";return e.jsxs(r,{to:"/blog/$slug",params:{slug:s.slug},className:"group flex flex-col overflow-hidden rounded-lg border border-border bg-card transition hover:border-primary/40 hover:shadow-sm",children:[s.cover_image_url?e.jsx("div",{className:"aspect-[16/9] overflow-hidden bg-muted",children:e.jsx("img",{src:s.cover_image_url,alt:s.cover_image_alt??s.title,loading:"lazy",className:"h-full w-full object-cover transition group-hover:scale-[1.02]"})}):e.jsx("div",{className:"aspect-[16/9] bg-gradient-to-br from-muted via-muted to-background"}),e.jsxs("div",{className:"flex flex-1 flex-col gap-3 p-5",children:[s.category&&e.jsx("span",{className:"w-fit rounded-full border border-border bg-muted/50 px-2 py-0.5 font-mono text-[10px] uppercase tracking-wider text-muted-foreground",children:s.category}),e.jsx("h2",{className:"font-display text-lg leading-tight group-hover:text-primary",children:s.title}),s.excerpt&&e.jsx("p",{className:"line-clamp-3 text-sm text-muted-foreground",children:s.excerpt}),e.jsxs("div",{className:"mt-auto flex items-center gap-3 text-xs text-muted-foreground",children:[e.jsx("span",{className:"truncate",children:s.author_name}),a&&e.jsxs("span",{className:"inline-flex items-center gap-1",children:[e.jsx(m,{className:"h-3 w-3"})," ",a]}),s.reading_time_minutes&&e.jsxs("span",{className:"inline-flex items-center gap-1",children:[e.jsx(x,{className:"h-3 w-3"})," ",s.reading_time_minutes," min"]})]})]})]})}export{b 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.