1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5987],{5987:(e,t,r)=>{r.r(t),r.d(t,{VenueTableView:()=>l});var n=r(5155),s=r(2115),a=r(8599);let i={free:0,$:1,$$:2,$$$:3};function c({label:e,sortKey:t,currentSort:r,currentDir:s,onSort:a,className:i}){let c=r===t;return(0,n.jsx)("th",{scope:"col",className:`cursor-pointer px-3 py-2.5 text-left text-xs font-semibold tracking-wider text-zinc-500 uppercase select-none hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white ${i??""}`,onClick:()=>a(t),"aria-sort":c?"asc"===s?"ascending":"descending":"none",children:(0,n.jsxs)("span",{className:"inline-flex items-center gap-1",children:[e,c&&(0,n.jsx)("span",{"aria-hidden":"true",className:"text-zinc-900 dark:text-white",children:"asc"===s?"â²":"â¼"})]})})}function l({venues:e,onSelect:t,inlineCta:r}){let[l,d]=(0,s.useState)("rating"),[o,x]=(0,s.useState)("desc");function u(e){e===l?x(e=>"asc"===e?"desc":"asc"):(d(e),x("name"===e||"distance"===e?"asc":"desc"))}let p=[...e].sort((e,t)=>{let r="asc"===o?1:-1;switch(l){case"name":return r*e.name.localeCompare(t.name);case"rating":return r*((0,a.he)(e.rating,e.reviewCount)-(0,a.he)(t.rating,t.reviewCount));case"reviews":return r*((e.reviewCount??0)-(t.reviewCount??0));case"price":return r*((i[(0,a.RS)(e)??""]??99)-(i[(0,a.RS)(t)??""]??99));case"category":{let n=(0,a.PC)(e.typeTags,e.categories).label,s=(0,a.PC)(t.typeTags,t.categories).label;return r*n.localeCompare(s)}case"distance":return r*((e.distanceMiles??0)-(t.distanceMiles??0));default:return 0}}),m=e.some(e=>null!==(0,a.RS)(e));return(0,n.jsx)("div",{className:"border-border mt-6 overflow-x-auto rounded-xl border shadow-[var(--shadow-sm)] dark:ring-1 dark:ring-white/5",children:(0,n.jsxs)("table",{className:"w-full text-sm",children:[(0,n.jsx)("thead",{className:"border-border bg-surface-elevated/50 border-b dark:bg-zinc-800/30",children:(0,n.jsxs)("tr",{children:[(0,n.jsx)(c,{label:"Name",sortKey:"name",currentSort:l,currentDir:o,onSort:u,className:"min-w-[200px]"}),(0,n.jsx)(c,{label:"Rating",sortKey:"rating",currentSort:l,currentDir:o,onSort:u}),(0,n.jsx)(c,{label:"Reviews",sortKey:"reviews",currentSort:l,currentDir:o,onSort:u}),(0,n.jsx)(c,{label:"Category",sortKey:"category",currentSort:l,currentDir:o,onSort:u}),(0,n.jsx)(c,{label:"Distance",sortKey:"distance",currentSort:l,currentDir:o,onSort:u}),m&&(0,n.jsx)(c,{label:"Price",sortKey:"price",currentSort:l,currentDir:o,onSort:u}),(0,n.jsx)("th",{scope:"col",className:"hidden px-3 py-2.5 text-left text-xs font-semibold tracking-wider text-zinc-500 uppercase sm:table-cell dark:text-zinc-400",children:"Ages"})]})}),(0,n.jsx)("tbody",{className:"divide-y divide-zinc-100 dark:divide-zinc-800",children:p.map((e,i)=>{var c;let l,{emoji:d,label:o}=(0,a.PC)(e.typeTags,e.categories),x=e.aiContent,u=x?"string"==typeof(c=x.ageRecommendation)?c:null==c?"":"object"==typeof c?c.explanation?String(c.explanation):c.bestFor?String(c.bestFor):"":String(c):"",g=e.rating?parseFloat(e.rating):null;return(0,n.jsxs)(s.Fragment,{children:[8===i&&p.length>=10&&r&&(0,n.jsx)("tr",{children:(0,n.jsx)("td",{colSpan:m?7:6,className:"border-0 p-0",children:(0,n.jsx)("div",{className:"px-3 py-3",children:r})})}),(0,n.jsxs)("tr",{onClick:()=>t?.(e),onKeyDown:r=>{("Enter"===r.key||" "===r.key)&&t&&(r.preventDefault(),t(e))},tabIndex:t?0:void 0,role:t?"button":void 0,className:`transition-premium hover:bg-accent-light focus:ring-accent dark:hover:bg-accent/5 focus:ring-2 focus:outline-none focus:ring-inset ${t?"cursor-pointer":""}`,children:[(0,n.jsx)("td",{className:"px-3 py-3",children:(0,n.jsx)("span",{className:"font-medium text-zinc-900 dark:text-white",children:e.name})}),(0,n.jsx)("td",{className:"px-3 py-3",children:null!=g&&(0,n.jsxs)("span",{className:"flex items-center gap-1",children:[(0,n.jsx)("span",{className:"text-yellow-500",children:"â
"}),(0,n.jsx)("span",{className:"font-medium text-zinc-900 dark:text-white",children:g.toFixed(1)})]})}),(0,n.jsx)("td",{className:"px-3 py-3 text-zinc-600 dark:text-zinc-400",children:null!=e.reviewCount&&e.reviewCount>
10?e.reviewCount.toLocaleString():"â"}),(0,n.jsx)("td",{className:"px-3 py-3",children:(0,n.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-zinc-700 dark:text-zinc-300",children:[(0,n.jsx)("span",{"aria-hidden":"true",children:d}),o]})}),(0,n.jsx)("td",{className:"px-3 py-3 text-zinc-600 dark:text-zinc-400",children:null!=e.distanceMiles?`${Math.round(e.distanceMiles)} mi`:"â"}),m&&(l=(0,a.RS)(e),(0,n.jsx)("td",{className:"px-3 py-3",children:l&&(0,n.jsx)("span",{className:`inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-semibold ${"free"===l?"bg-green-50 text-green-600 ring-1 ring-green-200 dark:bg-green-950/30 dark:text-green-400 dark:ring-green-800":"bg-zinc-50 text-zinc-600 ring-1 ring-zinc-200 dark:bg-zinc-800 dark:text-zinc-400 dark:ring-zinc-700"}`,children:"free"===l?"Free":l})})),(0,n.jsx)("td",{className:"hidden px-3 py-3 text-zinc-600 sm:table-cell dark:text-zinc-400",children:u?(0,n.jsx)("span",{className:"line-clamp-1",children:u}):"â"})]})]},e.id)})})]})})}}}]);
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.