1import{e as j,r as d,j as e,d as N}from"./index-Dbxhi8U8.js";import{u as w}from"./useSuspenseQuery-SaN5UeEv.js";import{f as g}from"./format-CLqQB3FU.js";const v={pouring:"Pouring",low:"Keg low",blown:"Back soon"};function L(){const{data:a}=w(j),c=a.taps,n=d.useMemo(()=>{const s=[];c.length>0&&s.push({slug:"taplist",name:"Tap List"});for(const t of a.drinkCategories)a.drinkItems.some(r=>r.category_slug===t.slug)&&s.push({slug:t.slug,name:t.name});return s},[a.drinkCategories,a.drinkItems,c.length]),f=n.map(s=>s.slug).join("|"),[h,m]=d.useState(n[0]?.slug??""),u=d.useRef(0),x=132;d.useEffect(()=>{if(n.length===0)return;m(o=>n.some(l=>l.slug===o)?o:n[0].slug);let s=0;function t(){if(s=0,Date.now()<u.current)return;let o=n[0].slug;for(const l of n){const i=document.getElementById(l.slug);if(!i)continue;if(i.getBoundingClientRect().top-x<=1)o=l.slug;else break}m(o)}function r(){s||(s=requestAnimationFrame(t))}return t(),window.addEventListener("scroll",r,{passive:!0}),window.addEventListener("resize",r),()=>{window.removeEventListener("scroll",r),window.removeEventListener("resize",r),s&&cancelAnimationFrame(s)}},[f]);function b(s){const t=document.getElementById(s);if(!t)return;m(s),u.current=Date.now()+900;const r=window.scrollY+t.getBoundingClientRect().top-x;window.scrollTo({top:r,behavior:"smooth"})}return e.jsxs(N,{children:[e.jsxs("header",{className:"mb-8 max-w-2xl",children:[e.jsx("p",{className:"text-xs uppercase tracking-[0.22em] text-pine",children:"What's pouring"}),e.jsx("h1",{className:"mt-3 font-display text-5xl text-forest",children:"Current Tap List & Drinks"}),e.jsx("p",{className:"mt-4 text-base text-muted-foreground",children:"Battery 245 Originals, cocktails, and wine."}),e.jsxs("p",{className:"mt-3 text-sm text-muted-foreground",children:["Ask your server about ",e.jsx("strong",{className:"font-semibold text-foreground",children:"guest taps and seasonal ciders"}),"."]})]}),n.length>0&&e.jsx("nav",{"aria-label":"Drinks sections",className:"sticky top-16 z-30 -mx-4 mb-10 border-y border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80 sm:-mx-6",children:e.jsx("ul",{className:"flex gap-1 overflow-x-auto px-4 py-2 sm:px-6 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:n.map(s=>{const t=s.slug===h;return e.jsx("li",{children:e.jsx("button",{type:"button",onClick:()=>b(s.slug),className:`whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium tracking-wide transition-colors ${t?"bg-forest text-bone":"text-foreground/70 hover:bg-forest/10 hover:text-forest"}`,children:s.name})},s.slug)})})}),e.jsxs("div",{className:"space-y-16",children:[c.length>0&&e.jsxs("section",{id:"taplist",className:"scroll-mt-32",children:[e.jsx("div",{className:"flex items-baseline justify-between border-b border-pine/30 pb-3",children:e.jsx("h2",{className:"font-display text-3xl text-forest",children:"Tap List"})}),e.jsx("ul",{className:"mt-6 grid gap-4 sm:grid-cols-2",children:c.map(s=>{const t=s.status==="blown";return e.jsxs("li",{className:`rounded-sm border p-5 ${t?"border-border bg-muted/40":s.status==="low"?"border-destructive/40 bg-destructive/5":"border-border bg-card"}`,children:[e.jsxs("div",{className:"flex items-center justify-between text-xs uppercase tracking-wider text-muted-foreground",children:[e.jsxs("span",{className:`flex items-center gap-2 ${t?"text-muted-foreground/60":""}`,children:[s.tap_number!=null&&e.jsxs("span",{className:`font-mono ${t?"text-muted-foreground/60":"text-pine"}`,children:["#",s.tap_number]}),e.jsx("span",{children:s.style??"Beer"})]}),e.jsx("span",{className:t?"font-medium text-muted-foreground":s.status==="low"?"text-destructive font-medium":"text-pine",children:v[s.status]})]}),e.jsx("h3",{className:`mt-3 font-display text-2xl ${t?"text-muted-foreground line-through":"text-foreground"}`,children:s.name}),e.jsxs("div",{className:`mt-1 flex flex-wrap items-center gap-x-4 gap-y-1 text-sm ${t?"text-muted-foreground/60":"text-muted-foreground"}`,children:[s.abv!=null&&e.jsxs("span",{className:"font-mono",children:[s.abv,"% ABV"]}),s.ibu!=null&&e.jsxs("span",{className:"font-mono",children:[s.ibu," IBU"]})]}),s.description&&e.jsx("p",{className:`mt-3 text-sm ${t?"text-muted-foreground
1/60":"text-foreground/75"}`,children:s.description})]},s.id)})}),e.jsx("p",{className:"mt-6 text-sm italic text-muted-foreground",children:"Ask about guest taps & seasonal ciders."})]}),a.drinkCategories.map(s=>{const t=a.drinkItems.filter(r=>r.category_slug===s.slug);return t.length===0?null:e.jsxs("section",{id:s.slug,className:"scroll-mt-32",children:[e.jsx("div",{className:"flex items-baseline justify-between border-b border-pine/30 pb-3",children:e.jsx("h2",{className:"font-display text-3xl text-forest",children:s.name})}),e.jsx("ul",{className:"mt-6 divide-y divide-border",children:t.map(r=>{const o=r.price_variants,l=o.length>0;return e.jsxs("li",{className:"flex flex-col gap-2 py-5 sm:flex-row sm:items-start sm:justify-between sm:gap-6",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("h3",{className:"font-display text-xl text-foreground",children:r.name}),r.description&&e.jsx("p",{className:"mt-1.5 text-sm text-muted-foreground",children:r.description})]}),e.jsx("div",{className:"shrink-0 text-forest",children:l?e.jsx("ul",{className:"flex flex-col items-start gap-1 sm:items-end",children:o.map((i,p)=>e.jsxs("li",{className:"flex items-baseline gap-2 font-mono text-sm",children:[e.jsx("span",{className:"text-[11px] uppercase tracking-wider text-muted-foreground",children:i.label}),e.jsx("span",{children:g(i.price_cents)})]},p))}):e.jsx("span",{className:"font-mono text-sm",children:g(r.price_cents)})})]},r.id)})})]},s.id)}),n.length===0&&e.jsx("p",{className:"text-muted-foreground",children:"No drinks listed yet. Check back soon."})]})]})}export{L 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.